| | |
| | | <view class="bill-of-lading-details"> |
| | | <view class="bangDanMessage"> |
| | | <view class=""> |
| | | <text>客户:{{ coalDetailsData.customerName }}</text> |
| | | <text>矿厂:{{ coalDetailsData.deptName }}</text> |
| | | <text>客户:{{ coalDetailsData.customerName || '' }}</text> |
| | | <text>矿厂:{{ coalDetailsData.deptName || '' }}</text> |
| | | </view> |
| | | <view class=""> |
| | | <text>皮重:{{ coalDetailsData.skin }}</text> |
| | | <text>毛重:{{ coalDetailsData.hair }}</text> |
| | | <text>净重:{{ coalDetailsData.clean }}</text> |
| | | <text>皮重:{{ coalDetailsData.skin || '' }}</text> |
| | | <text>毛重:{{ coalDetailsData.hair || '' }}</text> |
| | | <text>净重:{{ coalDetailsData.clean || '' }}</text> |
| | | </view> |
| | | <view class=""> |
| | | <text>磅单类型:{{ coalDetailsData.orderTye }}</text> |
| | | <text>磅单类型:{{ coalDetailsData.orderTye || '' }}</text> |
| | | <text>状态:{{ coalStatus[coalDetailsData.status] }}</text> |
| | | </view> |
| | | <view class=""> |
| | | <text>煤场:{{ coalDetailsData.filedName }}</text> |
| | | <text>发运时间:{{ coalDetailsData.sendDate }}</text> |
| | | <text>提煤单编号:{{ coalDetailsData.code }}</text> |
| | | <text>订单编号:{{ coalDetailsData.orderCode }}</text> |
| | | <text>煤场:{{ coalDetailsData.filedName || '' }}</text> |
| | | <text>发运时间:{{ coalDetailsData.sendDate || '' }}</text> |
| | | <text>提煤单编号:{{ coalDetailsData.code || '' }}</text> |
| | | <text>订单编号:{{ coalDetailsData.orderCode || '' }}</text> |
| | | </view> |
| | | </view> |
| | | <view class="timeLine" style="font-size: 16rpx;"> |
| | |
| | | <view class="utils_chil utils_chilTop"> |
| | | <u-button text="签到" type="primary" plain @click="arriveClick"></u-button> |
| | | <u-button text="入场申请" type="primary" plain @click="rcsqClick"></u-button> |
| | | <u-button text="放空" type="primary" plain></u-button> |
| | | <u-button text="放空" type="primary" plain @click="evacuation" throttleTime="500"></u-button> |
| | | <u-button text="呼叫客服" type="primary" plain @click="callCustomerService"></u-button> |
| | | </view> |
| | | <view class="utils_chil"><u-button text="展示提煤单" @click="showCaolPickUpBill" type="primary"></u-button></view> |
| | | <view class="utils_chil"><u-button text="上磅计量" @click="cengZhongClick" type="primary"></u-button></view> |
| | | </view> |
| | | <view class="evacuationModal"> |
| | | <u-modal |
| | | :show="evacuationModalShow" |
| | | :title="evacuationTitle" |
| | | :content="evacuationContent" |
| | | :showCancelButton="true" |
| | | @confirm="evacuationConfirm" |
| | | @cancel="evacuationCancel" |
| | | ></u-modal> |
| | | </view> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | let socket = null; |
| | | import { webSocketUrl } from '@/api/request.js'; |
| | | export default { |
| | | onLoad(value) { |
| | | if (value.orderPlanId && value.yyId) { |
| | |
| | | yyId: null, |
| | | dayRZ: [], |
| | | coalDetailsData: {}, // 提煤单详情 |
| | | currentPageCoalStatus: 0, // 当前页面提煤单状态 |
| | | // 获取所在磅房参数 |
| | | getWeightHouseObj: { |
| | | deptId: '', |
| | |
| | | openId: null, |
| | | openName: '' |
| | | }, |
| | | coalStatus: ['领取', '预约', '签到', '入场', '称皮', '称毛', '离场', '入磅房', '出磅房', '入煤场', '出煤仓'] // 状态 |
| | | coalStatus: ['领取', '预约', '签到', '入场', '称皮', '称毛', '离场', '入磅房', '出磅房', '入煤场', '出煤仓', '放空'], // 状态 |
| | | weighHouseCode: '', |
| | | // 放空弹窗控制变量 |
| | | evacuationModalShow: false, |
| | | evacuationTitle: '放空确认', |
| | | evacuationContent: '是否确认放空', |
| | | // 第一次放空参数 |
| | | weighData: { |
| | | sceneId: '', |
| | | gateCameraId: '', |
| | | equipmentCode: '', |
| | | weigh: 30 |
| | | } |
| | | }; |
| | | }, |
| | | onShow() { |
| | |
| | | if (res.data.length > 0) { |
| | | this.serviceInfoObj.openId = res.data[0].openId; |
| | | this.serviceInfoObj.openName = res.data[0].openName; |
| | | uni.setStorageSync('customeropenId', this.serviceInfoObj.openId); |
| | | uni.setStorageSync('customerName', this.serviceInfoObj.openName); |
| | | } |
| | | } |
| | | }); |
| | |
| | | // 获取客服openId参数赋值 |
| | | this.getServiceOpenid.deptId = this.coalDetailsData.deptId; |
| | | this.getServiceOpenid.filedId = this.coalDetailsData.filedId; |
| | | // 获取提煤单状态 |
| | | this.currentPageCoalStatus = this.coalDetailsData.status; |
| | | } |
| | | }); |
| | | }, |
| | |
| | | // 签到 |
| | | arriveClick() { |
| | | uni.navigateTo({ |
| | | url: `/pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock?orderPlanId=${this.orderPlanId}` |
| | | url: `/pages/driver-page/driver-index/bill-of-lading-details/punchTheClock/punchTheClock?orderPlanId=${this.orderPlanId}&coalStatus=${ |
| | | this.currentPageCoalStatus |
| | | }&tmId=${this.getWeightHouseObj.tmId}` |
| | | }); |
| | | }, |
| | | // 入场申请 |
| | |
| | | } else { |
| | | wx.join1v1Chat({ |
| | | caller: { nickname: uni.getStorageSync('name'), openid: uni.getStorageSync('openid') }, |
| | | listener: { nickname: '付延余', openid: 'oZjXk5e7G9uIvOzaTO6nFV51ALwk' }, // 这里的openid是fyy的,充当固定的客服openid |
| | | listener: { nickname: uni.getStorageSync('customerName'), openid: uni.getStorageSync('customeropenId') }, // 这里的openid是fyy的,充当固定的客服openid |
| | | backgroundType: 2, |
| | | roomType: 'voice', |
| | | success() { |
| | |
| | | this.$reqGet('getWeighHouse', this.getWeightHouseObj).then(res => { |
| | | console.log(res, '获取磅房'); |
| | | if (res.code == 0) { |
| | | this.weighData.sceneId = res.data.id; |
| | | this.weighData.gateCameraId = res.data.lastEquipmentId; |
| | | this.weighData.equipmentCode = res.data.lastEquipmentCode; |
| | | this.weighHouseCode = res.data.code; |
| | | uni.navigateTo({ |
| | | url: `/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice?takeCoalId=${this.orderPlanId}&sceneId=${res.data.id}&gateCameraId=${ |
| | | res.data.lastEquipmentId |
| | | }&gateCameraCode=${res.data.lastEquipmentCode}&weighHouseCode=${res.data.code}` |
| | | url: `/pages/driver-page/driver-index/bill-of-lading-details/weighingDevice/weighingDevice?takeCoalId=${this.orderPlanId}&sceneId=${ |
| | | res.data.id |
| | | }&gateCameraId=${res.data.lastEquipmentId}&gateCameraCode=${res.data.lastEquipmentCode}&weighHouseCode=${res.data.code}` |
| | | }); |
| | | } else { |
| | | this.$u.toast('未在磅房,请前往磅房后再试!!'); |
| | | } |
| | | }); |
| | | }, |
| | | /** |
| | | * 初始化 weoSocket |
| | | */ |
| | | initWebSocket() { |
| | | let wsUrl = `${webSocketUrl}?access_token=${uni.getStorageSync('token')}`; |
| | | 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.weighData.weigh = nowWeighObj.weigh; |
| | | } else { |
| | | this.weighData.weigh = nowWeighObj.weigh; |
| | | } |
| | | } |
| | | }); |
| | | socket.onClose(() => { |
| | | console.log('webSocketClose'); |
| | | this.$u.toast('磅房中断'); |
| | | }); |
| | | socket.onError(err => { |
| | | console.log('socket报错', err); |
| | | this.$u.toast('出现错误,请重新进入该页面,重试!!'); |
| | | }); |
| | | }, |
| | | // 放空 |
| | | evacuation() { |
| | | this.evacuationModalShow = true; |
| | | }, |
| | | // 放空弹窗确认 |
| | | evacuationConfirm() { |
| | | let mix = Object.assign(this.weighData, this.getWeightHouseObj); |
| | | this.$reqPost('getOneEvacuation', mix, 'json').then(res => { |
| | | console.log(res, '第一次放空'); |
| | | if (res.code == 0) { |
| | | this.$u.toast('操作成功'); |
| | | this.evacuationModalShow = false; |
| | | } else { |
| | | this.$u.toast('操作失败,请稍后重试'); |
| | | this.evacuationModalShow = false; |
| | | } |
| | | }); |
| | | }, |
| | | // 放空弹窗取消 |
| | | evacuationCancel() { |
| | | this.evacuationModalShow = false; |
| | | } |
| | | } |
| | | }; |
| | |
| | | margin: vww(20); |
| | | margin-bottom: vww(10); |
| | | height: 40%; |
| | | font-size:vww(16); |
| | | font-weight: 500; |
| | | .u-text { |
| | | margin-bottom: vww(5) !important; |
| | | } |
| | | font-size: vww(18); |
| | | font-weight: 600; |
| | | view { |
| | | margin-bottom: vww(5); |
| | | margin-bottom: vww(10); |
| | | } |
| | | view:nth-of-type(1) { |
| | | display: flex; |
| | | text{ |
| | | width:50%; |
| | | text { |
| | | width: 50%; |
| | | text-align: center; |
| | | } |
| | | } |
| | | view:nth-of-type(2) { |
| | | display: flex; |
| | | text{ |
| | | width:33%; |
| | | text { |
| | | width: 33%; |
| | | text-align: center; |
| | | } |
| | | } |
| | | view:nth-of-type(3) { |
| | | display: flex; |
| | | text{ |
| | | width:50%; |
| | | text { |
| | | width: 50%; |
| | | text-align: center; |
| | | } |
| | | } |
| | | view:nth-of-type(4){ |
| | | display:flex; |
| | | view:nth-of-type(4) { |
| | | display: flex; |
| | | flex-direction: column; |
| | | text { |
| | | margin-bottom: vww(10); |
| | | text-align: center; |
| | | } |
| | | } |
| | | } |
| | | .timeLine { |
| | |
| | | } |
| | | } |
| | | .utilsBox { |
| | | padding: vww(20); |
| | | padding: vww(10) vww(20); |
| | | flex: 1; |
| | | display: flex; |
| | | flex-direction: column; |