From 29658de29b2eb5292bf0c2fad7427b374b769ebc Mon Sep 17 00:00:00 2001
From: qingyiay <2386314947@qq.com>
Date: 星期三, 10 五月 2023 20:29:31 +0800
Subject: [PATCH] 样式修改,引入字体,修改逻辑
---
pages/public-page/forward/forward.vue | 131 +++++++++++++++++++++++++++++++------------
1 files changed, 95 insertions(+), 36 deletions(-)
diff --git a/pages/public-page/forward/forward.vue b/pages/public-page/forward/forward.vue
index 57a8e42..40d8611 100644
--- a/pages/public-page/forward/forward.vue
+++ b/pages/public-page/forward/forward.vue
@@ -10,8 +10,15 @@
</u-form-item>
<u-form-item label="杈撳叆鏁伴噺" labelWidth="20%" ref="item1">
<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)">
+ <view class="forward-card-amount-input">
+ <u--input
+ v-model="val.carNum"
+ placeholder="璇疯緭鍏ヨ浆鍙戞暟閲�"
+ @input="debouncecarNumInput(index, val.carNum)"
+ @blur="blurInput(index, val.carNum)"
+ ></u--input>
+ </view>
+ <u-checkbox-group v-model="val.checkboxValue1" placement="column" @change="v => checkboxChange(v, index, val)">
<u-checkbox :customStyle="{ marginBottom: '8px' }" size="30" labelSize="30" label="鍏ㄩ儴杞彂" name="鍏ㄩ儴杞彂" :disabled="val.ischecked"></u-checkbox>
</u-checkbox-group>
</view>
@@ -20,9 +27,11 @@
</u--form>
</view>
<!-- 澧炲姞鎸夐挳 -->
- <view class="AdddBtn"><u-button text="娣诲姞" :hairline="false" type="primary" :customStyle="{ marginBottom: '8px' }" @click="addForm"></u-button></view>
+ <view class="AdddBtn">
+ <u-button text="娣诲姞" :hairline="false" type="primary" :customStyle="{ marginBottom: '8px' }" @click="addForm" :disabled="whetherClick"></u-button>
+ </view>
<!-- 鎸夐挳 -->
- <view class="forwardBtn"><u-button text="鎻愪氦" :hairline="false" type="warning" @click="submitForm"></u-button></view>
+ <view class="forwardBtn"><u-button text="鎻愪氦" :hairline="false" type="warning" @click="submitForm" :disabled="whetherClick1"></u-button></view>
<!-- 閫夋嫨璐т唬鎴栬溅闃熷脊鍑烘 -->
<view class="selectHuoDaiOrFleet-container">
@@ -55,13 +64,14 @@
<script>
import { customerId } from '@/utils/status';
+import toast from '../../../uni_modules/uview-ui/libs/config/props/toast';
export default {
onLoad(params) {
console.log(params, '杞彂椤甸潰鐨勫弬鏁�');
// 瀹㈡埛
this.cars2 = Number(params.cars2);
- this.carNumSurplus1 = Number(params.carNumSurplus1);
+ this.tempcarNumSurplus1 = this.carNumSurplus1 = Number(params.carNumSurplus1);
// 璐т唬
this.carNum = Number(params.carNum);
this.carNumSurplusHuodai = this.forwardSurplus = Number(params.carNumSurplusHuodai);
@@ -128,10 +138,15 @@
list1: [{ name: '杞﹂槦' }, { name: '璐т唬' }],
tabHuoDai: false,
carNumSurplus1: '',
+ tempcarNumSurplus1: '',
cars2: '',
carNum: '',
carNumSurplusHuodai: '',
- formNum: 1
+ formNum: 1,
+ // 涓汉杞彂鏁版嵁
+ personalForward: {},
+ whetherClick: false,
+ whetherClick1: false
};
},
onShow() {
@@ -154,7 +169,6 @@
},
methods: {
init() {
- console.log('roleType', this.roleType);
switch (this.roleType) {
case 1:
this.getAllHuoDaiByCustomerId();
@@ -185,9 +199,8 @@
return Number(x);
}
},
- checkboxChange(value, index) {
- uni.setStorageSync('allrelay', this.jhOrderPlanForwardList[index].carNum);
- this.jhOrderPlanForwardList = this.jhOrderPlanForwardList.map((v, i) => {
+ checkboxChange(value, index, v) {
+ this.jhOrderPlanForwardList = this.jhOrderPlanForwardList.map(v => {
return {
...v,
ischecked: false
@@ -196,40 +209,45 @@
if (value.length != 0) {
let tempforwardSurplus = this.forwardSurplus;
let tempcarNumSurplus1 = this.carNumSurplus1;
- // 璁$畻鍏ㄩ儴杞彂鏁�
- // 瀹㈡埛
+ // if (v.id) {
+ // this.$reqGet('jhorderplanforward', { forwardId: v.id }).then(res => {
+ // this.personalForward = res.data;
+ // // 璁$畻鍏ㄩ儴杞彂鏁�
+ // // 瀹㈡埛
+ // if (this.roleType == 1) {
+ // this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.personalForward.carNum, tempcarNumSurplus1);
+ // this.calculate(this.jhOrderPlanForwardList);
+ // if (tempcarNumSurplus1 == 0) {
+ // this.jhOrderPlanForwardList[index].carNum = this.allrelay(0, this.carNumSurplus1);
+ // }
+ // }
+ // tempcarNumSurplus1 = 0;
+ // // 璐т唬
+ // if (this.roleType == 2) {
+ // this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.personalForward.carNum, tempforwardSurplus);
+ // }
+ // tempforwardSurplus = 0;
+ // });
+ // } else { }
+
if (this.roleType == 1) {
- this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.jhOrderPlanForwardList[index].carNum, tempcarNumSurplus1);
+ this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.carNumSurplus1, this.jhOrderPlanForwardList[index].carNum);
+ this.calculate(this.jhOrderPlanForwardList);
}
- tempcarNumSurplus1 = 0;
- // 璐т唬
if (this.roleType == 2) {
- this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.jhOrderPlanForwardList[index].carNum, tempforwardSurplus);
+ this.jhOrderPlanForwardList[index].carNum = this.allrelay(this.forwardSurplus, this.jhOrderPlanForwardList[index].carNum);
+ this.calculate(this.jhOrderPlanForwardList);
}
- tempforwardSurplus = 0;
// 閫夋嫨涓�涓悗鍏朵綑绂佹澶嶉��
this.jhOrderPlanForwardList.forEach((v, i) => {
if (i !== index) {
v.ischecked = true;
}
});
+ this.whetherClick = 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.jhOrderPlanForwardList[index].carNum <= 0) {
- this.jhOrderPlanForwardList[index].carNum = 0;
- }
- }
- // 瀹㈡埛
- if (this.roleType == 1) {
- this.jhOrderPlanForwardList[index].carNum = this.allrelayto(this.jhOrderPlanForwardList[index].carNum, this.carNumSurplus1);
- if (this.jhOrderPlanForwardList[index].carNum <= 0) {
- this.jhOrderPlanForwardList[index].carNum = 0;
- }
- }
+ this.jhOrderPlanForwardList[index].carNum = 0;
+ this.calculate(this.jhOrderPlanForwardList);
}
},
// 鑾峰彇璐т唬鍒楄〃
@@ -283,6 +301,43 @@
}
});
},
+ // 璁$畻鎻愮叅鍗曟暟閲忥紝娣诲姞鎴栧垹闄ゆ椂璋冪敤
+ calculate(arr) {
+ let total = arr.reduce((prev, cur) => {
+ return cur.carNum + prev;
+ }, 0);
+ console.log(total, '鎻愮叅鍗曚竴鍏辩殑鏁版嵁');
+ if (this.roleType == 1) {
+ if (this.cars2 >= total) {
+ this.carNumSurplus1 = this.cars2 - total;
+ this.whetherClick = false;
+ this.whetherClick1 = false;
+ } else {
+ this.carNumSurplus1 = 0;
+ this.$u.toast('鍓╀綑鎻愮叅鍗曟暟閲忎笉瓒�');
+ this.whetherClick = true;
+ this.whetherClick1 = true;
+ }
+ }
+ return total;
+ },
+ debouncecarNumInput(index, value) {
+ let time;
+ let that = this;
+ return (function() {
+ if (!time) {
+ time = setTimeout(() => {
+ that.$set(that.jhOrderPlanForwardList[index], 'carNum', Number(value));
+ that.calculate(that.jhOrderPlanForwardList);
+ time = null;
+ }, 800);
+ }
+ })();
+ },
+ blurInput(index, value) {
+ this.$set(this.jhOrderPlanForwardList[index], 'carNum', Number(value));
+ this.calculate(this.jhOrderPlanForwardList);
+ },
// 娣诲姞涓�缁勮〃鍗�
addForm() {
// 鍒ゆ柇鏄惁鏈変竴涓閫夛紝濡傛灉鏈夊垯绂佹鏂板姞鐨勫閫夛紝娌℃湁鍒欎笉绂佹
@@ -291,7 +346,7 @@
this.jhOrderPlanForwardList.push({
orderPlanId: this.orderPlanId,
name: '',
- carNum: 0,
+ carNum: null,
xsUserId: 0,
fleetId: 0,
checkboxValue1: '',
@@ -301,13 +356,14 @@
this.jhOrderPlanForwardList.push({
orderPlanId: this.orderPlanId,
name: '',
- carNum: 0,
+ carNum: null,
xsUserId: 0,
fleetId: 0,
checkboxValue1: '',
ischecked: true
});
}
+ this.calculate(this.jhOrderPlanForwardList);
},
// 鍒犻櫎涓�缁勮〃鍗�
deleteGroup(index, v) {
@@ -316,6 +372,7 @@
this.$reqPost('deleteForward', { id: v.id }, 'params').then(res => {
if (res.code === 0) {
this.jhOrderPlanForwardList.splice(index, 1);
+ this.calculate(this.jhOrderPlanForwardList);
this.$u.toast('鍒犻櫎鎴愬姛');
} else if (res.code === 1) {
this.$u.toast(res.msg);
@@ -323,6 +380,7 @@
});
} else {
this.jhOrderPlanForwardList.splice(index, 1);
+ this.calculate(this.jhOrderPlanForwardList);
this.$u.toast('鍒犻櫎鎴愬姛');
}
},
@@ -332,8 +390,9 @@
if (this.jhOrderPlanForwardList.length === 0) {
this.$u.toast('璇疯嚦灏戦�夋嫨涓�缁勮浆鍙戝璞�');
}
+ let reg = /^[1-9]\d*$/;
this.jhOrderPlanForwardList.forEach(v => {
- if (isNaN(Number(v.carNum)) || Number(v.carNum) <= 0) {
+ if (!reg.test(v.carNum) || Number(v.carNum) <= 0) {
this.$u.toast('璇疯緭鍏ュ悎娉曟暟瀛�');
isPass = false;
return isPass;
--
Gitblit v1.9.1