From 3e5ccc0369e0b8e61ce50e186246e57c1547ae00 Mon Sep 17 00:00:00 2001
From: 819527061@qq.com <123456>
Date: 星期二, 30 七月 2024 18:00:59 +0800
Subject: [PATCH] 申请复磅细节

---
 pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue |  274 ++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 204 insertions(+), 70 deletions(-)

diff --git a/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue b/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue
index 4510c28..98bd6b3 100644
--- a/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue
+++ b/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue
@@ -10,8 +10,8 @@
 				<view class="top_right">
 					<view class="">
 						绉伴噸:
-						<u--text :type="realTimeWeigh == 0 ? 'error' : 'success'"
-							:text="realTimeWeigh == 0 ? '寮傚父' : '姝e父'"
+						<u--text :type="weightStatusType"
+							:text="weightStatus"
 							size="34"></u--text>
 					</view>
 					<view class="">
@@ -22,14 +22,14 @@
 					</view>
 				</view>
 			</view>
-			<view class="bottom"><text>TIP:褰撳墠鐘舵�佷负姝e父鏃跺彲浠ョО閲�</text></view>
+			<view class="bottom"><text>褰撳墠鐘舵�佷负姝e父鏃跺彲浠ョО閲�</text></view>
 		</view>
 		<view class="bottom-block">
 			<view class="block-main">
 				<view class="main-information"
 					v-if="weighList.orderType=='杞叆'||weighList.orderType=='杞嚭'">
 					<view class="prefix">
-						鍙戣揣鍦扮叅鍦�:
+						鍙戣揣鍦板熀鍦�:
 					</view>
 					<view class="suffix">
 						{{ weighList.filedName || '' }}
@@ -38,7 +38,7 @@
 				<view class="main-information"
 					v-if="weighList.orderType=='杞叆'||weighList.orderType=='杞嚭'">
 					<view class="prefix">
-						鏀惰揣鍦扮叅鍦�:
+						鏀惰揣鍦板熀鍦�:
 					</view>
 					<view class="suffix">
 						{{ weighList.toFiledName || '' }}
@@ -51,60 +51,59 @@
 				</view>
 				<view class="main-information"
 					v-if="weighList.orderType!=='杞叆'||weighList.orderType!=='杞嚭'">
-					<view class="prefix">鐭垮満:</view>
+					<view class="prefix">浠撳簱:</view>
 					<view class="suffix">{{ weighList.deptName || '' }}</view>
 				</view>
 				<view class="main-information"
 					v-if="weighList.orderType!=='杞叆'||weighList.orderType!=='杞嚭'">
-					<view class="prefix">鐓ゅ満:</view>
+					<view class="prefix">鍩哄湴:</view>
 					<view class="suffix">{{ weighList.filedName || '' }}</view>
 				</view>
-				<view class="main-information">
-					<view class="prefix">鐓ょ鍚嶇О:</view>
+				<!-- <view class="main-information">
+					<view class="prefix">鐗╂枡鍚嶇О:</view>
 					<view class="suffix">{{ weighList.coalName || '' }}</view>
-				</view>
+				</view> -->
 				<view class="main-information">
 					<view class="prefix">璁㈠崟绫诲瀷:</view>
 					<view class="suffix">{{ weighList.orderType || '' }}</view>
 				</view>
-				<view class="main-information">
+				<!-- <view class="main-information"  v-if="isweight">
 					<view class="prefix">鐨噸:</view>
 					<view class="suffix">
 						{{currentSkin}}
 					</view>
 				</view>
-				<view class="main-information">
+				<view class="main-information"  v-if="isweight">
 					<view class="prefix">姣涢噸:</view>
 					<view class="suffix">
 						{{currentHair}}
 					</view>
 				</view>
-				<view class="main-information">
+				<view class="main-information" v-if="isweight">
 					<view class="prefix">鍑�閲�:</view>
 					<view class="suffix">
 						{{ currentClean}}
 					</view>
 				</view>
