From 75811022288e2c4832974a1586f442608706c30a Mon Sep 17 00:00:00 2001
From: yangan <yangan0921@163.com>
Date: 星期四, 12 九月 2024 17:40:10 +0800
Subject: [PATCH] feat:司机接单pvc吨数提示

---
 pages/loadUnload-page/selectTarget/selectTarget.vue |  317 +++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 275 insertions(+), 42 deletions(-)

diff --git a/pages/loadUnload-page/selectTarget/selectTarget.vue b/pages/loadUnload-page/selectTarget/selectTarget.vue
index b038c8c..36c82a3 100644
--- a/pages/loadUnload-page/selectTarget/selectTarget.vue
+++ b/pages/loadUnload-page/selectTarget/selectTarget.vue
@@ -55,29 +55,38 @@
 				@click.stop="formHandle"></u-button>
 		</view> -->
 		<!-- 鍦哄湴 -->
+		
 		<view class='div-box'>
-				<u-empty mode="data"
-							icon="http://cdn.uviewui.com/uview/empty/data.png"
-							text="鏆傛棤鏁版嵁"
-							textSize="30"
-							iconSize="1000"
-							v-if="detailData.length===0"></u-empty>
 			<!-- 娓叉煋鍖哄煙 -->
-
-					<view class="history-information" 	v-for="item,i in detailData" 		
+			<u-collapse
+					:value='["1"]'
+					ref="myCollapse"
+					>
+					 <u-collapse-item
+					 name='1'
+					  ref="collapseHeight"
+					class="collItem"
+					:title="'寰呰鍗告敹鍙戝崟'">	
+					<view class="history-information"  
+					  @click="viewDetail(item)"
+						v-for="item,i in detailData" 		
 			:key="i">
 							<view class="first">
 								<view class="">{{ item.carNo || '' }}</view>
 								<view class=""></view>
 							</view>
 							<view class="second">
-								<view class="coal-name">{{ item.productNames || item.productName }}</view>
+								<view class="coal-name">{{ item.productNames?limitString(item.productNames,20,'...'):'' || ''}}</view>
 								<view class="order-type">{{ item.orderType || '' }}</view>
 							</view>
 							<view class="third">
 								<view class="third-line">
 									<view class="third-line_text">瀹㈡埛鍚嶇О:</view>
 									<view>{{ item.customerName }}</view>
+								</view>
+									<view class="third-line" v-if="/鑱氭隘涔欑儻鏍戣剛/.test(item.productName)">
+									<view class="third-line_text">鍖呰绫诲瀷:</view>
+									<view>{{ proType[item.packingType] }}</view>
 								</view>
 								<view class="third-line"  v-if="item.productName === '浜屾隘涔欑兎(EDC)'">
 									<view class="third-line_text">璐ㄦ鐘舵��:</view>
@@ -106,26 +115,158 @@
 					<uni-tr>
 						<uni-th width='120'
 						align="center">鎿嶄綔</uni-th>
-					    <uni-th align="center" width='120'>浜у搧</uni-th>
-						<uni-th align="center" width='200'>浠撳簱</uni-th>
+					    <uni-th align="center" width='800'>浜у搧</uni-th>
+						    <uni-th align="center" width='110'>绛夌骇</uni-th>
+						 <uni-th align="center" width='110'>鍖呰</uni-th>
+						<!-- <uni-th align="center" width='200'>浠撳簱</uni-th>
 						<uni-th align="center" width='100'>鐨噸</uni-th>
 						<uni-th align="center" width='100'>姣涢噸</uni-th>
 						<uni-th align="center" width='100'>鍑�閲�</uni-th>
-						<uni-th align="center" width='100'>鏁伴噺</uni-th>
-					    <!-- <uni-th align="center">浠撳簱</uni-th> -->
-						<!-- <uni-th align="center">鐘舵��</uni-th> -->
+						<uni-th align="center" width='100'>鏁伴噺</uni-th> -->
+					    <uni-th align="center"  width='120'>璁″垝閲�</uni-th> 
+						 <!-- <uni-th align="center"  width='100'>瀹為檯閲�</uni-th>  -->
 						
 					</uni-tr>
 					<uni-tr v-for="(subItem, index) in item.tmTaskCoalList" :key="index">
 						 <uni-td  align="center">
 					<view class="btnBox"> 
 						<!--   -->
