| | |
| | | :style="{ backgroundImage: `url(${onlineurl}/appimg/image/banner/weighbanner.png)`, backgroundSize: 'cover', backgroundRepeat: 'no-repeat' }"> |
| | | <view class="top"> |
| | | <view class="top_left"> |
| | | <text>{{ realTimeWeigh }}</text> |
| | | <!-- <text>{{ globalweigh }}</text> --> |
| | | <!-- <text>{{ realTimeWeigh }}</text> --> |
| | | <text>{{ globalweigh }}</text> |
| | | </view> |
| | | <view class="top_right"> |
| | | <view class=""> |
| | |
| | | <view class="main-information" |
| | | v-if="weighList.orderType=='转入'||weighList.orderType=='转出'"> |
| | | <view class="prefix"> |
| | | 发货地煤场: |
| | | 发货地基地: |
| | | </view> |
| | | <view class="suffix"> |
| | | {{ weighList.filedName || '' }} |
| | |
| | | <view class="main-information" |
| | | v-if="weighList.orderType=='转入'||weighList.orderType=='转出'"> |
| | | <view class="prefix"> |
| | | 收货地煤场: |
| | | 收货地基地: |
| | | </view> |
| | | <view class="suffix"> |
| | | {{ weighList.toFiledName || '' }} |
| | |
| | | </view> |
| | | <view class="main-information" |
| | | v-if="weighList.orderType!=='转入'||weighList.orderType!=='转出'"> |
| | | <view class="prefix">矿场:</view> |
| | | <view class="prefix">仓库:</view> |
| | | <view class="suffix">{{ weighList.deptName || '' }}</view> |
| | | </view> |
| | | <view class="main-information" |
| | | v-if="weighList.orderType!=='转入'||weighList.orderType!=='转出'"> |
| | | <view class="prefix">煤场:</view> |
| | | <view class="prefix">基地:</view> |
| | | <view class="suffix">{{ weighList.filedName || '' }}</view> |
| | | </view> |
| | | <view class="main-information"> |
| | | <view class="prefix">煤种名称:</view> |
| | | <!-- <view class="main-information"> |
| | | <view class="prefix">物料名称:</view> |
| | | <view class="suffix">{{ weighList.coalName || '' }}</view> |
| | | </view> |
| | | </view> --> |
| | | <view class="main-information"> |
| | | <view class="prefix">订单类型:</view> |
| | | <view class="suffix">{{ weighList.orderType || '' }}</view> |
| | | </view> |
| | | <view class="main-information"> |
| | | <!-- <view class="main-information" v-if="isweight"> |
| | | <view class="prefix">皮重:</view> |
| | | <view class="suffix"> |
| | | {{currentSkin}} |
| | | </view> |
| | | </view> |
| | | <view class="main-information"> |
| | | <view class="main-information" v-if="isweight"> |
| | | <view class="prefix">毛重:</view> |
| | | <view class="suffix"> |
| | | {{currentHair}} |
| | | </view> |
| | | </view> |
| | | <view class="main-information"> |
| | | <view class="main-information" v-if="isweight"> |
| | | <view class="prefix">净重:</view> |
| | | <view class="suffix"> |
| | | {{ currentClean}} |
| | | </view> |
| | | </view> |
| | | <view class="main-information"> |
| | | <view class="main-information" v-else> |
| | | <view class="prefix">净重:</view> |
| | | <view class="suffix"> |
| | | {{ isWeightclean}} |
| | | </view> |
| | | </view> --> |
| | | <!-- <view class="main-information"> |
| | | <view class="prefix">订单余量:</view> |
| | | <view class="suffix">{{ weighList.orderSurplus || 0 }}</view> |
| | | </view> |
| | | </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> |
| | | <weigh-item :list="weighHistory" class="weighingDecive-item"></weigh-item> |
| | | <view class="three"> |
| | | <!-- 放空 --> |
| | | <u-button type="primary" |
| | | text="放空" |
| | | plain |
| | | @click="evacuation" |
| | | throttleTime="500" |
| | | :disabled="!isEvacuation"></u-button> |
| | | <!-- 外销订单称皮时,返回加减吨按钮置灰。称毛时可用.外购订单,不出现返回加减吨的按钮 --> |
| | | <!-- .外购订单,不出现返回加减吨的按钮 --> |
| | | <u-button type="primary" |
| | | text="确定称重" |
| | | :disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh " |
| | | :disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh ||globalWarning" |
| | | :loading="isConfirmWeighLoading" |
| | | loadingText="确认" |
| | | @click="confirmWeigh"></u-button> |
| | |
| | | @click="UnloadingAgainHandle" |
| | | :loading="UnloadingAgainLoading" |
| | | loadingText="确认" |
| | | :disabled="isweigh||realTimeWeigh == 0" |
| | | v-if='canUnload'></u-button> |
| | | <!-- 放空 --> |
| | | <u-button type="primary" |
| | | text="放空" |
| | | plain |
| | | @click="evacuation" |
| | | throttleTime="500" |
| | | :disabled="!isEvacuation"></u-button> |
| | | |
| | | </view> |
| | | <!-- 放空弹窗 --> |
| | | <view class="evacuationModal"> |
| | |
| | | import { webSocketUrl, onlineurl } from '@/api/request.js'; |
| | | import { mapState, mapMutations } from 'vuex'; |
| | | import combinedTitle from '@/components/combined-title/combined-title.vue'; |
| | | import weighItem from '@/components/weighItem.vue' |
| | | export default { |
| | | onLoad(params) { |
| | | |
| | | this.isWeighing = params.isWeighing; // 当前是不是回磅的 |
| | | this.takeCoalId = params.takeCoalId; |
| | | this.weighData.sceneId = params.sceneId; |
| | | this.weighData.gateCameraId = params.gateCameraId; |
| | |
| | | this.weighData.overTmWaixiao = 1 |
| | | } |
| | | this.changeweighHouseCode(params.weighHouseCode); |
| | | this.changeWeigh(0) |
| | | }, |
| | | components: { |
| | | combinedTitle |
| | | combinedTitle, |
| | | weighItem |
| | | }, |
| | | data() { |
| | | return { |
| | | isWeighing:'', |
| | | weighData: { |
| | | //确认称重接口参数 |
| | | deptId: '', |
| | |
| | | temporaryWeighObj: { |
| | | skin: null, |
| | | hair: null, |
| | | clean: null |
| | | clean: null, |
| | | isWeightclean:null, |
| | | }, |
| | | infraredStatus: false, // 红外状态, |
| | | // 放空控制 |
| | |
| | | }, |
| | | watch: { |
| | | realTimeWeigh(newV, oldV) { |
| | | if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType == |
| | | '转出') { |
| | | if (!this.showWeigh.skin) { |
| | | this.temporaryWeighObj.skin = newV; |
| | | } else { |
| | | this.temporaryWeighObj.hair = newV; |
| | | this.isweigh = Number(this.currentClean) > this.weighList.orderSurplus || Number(this |
| | | .currentClean) < 0; |
| | | } |
| | | } else if (this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList |
| | | .orderType == '转入') { |
| | | if (!this.showWeigh.hair) { |
| | | this.temporaryWeighObj.hair = newV; |
| | | } else { |
| | | this.temporaryWeighObj.skin = newV; |
| | | this.isweigh = Number(this.currentClean) < 0 || this.showWeigh.skin < newV && this.showWeigh |
| | | .skin > 0; |
| | | } |
| | | } |
| | | |
| | | }, |
| | | // 监听重量变化 |
| | | globalweigh(newV) { |
| | | this.weighData.weigh = this.realTimeWeigh = newV; |
| | | console.log(this.realTimeWeigh, '真实重量改变了'); |
| | | globalweigh: { |
| | | handler: function(newV) { |
| | | this.weighData.weigh = this.realTimeWeigh = newV; |
| | | if ((this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList |
| | | .orderType == '转出')) { |
| | | if (!this.showWeigh.skin) { |
| | | this.temporaryWeighObj.skin = newV; |
| | | } else { |
| | | this.temporaryWeighObj.hair = newV; |
| | | this.isweigh = Number(this.currentClean) < 0; |
| | | } |
| | | } else if ( (this.isweight) && (this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList |
| | | .orderType == '转入')) { |
| | | if (!this.showWeigh.hair) { |
| | | this.temporaryWeighObj.hair = newV; |
| | | } else { |
| | | this.temporaryWeighObj.skin = newV; |
| | | this.isweigh = Number(this.currentClean) < 0 || this.showWeigh.skin < newV && this |
| | | .showWeigh |
| | | .skin > 0; |
| | | } |
| | | }else if((this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList |
| | | .orderType == '转入') && (!this.isweight)){ |
| | | if (!this.showWeigh.skin) { |
| | | this.temporaryWeighObj.skin = newV; |
| | | this.temporaryWeighObj.isWeightclean = newV; |
| | | } else { |
| | | this.temporaryWeighObj.isWeightclean = newV; |
| | | |
| | | this.isweigh = Number(this.currentClean) < 0; |
| | | } |
| | | } |
| | | }, |
| | | deep: true |
| | | } |
| | | }, |
| | | onPullDownRefresh() { |
| | | if (!this.globalisconnect && !this.globalisUploadimg && this.globalisLogin) { |
| | | if (!this.is_open_socket) { |
| | | this.$store.dispatch('websocketInit') |
| | | this.changeisconnect(false); |
| | | console.log('称重的ws'); |
| | | uni.stopPullDownRefresh(); |
| | | } else { |
| | | uni.stopPullDownRefresh(); |
| | | } |
| | | } |
| | | }, |
| | | onShow() { |
| | | this.init(); |
| | | this.changeisLogin(true) |
| | | this.realTimeWeigh = 0 |
| | | // this.realTimeWeigh = 0 |
| | | }, |
| | | computed: { |
| | | ...mapState(['globalweigh', 'globalinfraredStatus']), |
| | | ...mapState(['globalweigh', 'globalinfraredStatus', 'globalWarning', 'globalisconnect', 'globalisUploadimg', |
| | | 'globalisLogin', 'is_open_socket' |
| | | ]), |
| | | token() { |
| | | return uni.getStorageSync('token'); |
| | | }, |
| | |
| | | return this.weighList.tmTaskCoalItems ? this.weighList.tmTaskCoalItems : [] |
| | | }, |
| | | currentHair() { |
| | | if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType == |
| | | '转出') { |
| | | return this.temporaryWeighObj.hair ? this.temporaryWeighObj.hair : '' |
| | | } |
| | | return this.temporaryWeighObj.hair ? this.temporaryWeighObj.hair : this.showWeigh.skin ? (this.showWeigh |
| | | .skin || '') : (this.showWeigh.hair || '') |
| | | }, |
| | | currentSkin() { |
| | | return this.temporaryWeighObj.skin || '' |
| | | return this.temporaryWeighObj.skin ? this.temporaryWeighObj.skin : (this.showWeigh.skin || '') |
| | | }, |
| | | currentClean() { |
| | | if (!this.currentSkin) return '' |
| | | return (this.currentHair - this.currentSkin).toFixed(2) |
| | | if (this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList |
| | | .orderType == '转入') { |
| | | return (this.currentHair - this.currentSkin).toFixed(2) |
| | | } else { |
| | | return !this.showWeigh.skin ? this.currentSkin : (this.currentHair - this.currentSkin) > 0 ? (this |
| | | .currentHair - this.currentSkin).toFixed(2) : '' |
| | | } |
| | | |
| | | }, |
| | | isWeightclean(){ |
| | | console.log(this.temporaryWeighObj,'his.temporaryWeighObj') |
| | | return this.temporaryWeighObj.skin || '' |
| | | }, |
| | | isweight(){ |
| | | if(this.isWeighing){ |
| | | if(this.isWeighing == '不回磅'){ |
| | | return false |
| | | }else{ |
| | | return true |
| | | } |
| | | |
| | | }else{ |
| | | return true |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | ...mapMutations(['changeweighHouseCode', 'changeisLogin']), |
| | | ...mapMutations(['changeweighHouseCode', 'changeisLogin', 'changeWeigh']), |
| | | init() { |
| | | uni.showLoading({ |
| | | title: '加载中' |
| | |
| | | this.isConfirmWeighLoading = false; |
| | | }, 1000); |
| | | } else { |
| | | this.$u.toast('称重失败,请稍后重试'); |
| | | this.$u.toast('称重失败,请稍后重试' + (res.msg ? res.msg : '')); |
| | | } |
| | | }) |
| | | .catch(err => { |
| | | this.isConfirmWeighLoading = false; |
| | | console.log(err); |
| | | this.$u.toast(err.msg ? err.msg : '称重失败'); |
| | | }); |
| | | }, |
| | | // 加减煤 |
| | |
| | | |
| | | <style lang="scss" |
| | | scoped> |
| | | .weighingDecive-item{ |
| | | min-height: 200rpx!important; |
| | | .weigh-history { |
| | | min-height: 200rpx!important; |
| | | } |
| | | } |
| | | @mixin flex { |
| | | display: flex; |
| | | justify-content: space-between; |
| | |
| | | .bottom-block { |
| | | width: calc(100% - 60rpx); |
| | | box-sizing: border-box; |
| | | height: 630rpx; |
| | | height: 420rpx; |
| | | 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); |
| | |
| | | |
| | | .block-main { |
| | | width: 94%; |
| | | height: 565rpx; |
| | | margin-top: vww(10); |
| | | height: 420rpx; |
| | | margin-top: vww(5); |
| | | @include flex; |
| | | justify-content: space-around; |
| | | align-items: flex-start; |
| | |
| | | |
| | | .three { |
| | | margin: 0 auto vww(5); |
| | | margin-bottom: vww(60); |
| | | width: 96%; |
| | | display: grid; |
| | | grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); |
| | | grid-template-columns: repeat(auto-fit, minmax(140rpx, 1fr)); |
| | | justify-content: center; |
| | | gap: vww(10); |
| | | color: #939393; |
| | | |
| | | .u-button { |
| | | width: vww(90); |
| | | width: vww(70); |
| | | } |
| | | } |
| | | |