-				<view class="main-information">
+				<view class="main-information" v-else>
+					<view class="prefix">鍑�閲�:</view>
+					<view class="suffix">
+						{{ isWeightclean}}
+					</view>
+				</view> -->
+				<!-- <view class="main-information">
 					<view class="prefix">璁㈠崟浣欓噺:</view>
 					<view class="suffix">{{ weighList.orderSurplus || 0 }}</view>
-				</view>
+				</view> -->
 			</view>
 		</view>
 		<!--  绉伴噸鍘嗗彶-->
-		<weigh-item :list="weighHistory"></weigh-item>
+		<weigh-item :list="weighHistory" class="weighingDecive-item"></weigh-item>
 		<view class="three">
-			<!-- 鏀剧┖ -->
-			<u-button type="primary"
-				text="鏀剧┖"
-				plain
-				@click="evacuation"
-				throttleTime="500"
-				:disabled="!isEvacuation"></u-button>
-			<!-- 澶栭攢璁㈠崟绉扮毊鏃讹紝杩斿洖鍔犲噺鍚ㄦ寜閽疆鐏般�傜О姣涙椂鍙敤.澶栬喘璁㈠崟锛屼笉鍑虹幇杩斿洖鍔犲噺鍚ㄧ殑鎸夐挳 -->
+			<!-- .澶栬喘璁㈠崟锛屼笉鍑虹幇杩斿洖鍔犲噺鍚ㄧ殑鎸夐挳 -->
 			<u-button type="primary"
 				text="纭畾绉伴噸"
-				:disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh "
+				:disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh ||globalWarning || weighList.isReWeigh == 1"
 				:loading="isConfirmWeighLoading"
 				loadingText="纭"
 				@click="confirmWeigh"></u-button>
@@ -120,7 +119,15 @@
 				:loading="UnloadingAgainLoading"
 				loadingText="纭"
 				:disabled="isweigh||realTimeWeigh == 0"
-				v-if='canUnload'></u-button>
+				v-if='canUnload && isJixuxiehuo'></u-button>
+			<!-- 鏀剧┖ -->
+			<u-button type="primary"
+				text="鏀剧┖"
+				plain
+				@click="evacuation"
+				throttleTime="500"
+				:disabled="!isEvacuation"></u-button>
+
 		</view>
 		<!-- 鏀剧┖寮圭獥 -->
 		<view class="evacuationModal">
@@ -135,13 +142,13 @@
 </template>
 
 <script>
-	let socket = null;
 	import { webSocketUrl, onlineurl } from '@/api/request.js';
