Browse Source

Merge branch 'master' of http://git.zthymaoyi.com/gdc/yiliangyiyun-app

achao 2 năm trước cách đây
mục cha
commit
817a04967a

+ 3 - 2
components/MyNumberInput.vue

@@ -1,8 +1,8 @@
 <template>
 	<view>
 		<view class="uni-input Numberinput" :class="{'inputdis':Isedit}" @click="maskShow" :id="'input_'+myevent">
-			<text>{{myvalue}}</text>
-			<text class="myfous" v-if="IsShow"></text>
+			<text>{{myvalue}}</text><text class="myfous" v-if="IsShow"></text>
+			
 		</view>
 
 		<view class="mybrankmask" v-if="IsShow">
@@ -118,6 +118,7 @@
 	.Numberinput {
 		display: flex;
 		align-items: center;
+		/* flex-direction: row-reverse; */
 	}
 
 	.myfous {

+ 2 - 2
config/index.js

@@ -1,10 +1,10 @@
 const dev = {
 	baseUrl: 'https://www.zthymaoyi.com',
 	// baseUrl: 'http://localhost:8080/',
-	// baseUrlNew: 'http://192.168.110.67:9100/',
+	baseUrlNew: 'http://192.168.110.67:9100/',
 	// baseUrlNew: 'http://192.168.1.118:8090/',
 	// baseUrlNew: 'http://192.168.110.9:9100/',
-	// baseUrlNew: 'http://192.168.110.138:8090/',
+	baseUrlNew: 'http://192.168.110.138:8090/',
 	// baseUrlNew: 'http://192.168.110.82:8099/',
 	 // baseUrlNew: 'http://192.168.110.82:8090/',
 	// baseUrlNew: 'http://192.168.110.202:8090/',

+ 2 - 2
manifest.json

@@ -2,8 +2,8 @@
     "name" : "易粮易运",
     "appid" : "__UNI__7297DA2",
     "description" : "易粮易运——为天下粮食人服务的App",
-    "versionName" : "2.1.145",
-    "versionCode" : 21145,
+    "versionName" : "2.1.146",
+    "versionCode" : 21146,
     "transformPx" : false,
     /* SDK配置 */
     "quickapp" : {},

+ 36 - 0
pages.json

@@ -1581,6 +1581,42 @@
             }
             
         }
+        ,{
+            "path" : "pages/dataReport/costbreakdown",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "费用明细",
+                "enablePullDownRefresh": false
+            }
+            
+        }
+        ,{
+            "path" : "pages/dataReport/contractdetails/contractdetails",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "合同",
+                "enablePullDownRefresh": false
+            }
+            
+        }
+        ,{
+            "path" : "pages/dataReport/breakdownofprofit",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "合同利润",
+                "enablePullDownRefresh": false
+            }
+            
+        }
+        ,{
+            "path" : "pages/dataReport/Inventoryentrydetails",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "入库明细",
+                "enablePullDownRefresh": false
+            }
+            
+        }
     ],
 	"subpackages": [{
 			"root": "pageA",

+ 122 - 0
pages/dataReport/Inventoryentrydetails.vue

@@ -0,0 +1,122 @@
+<template>
+	<view>
+		<view class='search'>
+			<u-search  placeholder='可按合同编号或买方、卖方名称查找' search-icon-color='#AFB3BF' bg-color='#F5F6F9' :shape='"round"'  :clearabled="true" :show-action='false'></u-search>
+		</view>
+		
+		<view style='background:#fff;'>
+			<view class='contracttypewrap'>
+				<view class='item left active'>销售</view>
+				<view class='item'>采购</view>
+				<view class='item'>收购</view>
+				<view class='item'>代收</view>
+				<view class='item right'>代储</view>
+			</view>
+		</view>
+		<view class='contractwrap' v-for='(item,index) in contractList'>
+			<view class='flex contractwrap-title'>
+				<view class='contractNo'>{{item.contractNo}}</view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">买方</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">卖方</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">最终完成量(吨)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">利润(元)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">结算日期</view>
+				<view></view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				contractList:[
+					{status:'已完成',
+					contractNo:'HT39854455',
+					costtype:'水费',
+					costmoney:'121111',
+					warehouse:'金信库',
+					name:'张三',
+					date:'2022.11.22 15:32:21'},
+				]
+			}
+		},
+		methods: {
+			
+		}
+	}
+</script>
+
+<style  lang='scss' scoped>
+.contracttypewrap{
+	display:flex;
+	background:#fff;
+	font-size:32rpx;
+	margin: 0 auto;
+	width:93%;
+	.item{
+		padding:20rpx;
+		color:#7A7A7A;
+		width:33.3333%;
+		text-align:center;
+	}
+	.item.left{
+		text-align:left;
+	}
+	.item.right{
+		text-align:right;
+	}
+	.item.active{
+		color:#262626;
+		font-weight:600;
+	}
+}
+
+.contractwrap{
+	background:#fff;
+	margin:20rpx;
+	padding:20rpx;
+	border-radius:20rpx;
+	.contractwrap-title{
+		font-size:28rpx;
+		padding:20rpx;
+		justify-content: space-between;
+		border-bottom:2rpx solid #eee;
+		align-items: center;
+		
+	}
+	.contractwrap-item{
+		display:flex;
+		justify-content: space-between;
+		padding:10rpx 20rpx;
+		font-size:28rpx;
+		.title{
+			font-size:24rpx;
+			color:#8F8F8F;
+		}
+	}
+}
+.search{
+	width:100vw;
+	background:#fff;
+}
+.u-search{
+	width:94%;
+	margin:0 auto !important;
+}
+</style>

