|  |  | 
 |  |  |       <!-- 工作档 --> | 
 |  |  |       <view class="wrkMast" v-if="wrkMast"> | 
 |  |  |          <view class="wrkMast-wrkNo"> | 
 |  |  |             <view style="flex:3">工作号: {{wrkMast.wrkNo}}</view> | 
 |  |  |             <view style="flex:2;text-align: right;">{{wrkMast.ioTitle}}</view> | 
 |  |  |             <view style="flex:5">工作号: {{wrkMast.wrkNo}}</view> | 
 |  |  |             <view style="flex:3;text-align: right;">{{wrkMast.ioTitle}}</view> | 
 |  |  |          </view> | 
 |  |  |          <view>工作类型: {{wrkMast.ioType$}}</view> | 
 |  |  |          <view>工作状态: {{wrkMast.wrkSts$}}</view> | 
 |  |  |          <view>源库位: {{wrkMast.sourceLocNo}}</view> | 
 |  |  |          <view>货架码: {{wrkMast.barcode}}</view> | 
 |  |  |       </view> | 
 |  |  |        | 
 |  |  |       <!-- 明细 --> | 
 |  |  | 
 |  |  |             <view>商品编码:{{wrkDetl.matnr}}</view> | 
 |  |  |             <view>销售订单号:{{wrkDetl.threeCode ? wrkDetl.threeCode : ' --'}}</view> | 
 |  |  |             <view>自由项:{{wrkDetl.deadTime ? wrkDetl.deadTime : ' --'}}</view> | 
 |  |  |             <view>数量:{{wrkDetl.anfme}}</view> | 
 |  |  |             <view>出库数量:{{wrkDetl.anfme}}</view> | 
 |  |  |          </view> | 
 |  |  |       </view> | 
 |  |  |        | 
 |  |  | 
 |  |  |        | 
 |  |  |       <!-- 弹窗 --> | 
 |  |  |       <view> | 
 |  |  |          <uni-popup ref="doContainerMoveOut" type="dialog"> | 
 |  |  |             <view class="popup"> | 
 |  |  |                <!-- 标题 --> | 
 |  |  |                <view class="title">请输入空货架码</view> | 
 |  |  |                <view class="popup-item"> | 
 |  |  |                   <view class="popup-item-left">货架码:</view> | 
 |  |  |                   <view class="popup-item-right"><input type="text" v-model="barcode"></view> | 
 |  |  |                </view> | 
 |  |  |                <view class="btn"> | 
 |  |  |                   <view class="btn-left" @click="containerMoveOutClose">取消</view> | 
 |  |  |                   <view class="btn-right" @click="containerMoveOut()">确认出库</view> | 
 |  |  |                </view> | 
 |  |  |             </view> | 
 |  |  |          </uni-popup> | 
 |  |  |       </view> | 
 |  |  | 		 | 
 |  |  |       <!-- 弹窗 --> | 
 |  |  |       <view> | 
 |  |  |          <uni-popup ref="doContainerMoveOut2" type="dialog"> | 
 |  |  |             <view class="popup"> | 
 |  |  |                <!-- 标题 --> | 
 |  |  |                <view class="title">请输入空货架码</view> | 
 |  |  |                <view class="popup-item"> | 
 |  |  |                   <view class="popup-item-left">货架码:</view> | 
 |  |  |                   <view class="popup-item-right"><input type="text" v-model="barcode"></view> | 
 |  |  |                </view> | 
 |  |  |                <view class="btn"> | 
 |  |  |                   <view class="btn-left" @click="containerMoveOutClose">取消</view> | 
 |  |  |                   <view class="btn-right" @click="containerMoveOut2()">确认离场</view> | 
 |  |  |                </view> | 
 |  |  |             </view> | 
 |  |  |          </uni-popup> | 
 |  |  |       </view> | 
 |  |  | 		 | 
 |  |  |       <!-- 弹窗 --> | 
 |  |  |       <view> | 
 |  |  |          <uni-popup ref="doPickIn" type="dialog"> | 
 |  |  |             <view class="popup"> | 
 |  |  |                <!-- 标题 --> | 
 |  |  |                <view class="title">请输入空货架码</view> | 
 |  |  |                <view class="popup-item"> | 
 |  |  |                   <view class="popup-item-left">货架码:</view> | 
 |  |  |                   <view class="popup-item-right"><input type="text" v-model="barcode"></view> | 
 |  |  |                </view> | 
 |  |  |                <view class="btn"> | 
 |  |  |                   <view class="btn-left" @click="pickInClose">取消</view> | 
 |  |  |                   <view class="btn-right" @click="pickIn()">入库</view> | 
 |  |  |                </view> | 
 |  |  |             </view> | 
 |  |  |          </uni-popup> | 
 |  |  |       </view> | 
 |  |  | 		 | 
 |  |  |       <!-- 弹窗 --> | 
 |  |  |       <view> | 
 |  |  |          <uni-popup ref="emptyOut" type="dialog"> | 
 |  |  |             <view class="popup"> | 
 |  |  |                <!-- 标题 --> | 
 |  |  | 
 |  |  |       <view class="buttom"> | 
 |  |  |          <button size="mini" type="primary" @click="emptyPakin()" v-if="btnType == 'emptyPakin'">空板入库</button> | 
 |  |  |          <button size="mini" type="primary" @click="emptyOut()" v-if="btnType == 'emptyPakin'">呼叫空板</button> | 
 |  |  |          <button size="mini" type="primary" @click="containerMoveOut()" v-if="btnType == 'out' && station.locSts == 'F'">确认出库</button> | 
 |  |  |          <button size="mini" type="primary" @click="pickIn()" v-if="btnType == 'pick' && station.locSts == 'F'">已拣料回库</button> | 
 |  |  |          <button size="mini" type="primary" @click="startPakin()" v-if="btnType == 'start' && station.locSts == 'F'">启动入库</button> | 
 |  |  |          <button size="mini" type="primary" @click="doContainerMoveOut2()" v-if="btnType == 'out'">货架离场</button> | 
 |  |  |          <button size="mini" type="primary" @click="doContainerMoveOut()" v-if="btnType == 'out'">确认出库</button> | 
 |  |  |          <button size="mini" type="primary" @click="doPickIn()" v-if="btnType == 'pick'">已拣料回库</button> | 
 |  |  |          <button size="mini" type="primary" @click="doPickIn2()" v-if="btnType == 'pick'">再次拣料</button> | 
 |  |  |          <button size="mini" type="primary" @click="startPakin()" v-if="btnType == 'start'">启动入库</button> | 
 |  |  |       </view> | 
 |  |  |    </view> | 
 |  |  | </template> | 
 |  |  | 
 |  |  |    export default { | 
 |  |  |       data() { | 
 |  |  |          return { | 
 |  |  |             baseUrl: '', | 
 |  |  |             token: '', | 
 |  |  |             station: null, | 
 |  |  |             reload: { | 
 |  |  |                loading: false, | 
 |  |  | 
 |  |  |          // 更新站点 | 
 |  |  |          reloadStation()  { | 
 |  |  |             let _this = this | 
 |  |  |             console.log(_this.station.devNo); | 
 |  |  |             _this.reload.loading = true | 
 |  |  |             _this.reload.loadingText = '更新中...' | 
 |  |  |             uni.request({ | 
 |  |  | 
 |  |  |                success(res) { | 
 |  |  |                   res = res.data | 
 |  |  |                   if (res.code === 200) { | 
 |  |  | 							 | 
 |  |  |                      if (res.data.records[0].locSts == 'O') { | 
 |  |  |                         _this.btnType = 'emptyPakin'  | 
 |  |  |                      } else if (res.data.records[0].locSts == 'F') { | 
 |  |  | 
 |  |  |                      } else { | 
 |  |  |                         _this.btnType = 'working'  | 
 |  |  |                      } | 
 |  |  |                      // if (res.data.records[0].locSts == 'O') { | 
 |  |  |                      //    res.data.records[0].locSts$ = '没有货架' | 
 |  |  |                      // } else if (res.data.records[0].locSts == 'F') { | 
 |  |  |                      //    res.data.records[0].locSts$ = '货架在库' | 
 |  |  |                      // } else if (res.data.records[0].locSts == 'S') { | 
 |  |  |                      //    res.data.records[0].locSts$ = '货架进入中' | 
 |  |  |                      // } else if (res.data.records[0].locSts == 'R') { | 
 |  |  |                      //    res.data.records[0].locSts$ = '货架离开中' | 
 |  |  |                      // } | 
 |  |  |                       | 
 |  |  |                      setTimeout(()=>{ | 
 |  |  |                         for  (let k of res.data.records) { | 
 |  |  | 
 |  |  |                         _this.reload.loadingText = '更新状态' | 
 |  |  |                         _this.getContainerType() | 
 |  |  |                      },500) | 
 |  |  | 							 | 
 |  |  |                      _this.getWrkMast() | 
 |  |  |                      _this.getWrkMast(res.data.records[0].barcode) | 
 |  |  |                      uni.showToast({ title: '更新成功!', icon: "none", position: 'top' }) | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                      _this.reloadStation() | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                      uni.showToast({ title: '启动入库', icon: "success", position: 'top' }) | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                method: 'POST', | 
 |  |  |                header: { 'token': uni.getStorageSync('token') }, | 
 |  |  |                success(res) { | 
 |  |  |                   var res = result.data | 
 |  |  |                   var res = res.data | 
 |  |  |                   if (res.code === 200) { | 
 |  |  |                      setTimeout(()=> { | 
 |  |  |                         _this.containerType = '' | 
 |  |  | 
 |  |  |                      uni.showToast({ title: '呼叫成功', icon: "success", position: 'top' }) | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                      _this.selects = res.data | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |             this.containerType = option | 
 |  |  |          }, | 
 |  |  |          // 查询工作档 | 
 |  |  |          getWrkMast() { | 
 |  |  |          getWrkMast(barcode) { | 
 |  |  |             let _this = this | 
 |  |  |             uni.request({ | 
 |  |  |                url: `${_this.baseUrl}/agv/wrkMast/list/auth`, | 
 |  |  | 
 |  |  |                success(res) { | 
 |  |  |                   res = res.data | 
 |  |  |                   if (res.code === 200 && res.data.records.length > 0) { | 
 |  |  |                      if (res.data.records[0].ioType == 1) { | 
 |  |  |                         res.data.records[0]['ioTitle'] = '入库' | 
 |  |  |                      } else if (res.data.records[0].ioType == 10) { | 
 |  |  |                         res.data.records[0]['ioTitle'] = '空板入库' | 
 |  |  |                      } else if (res.data.records[0].ioType == 53) { | 
 |  |  |                         res.data.records[0]['ioTitle'] = '拣料回库' | 
 |  |  |                      } else if (res.data.records[0].ioType == 101) { | 
 |  |  |                         res.data.records[0]['ioTitle'] = '全板出库' | 
 |  |  |                         _this.btnType = 'out' | 
 |  |  |                      } else if (res.data.records[0].ioType == 103) { | 
 |  |  |                         res.data.records[0]['ioTitle'] = '拣料出库' | 
 |  |  |                         _this.btnType = 'pick' | 
 |  |  |                      } else if (res.data.records[0].ioType == 110) { | 
 |  |  |                         res.data.records[0]['ioTitle'] = '空板出库' | 
 |  |  |                      let mast = null | 
 |  |  |                      for (let wrkMast of res.data.records) { | 
 |  |  |                         if (wrkMast.ioType == 1) { | 
 |  |  |                            wrkMast['ioTitle'] = '入库' | 
 |  |  |                         } else if (wrkMast.ioType == 10) { | 
 |  |  |                            wrkMast['ioTitle'] = '空板入库' | 
 |  |  |                         } else if (wrkMast.ioType == 53) { | 
 |  |  |                            wrkMast['ioTitle'] = '拣料回库' | 
 |  |  |                         } else if (wrkMast.ioType == 101) { | 
 |  |  |                            wrkMast['ioTitle'] = '全板出库' | 
 |  |  |                            _this.btnType = 'out' | 
 |  |  |                         } else if (wrkMast.ioType == 103) { | 
 |  |  |                            wrkMast['ioTitle'] = '拣料出库' | 
 |  |  |                            _this.btnType = 'pick' | 
 |  |  |                         } else if (wrkMast.ioType == 110) { | 
 |  |  |                            wrkMast['ioTitle'] = '空板出库' | 
 |  |  |                         } | 
 |  |  |                         if (wrkMast.barcode == barcode) { | 
 |  |  |                            mast = wrkMast | 
 |  |  |                         } | 
 |  |  |                      } | 
 |  |  |                      _this.wrkMast = res.data.records[0] | 
 |  |  |                      _this.getWrkDetl(_this.wrkMast.wrkNo) | 
 |  |  | 							 | 
 |  |  |                      _this.wrkMast = mast | 
 |  |  |                      _this.getWrkDetl(mast.wrkNo) | 
 |  |  |                   } else if (res.code === 200 && res.data.records.length == 0) { | 
 |  |  |                      _this.wrkMast = null | 
 |  |  |                      _this.wrkDetls = [] | 
 |  |  | 
 |  |  |                      } | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                      _this.wrkDetls = res.data.records | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                      _this.btnType = 'start' | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |             }) | 
 |  |  |          }, | 
 |  |  |          // 全板出库 确认出库 | 
 |  |  |          doContainerMoveOut() { | 
 |  |  |             this.$refs.doContainerMoveOut.open() | 
 |  |  |          }, | 
 |  |  |          containerMoveOutClose() { | 
 |  |  |             this.$refs.doContainerMoveOut.close() | 
 |  |  |          }, | 
 |  |  |          containerMoveOut() { | 
 |  |  |             let _this = this | 
 |  |  |             let devNo = {devNo:[this.station.devNo]} | 
 |  |  |             let devNo = {devNo:[this.station.devNo],barcode: _this.barcode} | 
 |  |  |             uni.request({ | 
 |  |  |                url: `${_this.baseUrl}/agv/basDevp/visualized/container/moveOut`, | 
 |  |  |                data: JSON.stringify(devNo), | 
 |  |  | 
 |  |  |                success(res) { | 
 |  |  |                   res = res.data | 
 |  |  |                   if (res.code === 200) { | 
 |  |  |                      _this.$refs.doContainerMoveOut.close() | 
 |  |  |                      setTimeout(()=> { | 
 |  |  |                         _this.barcode = '' | 
 |  |  |                         _this.reloadStation() | 
 |  |  | 
 |  |  |                      uni.showToast({ title: '确认完成', icon: "success", position: 'top' })  | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  |                } | 
 |  |  |             }) | 
 |  |  |          }, | 
 |  |  | 			 | 
 |  |  |          // 全板出库 容器离场 | 
 |  |  |          doContainerMoveOut2() { | 
 |  |  |             this.$refs.doContainerMoveOut2.open() | 
 |  |  |          }, | 
 |  |  |          containerMoveOutClose() { | 
 |  |  |             this.$refs.doContainerMoveOut2.close() | 
 |  |  |          }, | 
 |  |  |          containerMoveOut2() { | 
 |  |  |             let _this = this | 
 |  |  |             let devNo = {devNo:[this.station.devNo],barcode: _this.barcode} | 
 |  |  |             uni.request({ | 
 |  |  |                url: `${_this.baseUrl}/agv/basDevp/visualized/container/moveOut2`, | 
 |  |  |                data: JSON.stringify(devNo), | 
 |  |  |                method: 'POST', | 
 |  |  |                success(res) { | 
 |  |  |                   res = res.data | 
 |  |  |                   if (res.code === 200) { | 
 |  |  |                      _this.$refs.doContainerMoveOut2.close() | 
 |  |  |                      setTimeout(()=> { | 
 |  |  |                         _this.barcode = '' | 
 |  |  |                         _this.reloadStation() | 
 |  |  |                      },1000) | 
 |  |  |                      uni.showToast({ title: '离场完成', icon: "success", position: 'top' })  | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  |                } | 
 |  |  |             }) | 
 |  |  |          }, | 
 |  |  |          // 再次拣料 | 
 |  |  |          doPickIn2() { | 
 |  |  |             let _this = this | 
 |  |  |             let item = this.wrkMast | 
 |  |  |             uni.navigateTo({ | 
 |  |  |                url: './pickAgain', | 
 |  |  |                success(res) { | 
 |  |  |                   res.eventChannel.emit('item', { | 
 |  |  |                      item: item, | 
 |  |  |                      wrkDetls: _this.wrkDetls, | 
 |  |  |                   }) | 
 |  |  |                }, | 
 |  |  |                events: { | 
 |  |  |                   acceptDataFromOpenedPage: function(data) { | 
 |  |  |                      _this.reloadStation() | 
 |  |  |                   } | 
 |  |  |                } | 
 |  |  |             }) | 
 |  |  |          }, | 
 |  |  |          // 拣料出库 确认后回库 | 
 |  |  |          doPickIn() { | 
 |  |  |             this.$refs.doPickIn.open() | 
 |  |  |          }, | 
 |  |  |          pickInClose() { | 
 |  |  |             this.$refs.doPickIn.close() | 
 |  |  |          }, | 
 |  |  |          pickIn() { | 
 |  |  |             let _this = this | 
 |  |  |             uni.request({ | 
 |  |  |                url: `${_this.baseUrl}/agv/basDevp/visualized/container/pickIn`, | 
 |  |  |                data: {devNo: _this.station.devNo}, | 
 |  |  |                data: {devNo: _this.station.devNo,barcode: _this.barcode}, | 
 |  |  |                method: 'POST', | 
 |  |  |                success(res) { | 
 |  |  |                   res = res.data  | 
 |  |  |                   if (res.code === 200) { | 
 |  |  |                      _this.$refs.doPickIn.close() | 
 |  |  |                      _this.barcode = '' | 
 |  |  |                      _this.reloadStation() | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |                      uni.showToast({ title: '启动入库', icon: "success", position: 'top' }) | 
 |  |  |                   } else if (res.code == 403) { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../login/login' }); }, 1000); | 
 |  |  |                      setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000); | 
 |  |  |                   } else { | 
 |  |  |                      uni.showToast({ title: res.msg, icon: "error", position: 'top' }) | 
 |  |  |                   } | 
 |  |  | 
 |  |  |       padding: 24rpx; | 
 |  |  |    } | 
 |  |  |    .wrkMast-wrkNo { | 
 |  |  |       font-size: 32px; | 
 |  |  |       font-size: 30px; | 
 |  |  |       font-weight: bold; | 
 |  |  |       padding: 24rpx 0; | 
 |  |  |       display: flex; |