From d3368b8c511b49e8f62600524632c8dacc196d47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=BE=A4?= Date: Wed, 6 Sep 2023 13:48:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AF=94=E7=8E=AF=E6=AF=94=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/highWay/runData/form.vue | 24 +++--- pages/highWay/runStatusData/form.vue | 10 ++- pages/railway/railwayRunData/form.vue | 24 +++--- pages/railway/runStatus/form.vue | 8 +- pages/water/TransportData/form.vue | 12 +-- pages/water/transportation/form.vue | 8 +- pages/water/waterWay/form.vue | 103 ++++++++++++++++++-------- pages/water/waterWay/list.vue | 2 +- 8 files changed, 123 insertions(+), 68 deletions(-) diff --git a/pages/highWay/runData/form.vue b/pages/highWay/runData/form.vue index c1b4d08..8a6f9dc 100644 --- a/pages/highWay/runData/form.vue +++ b/pages/highWay/runData/form.vue @@ -39,7 +39,7 @@ - + 收费站入口车辆数汇总环比(%) @@ -61,7 +61,7 @@ - + 收费站入口车辆数汇总环比(%) @@ -108,7 +108,7 @@ - + 收费站入口车辆数环比(%) @@ -130,7 +130,7 @@ - + 收费站出口车辆数环比(%) @@ -294,8 +294,8 @@ //环比 let obj = this.yoyMom.minusDaysList[idx]; console.log(obj) - this.form.highwaySubDataList[index].entranceVehicleCountMom = obj.entranceVehicleCount ? (parseInt(this.form.highwaySubDataList[index].entranceVehicleCount) - obj.entranceVehicleCount) / obj.entranceVehicleCount * 100 : ''; - this.form.highwaySubDataList[index].exitVehicleCountMom = obj.exitVehicleCount ? (parseInt(this.form.highwaySubDataList[index].exitVehicleCount) - obj.exitVehicleCount) / obj.exitVehicleCount * 100 : ''; + this.form.highwaySubDataList[index].entranceVehicleCountMom = !checkNotEmpty(obj.entranceVehicleCount) || obj.entranceVehicleCount === 0 ? 100 : obj.entranceVehicleCount ? (parseInt(this.form.highwaySubDataList[index].entranceVehicleCount) - obj.entranceVehicleCount) / obj.entranceVehicleCount * 100 : ''; + this.form.highwaySubDataList[index].exitVehicleCountMom = !checkNotEmpty(obj.exitVehicleCount) || obj.exitVehicleCount === 0 ? 100 : obj.exitVehicleCount ? (parseInt(this.form.highwaySubDataList[index].exitVehicleCount) - obj.exitVehicleCount) / obj.exitVehicleCount * 100 : ''; } else{ this.form.highwaySubDataList[index].entranceVehicleCountMom = ''; @@ -305,8 +305,8 @@ //同比 let obj = this.yoyMom.minusYearsList[idx2]; console.log(obj) - this.form.highwaySubDataList[index].entranceVehicleCountYoy = obj.entranceVehicleCount ? (parseInt(this.form.highwaySubDataList[index].entranceVehicleCount) - obj.entranceVehicleCount) / obj.entranceVehicleCount * 100 : ''; - this.form.highwaySubDataList[index].exitVehicleCountYoy = obj.exitVehicleCount ? (parseInt(this.form.highwaySubDataList[index].exitVehicleCount) - obj.exitVehicleCount) / obj.exitVehicleCount * 100 : ''; + this.form.highwaySubDataList[index].entranceVehicleCountYoy = !checkNotEmpty(obj.entranceVehicleCount) || obj.entranceVehicleCount === 0 ? 100 : obj.entranceVehicleCount ? (parseInt(this.form.highwaySubDataList[index].entranceVehicleCount) - obj.entranceVehicleCount) / obj.entranceVehicleCount * 100 : ''; + this.form.highwaySubDataList[index].exitVehicleCountYoy = !checkNotEmpty(obj.exitVehicleCount) || obj.exitVehicleCount === 0 ? 100 : obj.exitVehicleCount ? (parseInt(this.form.highwaySubDataList[index].exitVehicleCount) - obj.exitVehicleCount) / obj.exitVehicleCount * 100 : ''; } else{ this.form.highwaySubDataList[index].entranceVehicleCountYoy = ''; @@ -469,9 +469,11 @@ icon: 'none', success: () => { if(this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/highway/runData/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/highway/runData/list' + }) + }, 300) } else { uni.navigateBack(); diff --git a/pages/highWay/runStatusData/form.vue b/pages/highWay/runStatusData/form.vue index c3b5810..142d138 100644 --- a/pages/highWay/runStatusData/form.vue +++ b/pages/highWay/runStatusData/form.vue @@ -389,7 +389,7 @@ changeHighway(e, key, index) { //判断是否重复选择 let idx = this.form[key].findIndex(item => item.highwayNameIndex == e.detail.value ); - if(idx > -1) { + if(idx > -1 && this.form[key][index].highwayNameIndex == '') { uni.showToast({ title: '高速公路不能重复选择', icon: 'none' @@ -580,9 +580,11 @@ icon: 'none', success: () => { if(this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/highway/runStatusData/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/highway/runStatusData/list' + }) + }, 300) } else { uni.navigateBack(); diff --git a/pages/railway/railwayRunData/form.vue b/pages/railway/railwayRunData/form.vue index 44dc4f7..fb3cc0d 100644 --- a/pages/railway/railwayRunData/form.vue +++ b/pages/railway/railwayRunData/form.vue @@ -281,30 +281,30 @@ console.log('同比环比计算') if (this.yoyMom.yesterdayData) { //环比 - this.form.inRailwayYomDo = this.yoyMom.yesterdayData.inboundRailwayDo && this.form.inboundRailwayDo ? ( + this.form.inRailwayYomDo = !checkNotEmpty(this.yoyMom.yesterdayData.inboundRailwayDo) ||this.yoyMom.yesterdayData.inboundRailwayDo === 0 ? 100 : this.form.inboundRailwayDo ? ( parseInt(this.form.inboundRailwayDo) - this.yoyMom.yesterdayData.inboundRailwayDo) / this .yoyMom.yesterdayData.inboundRailwayDo * 100 : ''; - this.form.inPepoleYoyDo = this.yoyMom.yesterdayData.inPepole && this.form.inPepole ? (parseInt(this + this.form.inPepoleYoyDo = !checkNotEmpty(this.yoyMom.yesterdayData.inPepole) || this.yoyMom.yesterdayData.inPepole === 0 ? 100 : this.form.inPepole ? (parseInt(this .form.inPepole) - this.yoyMom.yesterdayData.inPepole) / this.yoyMom.yesterdayData.inPepole * 100 : ''; - this.form.outRailwayYomDo = this.yoyMom.yesterdayData.outboundRailwayDo && this.form + this.form.outRailwayYomDo = !checkNotEmpty(this.yoyMom.yesterdayData.outboundRailwayDo) || this.yoyMom.yesterdayData.outboundRailwayDo === 0 ? 100 : this.form .outboundRailwayDo ? (parseInt(this.form.outboundRailwayDo) - this.yoyMom.yesterdayData .outboundRailwayDo) / this.yoyMom.yesterdayData.outboundRailwayDo * 100 : ''; - this.form.outPepoleYoyDo = this.yoyMom.yesterdayData.outPepole && this.form.outPepole ? (parseInt(this + this.form.outPepoleYoyDo = !checkNotEmpty(this.yoyMom.yesterdayData.outPepole) || this.yoyMom.yesterdayData.outPepole === 0 ? 100 : this.form.outPepole ? (parseInt(this .form.outPepole) - this.yoyMom.yesterdayData.outPepole) / this.yoyMom.yesterdayData.outPepole * 100 : ''; } if (this.yoyMom.lastYearData) { //同比 - this.form.inRailwayMomDo = this.yoyMom.lastYearData.inboundRailwayDo && this.form.inboundRailwayDo ? ( + this.form.inRailwayMomDo = !checkNotEmpty(this.yoyMom.lastYearData.inboundRailwayDo) || this.yoyMom.lastYearData.inboundRailwayDo === 0 ? 100 : this.form.inboundRailwayDo ? ( parseInt(this.form.inboundRailwayDo) - this.yoyMom.lastYearData.inboundRailwayDo) / this.yoyMom .lastYearData.inboundRailwayDo * 100 : ''; - this.form.inPepoleMomDo = this.yoyMom.lastYearData.inPepole && this.form.inPepole ? (parseInt(this.form + this.form.inPepoleMomDo = !checkNotEmpty(this.yoyMom.lastYearData.inPepole) || this.yoyMom.lastYearData.inPepole === 0 ? 100 : this.form.inPepole ? (parseInt(this.form .inPepole) - this.yoyMom.lastYearData.inPepole) / this.yoyMom.lastYearData.inPepole * 100 : ''; - this.form.outRailwayMomDo = this.yoyMom.lastYearData.outboundRailwayDo && this.form.outboundRailwayDo ? + this.form.outRailwayMomDo = !checkNotEmpty(this.yoyMom.lastYearData.outboundRailwayDo) || this.yoyMom.lastYearData.outboundRailwayDo === 0 ? 100 : this.form.outboundRailwayDo ? (parseInt(this.form.outboundRailwayDo) - this.yoyMom.lastYearData.outboundRailwayDo) / this.yoyMom .lastYearData.outboundRailwayDo * 100 : ''; - this.form.outPepoleMomDo = this.yoyMom.lastYearData.outPepole && this.form.outPepole ? (parseInt(this + this.form.outPepoleMomDo = !checkNotEmpty(this.yoyMom.lastYearData.outPepole) || this.yoyMom.lastYearData.outPepole ===0 ? 100 : this.form.outPepole ? (parseInt(this .form.outPepole) - this.yoyMom.lastYearData.outPepole) / this.yoyMom.lastYearData.outPepole * 100 : ''; } @@ -434,9 +434,11 @@ icon: 'none', success: () => { if(this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/railway/railwayRunData/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/railway/railwayRunData/list' + }) + }, 300) } else { uni.navigateBack(); diff --git a/pages/railway/runStatus/form.vue b/pages/railway/runStatus/form.vue index f2e7b2e..7f20ada 100644 --- a/pages/railway/runStatus/form.vue +++ b/pages/railway/runStatus/form.vue @@ -230,9 +230,11 @@ icon: 'none', success: () => { if(this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/railway/runStatus/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/railway/runStatus/list' + }) + }, 300) } else { uni.navigateBack(); diff --git a/pages/water/TransportData/form.vue b/pages/water/TransportData/form.vue index 606c854..27197ec 100644 --- a/pages/water/TransportData/form.vue +++ b/pages/water/TransportData/form.vue @@ -176,10 +176,10 @@ console.log('同比计算') if (this.yoyMom.lastYearData) { //同比 - this.form.passengerWatertransportMomDo = this.yoyMom.lastYearData.passengerWatertransportMomDo && this.form.passengerWatertransportMomDo ? ( + this.form.passengerWatertransportMomDo = !checkNotEmpty(this.yoyMom.lastYearData.passengerWatertransportMomDo) || this.yoyMom.lastYearData.passengerWatertransportMomDo === 0 ? 100 : this.form.passengerWatertransportMomDo ? ( parseInt(this.form.passengerWatertransportMomDo) - this.yoyMom.lastYearData.passengerWatertransportMomDo) / this.yoyMom .lastYearData.passengerWatertransportMomDo * 100 : ''; - this.form.voyageWatertransportMomDo = this.yoyMom.lastYearData.voyageWatertransportMomDo && this.form.voyageWatertransportMomDo ? (parseInt(this.form + this.form.voyageWatertransportMomDo = !checkNotEmpty(this.yoyMom.lastYearData.voyageWatertransportMomDo) || this.yoyMom.lastYearData.voyageWatertransportMomDo === 0 ? 100 : this.form.voyageWatertransportMomDo ? (parseInt(this.form .voyageWatertransportMomDo) - this.yoyMom.lastYearData.voyageWatertransportMomDo) / this.yoyMom.lastYearData.voyageWatertransportMomDo * 100 : ''; } }, @@ -284,9 +284,11 @@ icon: 'none', success: () => { if(this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/water/TransportData/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/water/TransportData/list' + }) + }, 300) } else{ uni.navigateBack(); diff --git a/pages/water/transportation/form.vue b/pages/water/transportation/form.vue index d89caa4..8f9617a 100644 --- a/pages/water/transportation/form.vue +++ b/pages/water/transportation/form.vue @@ -309,9 +309,11 @@ icon: 'none', success: () => { if(this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/water/transportation/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/water/transportation/list' + }) + }, 300) } else { uni.navigateBack(); diff --git a/pages/water/waterWay/form.vue b/pages/water/waterWay/form.vue index dfd89ce..ddcb50f 100644 --- a/pages/water/waterWay/form.vue +++ b/pages/water/waterWay/form.vue @@ -6,12 +6,12 @@ 基本信息 - + 统计日期: @@ -47,7 +47,7 @@ {{item.landNameIndex ? landList[item.landNameIndex] : '请选择'}} + :style="item.landName?'color:#333;':''">{{item.landName ? item.landName : '请选择'}} @@ -55,55 +55,55 @@ 航次: - - + 航次环比(%) + :style="item.voyage == item.yesterdayVoyage ? 'color: #EB4747' : ''">航次环比(%) - {{form.voyageRingRatio === 0 ? form.voyageRingRatio : form.voyageRingRatio ? form.voyageRingRatio.toFixed(2) : ''}} + :style="item.voyage == item.yesterdayVoyage ? 'color: #EB4747' : ''"> + {{item.voyageRingRatio === 0 ? item.voyageRingRatio : item.voyageRingRatio ? item.voyageRingRatio.toFixed(2) : ''}} 航次同比(%) - {{form.voyageYearOnYear === 0 ? form.voyageYearOnYear : form.voyageYearOnYear ? form.voyageYearOnYear.toFixed(2) : ''}} + {{item.voyageYearOnYear === 0 ? item.voyageYearOnYear : item.voyageYearOnYear ? item.voyageYearOnYear.toFixed(2) : ''}} 人数: - + :class="item.numberOfPeople == item.yesterdayNumberOfPeople ? 'danger' : '' "> 人数环比(%) + :style="item.numberOfPeople == item.yesterdayNumberOfPeople ? 'color: #EB4747' : ''">人数环比(%) - {{form.peopleRingRatio === 0 ? form.peopleRingRatio : form.peopleRingRatio ? form.peopleRingRatio.toFixed(2) : ''}} + :style="item.numberOfPeople == item.yesterdayNumberOfPeople ? 'color: #EB4747' : ''"> + {{item.peopleRingRatio === 0 ? item.peopleRingRatio : item.peopleRingRatio ? item.peopleRingRatio.toFixed(2) : ''}} 人数同比(%) - {{form.peopleYearOnYear === 0 ? form.peopleYearOnYear : form.peopleYearOnYear ? form.peopleYearOnYear.toFixed(2) : ''}} + {{item.peopleYearOnYear === 0 ? item.peopleYearOnYear : item.peopleYearOnYear ? item.peopleYearOnYear.toFixed(2) : ''}} @@ -152,7 +152,8 @@ data() { return { form: { - "bizWaterwayIslandDataSaveOrUpdateDTOList": [{ + "bizWaterwayIslandDataSaveOrUpdateDTOList": [{ + "landNameIndex":"", "landName": "", "lastYearNumberOfPeople": 0, "lastYearVoyage": 0, @@ -179,14 +180,14 @@ if (options.type == 'add') { this.pageType = 'add'; let now = new Date(); - this.form.statDate = getDateStr(now, -1); //默认前一天 + this.form.reportDate = getDateStr(now, -1); //默认前一天 this.queryTime(); //统计时段 } else if (options.item) { this.form = JSON.parse(options.item); this.form.bizWaterwayIslandDataSaveOrUpdateDTOList = this.form.bizWaterwayIslandDataVOList; this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.map(item => { let idx = this.landList.findIndex(item2 => item2 == item.landName); - item.landIndex = idx > -1 ? idx : ''; + item.landNameIndex = idx > -1 ? idx : ''; }) this.queryTime(); } else if (options.id) { @@ -197,15 +198,46 @@ formatdate(date) { return date.length < 12 ? date + ' 00:00:00' : date; }, + //陆岛切换 + changeLandName(e, index) { + //判断是否重复选择 + let idx = this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.findIndex(item => item.landNameIndex == e.detail + .value); + if (idx > -1 && this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].landNameIndex == '') { + uni.showToast({ + title: '水运(陆岛)不能重复选择', + icon: 'none' + }); + }else{ + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].landNameIndex = e.detail.value; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].landName = this.landList[e.detail.value]; + this.calcYoyMom(index); + } + }, //环比同比计算 calcYoyMom(index) { - if (this.form.reportDate == '' || this.form.statPeriod == '' || this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].landName == '') { + if (this.form.reportDate == '' || this.form.statPeriod == '' || this.form + .bizWaterwayIslandDataSaveOrUpdateDTOList[index].landName == '') { return; } this.$request(getApp().globalData.baseUrl + '/api/biz/waterwayIslandData/getYoyMom?statDate=' + this.form - .reportDate + '&statPeriod=' + this.form.statPeriod + '&landName='+this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].landName+'&_t=' + Date.parse(new Date()), {}, 'GET') - .then(res => { - + .reportDate + '&statPeriod=' + this.form.statPeriod + '&landName=' + this.form + .bizWaterwayIslandDataSaveOrUpdateDTOList[index].landName + '&_t=' + Date.parse(new Date()), {}, + 'GET') + .then(res => { + let yesterdayData = res.data.yesterdayData; + let lastYearData = res.data.lastYearData; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].yesterdayVoyage = checkNotEmpty(yesterdayData.voyage) ? yesterdayData.voyage : 0; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].lastYearVoyage = checkNotEmpty(lastYearData.voyage) ? lastYearData.voyage : 0; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].yesterdayNumberOfPeople = checkNotEmpty(yesterdayData.numberOfPeople) ? yesterdayData.numberOfPeople : 0; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].lastYearNumberOfPeople = checkNotEmpty(lastYearData.numberOfPeople) ? lastYearData.numberOfPeople : 0; + //环比-同比 + let obj = this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index]; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].voyageRingRatio = !checkNotEmpty(yesterdayData.voyage) || yesterdayData.voyage === 0 ? 100 : obj.voyage ? (parseInt(obj.voyage) - yesterdayData.voyage) / yesterdayData.voyage * 100 : ''; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].voyageYearOnYear = !checkNotEmpty(lastYearData.voyage) || lastYearData.voyage === 0 ? 100 : obj.voyage ? (parseInt(obj.voyage) - lastYearData.voyage) / lastYearData.voyage * 100 : ''; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].peopleRingRatio = !checkNotEmpty(yesterdayData.numberOfPeople) || yesterdayData.numberOfPeople === 0 ? 100 : obj.numberOfPeople ? (parseInt(obj.numberOfPeople) - yesterdayData.numberOfPeople) / yesterdayData.numberOfPeople * 100 : ''; + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index].peopleYearOnYear = !checkNotEmpty(lastYearData.numberOfPeople) || lastYearData.numberOfPeople === 0 ? 100 : obj.numberOfPeople ? (parseInt(obj.numberOfPeople) - lastYearData.numberOfPeople) / lastYearData.numberOfPeople * 100 : ''; + console.log('环比同比', this.form.bizWaterwayIslandDataSaveOrUpdateDTOList[index]) }) }, //id查询详情 @@ -221,6 +253,10 @@ this.index = e.detail.value; this.form.statPeriod = this.array[e.detail.value].dictValue; console.log('change 时段', this.form) + //重新计算同比环比 + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.map((item, index) => { + this.calcYoyMom(index); + }) }, //取消 doCancel() { @@ -228,7 +264,11 @@ }, //选择统计日期 bindDateChange(e) { - this.form.statDate = e.detail.value; + this.form.reportDate = e.detail.value; + //重新计算同比环比 + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.map((item, index) => { + this.calcYoyMom(index); + }) }, //时段 queryTime() { @@ -259,7 +299,8 @@ }, //增行 addRow() { - this.form.listContion.push({ + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.push({ + "landNameIndex": "", "landName": "", "lastYearNumberOfPeople": 0, "lastYearVoyage": 0, @@ -275,7 +316,7 @@ }, //删行 delRow(index) { - this.form.listContion.splice(index, 1); + this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.splice(index, 1); }, //确认提交 doSubmit() { @@ -287,9 +328,9 @@ }) return; } - let checkCongestion = true; + let checkAccident = true; if (this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.length > 0) { - checkCongestion = this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.every(item => { + checkAccident = this.form.bizWaterwayIslandDataSaveOrUpdateDTOList.every(item => { return checkNotEmpty(item.landName) && checkNotEmpty(item.numberOfPeople) && checkNotEmpty( item.voyage) }) @@ -327,9 +368,11 @@ icon: 'none', success: () => { if (this.form.id == undefined) { - uni.redirectTo({ - url: '/pages/water/transportation/list' - }) + setTimeout(() => { + uni.redirectTo({ + url: '/pages/water/waterWay/list' + }) + }, 300) } else { uni.navigateBack(); } diff --git a/pages/water/waterWay/list.vue b/pages/water/waterWay/list.vue index b8816e8..8e13f08 100644 --- a/pages/water/waterWay/list.vue +++ b/pages/water/waterWay/list.vue @@ -1,6 +1,6 @@