From 2e60df573ae7648e5df412b50a924cb52820b135 Mon Sep 17 00:00:00 2001
From: yangan <yangan0921@163.com>
Date: 星期四, 18 一月 2024 15:49:45 +0800
Subject: [PATCH] feat:小程序验质拆分净重提煤单增加不合格明细

---
 pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue |  560 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 503 insertions(+), 57 deletions(-)

diff --git a/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue b/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
index ad64fd8..a6f4ad4 100644
--- a/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
+++ b/pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue
@@ -36,6 +36,7 @@
 					<view class="num">{{ item.clean }}</view>
 				</view>
 			</view>
+				<view v-if="isShow(item) && isYanz()">
 			<view class="discount">
 				<view class="rate">
 					<view class="label-text">
@@ -45,7 +46,7 @@
 						class="count-input">
 						<u--input placeholder="璇疯緭鍏ユ墸娓�"
 							border="bottom"
-							type="number"
+							type="digit"
 							clearable
 							v-model="item.cinderWeight"
 							@input='v=>discountInputHandle(v,i,item.clean)'></u--input>
@@ -54,17 +55,45 @@
 						class="count">{{ item.cinderWeight }}
 					</view>
 				</view>
-				<view class="weigh">
-					<view class="label-text">
-						鎵f福鍚庡噣閲�
+				<!-- 鍑�閲峝iv -->
+				<view class="weight-box">
+					<view class="weigh-qualified">
+					<view>
+						鍚堟牸鍑�閲嶏細
 					</view>
-					<view class="count">{{ item.weight  || item.clean}}</view>
+					<view class="count">  {{  cleanWeight(item) }}</view>
 				</view>
+				<view class="weigh-qualified" v-for="el,index in unqualifiedArr(i)">
+					<view>
+						涓嶅悎鏍煎噣閲嶏細
+					</view>
+					<view class="count"> 	{{el.unqualifiedWeight || ''}}</view>
+				</view>
+				</view>
+				
 			</view>
+		</view>
 			<!-- 鍒ゆ柇鏄惁妫�楠岃川閲� -->
-			<view v-if="isShow(item)">
+			<view v-if="isShow(item) && isYanz()">
 				<view class="level">
-				<view style="width: 140rpx;">
+					<view style="width: 180rpx;">
+					<u--text text="渚涘簲鍟�"
+						size='32'></u--text>
+						
+				</view>
+				<view style="font-size: 35rpx;">{{ coalDetailsData.customerName || '' }}</view>
+				</view>
+
+				<view class="level">
+					<view style="width: 180rpx;">
+					<u--text text="鐗╂枡鍚嶇О"
+						size='32'></u--text>
+						
+				</view>
+				<view style="font-size: 35rpx;">{{ (coalDetailsData.coalName ? coalDetailsData.coalName: '') }}</view>
+				</view>
+				<view class="level">
+				<view style="width: 180rpx;">
 					<u--text text="鐗╄祫鏄庣粏"
 						size='32'></u--text>
 				</view>
@@ -78,7 +107,7 @@
 				</view>
 			</view>
 			<view class="level"
-				v-if='item.modifygoodsName||globalShowWeigh[i].modifyProductName'>
+				v-if='item.modifygoodsName ||globalShowWeigh[i].modifyProductName'>
 				<view style="width: 180rpx;">
 					<u--text text="鍝佸悕涓庤鏍�"
 						size='32'></u--text>
@@ -89,8 +118,9 @@
 						{{!flag?(globalShowWeigh[i].modifyProductName?globalShowWeigh[i].modifyProductName:item.modifygoodsName):(item.breed+'/'+item.spec)}}
 					</text>
 				</view>
+		
 			</view>
-			<view class="unqualifiedBreed">
+			<!-- <view class="unqualifiedBreed">
 				<view style="width: 180rpx;">
 					<u--text text="涓嶅悎鏍煎搧鍚�"
 						size='32'></u--text>
@@ -119,23 +149,29 @@
 					v-else-if="flag">
 					{{item.unqualifiedWeight}}
 				</view>
-			</view>
+			</view> -->
+
 			<view class="notice-num">
 				<view class="num-text"
 					style="margin-left: 10rpx;">
 					<u--text text="閫氱煡鏁伴噺"
 						size='32'></u--text>
 				</view>
-				<view class="num-input"
+				<view class="num-input "
 					v-if='roleType===4&&!flag'>
