From 0becab45282781f281ad5aa04202b83039ab275e Mon Sep 17 00:00:00 2001 From: qingyiay <2386314947@qq.com> Date: 星期五, 14 四月 2023 17:42:08 +0800 Subject: [PATCH] 增加发运统计页面,修改websocket,增加消息推送 --- pages/public-page/forward/forward.vue | 187 ++++++++++++++++++++++++++++++++-------------- 1 files changed, 131 insertions(+), 56 deletions(-) diff --git a/pages/public-page/forward/forward.vue b/pages/public-page/forward/forward.vue index e57f01f..57a8e42 100644 --- a/pages/public-page/forward/forward.vue +++ b/pages/public-page/forward/forward.vue @@ -3,16 +3,16 @@ <view class="forward"> <view v-if="roleType == 1"><u-notice-bar :text="text" :fontSize="30" mode="link"></u-notice-bar></view> <view v-else-if="roleType == 2"><u-notice-bar :text="text1" :fontSize="30" mode="link"></u-notice-bar></view> - <view class="forward-card" v-for="(val, index) in jhOrderPlanForwardList"> + <view class="forward-card" v-for="(val, index) in jhOrderPlanForwardList" :key="index"> <u--form labelPosition="top" :model="forwardForm" ref="form1"> <u-form-item label="杞彂瀵硅薄" labelWidth="20%" ref="item1" @click="forwardObjectClick(index)"> - <u--input v-model="val.name" placeholder="鐐瑰嚮閫夋嫨杞彂瀵硅薄"></u--input> + <u--input v-model="val.name" placeholder="鐐瑰嚮閫夋嫨杞彂瀵硅薄" :readonly="true"></u--input> </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)"> - <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,19 +58,13 @@ export default { onLoad(params) { + console.log(params, '杞彂椤甸潰鐨勫弬鏁�'); // 瀹㈡埛 this.cars2 = Number(params.cars2); this.carNumSurplus1 = Number(params.carNumSurplus1); // 璐т唬 this.carNum = Number(params.carNum); - this.carNumSurplusHuodai = Number(params.carNumSurplusHuodai); - if (params.carNumSurplus1 || params.carNumSurplusHuodai) { - if (params.carNumSurplus1 != 0) { - this.forwardSurplus = params.carNumSurplus1; - } else if (params.carNumSurplusHuodai != 0) { - this.forwardSurplus = params.carNumSurplusHuodai; - } - } + this.carNumSurplusHuodai = this.forwardSurplus = Number(params.carNumSurplusHuodai); this.orderPlanId = params.orderPlanId; this.$reqGet('forwardList', { OrderPlanId: params.orderPlanId }).then(res => { if (res.data.length !== 0 && this.roleType == 1) { @@ -127,14 +125,7 @@ index: '', checkboxValue1: '', selectPopupShow: false, - list1: [ - { - name: '杞﹂槦' - }, - { - name: '璐т唬' - } - ], + list1: [{ name: '杞﹂槦' }, { name: '璐т唬' }], tabHuoDai: false, carNumSurplus1: '', cars2: '', @@ -155,10 +146,10 @@ return uni.getStorageSync('roleType'); }, text() { - return `宸查鍙�${this.cars2}寮犳棩璁″垝鍗�,鍓╀綑${this.carNumSurplus1}寮犳棩璁″垝鍗昤; + return `宸查鍙�${this.cars2}寮犳彁鐓ゅ崟,鍓╀綑${this.carNumSurplus1}寮犳彁鐓ゅ崟`; }, text1() { - return `宸叉嫢鏈�${this.carNum}寮犳棩璁″垝鍗�,鍓╀綑${this.carNumSurplusHuodai}寮犳棩璁″垝鍗昤; + return `宸叉嫢鏈�${this.carNum}寮犳彁鐓ゅ崟,鍓╀綑${this.carNumSurplusHuodai}寮犳彁鐓ゅ崟`; } }, methods: { @@ -176,65 +167,147 @@ break; } }, - checkboxChange(value, index) { - console.log('澶嶉�夋鍙樺寲', value, index); - if (value.length != 0) { - this.jhOrderPlanForwardList[index].carNum = this.forwardSurplus; + allrelay(x, y) { + let a = 0; + if (y != 0) { + a = Number(x) + Number(y); + return a; } else { - this.jhOrderPlanForwardList[index].carNum = null; + return Number(x); + } + }, + allrelayto(x, y) { + let a = 0; + if (y != 0) { + a = Number(x) - Number(y); + return a; + } else { + return Number(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.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; + } + } } }, // 鑾峰彇璐т唬鍒楄〃 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) { @@ -256,6 +329,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('璇疯緭鍏ュ悎娉曟暟瀛�'); @@ -287,7 +363,6 @@ } }, tabClick(item) { - console.log('tab鐐瑰嚮', item); if (item.name == '璐т唬') { this.tabHuoDai = true; } else { -- Gitblit v1.9.1