-						<u-button   text='鏌ョ湅'  @click="viewDetail(subItem)"></u-button>
-						<u-button type='primary' text='纭瑁呭嵏'  v-if="subItem.flag && isBtnShow(item)" @click="enterOk(item,subItem)"></u-button>
+						<!-- <u-button   text='鏌ョ湅'  @click="viewDetail(subItem)"></u-button> -->
+						<u-button type='primary' text='纭瑁呭嵏'  size='mini' v-if="subItem.flag && isBtnShow(item)" @click.native.stop="enterOk(item,subItem)"></u-button>
 						</view></uni-td>
-						<uni-td align="center">
+						<uni-td align="left">
 							<view>{{ subItem.productName }}</view></uni-td>
+							<uni-td align="center">
+							<view>{{ subItem.productGrade }}</view></uni-td>
+							<uni-td align="center">
+						<view>{{ proType[item.packingType] }}</view>
+					</uni-td>
+					<!-- <uni-td>
+						<view>{{ subItem.bunkerName }}</view>
+					</uni-td>  
 					<uni-td>
+						<view class="name" v-if="subItem.skin">{{ Number(subItem.skin).toFixed(2) || ''  }}</view>
+					</uni-td>
+					<uni-td>
+						<view class="name" v-if="subItem.hair"> {{  Number(subItem.hair).toFixed(2) || ''  }}</view>
+					</uni-td>
+						<uni-td>
+						<view class="name" v-if="(subItem.clean || (subItem.clean && subItem.clean === 0))">{{ Number(subItem.clean).toFixed(2) || ''}}</view>
+					</uni-td>
+					<uni-td>
+						<view class="name">{{ subItem.productQuantity }}</view>
+					</uni-td> -->
+					<uni-td align="right">
+						<view class="name">{{ subItem.planMeasure }}</view>
+					</uni-td>
+					<!-- <uni-td>
+						<view class="name">{{ subItem.realityMeasure }}</view>
+					</uni-td> -->
+<!-- 					
+				聽   <uni-td align="center">
+					<view>{{ subItem.bunkerName }}</view></uni-td> -->
+					  <!-- <uni-td align="center">
+					<view  class="name">{{ subItem.statusView }}</view></uni-td> -->
+					 
+				</uni-tr>
+				</uni-table>
+		 </view>
+					</view>
+						 
+						<u-empty mode="data"
+							icon="http://cdn.uviewui.com/uview/empty/data.png"
+							text="鏆傛棤鏁版嵁"
+							textSize="30"
+							iconSize="1000"
+							v-if="detailData.length===0"></u-empty>
+					 </u-collapse-item>
+			</u-collapse>
+		</view>
+		<!-- 宸茶鍗告敹鍙戝崟 -->
+		<view class='div-box'>
+			<!-- 娓叉煋鍖哄煙 -->
+			<u-collapse
+
+					ref="myCollapse"
+					>
+					 <u-collapse-item
+					 name='1'
+					  
+					class="collItem"
+					:title="'宸茶鍗告敹鍙戝崟'">	
+					<view class="history-information" 	v-for="item,i in historyData" 		
+			:key="i">
+							<view class="first">
+								<view class="">瑁呭嵏鏃ユ湡锛� {{ item.sendDate || '' }}</view>
+								<view class=""></view>
+							</view>
+							<view class="second">
+								<view class="coal-name">{{ item.productNames || item.productName }}</view>
+								<view class="order-type">{{ item.orderType || '' }}</view>
+							</view>
+							<view class="third">
+								<view class="third-line">
+									<view class="third-line_text">瀹㈡埛鍚嶇О:</view>
+									<view>{{ item.customerName }}</view>
+								</view>
+									<view class="third-line" v-if="/鑱氭隘涔欑儻鏍戣剛/.test(item.productName)">
+									<view class="third-line_text">鍖呰绫诲瀷:</view>
+									<view>{{ proType[item.packingType] }}</view>
+								</view>
+								<view class="third-line"  v-if="item.productName === '浜屾隘涔欑兎(EDC)'">
+									<view class="third-line_text">璐ㄦ鐘舵��:</view>
+									<view> <u-tag :text="checkStatusList[item.checkStatus]" plain > </u-tag></view>
+								</view>
+							</view>
+							<view class="fourth">
+								
+									<view
+										style="height: 24rpx">
+										
+									</view>
+							
+								<view class="senddate">{{ item.carNo }}</view>
+							</view>
+							<view class="fourth">
+								<view class="fourth-icon">
+									<view
+										style="width: 26rpx;height: 26rpx;line-height: 26rpx;background: url('https://wrzs.czjlchem.com:9090/appimg/image/banner/carnNUm.png') no-repeat;background-size: cover;">
+									</view>
+								</view>
+								<view class="senddate">{{ item.orderCode }}</view>
+							</view>
+												 <view class="table">
+			<uni-table border stripe 
+			emptyText="鏆傛棤鏇村鏁版嵁">
+					<uni-tr>
+						<uni-th width='120'
+						align="center">鎿嶄綔</uni-th>
+					    <uni-th align="center" width='800'>浜у搧</uni-th>
+						    <uni-th align="center" width='90'>绛夌骇</uni-th>
+						 <uni-th align="center" width='90'>鍖呰</uni-th>
+						<!-- <uni-th align="center" width='200'>浠撳簱</uni-th>
+						<uni-th align="center" width='100'>鐨噸</uni-th>
+						<uni-th align="center" width='100'>姣涢噸</uni-th>
+						<uni-th align="center" width='100'>鍑�閲�</uni-th>
+						<uni-th align="center" width='100'>鏁伴噺</uni-th> -->
+					    <uni-th align="center"  width='100'>璁″垝閲�</uni-th> 
+						 <!-- <uni-th align="center"  width='100'>瀹為檯閲�</uni-th>  -->
+						
+					</uni-tr>
+					<uni-tr v-for="(subItem, index) in item.tmTaskCoalList" :key="index">
+						 <uni-td  align="center">
+					<view class="btnBox"> 
+						<!--   -->
+						<u-button type='primary' text='鎷煎崟' size='mini'  v-if="isPinShow(item)" @click="pinDan(subItem)"></u-button>
+						</view></uni-td>
+						<uni-td w align="center">
+							<view>{{ subItem.productName }}</view></uni-td>
+							<uni-td align="center">
+							<view>{{ subItem.productGrade }}</view></uni-td>
+							<uni-td>
+						<view>{{ proType[item.packingType] }}</view>
+					</uni-td>
+					<!-- <uni-td>
 						<view>{{ subItem.bunkerName }}</view>
 					</uni-td>
 					<uni-td>