-	import { mapState, mapMutations } from 'vuex';
+	import { mapState, mapMutations,mapGetters } from 'vuex';
 	import combinedTitle from '@/components/combined-title/combined-title.vue';
 	import weighItem from '@/components/weighItem.vue'
 	export default {
 		onLoad(params) {
+			this.isWeighing = params.isWeighing; // 褰撳墠鏄笉鏄洖纾呯殑
 			this.takeCoalId = params.takeCoalId;
 			this.weighData.sceneId = params.sceneId;
 			this.weighData.gateCameraId = params.gateCameraId;
@@ -155,7 +162,7 @@
 				this.weighData.overTmWaixiao = 1
 			}
 			this.changeweighHouseCode(params.weighHouseCode);
-			this.changeWeigh(0)
+			this.changeWeigh('')
 		},
 		components: {
 			combinedTitle,
@@ -163,6 +170,8 @@
 		},
 		data() {
 			return {
+				isWeighing:'',
+				timer:null,
 				weighData: {
 					//纭绉伴噸鎺ュ彛鍙傛暟
 					deptId: '',
@@ -191,7 +200,8 @@
 				temporaryWeighObj: {
 					skin: null,
 					hair: null,
-					clean: null
+					clean: null,
+					isWeightclean:null,
 				},
 				infraredStatus: false, // 绾㈠鐘舵�侊紝
 				// 鏀剧┖鎺у埗
@@ -221,44 +231,124 @@
 		},
 		watch: {
 			realTimeWeigh(newV, oldV) {
-				if (this.weighList.orderType == '澶栭攢' || this.weighList.orderType == '鍐呴攢' || this.weighList.orderType ==
-					'杞嚭') {
-					if (!this.showWeigh.skin) {
-						this.temporaryWeighObj.skin = newV;
-					} else {
-						this.temporaryWeighObj.hair = newV;
-						this.isweigh = Number(this.currentClean) > this.weighList.orderSurplus || Number(this
-							.currentClean) < 0;
-					}
-				} else if (this.weighList.orderType == '澶栬喘' || this.weighList.orderType == '鍐呰喘' || this.weighList
-					.orderType == '杞叆') {
-					if (!this.showWeigh.hair) {
-						this.temporaryWeighObj.hair = newV;
-					} else {
-						this.temporaryWeighObj.skin = newV;
-						this.isweigh = Number(this.currentClean) < 0 || this.showWeigh.skin < newV && this.showWeigh
-							.skin > 0;
-					}
-				}
+
 			},
 			// 鐩戝惉閲嶉噺鍙樺寲
 			globalweigh: {
 				handler: function(newV) {
 					this.weighData.weigh = this.realTimeWeigh = newV;
-					console.log(this.realTimeWeigh, '鐪熷疄閲嶉噺鏀瑰彉浜�');
+          console.log(newV,'new====')
+          console.log(this.isweight,'isweight=====')
+          console.log(this.currentClean,'this.currentClean=====')
+					if  ((this.weighList.orderType == '澶栭攢' || this.weighList.orderType == '鍐呴攢' || this.weighList
+						.orderType == '杞嚭')) {
+						if (!this.showWeigh.skin) {
+							this.temporaryWeighObj.skin = newV;
+						} else {
+							this.temporaryWeighObj.hair = newV;
+							this.isweigh = Number(this.currentClean) < 0;
+						}
+					} else if ( (this.isweight) && (this.weighList.orderType == '澶栬喘' || this.weighList.orderType == '鍐呰喘' || this.weighList
+						.orderType == '杞叆')) {
+						if (!this.showWeigh.hair) {
+							this.temporaryWeighObj.hair = newV;
+						} else {
+							this.temporaryWeighObj.skin = newV;
+							this.isweigh = Number(this.currentClean) < 0 || this.showWeigh.skin < newV && this
+								.showWeigh
+								.skin > 0;
+						}
+					}else if((this.weighList.orderType == '澶栬喘' || this.weighList.orderType == '鍐呰喘' || this.weighList
+						.orderType == '杞叆') && (!this.isweight)){
+							if (!this.showWeigh.skin) {
+                this.temporaryWeighObj.skin = newV;
+                this.temporaryWeighObj.isWeightclean = newV;
+              } else {
+                this.temporaryWeighObj.isWeightclean = newV;
+
+                this.isweigh = Number(this.currentClean) < 0;
+              }
+						}
 				},
 				deep: true
 			}
 		},
+		onPullDownRefresh() {
+			if (!this.globalisconnect && !this.globalisUploadimg && this.globalisLogin) {
+				if (!this.is_open_socket) {
+					this.$store.dispatch('websocketInit')
+					this.changeisconnect(false);
+					console.log('绉伴噸鐨剋s');
+					uni.stopPullDownRefresh();
+				} else {
+					uni.stopPullDownRefresh();
+				}
+			}
+      setTimeout(() => {
+        this.init(() => {
+          uni.stopPullDownRefresh()
+        })
+      },1000)
+		},
 		onShow() {
 			this.init();
-			this.changeisLogin(true)
 			// this.realTimeWeigh = 0
+			  if (this.timer) {
+                clearTimeout(this.timer)
+            }
+            this.timer = setTimeout(() => {
+                if (!this.globalweigh) {
+                    console.log('绉伴噸鏃惰嚜鍔ㄩ噸杩�');
+                    // this.socketTask.close();
+                    this.changesocketTask(null);
+                    this.changereconnectNum({ connectNum: 1, isWeigh: true })
+                    this.$store.dispatch('websocketInit');
+
+                }
+            }, 3000)
+				uni.showToast({
+							title: '姝e湪杩炴帴鏈嶅姟锛岃绋嶇瓑',
+							icon: 'none'
+						})
 		},
+		  onHide() {
+            clearTimeout(this.timer)
+        },
+        onUnload() {
+            clearTimeout(this.timer)
+        },
+
 		computed: {
-			...mapState(['globalweigh', 'globalinfraredStatus']),
+			...mapState(['globalweigh', 'globalinfraredStatus', 'globalWarning', 'globalisconnect', 'globalisUploadimg',
+				'globalisLogin', 'socketTask','is_open_socket'
+			]),
 			token() {
 				return uni.getStorageSync('token');
+			},
+			weightStatus(){
+				//绉伴噸鏄惁寮傚父   1.鏃犺溅 2.杩炴帴涓� 3.姝e父;
+				if(this.realTimeWeigh == 0){
+					return '鏃犺溅'
+				}else if(!this.is_open_socket){
+					return '杩炴帴涓�'
+				}else if(this.is_open_socket  && this.realTimeWeigh){
+					return '姝e父'
+				}else{
+				   return '寮傚父'
+				}
+			},
+			weightStatusType(){
+				switch (this.weightStatus) {
+					case '鏃犺溅':
+						return 'error'
+					case '杩炴帴涓�':
+						return 'error'
+					case '姝e父':
+						return 'success'
+					default:
+						return 'error'
+				}
+
 			},
 			// 鍔犲噺鐓ゆ寜閽鐢ㄤ笌鍚�
 			addAndSubtractCoalDisabled() {
@@ -287,20 +377,54 @@
 				return this.weighList.tmTaskCoalItems ? this.weighList.tmTaskCoalItems : []
 			},
 			currentHair() {
+				if (this.weighList.orderType == '澶栭攢' || this.weighList.orderType == '鍐呴攢' || this.weighList.orderType ==
+					'杞嚭') {
+					return this.temporaryWeighObj.hair ? this.temporaryWeighObj.hair : ''
+				}
 				return this.temporaryWeighObj.hair ? this.temporaryWeighObj.hair : this.showWeigh.skin ? (this.showWeigh
 					.skin || '') : (this.showWeigh.hair || '')
 			},
 			currentSkin() {
-				return this.temporaryWeighObj.skin || ''
+				return this.temporaryWeighObj.skin ? this.temporaryWeighObj.skin : (this.showWeigh.skin || '')
 			},
 			currentClean() {
 				if (!this.currentSkin) return ''
-				return (this.currentHair - this.currentSkin).toFixed(2)
-			}
+				if (this.weighList.orderType == '澶栬喘' || this.weighList.orderType == '鍐呰喘' || this.weighList
+					.orderType == '杞叆') {
+					return (this.currentHair - this.currentSkin).toFixed(2)
+				} else {
+					return !this.showWeigh.skin ? this.currentSkin : (this.currentHair - this.currentSkin) > 0 ? (this
+						.currentHair - this.currentSkin).toFixed(2) : ''
+				}
+
+			},
+			isWeightclean(){
+				console.log(this.temporaryWeighObj,'his.temporaryWeighObj')
+				return this.temporaryWeighObj.skin || ''
+			},
+			isweight(){
+				if(this.isWeighing){
+					if(this.isWeighing == '涓嶅洖纾�'){
+						return false
+					}else{
+						return true
+					}
+				}else{
+					return true
+				}
+			},
+      isJixuxiehuo() {   //鏄惁鏄剧ず缁х画鍗歌揣鎸夐挳
+        console.log(this.weighList?.tmTaskCoalItems,'this.weighList?.tmTaskCoalItems')
+        if(this.weighList?.tmTaskCoalItems && this.weighList?.tmTaskCoalItems.length > 0) {
+          return this.weighList?.tmTaskCoalItems.length > 0
+        }else {
+          return false
+        }
+      },
 		},
 		methods: {
-			...mapMutations(['changeweighHouseCode', 'changeisLogin', 'changeWeigh']),
-			init() {
+			...mapMutations(['changeweighHouseCode', 'changeisLogin', 'changeWeigh','changereconnectNum','changesocketTask']),
+      init() {
 				uni.showLoading({
 					title: '鍔犺浇涓�'
 				})
@@ -318,6 +442,7 @@
 						this.outBuy = (this.weighList.orderType.indexOf('閿�') !== -1) && this.showWeigh.skin > 0;
 						// 缁х画鍗歌揣鍙湁澶栬喘绫诲瀷绗簩娆′細鏈�
 						this.canUnload = this.weighList.orderType === '澶栬喘' && this.showWeigh.hair > 0;
+            console.log(this.canUnload,'this.canUnload====')
 					}
 				});
 			},