-					<u--input placeholder="璇疯緭鍏ラ�氱煡鏁伴噺"
+					<u-input placeholder="璇疯緭鍏ラ�氱煡鏁伴噺"
 						border="bottom"
 						clearable
-						v-model="item.num"></u--input>
+						style="width: 70%;"
+						v-model="item.num">
+					<template slot="suffix">
+						<text class="inp-unit">{{   item.numUnit}}</text>
+					</template>
+					</u-input>
 				</view>
 				<view class="num-show"
 					v-else-if="flag">
-					{{item.num}}
+					{{item.num + item.numUnit}}
 				</view>
 			</view>
 			<view class="notice-num">	
@@ -147,18 +183,23 @@
 				<view class="num-input"
 				v-if='roleType===4&&!flag'
 				>
-				<u--input placeholder="璇疯緭鍏ラ�氱煡閲嶉噺"
+				<u-input placeholder="璇疯緭鍏ラ�氱煡閲嶉噺"
 						border="bottom"
 						clearable
-						v-model="item.weight1"></u--input>
+						style="width: 70%;"
+						v-model="item.weight1">
+						<template slot="suffix">
+						<text class="inp-unit">{{   item.weightUnit  }}</text>
+					</template>
+					</u-input>
 				</view>
 				<view class="num-show"
 					v-else-if="flag">
-					{{item.weight1}}
+					{{item.weight1 + item.weightUnit }}
 				</view>
 			</view>
 			<!-- 鏂板鎵g綒绉嶇被銆� 鎵g綒閲戦锛屼笉鍚堟牸鍒ゅ畾绉嶇被-->
-			<view class="notice-num">	
+			<!-- <view class="notice-num">	
 					<view class="num-text"
 					style="margin-left: 10rpx;">
 					<u--text text="鎵g綒绉嶇被"
@@ -174,11 +215,11 @@
 				</view>
 				<view class="num-show"
 					v-else-if="flag">
-					{{item.penaltyType}}
+					{{item.penaltyType == '0' ? '鏃犳墸缃�' : '鍏朵粬鎵g綒'}}
 				</view>
-			</view>
+			</view> -->
 			<!-- 鎵g綒閲戦 -->
-			<view class="notice-num" v-if="item.penaltyType == '鍏朵粬鎵g綒'">	
+			<view class="notice-num">	
 					<view class="num-text"
 					style="margin-left: 10rpx;">
 					<u--text text="鎵g綒閲戦"
@@ -197,11 +238,31 @@
 					{{item.penaltyAmount}}
 				</view>
 			</view>
-			<!--涓嶅悎鏍煎垽瀹氱绫�  -->
-			<view class="notice-num" v-if="item.penaltyType == '鍏朵粬鎵g綒'" >	
+			<!-- 鍗曚环 -->
+			<view class="notice-num">	
 					<view class="num-text"
 					style="margin-left: 10rpx;">
-					<u--text text="涓嶅悎鏍煎垽瀹氱绫�"
+					<u--text text="鍗曚环"
+						size='32'></u--text>
+				</view>
+				<view class="num-input"
+				v-if='roleType===4&&!flag'
+				>
+				<u--input placeholder="璇疯緭鍏ュ崟浠�"
+						border="bottom"
+						clearable
+						v-model="item.unitPrice"></u--input>
+				</view>
+				<view class="num-show"
+					v-else-if="flag">
+					{{item.unitPrice}}
+				</view>
+			</view>
+			<!--涓嶅悎鏍煎垽瀹氱绫�  -->
+			<view class="notice-num">	
+					<view class="num-text"
+					style="margin-left: 10rpx;">
+					<u--text text="涓嶅悎鏍煎垽瀹�"
 						size='32'></u--text>
 				</view>
 				<view class="num-radio"
@@ -209,20 +270,23 @@
 				@click.stop="onFoucus"
 				style="height: 50rpx;"
 				>
-				<u-radio-group  size='32' v-model="item.unqualifiedType">
-				<u-radio  :label-size="25" :name="1"  :label="'闀垮害鎵g綒'" :disabled="disabled">闀垮害鎵g綒</u-radio>
+				<u-radio-group  size='32' v-model="item.penaltyType">
+				<u-radio  :label-size="25" :name="'1'"  :label="'瓒呭昂鎵g綒'" :disabled="disabled">瓒呭昂鎵g綒</u-radio>
 				<u-radio  :label-size="25" :name="'2'" :label="'鍘氬害鎵g綒'" :disabled="disabled">鍘氬害鎵g綒</u-radio>
 				<u-radio  :label-size="25" :name="'3'" :label="'瀵嗛棴鍣�'" :disabled="disabled">瀵嗛棴鍣�</u-radio>
 				</u-radio-group>
 				</view>
 				<view class="num-show"
 					v-else-if="flag">