@@ -139,6 +280,9 @@
 					</uni-td>
 					<uni-td>
 						<view class="name">{{ subItem.productQuantity }}</view>
+					</uni-td> -->
+					<uni-td>
+						<view class="name">{{ subItem.planMeasure }}</view>
 					</uni-td>
 <!-- 					
 				聽   <uni-td align="center">
@@ -150,8 +294,15 @@
 				</uni-table>
 		 </view>
 					</view>
-				
-
+						 
+						<u-empty mode="data"
+							icon="http://cdn.uviewui.com/uview/empty/data.png"
+							text="鏆傛棤鏁版嵁"
+							textSize="30"
+							iconSize="1000"
+							v-if="detailData.length===0"></u-empty>
+					 </u-collapse-item>
+			</u-collapse>
 		</view>
 		<u-action-sheet :actions="firstClassActionsList"
 			:show="firstClassShow"
@@ -160,22 +311,28 @@
 			@close='firstClassClose'
 			@select="firstClassSelectClick"></u-action-sheet>
 			<u-modal :show="enterZx"
-				:title="'鎻愮ず'"
+				:title="'纭瑁呭嵏'"
 				@close="closeModal"
+				:width='740'
 				@cancel="cancelModal"
 				@confirm="confirmModal"
 				:closeOnClickOverlay="true"
 				:showCancelButton="true">
 				<view class="slot-content">
