|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <view class="weighingDevice"> | 
|---|
|  |  |  | <view class="one"> | 
|---|
|  |  |  | <view | 
|---|
|  |  |  | class="one" | 
|---|
|  |  |  | style="background: url('https://mx.jzeg.cn:9095/appimg/image/banner/weighbanner.png') no-repeat; | 
|---|
|  |  |  | background-size: cover;" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <view class="top"> | 
|---|
|  |  |  | <view class="top_left"> | 
|---|
|  |  |  | <text>{{ realTimeWeigh }}</text> | 
|---|
|  |  |  | 
|---|
|  |  |  | 红外: | 
|---|
|  |  |  | <u--text :type="globalinfraredStatus ? 'error' : 'success'" :text="globalinfraredStatus ? '异常' : '正常'" size="34"></u--text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!-- <view class=""> | 
|---|
|  |  |  | 雷达: | 
|---|
|  |  |  | <u--text type="success" text="正常" size="34"></u--text> | 
|---|
|  |  |  | </view> --> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="bottom" v-if="weighList.orderType == '内购' || weighList.orderType == '转入'"> | 
|---|
|  |  |  | <view> | 
|---|
|  |  |  | <view style="font-weight: 600;">原发信息</view> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <text>毛重:{{ primaryHair || '' }}皮重:{{ primarySkin || '' }}净重:{{ primaryClean || '' }}</text> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <!-- <view class="bottom" v-else-if="weighList.orderType == '外购' && weighList.hair == 0"> | 
|---|
|  |  |  | <text> | 
|---|
|  |  |  | 毛重:{{ coalContactHair || '' }}皮重:{{ coalContactSkin || '' }}净重:{{ (Number(this.coalContactHair) - Number(this.coalContactSkin)).toFixed(2) || '' }} | 
|---|
|  |  |  | </text> | 
|---|
|  |  |  | </view> --> | 
|---|
|  |  |  | <view class="bottom"><text>TIP:当前状态为正常时可以称重</text></view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="two"> | 
|---|
|  |  |  | <p>订单编号:{{ weighList.code || '' }}</p> | 
|---|
|  |  |  | <p>订单类型:{{ weighList.orderType || '' }}</p> | 
|---|
|  |  |  | <p>订单余量:{{ weighList.orderSurplus || 0 }}</p> | 
|---|
|  |  |  | <p>皮重:{{ temporaryWeighObj.skin == 0 ? weighList.skin : temporaryWeighObj.skin }}</p> | 
|---|
|  |  |  | <p>毛重:{{ temporaryWeighObj.hair == 0 ? weighList.hair : temporaryWeighObj.hair }}</p> | 
|---|
|  |  |  | <p>净重:{{ temporaryWeighObj.clean == 0 ? weighList.clean : temporaryWeighObj.clean }}</p> | 
|---|
|  |  |  | <p>煤种名称:{{ weighList.coalName || '' }}</p> | 
|---|
|  |  |  | <p>单位名称:{{ weighList.deptName || '' }}</p> | 
|---|
|  |  |  | <p>矿场名称:{{ weighList.filedName || '' }}</p> | 
|---|
|  |  |  | <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: isInputOrigin }"> | 
|---|
|  |  |  | <u--input | 
|---|
|  |  |  | placeholder="请输入皮重" | 
|---|
|  |  |  | border="surround" | 
|---|
|  |  |  | v-model="weighData.coalContactSkin" | 
|---|
|  |  |  | @focus="inputFocus(1)" | 
|---|
|  |  |  | @blur="inputBlur" | 
|---|
|  |  |  | :disabled="isInputOrigin" | 
|---|
|  |  |  | ></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: isInputOrigin }"> | 
|---|
|  |  |  | <u--input | 
|---|
|  |  |  | placeholder="请输入毛重" | 
|---|
|  |  |  | border="surround" | 
|---|
|  |  |  | v-model="weighData.coalContactHair" | 
|---|
|  |  |  | @focus="inputFocus(2)" | 
|---|
|  |  |  | @blur="inputBlur" | 
|---|
|  |  |  | :disabled="isInputOrigin" | 
|---|
|  |  |  | ></u--input> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="unit" :class="{ focusClass: isfocus2 }">吨</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="second-line"> | 
|---|
|  |  |  | <view class="label-text">净重</view> | 
|---|
|  |  |  | <view class="input-container"><u--input placeholder="净重" border="surround" v-model="coalContactClean" :disabled="isInputOrigin"></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.skin }}</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.hair }}</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.clean }}</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"> | 
|---|
|  |  |  | <view class="prefix">客户:</view> | 
|---|
|  |  |  | <view class="suffix">{{ weighList.customerName }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">矿场:</view> | 
|---|
|  |  |  | <view class="suffix">{{ weighList.deptName || '' }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">煤场:</view> | 
|---|
|  |  |  | <view class="suffix">{{ weighList.filedName || '' }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">煤种名称:</view> | 
|---|
|  |  |  | <view class="suffix">{{ weighList.coalName || '' }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">皮重:</view> | 
|---|
|  |  |  | <view class="suffix">{{ temporaryWeighObj.skin == 0 ? weighList.skin : temporaryWeighObj.skin }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">毛重:</view> | 
|---|
|  |  |  | <view class="suffix">{{ temporaryWeighObj.hair == 0 ? weighList.hair : temporaryWeighObj.hair }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">净重:</view> | 
|---|
|  |  |  | <view class="suffix">{{ temporaryWeighObj.clean == 0 ? weighList.clean : temporaryWeighObj.clean }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="main-information"> | 
|---|
|  |  |  | <view class="prefix">订单余量:</view> | 
|---|
|  |  |  | <view class="suffix">{{ weighList.orderSurplus || 0 }}</view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="three"> | 
|---|
|  |  |  | <!-- 放空 --> | 
|---|
|  |  |  | <u-button type="primary" text="放空" plain @click="evacuation" throttleTime="500" :disabled="isEvacuation"></u-button> | 
|---|
|  |  |  | <u-button type="primary" text="放空" plain @click="evacuation" throttleTime="500" :disabled="!isEvacuation"></u-button> | 
|---|
|  |  |  | <!-- 外销订单称皮时,返回加减吨按钮置灰。称毛时可用.外购订单,不出现返回加减吨的按钮 --> | 
|---|
|  |  |  | <u-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | text="确定称重" | 
|---|
|  |  |  | :disabled="realTimeWeigh == 0 || globalinfraredStatus" | 
|---|
|  |  |  | :disabled="realTimeWeigh == 0 || globalinfraredStatus || isweigh || isInputOrigin" | 
|---|
|  |  |  | :loading="isConfirmWeighLoading" | 
|---|
|  |  |  | loadingText="确认" | 
|---|
|  |  |  | @click="confirmWeigh" | 
|---|
|  |  |  | ></u-button> | 
|---|
|  |  |  | <u-button type="primary" text="返回加减吨" :disabled="addAndSubtractCoalDisabled" @click="addAndSubtractCoal" class="jiajian"></u-button> | 
|---|
|  |  |  | <u-button type="primary" text="返回加减吨" :disabled="addAndSubtractCoalDisabled" @click="addAndSubtractCoal" class="jiajian" v-if="outBuy"></u-button> | 
|---|
|  |  |  | </view> | 
|---|
|  |  |  | <view class="four" v-if="weighList.orderType !== '外购'">如您需要调整装载货品吨数,请点击返回加减吨</view> | 
|---|
|  |  |  | <!-- <view class="four" v-if="weighList.orderType !== '外购'">如您需要调整装载货品吨数,请点击返回加减吨</view> --> | 
|---|
|  |  |  | <!-- 放空弹窗 --> | 
|---|
|  |  |  | <view class="evacuationModal"> | 
|---|
|  |  |  | <u-modal | 
|---|
|  |  |  | 
|---|
|  |  |  | let socket = null; | 
|---|
|  |  |  | import { webSocketUrl } from '@/api/request.js'; | 
|---|
|  |  |  | import { mapState, mapMutations } from 'vuex'; | 
|---|
|  |  |  | import toast from '../../../../../uni_modules/uview-ui/libs/config/props/toast'; | 
|---|
|  |  |  | import combinedTitle from '@/components/combined-title/combined-title.vue'; | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | onLoad(params) { | 
|---|
|  |  |  | this.takeCoalId = params.takeCoalId; | 
|---|
|  |  |  | this.weighData.sceneId = params.sceneId; | 
|---|
|  |  |  | this.weighData.gateCameraId = params.gateCameraId; | 
|---|
|  |  |  | this.weighData.equipmentCode = params.gateCameraCode; | 
|---|
|  |  |  | this.weighData.sceneInOut = params.sceneInOut; | 
|---|
|  |  |  | this.weighHouseCode = params.weighHouseCode; | 
|---|
|  |  |  | this.primarySkin = params.primarySkin; | 
|---|
|  |  |  | this.primaryHair = params.primaryHair; | 
|---|
|  |  |  | this.primaryClean = params.primaryClean; | 
|---|
|  |  |  | this.changeweighHouseCode(params.weighHouseCode); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | components: { | 
|---|
|  |  |  | combinedTitle | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | 
|---|
|  |  |  | gateCameraId: '', | 
|---|
|  |  |  | equipmentCode: '', | 
|---|
|  |  |  | weigh: 0, | 
|---|
|  |  |  | tmCode: '' | 
|---|
|  |  |  | tmCode: '', | 
|---|
|  |  |  | sceneInOut: '', | 
|---|
|  |  |  | coalContactClean: 0, | 
|---|
|  |  |  | coalContactHair: 0, | 
|---|
|  |  |  | coalContactSkin: 0 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 是否填写原发信息 | 
|---|
|  |  |  | isInputOrigin: false, | 
|---|
|  |  |  | takeCoalId: null, | 
|---|
|  |  |  | weighHouseCode: '', | 
|---|
|  |  |  | isConfirmWeighLoading: false, //确定称重按钮 | 
|---|
|  |  |  | realTimeWeigh: '', | 
|---|
|  |  |  | realTimeWeigh: 0, | 
|---|
|  |  |  | weighList: {}, | 
|---|
|  |  |  | webSocket: null, // webSocket实例 | 
|---|
|  |  |  | // lockReconnect: false, // 重连锁,避免多次重连 | 
|---|
|  |  |  | // maxReconnect: 6, // 最大重连次数, -1 标识无限重连 | 
|---|
|  |  |  | // reconnectTime: 0, // 重连尝试次数 | 
|---|
|  |  |  | // heartbeat: { | 
|---|
|  |  |  | //    interval: 30 * 1000, // 心跳间隔时间 | 
|---|
|  |  |  | //    timeout: 10 * 1000, // 响应超时时间 | 
|---|
|  |  |  | //    pingTimeoutObj: null, // 延时发送心跳的定时器 | 
|---|
|  |  |  | //    pongTimeoutObj: null, // 接收心跳响应的定时器 | 
|---|
|  |  |  | //    pingMessage: JSON.stringify({ type: 'ping' }) // 心跳请求信息 | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | // 临时称重对象 | 
|---|
|  |  |  | temporaryWeighObj: { | 
|---|
|  |  |  | skin: 0, | 
|---|
|  |  |  | 
|---|
|  |  |  | // 放空控制 | 
|---|
|  |  |  | evacuationModalShow: false, | 
|---|
|  |  |  | evacuationTitle: '放空确认', | 
|---|
|  |  |  | evacuationContent: '是否确认放空' | 
|---|
|  |  |  | evacuationContent: '是否确认放空', | 
|---|
|  |  |  | // 获取原发信息 | 
|---|
|  |  |  | primarySkin: null, | 
|---|
|  |  |  | primaryHair: null, | 
|---|
|  |  |  | primaryClean: null, | 
|---|
|  |  |  | // 判断称重按钮是否可用 | 
|---|
|  |  |  | isweigh: false, | 
|---|
|  |  |  | // 外购类型称重填写毛,皮, | 
|---|
|  |  |  | firstHairCustomernameShow: false, | 
|---|
|  |  |  | coalContactHair: '', | 
|---|
|  |  |  | coalContactSkin: '', | 
|---|
|  |  |  | // 聚焦时改变样式 | 
|---|
|  |  |  | isfocus1: false, | 
|---|
|  |  |  | isfocus2: false, | 
|---|
|  |  |  | // 外购第一次称毛重不需要加减吨 | 
|---|
|  |  |  | outBuy: true | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | watch: { | 
|---|
|  |  |  | realTimeWeigh(newV, oldV) { | 
|---|
|  |  |  | console.log(newV); | 
|---|
|  |  |  | if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销') { | 
|---|
|  |  |  | if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType == '转出') { | 
|---|
|  |  |  | if (this.weighList.skin == 0) { | 
|---|
|  |  |  | // this.temporaryWeighObj.skin = this.realTimeWeigh; | 
|---|
|  |  |  | 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.isweigh = this.temporaryWeighObj.clean > this.weighList.orderSurplus; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else if (this.weighList.orderType == '外购' || this.weighList.orderType == '转出') { | 
|---|
|  |  |  | } else if (this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList.orderType == '转入') { | 
|---|
|  |  |  | if (this.weighList.hair == 0) { | 
|---|
|  |  |  | // this.temporaryWeighObj.hair = this.realTimeWeigh; | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 监听重量变化 | 
|---|
|  |  |  | globalweigh(v) { | 
|---|
|  |  |  | this.weighData.weigh = this.realTimeWeigh = v; | 
|---|
|  |  |  | globalweigh: { | 
|---|
|  |  |  | handler(v) { | 
|---|
|  |  |  | this.weighData.weigh = this.realTimeWeigh = v; | 
|---|
|  |  |  | console.log(this.realTimeWeigh, '真实重量改变了'); | 
|---|
|  |  |  | // setTimeout(() => { | 
|---|
|  |  |  | //    this.weighData.weigh = this.realTimeWeigh = v; | 
|---|
|  |  |  | // }, 0); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | deep: true, | 
|---|
|  |  |  | immediate: true | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | onShow() { | 
|---|
|  |  |  | this.init(); | 
|---|
|  |  |  | this.realTimeWeigh = 0; | 
|---|
|  |  |  | // this.initWebSocket(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | computed: { | 
|---|
|  |  |  | ...mapState(['globalweigh', 'globalinfraredStatus']), | 
|---|
|  |  |  | coalContactClean() { | 
|---|
|  |  |  | return (Number(this.weighData.coalContactHair) - Number(this.weighData.coalContactSkin)).toFixed(2); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | token() { | 
|---|
|  |  |  | return uni.getStorageSync('token'); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 加减煤按钮禁用与否 | 
|---|
|  |  |  | addAndSubtractCoalDisabled() { | 
|---|
|  |  |  | if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType == '转出') { | 
|---|
|  |  |  | if (this.weighList.hair == 0) { | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | } else if (this.weighList.hair != 0) { | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return this.realTimeWeigh == 0; | 
|---|
|  |  |  | // if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType == '转出') { | 
|---|
|  |  |  | //    if (this.weighList.hair == 0) { | 
|---|
|  |  |  | //       return true; | 
|---|
|  |  |  | //    } else if (this.weighList.hair != 0) { | 
|---|
|  |  |  | //       return false; | 
|---|
|  |  |  | //    } | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 是否放空按钮禁用 | 
|---|
|  |  |  | isEvacuation() { | 
|---|
|  |  |  | if (this.weighList.hair == this.weighList.skin || this.temporaryWeighObj.skin == this.temporaryWeighObj.hair) { | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | return true; | 
|---|
|  |  |  | if (this.weighList.orderType == '外销' || this.weighList.orderType == '内销' || this.weighList.orderType == '转出') { | 
|---|
|  |  |  | return this.weighList.skin == this.temporaryWeighObj.hair || this.temporaryWeighObj.skin == this.temporaryWeighObj.hair; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.weighList.orderType == '外购' || this.weighList.orderType == '内购' || this.weighList.orderType == '转入') { | 
|---|
|  |  |  | return this.weighList.hair == this.temporaryWeighObj.skin || this.temporaryWeighObj.skin == this.temporaryWeighObj.hair; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | sideline() { | 
|---|
|  |  |  | return this.weighList.orderType == '内购' || this.weighList.orderType == '转出'; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | 
|---|
|  |  |  | this.weighData.tmId = res.data.id; | 
|---|
|  |  |  | 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.outBuy = false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.weighData.coalContactHair > 0 && this.weighData.coalContactSkin > 0) { | 
|---|
|  |  |  | this.isInputOrigin = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 确认称重接口 | 
|---|
|  |  |  | saveWeigh() { | 
|---|
|  |  |  | this.weighData.coalContactClean = this.coalContactClean; | 
|---|
|  |  |  | this.$reqPost('saveWeigh', this.weighData, 'json') | 
|---|
|  |  |  | .then(res => { | 
|---|
|  |  |  | console.log(res, '称重接口'); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 初始化 weoSocket | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | initWebSocket() { | 
|---|
|  |  |  | let wsUrl = `${webSocketUrl}?access_token=${uni.getStorageSync('token')}`; | 
|---|
|  |  |  | let socket = uni.connectSocket({ | 
|---|
|  |  |  | url: wsUrl, | 
|---|
|  |  |  | header: { | 
|---|
|  |  |  | CLIENT_TOC: 'Y' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | complete: res => { | 
|---|
|  |  |  | console.log(res, 'socket结果'); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | socket.onOpen(() => { | 
|---|
|  |  |  | console.log('onOpen'); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | // 获取服务器传来的数据,做相应处理 | 
|---|
|  |  |  | socket.onMessage(res => { | 
|---|
|  |  |  | console.log('socketWeigh', res); | 
|---|
|  |  |  | let nowWeighObj = JSON.parse(res.data.slice(7)); | 
|---|
|  |  |  | if (nowWeighObj.eqCode == this.weighHouseCode) { | 
|---|
|  |  |  | if (nowWeighObj.eqInfraredStatus) { | 
|---|
|  |  |  | this.infraredStatus = true; | 
|---|
|  |  |  | this.weighData.weigh = this.realTimeWeigh = nowWeighObj.weigh; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.infraredStatus = false; | 
|---|
|  |  |  | this.weighData.weigh = this.realTimeWeigh = nowWeighObj.weigh; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | socket.onClose(() => { | 
|---|
|  |  |  | uni.closeSocket(); | 
|---|
|  |  |  | console.log('webSocketClose'); | 
|---|
|  |  |  | this.$u.toast('磅房已关闭'); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | socket.onError(err => { | 
|---|
|  |  |  | console.log('socket报错', err); | 
|---|
|  |  |  | this.$u.toast('磅房暂时不能使用,请重新进入该页面,重试!!'); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 放空 | 
|---|
|  |  |  | evacuation() { | 
|---|
|  |  |  | this.evacuationModalShow = true; | 
|---|
|  |  |  | 
|---|
|  |  |  | evacuationConfirm() { | 
|---|
|  |  |  | this.$reqPost('getTwoEvacuation', this.weighData, 'json').then(res => { | 
|---|
|  |  |  | console.log(res, '第二次放空'); | 
|---|
|  |  |  | this.evacuationModalShow = false; | 
|---|
|  |  |  | if (res.code == 0) { | 
|---|
|  |  |  | this.$u.toast('操作成功'); | 
|---|
|  |  |  | this.evacuationModalShow = false; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$u.toast(res.msg ? res.msg : '操作失败'); | 
|---|
|  |  |  | this.evacuationModalShow = true; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 放空弹窗取消 | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <style lang="scss" scoped> | 
|---|
|  |  |  | @mixin flex { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | justify-content: space-between; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ::v-deep.weighingDevice { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | height: 100vh; | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | .one { | 
|---|
|  |  |  | flex: 2; | 
|---|
|  |  |  | border: vww(2) solid #dddddd; | 
|---|
|  |  |  | // flex: 3; | 
|---|
|  |  |  | height: 290rpx; | 
|---|
|  |  |  | margin: vww(20) vww(20) 0 vww(20); | 
|---|
|  |  |  | border-radius: vww(15); | 
|---|
|  |  |  | .top { | 
|---|
|  |  |  | height: 80%; | 
|---|
|  |  |  | height: 75%; | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | .top_left { | 
|---|
|  |  |  | flex: 3; | 
|---|
|  |  |  | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | justify-content: center; | 
|---|
|  |  |  | font-size: 74rpx; | 
|---|
|  |  |  | font-weight: 400; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | line-height: 69rpx; | 
|---|
|  |  |  | text-shadow: 0rpx 3rpx 14rpx rgba(0, 0, 0, 0.33); | 
|---|
|  |  |  | text { | 
|---|
|  |  |  | font-family: weighting; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .top_right { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | justify-content: center; | 
|---|
|  |  |  | flex: 2; | 
|---|
|  |  |  | font-size: 31rpx; | 
|---|
|  |  |  | font-weight: 300; | 
|---|
|  |  |  | color: #ffffff; | 
|---|
|  |  |  | view { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .bottom { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | height: 25%; | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | justify-content: space-between; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | font-size: 28rpx; | 
|---|
|  |  |  | font-weight: 300; | 
|---|
|  |  |  | color: #d9e1fe; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .two { | 
|---|
|  |  |  | flex: 4; | 
|---|
|  |  |  | border: vww(2) solid #dddddd; | 
|---|
|  |  |  | margin: vww(20); | 
|---|
|  |  |  | border-radius: vww(10); | 
|---|
|  |  |  | padding: vww(20); | 
|---|
|  |  |  | p { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | font-size: vww(20); | 
|---|
|  |  |  | font-weight: 500; | 
|---|
|  |  |  | margin-top: vww(5); | 
|---|
|  |  |  | .middle-block { | 
|---|
|  |  |  | width: 690rpx; | 
|---|
|  |  |  | height: 386rpx; | 
|---|
|  |  |  | margin: vww(20) vww(15) vww(13); | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | justify-content: center; | 
|---|
|  |  |  | overflow: hidden; | 
|---|
|  |  |  | .block-main { | 
|---|
|  |  |  | width: 650rpx; | 
|---|
|  |  |  | height: 350rpx; | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | margin-bottom: vww(20); | 
|---|
|  |  |  | position: relative; | 
|---|
|  |  |  | .first-line, | 
|---|
|  |  |  | .second-line { | 
|---|
|  |  |  | width: 90%; | 
|---|
|  |  |  | height: vww(44); | 
|---|
|  |  |  | .focusClass { | 
|---|
|  |  |  | color: #5b95fd; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .inputClass { | 
|---|
|  |  |  | border: 1px solid rgba(73, 95, 252, 0.6) !important; | 
|---|
|  |  |  | box-shadow: 0rpx 5rpx 13rpx 0rpx rgba(73, 95, 252, 0.6) !important; | 
|---|
|  |  |  | border-radius: 12rpx !important; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .isInputOrigin { | 
|---|
|  |  |  | background-color: #f4f4fc; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .input-container { | 
|---|
|  |  |  | border: 2px solid #c5c5c5; | 
|---|
|  |  |  | box-shadow: 0rpx 5rpx 13rpx 0rpx #c5c5c5; | 
|---|
|  |  |  | border-radius: 12rpx; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .first-line { | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | position: relative; | 
|---|
|  |  |  | top: vww(8); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .second-line { | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .block-sideline { | 
|---|
|  |  |  | width: 94%; | 
|---|
|  |  |  | height: vww(100); | 
|---|
|  |  |  | @include flex flex-direction: column; | 
|---|
|  |  |  | align-items: flex-start; | 
|---|
|  |  |  | .first-line { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .weigh-item { | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .bottom-block { | 
|---|
|  |  |  | width: 690rpx; | 
|---|
|  |  |  | height: 630rpx; | 
|---|
|  |  |  | margin: 0 vww(15) vww(45) 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; | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | justify-content: center; | 
|---|
|  |  |  | .block-main { | 
|---|
|  |  |  | width: 94%; | 
|---|
|  |  |  | height: 565rpx; | 
|---|
|  |  |  | margin-top: vww(10); | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | justify-content: space-around; | 
|---|
|  |  |  | align-items: flex-start; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | .main-information { | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | height: 28rpx; | 
|---|
|  |  |  | font-size: 28rpx; | 
|---|
|  |  |  | font-weight: 300; | 
|---|
|  |  |  | color: #303030; | 
|---|
|  |  |  | @include flex; | 
|---|
|  |  |  | justify-content: flex-start; | 
|---|
|  |  |  | .prefix { | 
|---|
|  |  |  | min-width: vww(60); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .suffix { | 
|---|
|  |  |  | flex: 1; | 
|---|
|  |  |  | margin-left: vww(12); | 
|---|
|  |  |  | text-align: left; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .three { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .four { | 
|---|
|  |  |  | margin: vww(10) auto; | 
|---|
|  |  |  | flex: 0.5; | 
|---|
|  |  |  | width: 100%; | 
|---|
|  |  |  | margin-top: vww(5); | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .secondary-confirmation__main { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | flex-direction: column; | 
|---|
|  |  |  | justify-content: space-between; | 
|---|
|  |  |  | align-items: center; | 
|---|
|  |  |  | .secondary-child { | 
|---|
|  |  |  | display: flex; | 
|---|
|  |  |  | justify-content: space-between; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|