-					{{item.unqualifiedType}} 
+					<text> {{item.penaltyType == 1 ? '瓒呭昂鎵g綒' : item.penaltyType == 2 ? '鍘氬害鎵g綒' :item.penaltyType == 3 ? '瀵嗛棴鍣�' : null }} </text>
 				</view>
 			</view>
 			</view>
-			<u-empty v-else icon-size="200"  text="''" >
+			<u-empty v-if=" isYanz() && !isShow(item) " icon-size="200"  text="''" >
 				<text>鏆傛湭楠岃川</text>
+			</u-empty>
+			<u-empty v-if="!isYanz()" icon-size="200"  text="''" >
+				<text>鏆傛棤鏁版嵁</text>
 			</u-empty>
 			<view style="display: flex;margin-top: 20rpx;margin-left: 20rpx;"
 				v-if="item.isImage">
@@ -252,6 +316,110 @@
 					:previewFullImage="true">
 				</u-upload>
 			</view>
+			<u--list
+			:height="0"
+			style="	margin-left: 50rpx;margin-top: 30rpx;"
+			>
+				<u--list-item
+				
+				    v-for="(el,index) in unqualifiedArr(i) "
+				    style=" box-shadow: 0px 0 0 0px #ccc;"
+					:key="index"
+					:height="0"
+				>
+					<u-cell
+						:title="(index + 1) +  '.' + '涓嶅悎鏍煎搧绫�'"
+						style="text-indent: 30RPX;"
+						@click="editItem(i,index)"
+					>
+					<text slot="value" @click.stop="deleteItem(i,index)" style="color: red;">鍒犻櫎</text>
+				</u-cell>
+		
+			<view>
+				<view class="unqualifiedBreed">
+				<view style="width: 180rpx;">
+					<u--text text="涓嶅悎鏍煎搧鍚�"
+						size='32'></u--text>
+				</view>
+				<view class="tag-select">
+					<text>
+						<!-- {{!flag?(globalShowWeigh[i].unqualifiedBreed?globalShowWeigh[i].unqualifiedBreed:item.unqualifiedBreed):(item.unqualifiedBreed||"璇烽�夋嫨")}} -->
+						{{  el.unqualifiedBreed  }}
+					</text>
+				</view>
+			</view>
+			</view>
+			<view>
+				<view class="notice-num">
+				<view class="num-text">
+					<u--text text="涓嶅悎鏍奸噸閲�"
+						size='32'></u--text>
+				</view>
+				<view class="num-input"
+					v-if='roleType===4&&!flag'>
+					<!-- <u--input placeholder="璇疯緭鍏ヤ笉鍚堟牸閲嶉噺"
+						border="bottom"
+						clearable
+						v-model="el.unqualifiedWeight"
+						readonly
+						@input='v=>unqualifiedWeightInputHandle(v,i,item.clean)'></u--input> -->
+						<view class="num-show"
+>					{{el.unqualifiedWeight || ''}}
+				</view>
+				</view>
+				<view class="num-show"
+					v-else-if="flag">
+					{{el.unqualifiedWeight || ''}}
+				</view>
+				
+			</view>
+			<!-- <view class="notice-num">
+				<view class="num-text">
+					<u--text text="涓嶅悎鏍煎搧鍒ゅ畾"
+						size='32'></u--text>
+				</view>
+				<view class="num-input"
+					v-if='roleType===4&&!flag'>
+						<view class="num-show">
+							{{selectlist.find(item=>item.value ==el.unqualifiedType ) ? selectlist.find(item=>item.value ==el.unqualifiedType ).name : ''  }}
+				</view>
+				</view>
+				<view class="num-show"
+					v-else-if="flag">
+					{{selectlist.find(item=>item.value ==el.unqualifiedType ) ? selectlist.find(item=>item.value ==el.unqualifiedType ).name : ''  }}
+				</view>
+				
+			</view> -->
+			<view class="notice-num">
+				<view class="num-text">
+					<u--text text="鍗曚环"
+						size='32'></u--text>
+				</view>
+				<view class="num-input"
+					v-if='roleType===4&&!flag'>
+					<!-- <u--input placeholder="璇疯緭鍏ヤ笉鍚堟牸閲嶉噺"
+						border="bottom"
+						clearable
+						v-model="el.unqualifiedWeight"
+						readonly
+						@input='v=>unqualifiedWeightInputHandle(v,i,item.clean)'></u--input> -->
+						<view class="num-show"
+>					{{el.penaltyUnitPrice || ''}}
+				</view>
+				</view>
+				<view class="num-show"
+					v-else-if="flag">
+					{{el.penaltyUnitPrice || ''}}
+				</view>
+				
+			</view>
+			
+			</view>
+			</u--list-item>
+		</u--list>
+		<!-- 澧炲姞涓嶅悎鏍艰鐭� -->
+
+		<button  class="addBtn" v-if="isShow(item) && isYanz()" type="primary"   :plain="false"  @click="addUnqualified(i)">娣诲姞涓嶅悎鏍煎搧绫�</button>
 			<!-- 鐗╄祫鏄庣粏 -->
 			<u-action-sheet :actions="goodsList"
 				:show="goodsShow"
