From d4bffaa2419bc3e3d6b1af4a6314065c67a8cbc0 Mon Sep 17 00:00:00 2001
From: qingyiay <2386314947@qq.com>
Date: 星期一, 03 七月 2023 16:57:13 +0800
Subject: [PATCH] ws增加报错关闭重连功能

---
 pages/driver-page/driver-index/bill-of-lading-details/weighDetail/weighDetail.vue |  181 +++++++++++++++++++++++++++++++--------------
 1 files changed, 124 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 566490d..ba0d57b 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
@@ -1,26 +1,34 @@
 <!-- 鏌ョ湅鐨瘺鍑�鏄庣粏 -->
 <template>
 	<view class="main">
+		<u-empty mode="data"
+			icon="http://cdn.uviewui.com/uview/empty/data.png"
+			textSize="30"
+			iconSize="1000"
+			v-if="showWeigh.length===0"></u-empty>
 		<view class="main-block"
 			v-for="(item,i) in showWeigh"
 			:key="i">
 			<view class="weigh-item">
 				<view class="item">
 					<view class="concrete"
-						style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/skin.png') no-repeat;background-size: cover;">
-						鐨�</view>
+						:style="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/skin.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }">
+						鐨�
+					</view>
 					<view class="num">{{ item.skin }}</view>
 				</view>
 				<view class="item">
 					<view class="concrete"
-						style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/hair.png') no-repeat;background-size: cover;">
-						姣�</view>
+						:style="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/hair.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }">
+						姣�
+					</view>
 					<view class="num">{{ item.hair }}</view>
 				</view>
 				<view class="item">
 					<view class="concrete"
-						style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/clean.png') no-repeat;background-size: cover;">
-						鍑�</view>
+						:style="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/clean.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }">
+						鍑�
+					</view>
 					<view class="num">{{ item.clean }}</view>
 				</view>
 			</view>
@@ -29,53 +37,68 @@
 					<view class="label-text">
 						鎶樻墸鐜�
 					</view>
-					<view v-if='roleType!==1'
-						class="count">{{item.discount}}%</view>
-					<view v-else
-						class="count-input"><u--input placeholder="璇疯緭鍏ユ姌鎵g巼"
+					<view v-if='roleType===4&&!flag'
+						class="count-input">
+						<u--input placeholder="璇疯緭鍏ユ姌鎵g巼"
 							border="bottom"
 							clearable
 							v-model="item.discount"
-							@input='v=>discountInputHandle(v,i,item.clean)'></u--input></view>
+							@input='v=>discountInputHandle(v,i,item.clean)'></u--input>
+					</view>
+					<view v-else-if='flag'
+						class="count">{{ item.discount }}%
+					</view>
 				</view>
 				<view class="weigh">
 					<view class="label-text">
 						鎶樻墸鍚庨噸閲�
 					</view>
-					<view class="count">{{item.discountWeight}}</view>
+					<view class="count">{{ item.discountWeight }}</view>
 				</view>
 			</view>
 			<view class="level">
 				<u-tag :text="item.level||'璇烽�夋嫨'"
 					plain
-					@click="popoverShow(i)"></u-tag>
+					@click="popoverShow(i)"
+					v-if='item.level||roleType===4'></u-tag>
+				<u-tag :text="item.productName||'璇烽�夋嫨'"
+					plain
+					@click="productNamePopoverShow(i)"
+					v-if='item.level||roleType===4'></u-tag>
 			</view>
-			<view class="confirm-button"
-				v-if='roleType===1'>
-				<u-button type="primary"
-					shape="circle"
-					text="纭"
-					@click="confirmInput(item)"
-					:loading="loading"
-					loading-text="纭"></u-button>
-			</view>
-			<view v-if='roleType===1'>
+			<view v-if='roleType===4'>
 				<u-picker :show="show"
 					:columns="columns"
 					@cancel='cancel'
 					@confirm='confirm'></u-picker>
 			</view>
+			<view class="">
+				<u-action-sheet :actions="actionsList"
+					:show="actionShow"
+					cancelText='鍙栨秷'
+					:closeOnClickOverlay='true'
+					@close='productNameClose'
+					@select="selectClick"></u-action-sheet>
+			</view>
+		</view>
+		<view class="confirm-button"
+			v-if='roleType===4&&!flag'>
+			<u-button type="primary"
+				shape="circle"
+				text="纭"
+				@click="confirmInput"
+				:loading="loading"
+				loading-text="纭"></u-button>
 		</view>
 	</view>
 </template>
 
 <script>