+ 122 - 0
pages/dataReport/breakdownofprofit.vue

@@ -0,0 +1,122 @@
+<template>
+	<view>
+		<view class='search'>
+			<u-search  placeholder='可按合同编号或买方、卖方名称查找' search-icon-color='#AFB3BF' bg-color='#F5F6F9' :shape='"round"'  :clearabled="true" :show-action='false'></u-search>
+		</view>
+		
+		<view style='background:#fff;'>
+			<view class='contracttypewrap'>
+				<view class='item left active'>销售</view>
+				<view class='item'>采购</view>
+				<view class='item'>收购</view>
+				<view class='item'>代收</view>
+				<view class='item right'>代储</view>
+			</view>
+		</view>
+		<view class='contractwrap' v-for='(item,index) in contractList'>
+			<view class='flex contractwrap-title'>
+				<view class='contractNo'>{{item.contractNo}}</view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">买方</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">卖方</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">最终完成量(吨)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">利润(元)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">结算日期</view>
+				<view></view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				contractList:[
+					{status:'已完成',
+					contractNo:'HT39854455',
+					costtype:'水费',
+					costmoney:'121111',
+					warehouse:'金信库',
+					name:'张三',
+					date:'2022.11.22 15:32:21'},
+				]
+			}
+		},
+		methods: {
+			
+		}
+	}
+</script>
+
+<style  lang='scss' scoped>
+.contracttypewrap{
+	display:flex;
+	background:#fff;
+	font-size:32rpx;
+	margin: 0 auto;
+	width:93%;
+	.item{
+		padding:20rpx;
+		color:#7A7A7A;
+		width:33.3333%;
+		text-align:center;
+	}
+	.item.left{
+		text-align:left;
+	}
+	.item.right{
+		text-align:right;
+	}
+	.item.active{
+		color:#262626;
+		font-weight:600;
+	}
+}
+
+.contractwrap{
+	background:#fff;
+	margin:20rpx;
+	padding:20rpx;
+	border-radius:20rpx;
+	.contractwrap-title{
+		font-size:28rpx;
+		padding:20rpx;
+		justify-content: space-between;
+		border-bottom:2rpx solid #eee;
+		align-items: center;
+		
+	}
+	.contractwrap-item{
+		display:flex;
+		justify-content: space-between;
+		padding:10rpx 20rpx;
+		font-size:28rpx;
+		.title{
+			font-size:24rpx;
+			color:#8F8F8F;
+		}
+	}
+}
+.search{
+	width:100vw;
+	background:#fff;
+}
+.u-search{
+	width:94%;
+	margin:0 auto !important;
+}
+</style>

+ 155 - 0
pages/dataReport/contractdetails/contractdetails.vue

@@ -0,0 +1,155 @@
+<template>
+	<view>
+		<view class='search'>
+			<u-search  placeholder='可按合同编号或买方、卖方名称查找' search-icon-color='#AFB3BF' bg-color='#F5F6F9' :shape='"round"'  :clearabled="true" :show-action='false'></u-search>
+		</view>
+		
+		<view style='background:#fff;'>
+			<view class='contracttypewrap'>
+				<view class='item left active'>销售</view>
+				<view class='item'>采购</view>
+				<view class='item'>收购</view>
+				<view class='item'>代收</view>
+				<view class='item right'>代储</view>
+			</view>
+		</view>
+		<view class='costwrap'>
+			<view class='item active'>全部</view>
+			<view class='item'>粮款</view>
+			<view class='item'>非粮款</view>
+			<view class='item'>保证金</view>
+		</view>
+		<view class='contractwrap' v-for='(item,index) in contractList'>
+			<view class='flex contractwrap-title'>
+				<view class='contractNo'>{{item.contractNo}}</view>
+				<view v-if='item.status=="已完成"' style='color:#AFB3BF;' class='status'>{{item.status}}</view>
+				<view v-if='item.status=="执行中"' style='color:#22C572;' class='status'>{{item.status}}</view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">买方</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">卖方</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">合同重量(吨)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">合同单价(元/吨)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">合同总价(元)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">已付款(元)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">已开发票(元)</view>
+				<view></view>
+			</view>
+			<view  class='flex contractwrap-item'>
+				<view class="title">签订日期</view>
+				<view></view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				contractList:[
+					{status:'已完成',
+					contractNo:'HT39854455',
+					costtype:'水费',
+					costmoney:'121111',
+					warehouse:'金信库',
+					name:'张三',
+					date:'2022.11.22 15:32:21'},
+				]
+			}
+		},
+		methods: {
+			
+		}
+	}
+</script>
+
+<style  lang='scss' scoped>
+.contracttypewrap{
+	display:flex;
+	background:#fff;
+	font-size:32rpx;
+	margin: 0 auto;
+	width:93%;
+	.item{
+		padding:20rpx;
+		color:#7A7A7A;
+		width:33.3333%;
+		text-align:center;
+	}
+	.item.left{
+		text-align:left;
+	}
+	.item.right{
+		text-align:right;
+	}
+	.item.active{
+		color:#262626;
+		font-weight:600;
+	}
+}
+.costwrap{
+	display:flex;
+	margin:10rpx 34rpx;
+	.item{
+		padding:10rpx 20rpx;
+		color:#333333;
+		text-align:center;
+		border-radius:30rpx;
+	}
+	.item.active{
+		color:#fff;
+		background:#22C572;
+	}
+}
+.contractwrap{
+	background:#fff;
+	margin:20rpx;
+	padding:20rpx;
+	border-radius:20rpx;
+	.contractwrap-title{
+		font-size:28rpx;
+		padding:20rpx;
+		justify-content: space-between;
+		border-bottom:2rpx solid #eee;
+		align-items: center;
+		
+	}
+	.contractwrap-item{
+		display:flex;
+		justify-content: space-between;
+		padding:10rpx 20rpx;
+		font-size:28rpx;
+		.title{
+			font-size:24rpx;
+			color:#8F8F8F;
+		}
+	}
+}
+.search{
+	width:100vw;
+	background:#fff;
+}
+.u-search{
+	width:94%;
+	margin:0 auto !important;
+}
+</style>