-					鏄惁纭瑁呭嵏锛�
-					<view v-if="isNumOk || isClean">
-						<text>浜у搧鍚嶇О锛歿{activeObj.productName}}</text>
+					<view v-if="isNumOk || isClean||isFlagNum">
+						<view>浜у搧鍚嶇О锛歿{activeObj.productName}}</view>
+						<view>浠撳簱锛歿{activeObj.bunkerName}}</view>
+						<view v-if="activeObj.isWeight === 1">
+						<view>鐨噸锛歿{ Number(activeObj.skin).toFixed(2) || ''}}</view>
+						<view>姣涢噸锛歿{Number(activeObj.hair).toFixed(2) || ''}}</view>
+						<view >鍑�閲嶏細{{ Number(activeObj.clean).toFixed(2) || ''}}</view>
+						</view>
 						<view class="queren">
 							<text>璇疯緭鍏�</text>锛�
 							  <u--input
 							     type='digit'
 							     border="bottom"
-								:placeholder="isNumOk ?  '鏁伴噺' :'鎶樺惃'"
+								:placeholder="/鑱氭隘涔欑儻鏍戣剛/.test(activeObj.productName) ? '瀹為檯鍚ㄦ暟' :  isNumOk ?  '鏁伴噺' :'鎶樺惃'"
 								v-model="checkNum"
 							>
 							</u--input>
@@ -189,7 +346,7 @@
 							<view v-if="activeObj.containerNumber"><span>闆嗚绠卞彿锛�</span>{{activeObj.containerNumber}}</view>
 							
 					</view>
-							<view>鏄惁绌鸿溅鍑哄巶: <u-radio-group
+							<view style="display:flex;margin-top:20rpx">鏄惁绌鸿溅鍑哄巶: <u-radio-group
 								v-model="isEmptyCar"
 								 placement="row"
 								 iconPlacement="right"
@@ -237,6 +394,7 @@
 
 <script>
 	import { mapState, mapMutations, mapGetters } from 'vuex';