@@ -352,20 +477,24 @@
 						console.log(res, '绉伴噸鎺ュ彛');
 						if (res.code == 0) {
 							this.$u.toast('绉伴噸鎴愬姛');
+              this.isConfirmWeighLoading = false;
 							setTimeout(() => {
 								uni.navigateBack({
 									delta: 1
 								});
-								this.isConfirmWeighLoading = false;
+
 							}, 1000);
 						} else {
-							this.$u.toast('绉伴噸澶辫触锛岃绋嶅悗閲嶈瘯');
+							this.$u.toast('绉伴噸澶辫触锛岃绋嶅悗閲嶈瘯' + (res.msg ? res.msg : ''));
 						}
 					})
 					.catch(err => {
 						this.isConfirmWeighLoading = false;
 						console.log(err);
-					});
+						this.$u.toast(err.msg ? err.msg : '绉伴噸澶辫触');
+					}).finally(() => {
+          this.isConfirmWeighLoading = false;
+        });
 			},
 			// 鍔犲噺鐓�
 			addAndSubtractCoal() {
@@ -373,7 +502,6 @@
 					deptId: this.weighData.deptId,
 					sceneId: this.weighData.sceneId,
 					carNo: this.weighData.carNo,
-					tmId: this.weighData.tmId,
 					filedId: this.weighData.filedId,
 					tmId: this.weighData.tmId,
 					gateCameraId: this.weighData.gateCameraId,
@@ -392,7 +520,7 @@
 						}, 1000);
 						console.log(res, '鍔犲噺鐓�');
 					} else {
-						this.$u.toast('鎿嶄綔澶辫触锛岃绋嶅�欓噸璇�');
+						this.$u.toast(res.msg);
 					}
 				});
 			},