+ 147 - 0
pages/dataReport/costbreakdown.vue

@@ -0,0 +1,147 @@
+<template>
+	<view>
+		<view style='background:#fff;'>
+			<view class='purposewrap'>
+				<view class='item left active'>合同费用</view>
+				<view class='item'>库点费用</view>
+				<view class='item right'>经营性费用</view>
+			</view>
+		</view>
+		<view class='costwrap'>
+			<view class='item active'>全部</view>
+			<view class='item'>粮款</view>
+			<view class='item'>非粮款</view>
+			<view class='item'>保证金</view>
+		</view>
+		<view class='costwrap'>
+			<view class='item'>全部</view>
+			<view class='item'>煤费</view>
+			<view class='item'>电费</view>
+			<view class='item'>人工费</view>
+			<view class='item'>杂费</view>
+			<view class='item'>收款</view>
+		</view>
+		<view class='costlistwrap'>
+			<view v-for='(item,index) in costList' :style='index!=costList.length-1?"border-bottom:2rpx solid #eee":""' class='item'>
+				<view class='flex align-item-center'>
+					<view v-if='item.status==1' class="status pay">付</view>
+					<view v-if='item.status==2' class="status income">收</view>
+					<view style='width:92%;justify-content: space-between;' class="flex align-item-center">
+						<view class="costtype">{{item.costtype}}</view>
+						<view class="costmoney"><text>¥</text>{{item.costmoney}}</view>
+					</view>
+					
+				</view>
+				<view style='justify-content: space-between;font-size:28rpx;margin:10rpx 0;' class='flex align-item-center'>
+					<view>{{item.warehouse}}</view>
+				<!-- 	<view>{{item.contract}}</view>
+					<view>{{item.date}}</view> -->
+					<view>{{item.name}}</view>
+				</view>
+				<view style='font-size:24rpx;margin:20rpx 0;' class='flex align-item-center'>
+					<view class="">
+						{{item.date}}
+					</view>
+				</view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				costList:[
+					{status:1,
+					costtype:'水费',
+					costmoney:'121111',
+					warehouse:'金信库',
+					name:'张三',
+					date:'2022.11.22 15:32:21'},{status:2,
+					costtype:'水费',
+					costmoney:'121111',
+					warehouse:'金信库',
+					name:'张三',
+					date:'2022.11.22 15:32:21'}],
+			}
+		},
+		methods: {
+			
+		}
+	}
+</script>
+
+<style lang='scss' scoped>
+.purposewrap{
+	display:flex;
+	background:#fff;
+	font-size:32rpx;
+	margin: 0 auto;
+	width:93%;
+	.item{
+		padding:20rpx;
+		color:#7A7A7A;
+		width:33.3333%;
+		text-align:center;
+	}
+	.item.left{
+		text-align:left;
+	}
+	.item.right{
+		text-align:right;
+	}
+	.item.active{
+		color:#262626;
+		font-weight:600;
+	}
+}
+.costwrap{
+	display:flex;
+	margin:10rpx 34rpx;
+	.item{
+		padding:10rpx 20rpx;
+		color:#333333;
+		text-align:center;
+		border-radius:30rpx;
+	}
+	.item.active{
+		color:#fff;
+		background:#22C572;
+	}
+}
+.costlistwrap{
+	background:#fff;
+	margin:0 20rpx;
+	border-radius:20rpx;
+	padding:0 20rpx;
+	.item{
+		padding:30rpx 0;
+		.status{
+			font-size:24rpx;
+			margin-right:10rpx;
+			padding:4rpx 10rpx;
+			border-radius:10rpx;
+		}
+		.status.pay{
+			background:#E9F8F0;
+			color:#22C572;
+		}
+		.status.income{
+			background:#FEECE6;
+			color:#FE6430;
+		}
+		.costtype{
+			font-size:32rpx;
+			font-weight:600;
+		}
+		.costmoney{
+			font-size:36rpx;
+			font-weight:600;
+			text{
+				font-size:26rpx;
+			}
+		}
+	}
+}
+</style>

+ 93 - 8
pages/erpbusiness/add_quality_testing.vue

@@ -300,40 +300,73 @@
 				<view class="c-row ">
 					<view class="title">水分(%)</view>
 					<view class="con-list">