+	import combinedTitle from '@/components/combined-title/combined-title.vue';
 	export default {
 		props: {
 			loadUnloadData: {
@@ -247,12 +405,13 @@
 		computed:{
 			isBtnShow(){
 				return function(item){
-					console.log(item,'itemssss')
 					if(!item){
 						return false
 					}else{
 						if(this.errorStatusList.includes(item.status)){
 							return false
+						}else if (item.productName ==='浜屾隘涔欑兎(EDC)' && item.checkStatus !== 7){
+							return false;
 						}else{
 							return true;
 						}
@@ -260,6 +419,20 @@
 					
 				}
 
+			},
+			isPinShow(){
+				return function(item){
+					if(!item){
+						return false
+					}else{
+						if(	!item.orderType === '澶栭攢' || item.status === 6){
+							return false
+						}else{
+							return true;
+						}
+					}
+					
+				}
 			},
 			messageText(){
 				if(this.messageObj.carNo){
@@ -277,6 +450,7 @@
 				handler(v) {
 					console.log(v,'vvvvvv')
 					this.loadUnloadData = v;
+					this.getTodayOrder();
 				},
 				deep: true,
 				immediate: true
@@ -307,12 +481,18 @@
 		},
 		data() {
 			return {
+				proType:['鏁h','娑叉隘鐡惰','缃愯','PVC25','PVC80','PVC1150','PVc1200'],
+				coalStatus: ['棰嗗彇', '棰勭害', '绛惧埌', '鍏ュ満', '绉扮毊', '绉版瘺', '绂诲満', '鍏ョ鎴�', '鍑虹鎴�', '鍏ヤ粨搴�', '鍑轰粨搴�', '鏀剧┖', '浣滃簾', '鍏ュ満鐢宠',
+					'杩涘叆鍦洪櫌', '寮傚父瀹℃牳涓�', '杩斿洖鍔犲噺鍚�', '瓒呮椂', '鎵撳嵃涓�', '鎵撳嵃涓�', '濉啓', '鏀剧┖纭涓�', '瓒呮渶澶ф瘺閲嶇‘璁や腑','琛ユ墦','鍏ュ満妫�鏌�','璐ㄦ涓�',
+					'绂诲満妫�鏌�','宸叉墦鍗�','瑁呭嵏','杩斿洖鍔犲噺鍚ㄧ‘璁や腑'
+				],
 				dataForm: {
 					firstClass: "",
 					secondClass: "",
 					orderType: '',
 					bunkerIds:""
 				},
+				historyData:[], 
 				messageObj:{
 					carNo:'',
 				},
@@ -325,6 +505,7 @@
 				typeText:'', // 纭瑁呭嵏涓夌绫诲瀷
 				isNumOk:false, //璁′欢
 				isClean:false, // 鎶樺惃
+				isFlagNum:false,// PVCV
 				// 鍦哄湴鎿嶄綔鑿滃崟
 				firstClassActionsList: [],
 				firstClassShow: false,
@@ -357,15 +538,39 @@
 			};
 		},
 		methods: {
+				limitString(str, limit, suffix = '...') {
+							if (str.length <= limit) return str;
+							return str.slice(0, limit) + suffix;
+						},
 				getPVCWeight(){
 			
 			},
-			viewDetail(item){
-				//鏌ョ湅鏀跺彂鍗曡鎯�
-				uni.navigateTo({
-					url: `/subPages/loadUnlaodPageDetail/detail?id=${item.id}&checkId=${item.checkId}`
-				});
-			
+		  	handleOpenChange() {
+				     // 鏂规硶涓�
+      console.log(this.$refs.collapseHeight);
+    //   let long = this.$refs.collapseHeight.length;
+    //   setTimeout(() => {
+    //     for (let i = 0; i < long; i++) {
+    //       this.$refs.collapseHeight[i].queryRect();// 璁$畻楂樺害
+    //     }
+    //   }, 20);
+ 
+        // 鏂规硶浜�
+        this.$nextTick(() => {
+        this.$refs.collapseHeight.init()
+		});
+						
+			},
+			//鑾峰彇宸茶鍗告敹鍙戝崟
+			getTodayOrder(){
+				this.$reqGet('getTodayConfirmedTaskCoalList',{ bunkerIds:this.dataForm.bunkerIds }).then(res=>{
+				 if(res.code === 0){
+					this.historyData = res.data;
+				 }else{
+						this.historyData = [];
+				 }
+
+				})
 			},
 			getUserInfo() {
 				this.$reqGet('getUserEntity').then(res => {
@@ -396,7 +601,7 @@
 						
 						
 							this.getDetailData();
-					
+							this.getTodayOrder();					
 						}
 					} else {
 						this.$u.toast('鍔犺浇澶辫触')
@@ -425,17 +630,25 @@
 						   })
 						 return item;
 						});
+						this.handleOpenChange();
 						console.log(this.detailData,'detailData')
 					}else if(res.code === 1){
 						this.detailData = [];
 						this.$u.toast(res.msg ? res.msg : '鎿嶄綔澶辫触锛侊紒')
 					}
+				
 				}).catch(err=>{
 					this.detailData = [];
 					this.$u.toast(res.msg ? res.msg : '鎿嶄綔澶辫触锛侊紒')
 				})
 
 			},
+						viewDetail(value){
+				//鏌ョ湅鏀跺彂鍗曡鎯�
+					uni.navigateTo({
+					url: `/subPages/fayunPlanDetails/fayunPlanMore/fayunPlanMore?id=${value.id}&orderType=${value.orderType}`,
+					})
+						},
 			firstClassSelectClick(val) {
 				this.dataForm.firstClass = val.name;
 				this.dataForm.bunkerIds= val.id;
@@ -481,31 +694,38 @@
 				if( (parintItem.orderType === '澶栬喘' ||parintItem.orderType === '澶栬喘閫�' ) && item.isWeight === 0){
 					this.isNumOk = true;
 					this.isClean = false;
+					this.isFlagNum = false;
 					//鍥炴樉璁℃暟閲�
 				    this.checkNum  = item.productQuantity ? item.productQuantity : '';
 				}else if( parintItem.orderType ==='澶栬喘' &&  item.isWeight === 1){
 					this.isClean = true;
 					this.isNumOk = false;
+				     this.isFlagNum = false;
 				}else{
 					this.isNumOk = false;
 					this.isClean = false;
+				     this.isFlagNum = false;
 				}
 				//鑱氭隘涔欑儻鏍戣剛
 				 if(parintItem.orderType ==='澶栭攢' && (/鑱氭隘涔欑儻鏍戣剛/.test(item.productName) || item.productName === 'PVC')  && (item.packingType === 3 || item.packingType === 4)){
-					this.isNumOk = true;
+					this.isNumOk = false;
 					this.isClean  = false;
+				   this.isFlagNum = true;;
+				   this.checkNum = item.planMeasure;
 				}
 				//鐡惰娑叉隘鏉′欢
 				//EDC 璐ㄦ瀹屾垚鏂瑰彲纭
 				if(item.packingType === 1){ 
 					this.isNumOk = true;
 					this.isClean = false;
+					 this.isFlagNum = false;
 				}
 				//
 				//pvc澶у寘鑷姩璁$畻鎶樺惃
 				if((/鑱氭隘涔欑儻鏍戣剛/.test(item.productName) || item.productName === 'PVC')  && item.packingType === 5){
-					this.isNumOk = true;
+					this.isNumOk = false;
 					this.isClean = false;
+					 this.isFlagNum = true;
 				}
 				if(parintItem.orderType === '澶栬喘'){
 					this.isEmptyCar = '1';
@@ -544,7 +764,9 @@
 					productQuantity:this.isNumOk ? this.checkNum : '',
 					discount:this.isClean ? this.checkNum : null,
 					isEmptyCar:this.isEmptyCar,
-					isPretendDischar:this.activeObj.isPretendDischar
+					isPretendDischar:this.activeObj.isPretendDischar,
+					realityMeasure:this.isFlagNum ? this.checkNum : null,
+					productId:this.isFlagNum ? this.activeObj.productId : null,
 				 },'json').then(res=>{
 					uni.hideLoading();
 					console.log(res,'rez')
@@ -555,10 +777,11 @@
 						uni.hideLoading();
 					}else{
 					  this.$u.toast('鎿嶄綔鎴愬姛');
-					}
-					setTimeout(() => {
+					  setTimeout(() => {
 						this.getDetailData();
 					}, 500);
+					}
+					
 				
 				}).catch((err) => {
 					 this.$u.toast(err.msg || '澶辫触');
@@ -582,10 +805,17 @@
 						url: `/subPages/checkTestDetails/index`
 					})
 
+			},
+			pinDan(item){
+				console.log('pindan')
+				uni.navigateTo({
+						url: `/subPages/splicingOrders/index?taskCoalId=${item.id}`
+					})
 			}
 
 		},
 		onShow(){
+			console.log('瑙﹀彂ONShow')
 			uni.showLoading({
 					title: "鍔犺浇涓�"
 				})
@@ -600,7 +830,7 @@
 				}).then(() => {
 				
 				});
-			
+						
 
 		},
 	}
@@ -703,9 +933,12 @@
 
 	}
 	.btnBox{
-		min-width: 130rpx;
-		display: flex;
+		min-width: 100rpx;
+		// display: flex;
 		justify-content: space-around;
+	   :v-deep	.u-button__text{
+			font-size: 12px!important;
+		}
 	    text{
 			color: #035cfb;
 		}
@@ -715,7 +948,7 @@
 		margin: 10px;
 		// margin-top: vww(100);
 		position: relative;
-		top: vww(-160);
+		top: vww(-200);
 		.top-tag{
 			    width: 60%;
 				margin-left: 55%;

--
Gitblit v1.9.1