From 07b5244ba8572922728f2663883915861554e7e0 Mon Sep 17 00:00:00 2001 From: qingyiay <2386314947@qq.com> Date: 星期日, 02 七月 2023 17:30:54 +0800 Subject: [PATCH] 验质逻辑修改 --- pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue | 358 +++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 202 insertions(+), 156 deletions(-) diff --git a/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue b/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue index 739eb25..ea90236 100644 --- a/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue +++ b/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice.vue @@ -1,8 +1,7 @@ <template> <view class="weighingDevice"> <view class="one" - style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/weighbanner.png') no-repeat; - background-size: cover;"> + :style="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/weighbanner.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }"> <view class="top"> <view class="top_left"> <text>{{ realTimeWeigh }}</text> @@ -25,82 +24,6 @@ </view> <view class="bottom"><text>TIP:褰撳墠鐘舵�佷负姝e父鏃跺彲浠ョО閲�</text></view> </view> - <view class="middle-block" - v-if="firstHairCustomernameShow || sideline"> - <view class="block-main" - v-if="firstHairCustomernameShow"> - <view class="first-line"><combined-title title="鍘熷彂淇℃伅"></combined-title></view> - <view class="second-line"> - <view class="label-text" - :class="{ focusClass: isfocus1 }">鐨噸</view> - <view class="input-container" - :class="{ inputClass: isfocus1, disabledClass: haveInputOrigin }"> - <u--input placeholder="璇疯緭鍏ョ毊閲�" - border="surround" - v-model="weighData.coalContactSkin" - @focus="inputFocus(1)" - @blur="inputBlur" - @change="inputChange" - :disabled="haveInputOrigin"></u--input> - </view> - <view class="unit" - :class="{ focusClass: isfocus1 }">鍚�</view> - </view> - <view class="second-line"> - <view class="label-text" - :class="{ focusClass: isfocus2 }">姣涢噸</view> - <view class="input-container" - :class="{ inputClass: isfocus2, disabledClass: haveInputOrigin }"> - <u--input placeholder="璇疯緭鍏ユ瘺閲�" - border="surround" - v-model="weighData.coalContactHair" - @focus="inputFocus(2)" - @blur="inputBlur" - @change="inputChange" - :disabled="haveInputOrigin"></u--input> - </view> - <view class="unit" - :class="{ focusClass: isfocus2 }">鍚�</view> - </view> - <view class="second-line"> - <view class="label-text">鍑�閲�</view> - <view class="input-container" - :class="{ disabledClass: haveInputOrigin }"> - <u--input placeholder="鍑�閲�" - border="surround" - v-model="coalContactClean" - :disabled="haveInputOrigin"></u--input> - </view> - <view class="unit">鍚�</view> - </view> - </view> - <view class="block-sideline" - v-if="sideline"> - <view class="first-line"><combined-title title="鍘熷彂淇℃伅"></combined-title></view> - <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> - <view class="num">{{ weighList.skinTwo }}</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> - <view class="num">{{ weighList.hairTwo }}</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> - <view class="num">{{ weighList.cleanTwo }}</view> - </view> - </view> - </view> - </view> - <view v-else - style="width: 100%;height: 40rpx;"></view> <view class="bottom-block"> <view class="block-main"> <view class="main-information" @@ -141,18 +64,25 @@ <view class="suffix">{{ weighList.coalName || '' }}</view> </view> <view class="main-information"> + <view class="prefix">璁㈠崟绫诲瀷:</view> + <view class="suffix">{{ weighList.orderType || '' }}</view> + </view> + <view class="main-information"> <view class="prefix">鐨噸:</view> - <view class="suffix">{{ showWeigh.skin||"" }} + <view class="suffix"> + {{temporaryWeighObj.skin||''}} </view> </view> <view class="main-information"> <view class="prefix">姣涢噸:</view> - <view class="suffix">{{showWeigh.hair||""}} + <view class="suffix"> + {{temporaryWeighObj.hair?temporaryWeighObj.hair:showWeigh.skin?(showWeigh.skin||''):(showWeigh.hair||'')}} </view> </view> <view class="main-information"> <view class="prefix">鍑�閲�:</view> - <view class="suffix">{{ showWeigh.clean||"" }} + <view class="suffix"> + {{ temporaryWeighObj.clean||''}} </view> </view> <view class="main-information"> @@ -161,6 +91,42 @@ </view> </view> </view> + <!-- 绉伴噸鍘嗗彶--> + <transition name="weighHistory"> + <view class="weigh-history" + v-if="weighHistory.length!==0"> + <view class="block-main"> + <view class="weigh-item" + v-for='item in weighHistory' + :key="item.id"> + <view class="weigh-time"> + <u-tag :text="item.createTime.slice(-8,-3)" + plain></u-tag> + </view> + <view class="item-block"> + <view class="item"> + <view class="concrete" + :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="{ 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="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/clean.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }"> + 鍑�</view> + <view class="num">{{ item.clean }}</view> + </view> + </view> + </view> + </view> + </view> + </transition> <view class="three"> <!-- 鏀剧┖ --> <u-button type="primary" @@ -172,7 +138,7 @@ <!-- 澶栭攢璁㈠崟绉扮毊鏃讹紝杩斿洖鍔犲噺鍚ㄦ寜閽疆鐏般�傜О姣涙椂鍙敤.澶栬喘璁㈠崟锛屼笉鍑虹幇杩斿洖鍔犲噺鍚ㄧ殑鎸夐挳 --> <u-button type="primary" text="纭畾绉伴噸" - :disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh || !isInputOrigin" + :disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh " :loading="isConfirmWeighLoading" loadingText="纭" @click="confirmWeigh"></u-button> @@ -182,8 +148,13 @@ @click="addAndSubtractCoal" class="jiajian" v-if="outBuy"></u-button> + <u-button type="primary" + text="缁х画鍗歌揣" + @click="UnloadingAgainHandle" + :loading="UnloadingAgainLoading" + loadingText="纭" + v-if='canUnload'></u-button> </view> - <!-- <view class="four" v-if="weighList.orderType !== '澶栬喘'">濡傛偍闇�瑕佽皟鏁磋杞借揣鍝佸惃鏁帮紝璇风偣鍑昏繑鍥炲姞鍑忓惃</view> --> <!-- 鏀剧┖寮圭獥 --> <view class="evacuationModal"> <u-modal :show="evacuationModalShow" @@ -198,7 +169,7 @@ <script> let socket = null; - import { webSocketUrl } from '@/api/request.js'; + import { webSocketUrl, onlineurl } from '@/api/request.js'; import { mapState, mapMutations } from 'vuex'; import combinedTitle from '@/components/combined-title/combined-title.vue'; export default { @@ -233,9 +204,9 @@ weigh: 0, tmCode: '', sceneInOut: '', - coalContactClean: 0, - coalContactHair: 0, - coalContactSkin: 0 + // coalContactClean: 0, + // coalContactHair: 0, + // coalContactSkin: 0 }, // 鏄惁濉啓鍘熷彂淇℃伅 isInputOrigin: false, @@ -248,9 +219,9 @@ weighList: {}, // 涓存椂绉伴噸瀵硅薄 temporaryWeighObj: { - skin: 0, - hair: 0, - clean: 0 + skin: null, + hair: null, + clean: null }, infraredStatus: false, // 绾㈠鐘舵�侊紝 // 鏀剧┖鎺у埗 @@ -270,37 +241,35 @@ // 鑱氱劍鏃舵敼鍙樻牱寮� isfocus1: false, isfocus2: false, - // 澶栬喘绗竴娆$О姣涢噸涓嶉渶瑕佸姞鍑忓惃 - outBuy: true + // 澶栬喘绫诲瀷 + outBuy: true, + // 缁х画鍗歌揣鎸夐挳 + canUnload: false, + UnloadingAgainLoading: false, + onlineurl, }; }, watch: { realTimeWeigh(newV, oldV) { if (this.weighList.orderType == '澶栭攢' || this.weighList.orderType == '鍐呴攢' || this.weighList.orderType == '杞嚭') { - if (this.weighList.skin == 0) { - // this.temporaryWeighObj.skin = this.realTimeWeigh; + if (!this.showWeigh.skin) { this.temporaryWeighObj.skin = newV; - this.isweigh = this.temporaryWeighObj.skin > this.weighList.orderSurplus; } else { - // this.temporaryWeighObj.hair = this.realTimeWeigh; this.temporaryWeighObj.hair = newV; - this.temporaryWeighObj.clean = (this.temporaryWeighObj.hair - this.weighList.skin).toFixed(2); + this.temporaryWeighObj.clean = (this.temporaryWeighObj.hair - this.showWeigh.skin).toFixed(2); this.isweigh = this.temporaryWeighObj.clean > this.weighList.orderSurplus || this.temporaryWeighObj .clean < 0; } } else if (this.weighList.orderType == '澶栬喘' || this.weighList.orderType == '鍐呰喘' || this.weighList .orderType == '杞叆') { - if (this.weighList.hair == 0) { - // this.temporaryWeighObj.hair = this.realTimeWeigh; + if (!this.showWeigh.hair) { this.temporaryWeighObj.hair = newV; - this.isweigh = this.temporaryWeighObj.hair > this.weighList.orderSurplus; } else { - // this.temporaryWeighObj.skin = this.realTimeWeigh; this.temporaryWeighObj.skin = newV; - this.temporaryWeighObj.clean = (this.weighList.hair - this.temporaryWeighObj.skin).toFixed(2); - this.isweigh = this.temporaryWeighObj.clean > this.weighList.orderSurplus || this.temporaryWeighObj - .clean < 0; + this.temporaryWeighObj.clean = (this.showWeigh.skin - newV).toFixed(2); + this.isweigh = this.temporaryWeighObj.clean < 0 || this.showWeigh.skin < newV && this.showWeigh + .skin > 0; } } }, @@ -315,14 +284,11 @@ this.changeisLogin(true) this.realTimeWeigh = 0 }, - onHide() { - - }, computed: { ...mapState(['globalweigh', 'globalinfraredStatus']), - coalContactClean() { - return (Number(this.weighData.coalContactHair) - Number(this.weighData.coalContactSkin)).toFixed(2); - }, + // coalContactClean() { + // return (Number(this.weighData.coalContactHair) - Number(this.weighData.coalContactSkin)).toFixed(2); + // }, token() { return uni.getStorageSync('token'); }, @@ -349,6 +315,9 @@ showWeigh() { return this.weighList.tmTaskCoalItems ? (this.weighList.tmTaskCoalItems[0] ? this .weighList.tmTaskCoalItems[0] : {}) : {} + }, + weighHistory() { + return this.weighList.tmTaskCoalItems ? this.weighList.tmTaskCoalItems : [] } }, methods: { @@ -368,20 +337,9 @@ this.weighData.carNo = res.data.carNo; this.weighData.tmCode = res.data.code; this.weighData.filedId = res.data.filedId; - this.weighData.coalContactHair = res.data.hairTwo ? res.data.hairTwo : 0; - this.weighData.coalContactSkin = res.data.skinTwo ? res.data.skinTwo : 0; - if (this.weighList.orderType == '澶栬喘') { - this.firstHairCustomernameShow = true; - if (this.weighList.hair > 0) { - this.haveInputOrigin = true; - this.isInputOrigin = true; - } - if (this.weighList.hair == 0) { - this.outBuy = false; - } - } else { - this.isInputOrigin = true; - } + this.outBuy = (this.weighList.orderType.indexOf('閿�') !== -1) && this.showWeigh.skin > 0; + // 缁х画鍗歌揣鍙湁澶栬喘绫诲瀷绗簩娆′細鏈� + this.canUnload = this.weighList.orderType === '澶栬喘' && this.showWeigh.hair > 0; } }); }, @@ -410,7 +368,7 @@ }, // 纭绉伴噸鎺ュ彛 saveWeigh() { - this.weighData.coalContactClean = this.coalContactClean; + // this.weighData.coalContactClean = this.coalContactClean; this.$reqPost('saveWeigh', this.weighData, 'json') .then(res => { console.log(res, '绉伴噸鎺ュ彛'); @@ -439,6 +397,11 @@ carNo: this.weighData.carNo, tmId: this.weighData.tmId, filedId: this.weighData.filedId, + tmId: this.weighData.tmId, + gateCameraId: this.weighData.gateCameraId, + equipmentCode: this.weighData.equipmentCode, + tmCode: this.weighData.tmCode, + sceneInOut: this.weighData.sceneInOut, weigh: this.realTimeWeigh }, 'json').then(res => { if (res.code == 0) { @@ -454,6 +417,35 @@ this.$u.toast('鎿嶄綔澶辫触锛岃绋嶅�欓噸璇�'); } }); + }, + // 缁х画鍗歌揣 + UnloadingAgainHandle() { + this.UnloadingAgainLoading = true + this.$reqPost('continueWeigh', { + deptId: this.weighData.deptId, + sceneId: this.weighData.sceneId, + carNo: this.weighData.carNo, + tmId: this.weighData.tmId, + filedId: this.weighData.filedId, + tmId: this.weighData.tmId, + gateCameraId: this.weighData.gateCameraId, + equipmentCode: this.weighData.equipmentCode, + tmCode: this.weighData.tmCode, + sceneInOut: this.weighData.sceneInOut, + weigh: this.realTimeWeigh + }, 'json').then(res => { + this.UnloadingAgainLoading = false + if (res.code == 0) { + this.$u.toast('鎿嶄綔鎴愬姛锛屽嵆灏嗚繑鍥炰笂涓�椤�'); + setTimeout(() => { + uni.navigateBack({ + delta: 1 + }); + }, 1000); + } else { + this.$u.toast('鎿嶄綔澶辫触锛岃绋嶅�欓噸璇�'); + } + }) }, // 鏀剧┖ evacuation() { @@ -476,24 +468,6 @@ evacuationCancel() { this.evacuationModalShow = false; }, - // input鑱氱劍 - inputFocus(v) { - if (v == 1) { - this.isfocus1 = true; - } else { - this.isfocus2 = true; - } - }, - // input澶辩劍 - inputBlur() { - this.isfocus1 = false; - this.isfocus2 = false; - }, - inputChange() { - if (this.weighData.coalContactHair > 0 && this.weighData.coalContactSkin > 0) { - this.isInputOrigin = true; - } - } } }; </script> @@ -506,16 +480,91 @@ align-items: center; } + // 绉伴噸鍘嗗彶 + .weighHistory-enter-active, + .weighHistory-leave-active { + transition: opacity 0.5s ease; + } + + .weighHistory-enter-from, + .weighHistory-leave-to { + opacity: 0; + } + + .weigh-history { + width: 690rpx; + height: 100%; + min-height: 420rpx; + margin: vww(10) auto vww(20); + background: #ffffff; + box-shadow: 4rpx 6rpx 51rpx 0rpx rgba(73, 120, 240, 0.11); + border-radius: 20rpx; + position: relative; + font-size: 30rpx; + font-weight: 300; + color: #303030; + overflow: hidden; + + .block-main { + display: grid; + grid-template-columns: auto; + grid-template-rows: repeat(auto-fit, minmax(40rpx, 1fr)); + width: 94%; + height: 100%; + min-height: 380rpx; + margin: vww(18) vww(7) vww(11) vww(17); + gap: 10rpx 20rpx; + + .weigh-item { + width: 100%; + height: vww(80); + @include flex; + flex-direction: column; + justify-content: space-around; + align-items: flex-start; + + .item-block { + width: 100%; + height: vww(36); + @include flex; + justify-content: space-around; + + .item { + min-width: vww(50); + height: vww(45); + font-size: 21rpx; + font-weight: 400; + color: #ffffff; + text-align: center; + line-height: vww(30); + @include flex; + + .concrete { + width: vww(36); + height: vww(36); + } + + .num { + font-size: 40rpx; + font-weight: 300; + color: #303030; + } + } + } + } + } + } + ::v-deep.weighingDevice { width: 100%; - height: 100vh; + height: 100%; display: flex; flex-direction: column; .one { // flex: 3; height: 290rpx; - margin: vww(20) vww(20) 0 vww(20); + margin: vww(20); border-radius: vww(15); .top { @@ -668,7 +717,7 @@ width: calc(100% - 60rpx); box-sizing: border-box; height: 630rpx; - margin: 0 vww(15) vww(45) vww(15); + margin: 0 vww(15) vww(15) vww(15); background: #ffffff; box-shadow: 0rpx 0rpx 14rpx 0rpx rgba(73, 120, 240, 0.14), 0rpx 7rpx 45rpx 0rpx rgba(73, 120, 240, 0.12); border-radius: 20rpx; @@ -710,19 +759,16 @@ } .three { - margin: 0 auto vww(20); - flex: 0.7; - display: flex; + margin: 0 auto vww(5); + width: 96%; + display: grid; + grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); + justify-content: center; + gap: vww(10); color: #939393; .u-button { - &:nth-of-type(2) { - margin-left: vww(10); - } - - &:nth-of-type(3) { - margin-left: vww(10); - } + width: vww(90); } } -- Gitblit v1.9.1