From 1ddeee845f9c7e4917d5c991820ed4d1baddfeae Mon Sep 17 00:00:00 2001
From: qingyiay <2386314947@qq.com>
Date: 星期四, 06 四月 2023 08:12:17 +0800
Subject: [PATCH] 增加放空

---
 pages/public-page/forward/forward.vue |  156 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 119 insertions(+), 37 deletions(-)

diff --git a/pages/public-page/forward/forward.vue b/pages/public-page/forward/forward.vue
index 5878218..70f2284 100644
--- a/pages/public-page/forward/forward.vue
+++ b/pages/public-page/forward/forward.vue
@@ -12,7 +12,7 @@
 					<view class="forward-card-amount">
 						<view class="forward-card-amount-input"><u--input v-model="val.carNum" placeholder="璇疯緭鍏ヨ浆鍙戞暟閲�"></u--input></view>
 						<u-checkbox-group v-model="val.checkboxValue1" placement="column" @change="v => checkboxChange(v, index)">
-							<u-checkbox :customStyle="{ marginBottom: '8px' }" size="30" labelSize="30" label="鍏ㄩ儴杞彂" name="鍏ㄩ儴杞彂"></u-checkbox>
+							<u-checkbox :customStyle="{ marginBottom: '8px' }" size="30" labelSize="30" label="鍏ㄩ儴杞彂" name="鍏ㄩ儴杞彂" :disabled="val.ischecked"></u-checkbox>
 						</u-checkbox-group>
 					</view>
 				</u-form-item>
@@ -32,14 +32,18 @@
 					<view class="" v-if="!tabHuoDai">
 						<u-cell-group>
 							<u-cell v-for="(item, index) in fleetData" :key="index" :title="item.name">
-								<view class="cell-util" slot="value"><u-button @click="forwardFleetObjectSelect(item)" text="閫夋嫨" type="primary" size="mini"></u-button></view>
+								<view class="cell-util" slot="value">
+									<u-button @click="forwardFleetObjectSelect(item, index)" text="閫夋嫨" type="primary" size="mini"></u-button>
+								</view>
 							</u-cell>
 						</u-cell-group>
 					</view>
 					<view class="" v-else-if="tabHuoDai">
 						<u-cell-group>
 							<u-cell v-for="(item, index) in huoDaiData" :key="index" :title="item.name">
-								<view class="cell-util" slot="value"><u-button @click="forwardHuoDaiObjectSelect(item)" text="閫夋嫨" type="primary" size="mini"></u-button></view>
+								<view class="cell-util" slot="value">
+									<u-button @click="forwardHuoDaiObjectSelect(item, index)" text="閫夋嫨" type="primary" size="mini"></u-button>
+								</view>
 							</u-cell>
 						</u-cell-group>
 					</view>
@@ -54,6 +58,7 @@
 
 export default {
 	onLoad(params) {
+		console.log(params, '杞彂椤甸潰鐨勫弬鏁�');
 		// 瀹㈡埛
 		this.cars2 = Number(params.cars2);
 		this.carNumSurplus1 = Number(params.carNumSurplus1);
@@ -169,66 +174,141 @@
 					break;
 			}
 		},
-		checkboxChange(value, index) {
-			console.log('澶嶉�夋鍙樺寲', value, index);
-			if (value.length != 0) {
-				console.log(this.forwardSurplus, '璐т唬杞彂鍏ㄩ儴鏁伴噺');
-				this.jhOrderPlanForwardList[index].carNum = this.forwardSurplus;
+		allrelay(x, y) {
+			let a = 0;
+			if (y != 0) {
+				a = x + y;
+				return a;
 			} else {
-				this.jhOrderPlanForwardList[index].carNum = null;
+				return x;
+			}
+		},
+		allrelayto(x, y) {
+			let a = 0;
+			if (y != 0) {
+				a = x - y;
+				return a;
+			} else {
+				return x;
+			}
+		},
+		checkboxChange(value, index) {
+			uni.setStorageSync('allrelay', this.jhOrderPlanForwardList[index].carNum);
+			this.jhOrderPlanForwardList = this.jhOrderPlanForwardList.map((v, i) => {
+				return {
+					...v,
+					ischecked: false
+				};
+			});
+			if (value.length != 0) {
+				let tempforwardSurplus = this.forwardSurplus;
+				let tempcarNumSurplus1 = this.carNumSurplus1;
+				// 璁$畻鍏ㄩ儴杞彂鏁�
+				// 瀹㈡埛
+				if (this.roleType == 1) {
+					this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.jhOrderPlanForwardList[index].carNum, tempcarNumSurplus1);
+				}
+				tempcarNumSurplus1 = 0;
+				// 璐т唬
+				if (this.roleType == 2) {
+					this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.jhOrderPlanForwardList[index].carNum, tempforwardSurplus);
+				}
+				tempforwardSurplus = 0;
+				// 閫夋嫨涓�涓悗鍏朵綑绂佹澶嶉��
+				this.jhOrderPlanForwardList.forEach((v, i) => {
+					if (i !== index) {
+						v.ischecked = true;
+					}
+				});
+			} else {
+				let tempforwardSurplus = this.forwardSurplus;
+				let tempcarNumSurplus1 = this.carNumSurplus1;
+				// 璐т唬
+				if (this.roleType == 2) {
+					this.jhOrderPlanForwardList[index].carNum = this.allrelayto(this.jhOrderPlanForwardList[index].carNum, this.forwardSurplus);
+				}
+				// 瀹㈡埛
+				if (this.roleType == 1) {
+					this.jhOrderPlanForwardList[index].carNum = this.allrelayto(this.jhOrderPlanForwardList[index].carNum, this.carNumSurplus1);
+				}
 			}
 		},
 		// 鑾峰彇璐т唬鍒楄〃
 		getAllHuoDaiByCustomerId() {
 			this.$reqGet('getAllHuoDaiByCustomerId').then(res => {
 				this.huoDaiData = res.data;
-				console.log('璐т唬鍒楄〃', res);
 			});
 		},
 		// 鑾峰彇杞﹂槦鍒楄〃
 		getFleet() {
 			this.$reqGet('getFleet').then(res => {
 				this.fleetData = res.data;
-				console.log('杞﹂槦鍒楄〃', res);
 			});
 		},
 		// 杞彂
 		forwardObjectClick(index) {
 			this.selectPopupShow = true;
 			this.index = index;
-			console.log(this.huoDaiData, this.fleetData, '杞彂');
 		},
 		selectPopupClose() {
 			this.selectPopupShow = false;
 		},