@@ -279,6 +447,8 @@
 			</view>
 		</view>
 		<!-- 鏂板 楠岃川澶囨敞銆傞獙璐ㄨ鏄� -->
+		<view v-if=" isYanz()">
+			<view v-if="coalDetailsData.orderType == '澶栬喘'">
 		<view style="padding: 10rpx;">
 		<u-row  >
                     <u-col span="24" >
@@ -318,6 +488,7 @@
                     </u-col>
                 </u-row>
 				</view>
+			</view>
 		<view class="confirm-button"
 			v-if='roleType===4&&!flag'>
 			<u-button type="primary"
@@ -327,13 +498,15 @@
 				:loading="loading"
 				loading-text="纭"></u-button>
 		</view></view>
+		</view>
+		
 		<!-- 鐗╂枡鏄庣粏 -->
 		<view v-if="!current">
 			<view class="main-block"
 			v-for="(item,i) in goodsList"
 			:key="item.id">
 			<view class="level">
-				<view style="width: 140rpx;">
+				<view style="width: 180rpx;">
 					<u--text text="鐗╄祫鍚嶇О"
 						size='32'></u--text>
 				</view>
@@ -429,11 +602,12 @@
 		data() {
 			return {
 				qualityInstructions:"",
+			    indexFlag:0, // 涓嬫爣鏍囧織浣�
 				remarks:'',
 				selectlist:[
 					{
 						value: '1',
-						name:'闀垮害鎵g綒',
+						name:'瓒呭昂鎵g綒',
 						fontSize:'40'
 					},
 					{
@@ -519,13 +693,92 @@
 				return	 uni.getStorageSync('roleType')!== 4 && item.iszj == 1 ? true :  uni.getStorageSync('roleType')== 4 ? true : false;
 					 // 宸茬粡楠岃川
 				}
+			},
+			//鍒ゆ柇闇�涓嶉渶瑕侀獙璐�
+			isYanz(){
+				return function(item){
+				// return	  ( this.coalDetailsData.orderType !=='澶栬喘' ||   this.coalDetailsData.weighingType !=='鍥炵') ? false : true; 
+				if(this.coalDetailsData.orderType =='澶栬喘'){
+					if(this.coalDetailsData.weighingType == '鍥炵'){
+						return true
+					}else{
+						return false
+					}
+				}else if(this.coalDetailsData.orderType =='澶栭攢'){
+					return false;
+
+				}
+					 // 宸茬粡楠岃川
+				}
+			},
+			//璁$畻涓嶅悎鏍艰鏍兼暟缁�
+			unqualifiedArr(){
+				return function(index){
+					let arr = [];
+					let temp = [];
+					let noPin = [];
+					let noPrice = [];
+					const item = this.globalShowWeigh[index];
+					console.log(this.globalShowWeigh[index],'index')
+					if(item){
+					if(item.unqualifiedBreed){
+						arr = item.unqualifiedBreed.split(",");
+						if(item.unqualifiedWeights){
+							temp = item.unqualifiedWeights.toString().split(',');
+						}
+						if(item.unqualifiedType){
+							noPin = item.unqualifiedType.toString().split(',');
+
+						}
+						if(item.penaltyUnitPrice){
+							noPrice = item.penaltyUnitPrice.toString().split(',')
+						}
+						//  if(item.penaltyType){
+						// 	noPin = item.penaltyType.toString().split(',');
+						// }
+					  
+						 let result =  arr.length && arr.map((el,index)=>{
+						let obj = {unqualifiedBreed:el,unqualifiedWeight:temp[index],unqualifiedType:noPin[index],penaltyUnitPrice:noPrice[index]}
+						return obj
+					   })
+					   console.log(result,temp,'arr')
+					   return result;
+						
+					}else{
+						return []
+					}
+					}
+					
+
+				}
+			},
+			cleanWeight(){
+				return function(item){
+					console.log(item,'itemsssss')
+					if(!item.weight){
+						return ''
+					}else if(item.weight && !item.unqualifiedWeight){
+						return item.weight
+					}else if(item.weight && item.unqualifiedWeight){
+						return (item.weight - (item.unqualifiedWeight - 0)).toFixed(2)
+					}else{
+						return ''
+					}
+				}
 			}
+
+
+		},
+		onShow(params){
+			console.log(params,'paramss')
+			this.numAll(this.globalShowWeigh[this.indexFlag].unqualifiedWeights.split(","),this.indexFlag,this.showWeigh[this.indexFlag].clean)
 		},
 		mounted() {
-			this.roleType === 1 ? this.GetOrderPlan() : this.getTakeCoal()
+			this.roleType === 1 ? this.GetOrderPlan() : this.getTakeCoal();
+			
 		},
 		onLoad(params) {
-			console.log(params,this.showWeighCopyStorge,'params璺敱')
+			console.log(params,this.showWeighCopyStorge,this.globalShowWeigh,'params璺敱')
 			this.orderPlanId = params.orderPlanId ? params.orderPlanId : '';
 			this.flag = params.flag ? params.flag : false;
 			this.ModifiedOrderIndex = params.index
@@ -533,9 +786,45 @@
 			this.alterUnqualified = params.unqualified === "true" || false
 			this.havedSubmit = params.havedSubmit === "true" || false;
 			console.log(this.havedSubmit,'this.havedSubmit')
+			uni.$on("handClick", res => {
+				console.log(res.tempArr);
+				this.showWeigh[res.index].tempArr = res.tempArr;
+				// 娓呴櫎鐩戝惉
+				
+			})
 		},
 		methods: {
 			...mapMutations(['changeglobalShowWeigh']),
+			numAll(value, index, clean){
+				console.log(value,'valusess')
+				// 璁$畻鎵f福鍑�閲�
+				// 鍒ゆ柇鏄笉鏄湁鍑�閲嶆墠杩涜璁$畻
+				let x = new BigNumber(clean - 0)
+				// let y = new BigNumber(value - 0) // 鍥犱负value 鏄� 0 鎵�浠ラ渶瑕佸惊鐜� 鍙栧噺
+				let z = new BigNumber(this.showWeigh[index].cinderWeight -  0);
+				let y;
+				if(value.filter(Boolean) .length){
+					 y = value.reduce((p,n)=>{ 
+				return (p - 0) + (n - 0);
+ 				},0);
+				
+				}else{
+					 y = 0;
+				}
+				if(clean){
+					if(x.minus(y).minus(z).toFixed(2)  <= 0){
+						this.showWeigh[index].weight = '0';
+						this.$u.toast('褰撳墠鍑�閲嶄笉鍚堟牸锛岃妫�鏌ョ毊閲嶏紝姣涢噸鏄惁鍑嗙‘')
+					}else{
+						this.showWeigh[index].weight = x.minus(y).minus(z).toFixed(2) ;
+					}
+				}
+				
+				
+
+
+
+			},
 			getTakeCoal() {
 				uni.showLoading({
 					title: '鍔犺浇涓�'
@@ -549,24 +838,36 @@
 						this.orderCode = res.data.orderCode
 						this.showWeigh = this.coalDetailsData.tmTaskCoalItems ? this.coalDetailsData
 							.tmTaskCoalItems : [];
-						this.showWeigh = this.showWeigh.map(v => {
-							if(!v.penaltyType) v.penaltyType = '0'
+						this.showWeigh = this.showWeigh.map((v,i) => {
+							if(!v.tempArr){
+								v.tempArr = ''
+							}else{
+								v.tempArr = JSON.parse(v.tempArr)
+							}
+
 							return {
 								...v,
 								modifyProductName: '',
 								modifygoodsName: '',
 								fileList: [],
 								inspectionJpg: v.inspectionJpg.split(','),
-								isImage: v.inspectionJpg
+								isImage: v.inspectionJpg,
+								unqualifiedType:v.penaltyType,
+								tempArr:v.tempArr
 							}
 						})
 						this.showWeighCopy = JSON.parse(JSON.stringify(this.showWeigh))
 						uni.setStorageSync("showWeighCopyStorge", this.showWeighCopy)
-						if (this.havedSubmit) {
-							this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorgeOther'))
-						} else {
-							this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorge'))
-						}
+						uni.setStorageSync('showWeighCopyStorgeOther',this.showWeighCopy)
+						// if (this.havedSubmit) {
+						// 	this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorge'))
+						// 	this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorgeOther'))
+						// } else {
+						// 	this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorgeOther'))
+						// 	this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorge'))
+						// }
+						this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorge'))
+						 	this.changeglobalShowWeigh(uni.getStorageSync('showWeighCopyStorgeOther'))
 						//绉伴噸鏄庣粏鏃犳暟鎹椂鏄剧ず鐗╄祫鏄庣粏
 						if(!this.coalDetailsData.tmTaskCoalItems.length){
 							this.current = 0; 
@@ -617,25 +918,39 @@
 			},
 			// 鐐瑰嚮纭
 			confirmInput() {
-				this.loading = true;
-				let params = {};
+				let flag = true;
+				let params = {},unqualifiedWeightAll;
 				params.qualityInstructions = this.qualityInstructions;
 				params.remarks = this.remarks;
 				this.showWeigh = this.showWeigh.map((v, i) => {
-					if(!v.penaltyType) {
-						v.penaltyAmount = '';
-						v.unqualifiedType = '';
+				 v.unqualifiedType = '';
+					if(!v.unitPrice){
+						 flag = false;
+					}
+					
+						
+					
+					if(this.globalShowWeigh[i].unqualifiedWeights){
+					unqualifiedWeightAll = this.globalShowWeigh[i].unqualifiedWeights.split(",").reduce((p,n)=>{return (p - 0) + (n - 0)},0).toFixed(2)  || ''
+					}else{
+						unqualifiedWeightAll = 0;
 					}
 					return {
 						...v,
-						unqualifiedBreed: this.globalShowWeigh[i].unqualifiedBreed ? this.globalShowWeigh[i]
-							.unqualifiedBreed : v.unqualifiedBreed,
+						unqualifiedBreed: this.globalShowWeigh[i].unqualifiedBreed ,
 						breed: this.globalShowWeigh[i].modifyProductName ? this.globalShowWeigh[i].breed : v.breed,
 						spec: this.globalShowWeigh[i].modifyProductName ? this.globalShowWeigh[i].spec : v.spec,
-						inspectionJpg: v.fileList.map(v => v.url.replace(BaseUrl, '')).join(',')
-
+						inspectionJpg: v.fileList.map(v => v.url.replace(BaseUrl, '')).join(','),
+						unqualifiedWeights :this.globalShowWeigh[i].unqualifiedWeights ? this.globalShowWeigh[i].unqualifiedWeights : 0,
+						unqualifiedWeight :unqualifiedWeightAll ,
+						// penaltyType:this.globalShowWeigh[i].unqualifiedType,
+						tempArr:this.globalShowWeigh[i].tempArr ? JSON.stringify(this.globalShowWeigh[i].tempArr) : '',
+						penaltyUnitPrice:this.globalShowWeigh[i].penaltyUnitPrice,
+						
 					}
-				})
+				});
+				if(flag){
+				this.loading = true;
 				params.tmTaskCoalItems = this.showWeigh;
 				this.$reqPost('updateTmTaskCoalItem', params, 'json').then(
 					res => {
@@ -652,6 +967,11 @@
 							this.$u.toast(res.msg ? res.msg : '鎿嶄綔澶辫触')
 						}
 					})
+				}else{
+					this.$u.toast('璇疯緭鍏ュ崟浠�')
+					return 
+				}
+				
 			},
 			// 鏍¢獙鏁版嵁鏄惁鍚堟牸 
 			checkValue(data,target){
@@ -687,6 +1007,7 @@
 				this.showWeigh[this.goodsIndex].breed = val.breed
 				this.showWeigh[this.goodsIndex].spec = val.spec
 				this.showWeigh[this.goodsIndex].weightUnit = val.weightUnit
+				this.showWeigh[this.goodsIndex].weight1 = val.weight;
 			},
 			// 鍝佸悕涓庤鏍�
 			productNamePopoverShow(index) {
@@ -694,7 +1015,7 @@
 					// this.actionShow = true
 					// this.actionIndex = index
 					uni.navigateTo({
-						url: `/pages/public-page/selectSpecifications/selectSpecifications?index=${index}&takeCoalId=${this.orderPlanId}&productName=${this.willProductName}`
+						url: `/pages/public-page/selectSpecifications/selectSpecifications?index=${index}&takeCoalId=${this.orderPlanId}&productName=${this.willProductName}&pageFlag=${false}`
 					})
 				}
 			},
@@ -708,18 +1029,47 @@
 			},
 			// 鎶樻墸鐜囪緭鍏�
 			discountInputHandle(value, index, clean) {
+				let znums;
+				if(this.globalShowWeigh[index].unqualifiedWeights){
+					znums = this.globalShowWeigh[index].unqualifiedWeights.split(',')
+				}else{
+					znums = []
+				}
 				console.log('璁$畻鍑�閲�',value, index, clean)
-				this.showWeigh[index].cinderWeight = (value - 0)
+				this.indexFlag  = index; // 璁板綍鏍囪瘑浣�
+				if (
+					value &&
+					value.indexOf(".") < 0 &&
+					value != ""
+			) {
+				value = parseFloat(value);
+				value = value + ""; // 鍙樺洖涓哄瓧绗︿覆
+			}else{
+				value =  value.replace(/^(-)*(\d+)\.(\d\d).*$/,"$1$2.$3");
+				this.$nextTick(()=>{
+					this.showWeigh[index].cinderWeight  = value.replace(/[^\d.]/g, "");
+				});
+			} // 濡傛灉娌℃湁灏忔暟鐐癸紝棣栦綅涓嶈兘涓虹被浼间簬 01銆�02鐨勫��
+			
+				// 濡傛灉娌℃湁鍑�閲� 锛屽垯涓嶈繘琛岃绠�
+				if(clean){
+					this.showWeigh[index].cinderWeight = (value - 0)
 					let x = new BigNumber(clean - 0)
 					let y = new BigNumber(value - 0)
-					let z =  new BigNumber(this.showWeigh[index].unqualifiedWeight - 0)
-					console.log(clean,value,this.showWeigh[index].unqualifiedWeight - 0,'鎵f福');
-					if(x.minus(y).minus(z).toFixed(2) <= 0){
+					let z =  new BigNumber(znums.reduce((p,n)=>{
+						return (p - 0) + (n - 0)
+					},0))
+					console.log(clean,value,'鎵f福');
+					if(x.minus(y).toFixed(2) <= 0){
 						this.showWeigh[index].weight = '0';
 						this.$u.toast('褰撳墠鍑�閲嶄笉鍚堟牸锛岃妫�鏌ョ毊閲嶏紝姣涢噸鏄惁鍑嗙‘')
 					}else{
-						this.showWeigh[index].weight = x.minus(y).minus(z).toFixed(2)
+						this.showWeigh[index].weight = x.minus(y).minus(z);
 					}
+				}else{
+					this.$u.toast('褰撳墠鏃犲噣閲�')
+				}
+				
 				
 				
 			},
@@ -729,7 +1079,7 @@
 					// this.unqualifiedShow = true
 					// this.unqualifiedIndex = index
 					uni.navigateTo({
-						url: `/pages/public-page/selectSpecifications/selectSpecifications?index=${index}&takeCoalId=${this.orderPlanId}&unqualified=${this.willUnqualified}`
+						url: `/pages/public-page/selectSpecifications/selectSpecifications?index=${index}&takeCoalId=${this.orderPlanId}&unqualified=${this.willUnqualified}&type=edit`
 					})
 				}
 			},
@@ -743,6 +1093,7 @@
 			unqualifiedWeightInputHandle(value, index, clean) {
 				// 鍒ゆ柇鏄笉鏄湁鍑�閲嶆墠杩涜璁$畻
 				let x = new BigNumber(clean - 0)
+				this.indexFlag  = index; // 璁板綍鏍囪瘑浣�
 				let y = new BigNumber(value - 0)
 				let z = new BigNumber(this.showWeigh[index].cinderWeight -  0);
 				if(x.minus(y).minus(z).toFixed(2)  <= 0){
@@ -809,6 +1160,81 @@
 			},
 			closeEvent(){
 				this.focusSelect = false;
+			},
+			//澧炲姞涓嶅悎鏍艰鐭�
+			addUnqualified(i){
+				if (this.roleType === 4 && !this.flag) {
+					// this.unqualifiedShow = true
+					// this.unqualifiedIndex = index
+					this.indexFlag  = i; // 璁板綍鏍囪瘑浣�
+					uni.navigateTo({
+						url: `/pages/public-page/selectSpecifications/selectSpecifications?index=${i}&takeCoalId=${this.orderPlanId}&unqualified=${this.willUnqualified}&type=add`
+					})
+					console.log(this.globalShowWeigh[i],'2222')
+					// this.numAll(this.globalShowWeigh[i].unqualifiedWeights.split(","),i,this.showWeigh[i].clean)
+				}
+			},
+			deleteItem(i,index){
+			  let {unqualifiedBreed,unqualifiedWeights,unqualifiedType,penaltyUnitPrice} =  this.globalShowWeigh[i];
+			  this.indexFlag  = i; // 璁板綍鏍囪瘑浣�
+			  console.log(this.globalShowWeigh[i],'index')
+			  if (this.roleType === 4 && !this.flag) {
+				if( unqualifiedBreed !== void 0 && unqualifiedWeights!== void 0 ){
+				if(unqualifiedBreed.split(',').length > 1){
+					// unqualifiedBreed = unqualifiedBreed.split(',').splice(index ,1).join(",")
+					let strArr = unqualifiedBreed.split(',');
+					strArr.splice(index ,1)
+					unqualifiedBreed = strArr.join(",")
+				}else{
+					unqualifiedBreed = '';
+				}
+
+				if(unqualifiedWeights.split(',').length > 1){
+					// unqualifiedWeights = unqualifiedWeights.split(',').splice(index,1).join(",")
+					let strArr = unqualifiedWeights.split(',');
+					 strArr.splice(index ,1)
+					unqualifiedWeights = strArr.join(",")
+				}else{
+					unqualifiedWeights = '';
+				}
+
+				// if(unqualifiedType.split(",").length > 1){
+				// 	let strArr = unqualifiedType.split(',');
+				// 	 strArr.splice(index ,1)
+				// 	 unqualifiedType = strArr.join(",")
+				// }else{
+				// 	unqualifiedType = '';
+				// }
+				if(penaltyUnitPrice.split(",").length > 1){
+					let strArr = penaltyUnitPrice.split(',');
+					 strArr.splice(index ,1)
+					 penaltyUnitPrice = strArr.join(",")
+				}else{
+					penaltyUnitPrice = '';
+				}
+				 this.globalShowWeigh[i].unqualifiedBreed = unqualifiedBreed;
+				 this.globalShowWeigh[i].unqualifiedWeights = unqualifiedWeights;
+				//  this.globalShowWeigh[i].unqualifiedType = unqualifiedType; 
+				 this.globalShowWeigh[i].penaltyUnitPrice = penaltyUnitPrice;
+				 this.globalShowWeigh[i].tempArr.splice(index,1)
+				 console.log(this.globalShowWeigh[i].unqualifiedBreed,'unqualifiedBreed')
+				 this.changeglobalShowWeigh(this.globalShowWeigh)
+
+				 }
+				 this.numAll(this.globalShowWeigh[this.indexFlag].unqualifiedWeights.split(","),this.indexFlag,this.showWeigh[this.indexFlag].clean)
+				 console.log(this.globalShowWeigh[i],'deleteItem');
+			  }
+			 
+			},
+			editItem(i,index){
+				this.indexFlag  = i; // 璁板綍鏍囪瘑浣�
+				if (this.roleType === 4 && !this.flag) {
+					// this.unqualifiedShow = true
+					// this.unqualifiedIndex = index
+					uni.navigateTo({
+						url: `/pages/public-page/selectSpecifications/selectSpecifications?index=${i}&takeCoalId=${this.orderPlanId}&unqualified=${this.willUnqualified}&type=edit&indexTo=${index}`
+					})
+				}
 			}
 		},
 	}
@@ -821,9 +1247,28 @@
 		justify-content: space-between;
 		align-items: center;
 	}
+	.weigh-qualified{
+		display: flex;
+		flex-direction: row;
+		justify-content: space-around;
+		height: 160rpx;
+
+	}
+	.weight-box{
+		display: flex;
+		height: 160rpx;
+		margin-bottom: 20rpx;
+		flex-direction: column;
+		overflow-y: scroll;
+	}
 
 	/deep/ .u-picker {
 		height: 600rpx;
+	}
+	.addBtn{
+		width: 65%;
+		font-size: 26rpx;
+		background-color: #3c9cff;;
 	}
 
 	.main {
@@ -922,6 +1367,7 @@
 				.num-input {
 					width: 60%;
 					border-bottom: 1px solid rgb(218, 219, 222);
+					position: relative;
 				}
 				.num-radio{
 					width: 60%;

--
Gitblit v1.9.1