-						<input v-model='gridList.waterContent' placeholder="初检水分" @input="waterContentChange"
-							name="input" type="digit"></input>
+						<MyNumberInput :myvalue="gridList.waterContent" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'waterContent'"
+							@setValue="mykeywordset"  v-if="InputEvent=='waterContent'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('waterContent')"></MyNumberInput>
+							<input v-else v-model='gridList.waterContent' @click="SetInputKey('waterContent')" placeholder="初检水分" @input="waterContentChange"
+									name="input" type="digit"></input>
+						<!-- <input v-model='gridList.waterContent' placeholder="初检水分" @input="waterContentChange"
+							name="input" type="digit"></input> -->
 					</view>
 				</view>
 				<view class="c-row ">
 					<view v-show='gridList.goodsName!="大豆"' class="title">容重(克/升)</view>
 					<view v-show='gridList.goodsName=="大豆"' class="title">蛋白</view>
 					<view class="con-list">
-						<input v-model='gridList.bulkDensity' placeholder="请输入容重" name="input" type="digit" @input="obtainPrice"></input>
+						<MyNumberInput :myvalue="gridList.bulkDensity" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'bulkDensity'"
+							@setValue="mykeywordset"  v-if="InputEvent=='bulkDensity'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('bulkDensity')"></MyNumberInput>
+						<input v-else v-model='gridList.bulkDensity' placeholder="请输入容重" @click="SetInputKey('bulkDensity')" name="input" type="digit" @input="obtainPrice"></input>
+				<!-- 	<input v-model='gridList.bulkDensity' placeholder="请输入容重" name="input" type="digit" @input="obtainPrice"></input> -->
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">不完善粒(%)</view>
 					<view class="con-list">
-						<input v-model='gridList.imperfectGrain' placeholder="请输入不完整粒占比" name="input"
+						<MyNumberInput :myvalue="gridList.imperfectGrain" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'imperfectGrain'"
+							@setValue="mykeywordset"  v-if="InputEvent=='imperfectGrain'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('imperfectGrain')"></MyNumberInput>
+						<input v-else v-model='gridList.imperfectGrain' @click="SetInputKey('imperfectGrain')" placeholder="请输入不完整粒占比" name="input"
 							type="digit"></input>
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">杂质(%)</view>
 					<view class="con-list">
-						<input v-model='gridList.impurity' placeholder="请输入杂质占比" name="input" type="digit"></input>
+						<MyNumberInput :myvalue="gridList.impurity" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'impurity'"
+							@setValue="mykeywordset"  v-if="InputEvent=='impurity'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('impurity')"></MyNumberInput>
+						<input v-else v-model='gridList.impurity' placeholder="请输入杂质占比" @click="SetInputKey('impurity')" name="input" type="digit"></input>
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">霉变粒(%)</view>
 					<view class="con-list">
-						<input v-model='gridList.mildewGrain' placeholder="请输入霉变粒占比" name="input" type="digit"></input>
+						<MyNumberInput :myvalue="gridList.mildewGrain" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'mildewGrain'"
+							@setValue="mykeywordset"  v-if="InputEvent=='mildewGrain'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('mildewGrain')"></MyNumberInput>
+						<input v-else v-model='gridList.mildewGrain' @click="SetInputKey('mildewGrain')" placeholder="请输入霉变粒占比" name="input" type="digit"></input>
 					</view>
 				</view>
 				<view class="c-row">
 					<view class="title">热损伤(%)</view>
 					<view class="con-list">
-						<input v-model='gridList.jiaorenli' placeholder="请输入热损伤占比" name="input" type="digit"></input>
+						<MyNumberInput :myvalue="gridList.jiaorenli" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'jiaorenli'"
+							@setValue="mykeywordset"  v-if="InputEvent=='jiaorenli'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('jiaorenli')"></MyNumberInput>
+						<input v-else v-model='gridList.jiaorenli' @click="SetInputKey('jiaorenli')" placeholder="请输入热损伤占比" name="input" type="digit"></input>
 					</view>
 				</view>
 				<view v-show="gridList.type == '潮粮'&&utils.getCurrectRoles('acquisitionQuality.initial')&&typevalue==3"
@@ -433,8 +466,10 @@
 </template>
 
 <script>
+	const Equ_List=['waterContent','bulkDensity','imperfectGrain','impurity','mildewGrain','jiaorenli'];
 	import dragButton from "@/components/drag-button/drag-button.vue";
 	import keyboard from "@/components/master-keyboard/master-keyboard.vue";
+	import MyNumberInput from "@/components/MyNumberInput.vue";
 	import {
 		mapState
 	} from 'vuex';