-		selectPopupOpen() {
-			console.log('寮瑰嚭妗嗘墦寮�浜�');
-		},
+		selectPopupOpen() {},
 		// 杞彂閫夋嫨璐т唬
-		forwardHuoDaiObjectSelect(item) {
-			this.selectPopupShow = false;
-			this.jhOrderPlanForwardList[this.index].xsUserId = item.userId;
-			this.jhOrderPlanForwardList[this.index].name = item.name;
-			this.jhOrderPlanForwardList[this.index].fleetId = 0;
-			console.log('璐т唬閫夋嫨', this.jhOrderPlanForwardList[this.index]);
+		forwardHuoDaiObjectSelect(item, index) {
+			this.$nextTick(() => {
+				let isableAdd = this.jhOrderPlanForwardList.filter(v => item.name === v.name);
+				if (isableAdd.length > 0) {
+					this.$u.toast('瀛樺湪閲嶅娣诲姞');
+					this.selectPopupShow = true;
+				} else {
+					this.selectPopupShow = false;
+					this.jhOrderPlanForwardList[this.index].xsUserId = item.userId;
+					this.jhOrderPlanForwardList[this.index].name = item.name;
+					this.jhOrderPlanForwardList[this.index].fleetId = 0;
+				}
+			});
 		},
 		// 杞彂閫夋嫨杞﹂槦
-		forwardFleetObjectSelect(item) {
-			this.selectPopupShow = false;
-			this.jhOrderPlanForwardList[this.index].fleetId = item.id;
-			this.jhOrderPlanForwardList[this.index].name = item.name;
-			this.jhOrderPlanForwardList[this.index].xsUserId = 0;
-			console.log('杞﹂槦閫夋嫨', this.jhOrderPlanForwardList[this.index]);
-		},
-		addForm() {
-			this.jhOrderPlanForwardList.push({
-				orderPlanId: this.orderPlanId,
-				name: '',
-				carNum: 0,
-				xsUserId: 0,
-				fleetId: 0,
-				checkboxValue1: ''
+		forwardFleetObjectSelect(item, index) {
+			this.$nextTick(() => {
+				let isableAdd = this.jhOrderPlanForwardList.filter(v => item.name === v.name);
+				if (isableAdd.length > 0) {
+					this.$u.toast('瀛樺湪閲嶅娣诲姞');
+					this.selectPopupShow = true;
+				} else {
+					this.selectPopupShow = false;
+					this.jhOrderPlanForwardList[this.index].fleetId = item.id;
+					this.jhOrderPlanForwardList[this.index].name = item.name;
+					this.jhOrderPlanForwardList[this.index].xsUserId = 0;
+				}
 			});
+		},
+		// 娣诲姞涓�缁勮〃鍗�
+		addForm() {
+			// 鍒ゆ柇鏄惁鏈変竴涓閫夛紝濡傛灉鏈夊垯绂佹鏂板姞鐨勫閫夛紝娌℃湁鍒欎笉绂佹
+			let ischeck = this.jhOrderPlanForwardList.some(v => v.ischecked == true);
+			if (!ischeck) {
+				this.jhOrderPlanForwardList.push({
+					orderPlanId: this.orderPlanId,
+					name: '',
+					carNum: 0,
+					xsUserId: 0,
+					fleetId: 0,
+					checkboxValue1: '',
+					ischecked: false
+				});
+			} else {
+				this.jhOrderPlanForwardList.push({
+					orderPlanId: this.orderPlanId,
+					name: '',
+					carNum: 0,
+					xsUserId: 0,
+					fleetId: 0,
+					checkboxValue1: '',
+					ischecked: true
+				});
+			}
 		},
 		// 鍒犻櫎涓�缁勮〃鍗�
 		deleteGroup(index, v) {
@@ -250,6 +330,9 @@
 		// 鎻愪氦
 		submitForm() {
 			let isPass = false;
+			if (this.jhOrderPlanForwardList.length === 0) {
+				this.$u.toast('璇疯嚦灏戦�夋嫨涓�缁勮浆鍙戝璞�');
+			}
 			this.jhOrderPlanForwardList.forEach(v => {
 				if (isNaN(Number(v.carNum)) || Number(v.carNum) <= 0) {
 					this.$u.toast('璇疯緭鍏ュ悎娉曟暟瀛�');
@@ -281,7 +364,6 @@
 			}
 		},
 		tabClick(item) {
-			console.log('tab鐐瑰嚮', item);
 			if (item.name == '璐т唬') {
 				this.tabHuoDai = true;
 			} else {

--
Gitblit v1.9.1