-	import loginVue from '../../../../login/login.vue';
+	import { onlineurl } from '@/api/request.js'
 	export default {
 		data() {
 			return {
 				orderPlanId: "",
-				index: null,
 				coalDetailsData: {},
 				showWeigh: [],
 				discountrate: "",
@@ -85,7 +108,14 @@
 					['杞昏川', '涓川', '閲嶈川']
 				],
 				level: '璇烽�夋嫨',
-				selectIndex: null
+				selectIndex: null,
+				// 浜у搧鍒楄〃
+				actionsList: [],
+				actionShow: false,
+				actionIndex: null,
+				onlineurl,
+				havedInput: false,
+				flag: false
 			};
 		},
 		computed: {
@@ -95,10 +125,11 @@
 		},
 		onLoad(params) {
 			this.orderPlanId = params.orderPlanId ? params.orderPlanId : ''
-			this.index = params.index ? params.index : ''
+			this.flag = params.flag ? params.flag : false
 		},
 		onShow() {
 			this.roleType === 1 ? this.GetOrderPlan() : this.getTakeCoal()
+			this.getJcProductList()
 		},
 		methods: {
 			getTakeCoal() {
@@ -110,7 +141,12 @@
 						this.coalDetailsData = res.data;
 						this.showWeigh = this.coalDetailsData.tmTaskCoalItems ? this.coalDetailsData
 							.tmTaskCoalItems : [],
-							uni.hideLoading()
+							this.showWeigh.forEach(v => {
+								if (!v.discount) {
+									v.discount = ''
+								}
+							})
+						uni.hideLoading()
 					} else {
 						this.$u.toast('鍔犺浇澶辫触')
 						uni.hideLoading()
@@ -122,14 +158,8 @@
 				this.$reqGet('GetOrderPlan').then(res => {
 					if (res.data) {
 						this.coalDetailsData = res.data;
-						this.showWeigh = this.coalDetailsData[this.index].tmTaskCoalItems ? this.coalDetailsData[
-								this.index].tmTaskCoalItems : [],
-							// this.showWeigh = this.showWeigh.map(v => {
-							// 	return {
-							// 		...v,
-							// 		loading: false
-							// 	}
-							// })
+						this.showWeigh = this.coalDetailsData[this.index].tmTaskCoals ? this.coalDetailsData[
+								this.index].tmTaskCoals : [],
 							uni.hideLoading();
 					} else {
 						this.$u.toast('鍔犺浇澶辫触')
@@ -137,15 +167,31 @@
 					}
 				});
 			},
+			getJcProductList() {
+				this.$reqGet('getJcProductList').then(res => {
+					if (res.code === 0) {
+						this.actionsList = res.data.map(v => {
+							return {
+								...v,
+								name: v.productName
+							}
+						})
+					}
+				})
+			},
 			// 杈撳叆鎶樻墸鐜囧悗鐐瑰嚮纭
-			confirmInput(item) {
+			confirmInput() {
 				this.loading = true
-				console.log(this.coalDetailsData);
-				this.$reqPost('updateTmTaskCoalItem', this.coalDetailsData[this.index].tmTaskCoalItems, 'json').then(
+				this.$reqPost('updateTmTaskCoalItem', this.showWeigh, 'json').then(
 					res => {
 						if (res.code == 0) {
 							this.loading = false
-							this.$u.toast('鎿嶄綔鎴愬姛')
+							this.$u.toast('鎿嶄綔鎴愬姛,鍗冲皢杩斿洖涓婁竴椤�')
+							setTimeout(() => {
+								uni.navigateBack({
+									delta: 1
+								})
+							}, 800)
 						} else {
 							this.loading = false
 							this.$u.toast('鎿嶄綔澶辫触')
@@ -154,20 +200,36 @@
 			},
 			// 閫夋嫨璐ㄩ噺
 			popoverShow(i) {
-				this.show = true
-				this.selectIndex = i
+				console.log();
+				if (this.roleType === 4 && !this.flag) {
+					this.show = true
+					this.selectIndex = i
+				}
+			},
+			// 閫夋嫨浜у搧
+			productNamePopoverShow(i) {
+				if (this.roleType === 4 && !this.flag) {
+					this.actionShow = true
+					this.actionIndex = i
+				}
 			},
 			confirm(e) {
 				this.show = false
-				this.coalDetailsData[this.index].tmTaskCoalItems[this.selectIndex].level = e.value[0]
+				this.showWeigh[this.selectIndex].level = e.value[0]
 			},
 			cancel() {
 				this.show = false
 			},
+			productNameClose() {
+				this.actionShow = false
+			},
+			selectClick(val) {
+				this.showWeigh[this.actionIndex].productName = val.productName
+				this.showWeigh[this.actionIndex].productId = val.id
+			},
 			// 鎶樻墸鐜囪緭鍏�
 			discountInputHandle(value, index, clean) {
-				console.log(value, index);
-				this.coalDetailsData[this.index].tmTaskCoalItems[index].discountWeight = (Number(value) * clean) / 100
+				this.showWeigh[index].discountWeight = ((Number(value) * clean) / 100).toFixed(2)
 			}
 		},
 	}
@@ -186,10 +248,11 @@
 	}
 
 	.main {
-		width: 100%;
-		height: 100vh;
+		width: 96%;
+		height: 100%;
+		min-height: 400rpx;
 		background-color: #fff;
-		margin: 0 auto;
+		margin: 10rpx auto;
 		display: flex;
 		flex-direction: column;
 
@@ -250,7 +313,7 @@
 
 					.count-input {
 						width: 70%;
-						// border-bottom: 1px solid rgb(218, 219, 222);
+						border-bottom: 1px solid rgb(218, 219, 222);
 
 					}
 				}
@@ -263,19 +326,23 @@
 			}
 
 			.level {
-				width: 120rpx;
+				width: 40%;
 				margin-top: 30rpx;
 				margin-left: 80rpx;
+				display: flex;
+				justify-content: space-between;
 			}
 
-			.confirm-button {
-				position: absolute;
-				bottom: 10rpx;
-				right: 10rpx;
+		}
 
-				/deep/ .u-button {
-					width: 180rpx !important;
-				}
+		.confirm-button {
+			width: 100%;
+			@include flex;
+			justify-content: center;
+			margin-bottom: 40rpx;
+
+			/deep/ .u-button {
+				width: 180 rpx !important;
 			}
 		}
 	}

--
Gitblit v1.9.1