@@ -444,7 +479,8 @@
 	export default {
 		components: {
 			dragButton,
-			keyboard
+			keyboard,
+			MyNumberInput
 		},
 		data() {
 			return {
@@ -458,6 +494,12 @@
 					month: true,
 					day: true,
 				},
+				Data:{
+					ktv:'111111'
+				},
+				Isedit:false,
+				MykeywordShow:false,
+				InputEvent:'',
 				dryGrainPrice:0,
 				tidalGrainPrice:0,
 				modalName: '',
@@ -873,6 +915,49 @@
 			}
 		},
 		methods: {
+			Cancelword(){
+				this.bottomHeight = '10rpx';
+				this.MykeywordShow =false;
+				this.InputEvent = '';
+			},
+			goNext(val){
+				var inputList = Equ_List;
+				if(this.menuIndex==1){
+					inputList = Sign_List;
+				}
+				var index = inputList.indexOf(val);
+				this.setScrollTops(val);
+				if(index<inputList.length-1){
+					this.InputEvent = inputList[index+1];
+				}else{
+					this.InputEvent=''
+					this.bottomHeight = '10rpx';
+					this.MykeywordShow = false;
+				}
+			},
+			mykeywordset(datatxt){
+				var arr = JSON.parse(datatxt);
+				this.gridList[arr.even] = arr.value;
+				if(arr.even=='waterContent'){
+					this.waterContentChange()
+				}else if(arr.even=='bulkDensity'){
+					this.obtainPrice()
+				}
+			},
+			SetInputKey(even){
+				uni.hideKeyboard();
+				this.InputEvent = even;
+				this.setScrollTops(even);
+				if(!this.MykeywordShow){
+					this.bottomHeight = '320rpx';
+					this.MykeywordShow = true;
+				}
+			},
+			setScrollTops(even){
+				var inputList = Equ_List;
+				var index = inputList.indexOf(even);
+				this.viewTop = (index + 1) * 60 + 100;
+			},
 			pricefocus(e,status){
 				console.log(e)
 				if(status==1){

+ 130 - 14
pages/erpbusiness/edit_quality_testing.vue

@@ -281,9 +281,19 @@
 				<view class="c-row ">
 					<view class="title">水分(%)</view>
 					<view class="con-list">
-						<input :disabled='flag==1' v-model='gridList.waterContent' placeholder="初检水分"
+						<MyNumberInput :myvalue="gridList.waterContent" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'waterContent'"
+							@setValue="mykeywordset"  v-if="InputEvent=='waterContent'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('waterContent')"></MyNumberInput>
+						<input v-else :disabled='flag==1' @click="SetInputKey('waterContent')" v-model='gridList.waterContent' placeholder="初检水分"
 							@input="waterContentChange" type="digit" name="input"></input>
-						<input v-if='flag==1||flag==2' type="digit" v-model='gridList.reWaterContent' placeholder="复检水分"
+						<MyNumberInput :myvalue="gridList.reWaterContent" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'reWaterContent'"
+							@setValue="mykeywordset"  v-if="InputEvent=='reWaterContent'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('reWaterContent')"></MyNumberInput>
+						<input @click="SetInputKey('reWaterContent')" v-if="flag==1&&InputEvent!='reWaterContent'||flag==2&&InputEvent!='reWaterContent'" type="digit" v-model='gridList.reWaterContent' placeholder="复检水分"
 							name="input"></input>
 					</view>
 				</view>
@@ -291,45 +301,95 @@
 					<view v-if='gridList.goodsName!="大豆"' class="title">容重(克/升)</view>
 					<view v-else class="title">蛋白</view>
 					<view class="con-list">
-						<input :disabled='flag==1' type="digit" v-model='gridList.bulkDensity' placeholder="请输入容重"
+						<MyNumberInput :myvalue="gridList.bulkDensity" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'bulkDensity'"
+							@setValue="mykeywordset"  v-if="InputEvent=='bulkDensity'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('bulkDensity')"></MyNumberInput>
+						<input v-else  @click="SetInputKey('bulkDensity')" :disabled='flag==1' type="digit" v-model='gridList.bulkDensity' placeholder="请输入容重"
 							name="input"  @input="obtainPrice"></input>
-							<input  v-if='flag==1||flag==2' type="digit" v-model='gridList.reBulkDensity' placeholder="请输入容重" 
-								name="input"  @input="obtainPrice"></input>
+						<MyNumberInput :myvalue="gridList.reBulkDensity" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'reBulkDensity'"
+							@setValue="mykeywordset"  v-if="InputEvent=='reBulkDensity'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('reBulkDensity')"></MyNumberInput>
+						<input @click="SetInputKey('reBulkDensity')" v-if="flag==1&&InputEvent!='reBulkDensity'||flag==2&&InputEvent!='reBulkDensity'" type="digit" v-model='gridList.reBulkDensity' placeholder="请输入容重" 
+								name="input"></input>
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">不完善粒(%)</view>
 					<view class="con-list">
-						<input :disabled='flag==1' type="digit" v-model='gridList.imperfectGrain' placeholder="请输入不完整粒占比"
+						<MyNumberInput :myvalue="gridList.imperfectGrain" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'imperfectGrain'"
+							@setValue="mykeywordset"  v-if="InputEvent=='imperfectGrain'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('imperfectGrain')"></MyNumberInput>
+						<input v-else  @click="SetInputKey('imperfectGrain')" :disabled='flag==1' type="digit" v-model='gridList.imperfectGrain' placeholder="请输入不完整粒占比"
 							name="input"></input>
-							<input  v-if='flag==1||flag==2' type="digit" v-model='gridList.reImperfectGrain' placeholder="请输入不完整粒占比"
+						<MyNumberInput :myvalue="gridList.reImperfectGrain" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'reImperfectGrain'"
+							@setValue="mykeywordset"  v-if="InputEvent=='reImperfectGrain'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('reImperfectGrain')"></MyNumberInput>
+						<input  @click="SetInputKey('reImperfectGrain')" v-if="flag==1&&InputEvent!='reImperfectGrain'||flag==2&&InputEvent!='reImperfectGrain'" type="digit" v-model='gridList.reImperfectGrain' placeholder="请输入不完整粒占比"
 								name="input"></input>
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">杂质(%)</view>
 					<view class="con-list">
-						<input :disabled='flag==1' type="digit" v-model='gridList.impurity' placeholder="请输入杂质占比"
+						<MyNumberInput :myvalue="gridList.impurity" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'impurity'"
+							@setValue="mykeywordset"  v-if="InputEvent=='impurity'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('impurity')"></MyNumberInput>
+						<input v-else  @click="SetInputKey('impurity')" :disabled='flag==1' type="digit" v-model='gridList.impurity' placeholder="请输入杂质占比"
 							name="input"></input>
-						<input  v-if='flag==1||flag==2' type="digit" v-model='gridList.reImpurity' placeholder="请输入杂质占比"
+							<MyNumberInput :myvalue="gridList.reImpurity" :Isedit="Isedit" :IsShow="MykeywordShow"
+								:myevent="'reImpurity'"
+								@setValue="mykeywordset"  v-if="InputEvent=='reImpurity'" 
+								@Cancelword="Cancelword" 
+								@goNext="goNext('reImpurity')"></MyNumberInput>
+						<input @click="SetInputKey('reImpurity')" v-if="flag==1&&InputEvent!='reImpurity'||flag==2&&InputEvent!='reImpurity'" type="digit" v-model='gridList.reImpurity' placeholder="请输入杂质占比"
 							name="input"></input>
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">霉变粒(%)</view>
 					<view class="con-list">
-						<input :disabled='flag==1' type="digit" v-model='gridList.mildewGrain' placeholder="请输入霉变粒占比"
+						<MyNumberInput :myvalue="gridList.mildewGrain" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'mildewGrain'"
+							@setValue="mykeywordset"  v-if="InputEvent=='mildewGrain'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('mildewGrain')"></MyNumberInput>
+						<input v-else  @click="SetInputKey('mildewGrain')" :disabled='flag==1' type="digit" v-model='gridList.mildewGrain' placeholder="请输入霉变粒占比"
 							name="input"></input>
-						<input  v-if='flag==1||flag==2' type="digit" v-model='gridList.reMildewGrain' placeholder="请输入霉变粒占比"
+						<MyNumberInput :myvalue="gridList.reMildewGrain" :Isedit="Isedit" :IsShow="MykeywordShow"
+								:myevent="'reMildewGrain'"
+								@setValue="mykeywordset"  v-if="InputEvent=='reMildewGrain'" 
+								@Cancelword="Cancelword" 
+								@goNext="goNext('reMildewGrain')"></MyNumberInput>
+						<input @click="SetInputKey('reMildewGrain')" v-if="flag==1&&InputEvent!='reMildewGrain'||flag==2&&InputEvent!='reMildewGrain'" type="digit" v-model='gridList.reMildewGrain' placeholder="请输入霉变粒占比"
 							name="input"></input>
 					</view>
 				</view>
 				<view class="c-row ">
 					<view class="title">热损伤(%)</view>
 					<view class="con-list">
-						<input :disabled='flag==1' type="digit" v-model='gridList.jiaorenli' placeholder="请输入热损伤占比"
+						<MyNumberInput :myvalue="gridList.jiaorenli" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'jiaorenli'"
+							@setValue="mykeywordset"  v-if="InputEvent=='jiaorenli'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('jiaorenli')"></MyNumberInput>
+						<input v-else  @click="SetInputKey('jiaorenli')" :disabled='flag==1' type="digit" v-model='gridList.jiaorenli' placeholder="请输入热损伤占比"
 							name="input"></input>
-						<input  v-if='flag==1||flag==2' type="digit" v-model='gridList.reJiaorenli' placeholder="请输入热损伤占比"
+						<MyNumberInput :myvalue="gridList.reJiaorenli" :Isedit="Isedit" :IsShow="MykeywordShow"
+							:myevent="'reJiaorenli'"
+							@setValue="mykeywordset"  v-if="InputEvent=='reJiaorenli'" 
+							@Cancelword="Cancelword" 
+							@goNext="goNext('reJiaorenli')"></MyNumberInput>
+						<input  @click="SetInputKey('reJiaorenli')" v-if="flag==1&&InputEvent!='reJiaorenli'||flag==2&&InputEvent!='reJiaorenli'" type="digit" v-model='gridList.reJiaorenli' placeholder="请输入热损伤占比"
 							name="input"></input>
 						<!-- <input v-model='gridList.jiaorenli' @click.stop="handleShowKeyboard1":disabled="true" placeholder="请输入热损伤占比" name="input"></input> -->
 					</view>
@@ -411,8 +471,12 @@
 </template>
 
 <script>
+
+	const Equ_List=['waterContent','bulkDensity','imperfectGrain','impurity','mildewGrain','jiaorenli'];
+	const Equ_List1=['reWaterContent','reBulkDensity','reImperfectGrain','reImpurity','reMildewGrain','reJiaorenli'];
 	import dragButton from "@/components/drag-button/drag-button.vue";
 	import keyboard from "@/components/master-keyboard/master-keyboard.vue";
+	import MyNumberInput from "@/components/MyNumberInput.vue";
 	import {
 		mapState
 	} from 'vuex';
@@ -422,7 +486,8 @@
 	export default {
 		components: {
 			dragButton,
-			keyboard
+			keyboard,
+			MyNumberInput
 		},
 		data() {
 			return {
@@ -500,6 +565,9 @@
 				managementType: '',
 				warehouseName: '',
 				warehouseList: [],
+				InputEvent:'',
+				bottomHeight:'10rpx',
+				MykeywordShow:false,
 				showTran: true,
 				companyId: 1,
 				current: 4,
@@ -742,6 +810,54 @@
 			}
 		},
 		methods: {
+			Cancelword(){
+				this.bottomHeight = '10rpx';
+				this.MykeywordShow =false;
+				this.InputEvent = '';
+			},
+			goNext(val){
+				if(this.flag==0||this.flag==3||this.flag==4){
+					var inputList = Equ_List;	
+				}else{
+					var inputList = Equ_List1;
+				}
+				var index = inputList.indexOf(val);
+				this.setScrollTops(val);
+				if(index<inputList.length-1){
+					this.InputEvent = inputList[index+1];
+				}else{
+					this.InputEvent=''
+					this.bottomHeight = '10rpx';
+					this.MykeywordShow = false;
+				}
+			},
+			mykeywordset(datatxt){
+				var arr = JSON.parse(datatxt);
+				this.gridList[arr.even] = arr.value;
+				if(arr.even=='waterContent'){
+					this.waterContentChange()
+				}else if(arr.even=='bulkDensity'){
+					this.obtainPrice()
+				}
+			},
+			SetInputKey(even){
+				uni.hideKeyboard();
+				this.InputEvent = even;
+				this.setScrollTops(even);
+				if(!this.MykeywordShow){
+					this.bottomHeight = '320rpx';
+					this.MykeywordShow = true;
+				}
+			},
+			setScrollTops(even){
+				if(this.flag==0||this.flag==3||this.flag==4){
+					var inputList = Equ_List;	
+				}else{
+					var inputList = Equ_List1;
+				}
+				var index = inputList.indexOf(even);
+				this.viewTop = (index + 1) * 60 + 100;
+			},
 			pricefocus(e,status){
 				console.log(e)
 				if(status==1){

+ 5 - 1
pages/erpbusiness/quality_testing.vue

@@ -20,7 +20,7 @@
 				<!-- <text @click='emptysearch' v-if='searchKeyWord.length>0' class='tip_text cuIcon-roundclosefill'></text> -->
 			</view>
 			<view class='changewarehouse'>
-				<view @click='show=true'>{{warehouseName}}<text class='cuIcon-unfold'></text></view>
+				<view @click='show=true'>{{warehouseName?warehouseName:'选择仓库'}}<text class='cuIcon-unfold'></text></view>
 				<u-picker @confirm="warehousechange" range-key='warehouseName' mode="selector" v-model="show"
 					:range="selector"></u-picker>
 			</view>
@@ -366,6 +366,10 @@
 								}
 								this.isContent = true
 							}
+						}else{
+							if (this.currentPage == 1) {
+								that.gridList = []
+							}
 						}
 						// console.log(that.gridList)
 					})

+ 5 - 2
pages/task/audit/freight_settlement_approval.vue

@@ -29,13 +29,13 @@
 					<view>{{list[0].customer}}</view>
 				</view>
 
-				<view class="top1">
+				<view class="top1 flex">
 					<view>发货地址</view>
 					<view class="top_info">{{list[0].send ? list[0].send : "暂无发货地址"}}</view>
 				</view>
 
 
-				<view class="top1">
+				<view class="top1 flex">
 					<view>收货地址</view>
 					<view class="top_info">{{list[0].receive ? list[0].receive : "暂无收货地址"}}</view>
 				</view>
@@ -508,6 +508,7 @@
 		.top1 {
 			// display: flex;
 			justify-content: space-between;
+			align-items: center;
 			border-radius: 20rpx;
 			background: white;
 			padding: 10rpx 20rpx;
@@ -517,6 +518,8 @@
 
 		.top_info {
 			margin: 10rpx 0;
+			width:70%;
+			text-align:right;
 		}
 
 		.title {

+ 2 - 0
pages/task/my_task.vue

@@ -210,6 +210,8 @@
 		},
 		onShow() {
 			if(this.statusFlag==1){
+				this.taskInfo=[]
+				this.pages=1
 				this.getIndexBuyData(1,this.keyword)
 			}
 			// this.warehouseInOutInfo.phone = this.userInfo.phone

+ 1 - 0
pages/user/setUp.vue

@@ -135,6 +135,7 @@
 				this.version = info.version;
 				console.log("当前版本为:", this.version)
 				this.checkVersion()
+				})
 			// #endif
 		},
 		onLoad() {},

+ 112 - 53
pages/user/user.vue

@@ -384,7 +384,7 @@
 		},
 		// #endif
 		computed: {
-			...mapState(['hasLogin', 'userInfo']),
+			...mapState(['hasLogin', 'userInfo','clientId']),
 			// 手机号中间4位加*
 			starUserphone() {
 				let reg = /^(\d{3})\d{4}(\d{4})$/;
@@ -468,38 +468,39 @@
 					}
 				})
 									console.log("this.1111")