@@ -405,7 +533,6 @@
 					carNo: this.weighData.carNo,
 					tmId: this.weighData.tmId,
 					filedId: this.weighData.filedId,
-					tmId: this.weighData.tmId,
 					gateCameraId: this.weighData.gateCameraId,
 					equipmentCode: this.weighData.equipmentCode,
 					tmCode: this.weighData.tmCode,
@@ -421,7 +548,7 @@
 							});
 						}, 1000);
 					} else {
-						this.$u.toast('鎿嶄綔澶辫触锛岃绋嶅�欓噸璇�');
+						this.$u.toast(res.msg);
 					}
 				})
 			},
@@ -452,6 +579,12 @@
 
 <style lang="scss"
 	scoped>
+	.weighingDecive-item{
+		min-height: 200rpx!important;
+		.weigh-history {
+			min-height: 200rpx!important;
+		}
+	}
 	@mixin flex {
 		display: flex;
 		justify-content: space-between;
@@ -694,7 +827,7 @@
 		.bottom-block {
 			width: calc(100% - 60rpx);
 			box-sizing: border-box;
-			height: 630rpx;
+			height: 420rpx;
 			margin: 0 vww(15) vww(15) vww(15);
 			background: #ffffff;
 			box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12);
@@ -705,8 +838,8 @@
 
 			.block-main {
 				width: 94%;
-				height: 565rpx;
-				margin-top: vww(10);
+				height: 420rpx;
+				margin-top: vww(5);
 				@include flex;
 				justify-content: space-around;
 				align-items: flex-start;
@@ -738,15 +871,16 @@
 
 		.three {
 			margin: 0 auto vww(5);
+			margin-bottom: vww(60);
 			width: 96%;
 			display: grid;
-			grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
+			grid-template-columns: repeat(auto-fit, minmax(140rpx, 1fr));
 			justify-content: center;
 			gap: vww(10);
 			color: #939393;
 
 			.u-button {
-				width: vww(90);
+				width: vww(70);
 			}
 		}
 
@@ -768,4 +902,4 @@
 			justify-content: space-between;
 		}
 	}
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.1