-				uni.getStorage({
-					key: 'compName1',
-					success: function (res) {
-									console.log("this.2222")
-						console.log(res.data);
-						if(res.data){
-							that.compName = res.data
+				// uni.getStorage({
+				// 	key: 'compName1',
+				// 	success: function (res) {
+				// 					console.log("this.2222")
+				// 		console.log(res.data);
+				// 		if(res.data){
+				// 			that.compName = res.data
+				// 			that.haveCompany = true
+				// 		}
+				// 	},
+				// 	fail() {
+						
+				// 	}
+				// });
+				that.$api.doRequest('get', '/commonUser/getCompOwn', {
+					phone: that.userInfo.phone
+				}).then(res => {
+					if (res.data.data) {
+						that.companyList = res.data.data
+							console.log("that.3333")
+							console.log(that.companyList)
+						if (that.companyList.length > 0) {
+							that.compName = that.companyList[0].compName
+							console.log("this.compName")
+							console.log(that.compName)
+							uni.setStorageSync('compName1', that.companyList[0].compName)
 							that.haveCompany = true
 						}
-					},
-					fail() {
-						that.$api.doRequest('get', '/commonUser/getCompOwn', {
-							phone: that.userInfo.phone
-						}).then(res => {
-							if (res.data.data) {
-								that.companyList = res.data.data
-									console.log("that.3333")
-									console.log(that.companyList)
-								if (that.companyList.length > 0) {
-									that.compName = that.companyList[0].compName
-									console.log("this.compName")
-									console.log(that.compName)
-									uni.setStorageSync('compName1', that.companyList[0].compName)
-									that.haveCompany = true
-								}
-								else{
-									that.haveCompany = false
-								}
-							}
-						})
+						else{
+							that.haveCompany = false
+						}
 					}
-				});
+				})
 
 			} else {
 				this.headUrl = "../../static/img/myimg/YongHu@3x.png"
@@ -517,34 +518,92 @@
 				this.isShowAlert = false
 			},
 			compconfirm(e) {
-
-				var that = this
-				this.$api.doRequest('post', '/commonUser/api/loginQuickly', {
-					mobilePhone: this.userInfo.phone,
-					companyName: this.companyList[e[0]].compName,
-					veriCode: "123456",
-				}).then(res1 => {
-					if (res1.data.code == 200) {
-						uni.setStorageSync('pcUserInfo', res1.data.data)
-						uni.setStorageSync('compName1', that.companyList[e[0]].compName)
-						that.compName = that.companyList[e[0]].compName
-						helper.getListByUserId()
-						that.$api.msg('切换成功')
-					} else {
-						that.$api.doRequest('post', '/commonUser/api/loginQuickly', {
-							mobilePhone: '14444444444',
+				var that=this
+				uni.showLoading({
+					title: '登录中',
+					mask:true
+				})
+				console.log("clinetId",this.clientId)
+				this.$api.doRequest('get','/commonUser/login',{phone:this.userInfo.phone,password:"999999",cid:this.clientId}).then(res => {
+					if(res.data.code==200){
+						console.log("userInfo",res.data.data)
+						uni.setStorageSync('userInfo', res.data.data)
+						this.$api.doRequest('post','/commonUser/api/loginQuickly',{
+							mobilePhone: this.userInfo.phone,
 							companyName: this.companyList[e[0]].compName,
-							veriCode: "123456",
-						}).then(res2 => {
-							uni.setStorageSync('pcUserInfo', res2.data.data)
-							uni.setStorageSync('compName1', that.companyList[e[0]].compName)
-							that.compName = that.companyList[e[0]].compName
-							helper.getListByUserId()
+							veriCode: "123456",}).then(res1 => {
+							console.log("loginQuickly",res)
+							if(res1.data.code==200){
+								uni.setStorageSync('pcUserInfo', res1.data.data)
+								uni.setStorageSync('compName1', that.companyList[e[0]].compName)
+								that.compName = that.companyList[e[0]].compName
+								helper.getListByUserId()
+							}
+							else{
+								// that.$api.doRequest('post','/commonUser/api/loginQuickly',{mobilePhone: '14444444444',
+								// veriCode: "123456",}).then(res2 => {
+								// 	uni.setStorageSync('pcUserInfo', res2.data.data)
+								// 	helper.getListByUserId()
+								// })
+							}
+							that.$store.commit('login', res.data.data)
+							var name = 'userInfo';
+							var value = res.data.data;
+							that.$store.commit('$uStore', {
+								name,
+								value
+							});
+							// that.liangxinLogin()
+							
+							// uni.switchTab({
+							// 	url: '/pages/sale/information'
+							// });
+							uni.hideLoading()
 							that.$api.msg('切换成功')
 						})
+						
+					}else{
+						uni.hideLoading()
+						uni.showToast({
+							title: res.data.message,
+							icon:'none',
+							duration: 2000
+						})
 					}
-
 				})
+				.catch(res => {
+				    console.log(res);
+				});
+
+
+
+				// var that = this
+				// this.$api.doRequest('post', '/commonUser/api/loginQuickly', {
+				// 	mobilePhone: this.userInfo.phone,
+				// 	companyName: this.companyList[e[0]].compName,
+				// 	veriCode: "123456",
+				// }).then(res1 => {
+				// 	if (res1.data.code == 200) {
+				// 		uni.setStorageSync('pcUserInfo', res1.data.data)
+				// 		uni.setStorageSync('compName1', that.companyList[e[0]].compName)
+				// 		that.compName = that.companyList[e[0]].compName
+				// 		helper.getListByUserId()
+				// 		that.$api.msg('切换成功')
+				// 	} else {
+				// 		that.$api.doRequest('post', '/commonUser/api/loginQuickly', {
+				// 			mobilePhone: '14444444444',
+				// 			companyName: this.companyList[e[0]].compName,
+				// 			veriCode: "123456",
+				// 		}).then(res2 => {
+				// 			uni.setStorageSync('pcUserInfo', res2.data.data)
+				// 			uni.setStorageSync('compName1', that.companyList[e[0]].compName)
+				// 			that.compName = that.companyList[e[0]].compName
+				// 			helper.getListByUserId()
+				// 			that.$api.msg('切换成功')
+				// 		})
+				// 	}
+
+				// })
 			},
 			getRoles: function(role) {
 				let _roles = uni.getStorageSync('rolesList')