#
whycq
2024-05-18 94c4496ebe697ed0fa560e7620f5146ef4cc62e6
pages/phyz/stationManage/stationDetl.vue
@@ -19,11 +19,13 @@
      <!-- 工作档 -->
      <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>
      
      <!-- 明细 -->
@@ -34,7 +36,7 @@
            <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>
      
@@ -79,6 +81,24 @@
         <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>
@@ -86,7 +106,7 @@
               </view>
               <view class="btn">
                  <view class="btn-left" @click="containerMoveOutClose">取消</view>
                  <view class="btn-right" @click="containerMoveOut()">入库</view>
                  <view class="btn-right" @click="containerMoveOut2()">确认离场</view>
               </view>
            </view>
         </uni-popup>
@@ -104,7 +124,7 @@
               </view>
               <view class="btn">
                  <view class="btn-left" @click="pickInClose">取消</view>
                  <view class="btn-right" @click="pickIn()">入库</view>
                  <view class="btn-right" @click="pickIn()">确认拣料</view>
               </view>
            </view>
         </uni-popup>
@@ -133,6 +153,23 @@
         </uni-popup>
      </view>
      
      <!-- 弹窗 -->
      <view>
         <uni-popup ref="allocationIn" 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="allocationInConfirm()">确认进场</view>
               </view>
            </view>
         </uni-popup>
      </view>
      
      
      
@@ -140,9 +177,13 @@
      <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="doContainerMoveOut()" v-if="btnType == 'out' && station.locSts == 'F'">确认出库</button>
         <button size="mini" type="primary" @click="doPickIn()" 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>
         <button size="mini" type="primary" @click="allocationOut()" v-if="btnType == 'allocationOut'">调拨离场</button>
         <button size="mini" type="primary" @click="allocationIn()" v-if="btnType == 'allocationIn'">调拨进场</button>
      </view>
   </view>
</template>
@@ -151,6 +192,8 @@
   export default {
      data() {
         return {
            baseUrl: '',
            token: '',
            station: null,
            reload: {
               loading: false,
@@ -193,9 +236,12 @@
               success(res) {
                  res = res.data
                  if (res.code === 200) {
                     if (res.data.records[0].locSts == 'O') {
                        _this.btnType = 'emptyPakin'
                        if (res.data.records[0].devNo.substring(0, 2) == "DB") {
                           _this.btnType = 'allocationIn'
                        } else {
                           _this.btnType = 'emptyPakin'
                        }
                     } else if (res.data.records[0].locSts == 'F') {
                        _this.btnType = 'pakin' 
                     } else {
@@ -215,11 +261,11 @@
                        _this.reload.loadingText = '更新状态'
                        _this.getContainerType()
                     },500)
                     _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' })
                  }
@@ -244,7 +290,7 @@
                     _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' })
                  }
@@ -283,7 +329,7 @@
                     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' })
                  }
@@ -308,7 +354,7 @@
               method: 'POST',
               header: { 'token': uni.getStorageSync('token') },
               success(res) {
                  var res = result.data
                  var res = res.data
                  if (res.code === 200) {
                     setTimeout(()=> {
                        _this.containerType = ''
@@ -317,7 +363,7 @@
                     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' })
                  }
@@ -337,7 +383,7 @@
                     _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' })
                  }
@@ -383,6 +429,9 @@
                           _this.btnType = 'pick'
                        } else if (wrkMast.ioType == 110) {
                           wrkMast['ioTitle'] = '空板出库'
                        } else if (wrkMast.ioType == 111) {
                           wrkMast['ioTitle'] = '空板出库'
                           _this.btnType = 'allocationOut'
                        }
                        if (wrkMast.barcode == barcode) {
                           mast = wrkMast
@@ -399,7 +448,7 @@
                     }
                  } 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' })
                  }
@@ -424,7 +473,7 @@
                     _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' })
                  }
@@ -450,7 +499,7 @@
                     _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' })
                  }
@@ -482,9 +531,61 @@
                     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()
                  }
               }
            })
@@ -510,7 +611,7 @@
                     _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' })
                  }
@@ -538,13 +639,76 @@
                     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' })
                  }
               }
            });
         },
         // 调拨离场
         allocationOut() {
            let that = this
            let params = []
            let param = { devNo: this.station.devNo, containerCode: this.station.barcode, }
            params.push(param)
            uni.request({
               url: that.baseUrl + '/agvMobile/hand/control/allocationOut',
               header: {'token': uni.getStorageSync('token')},
               data: {devNo: that.station.devNo},
               method: 'POST',
               success(result) {
                  var res = result.data
                  if (res.code === 200) {
                     setTimeout(()=> {
                        that.barcode = ''
                        that.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' })
                  }
               }
            });
         },
         allocationIn() {
            this.$refs.allocationIn.open()
         },
         allocationInClose() {
            this.$refs.allocationIn.close()
         },
         allocationInConfirm() {
            let that = this
            let params = []
            let param = { devNo: this.station.devNo, containerCode: this.station.barcode, }
            params.push(param)
            uni.request({
               url: that.baseUrl + '/agvMobile/hand/control/allocationIn',
               header: {'token': uni.getStorageSync('token')},
               data: {devNo: that.station.devNo, barcode: that.barcode},
               method: 'POST',
               success(result) {
                  var res = result.data
                  if (res.code === 200) {
                     that.$refs.allocationIn.close()
                     setTimeout(()=> {
                        that.barcode = ''
                        that.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' })
                  }
               }
            });
         }
      }
   }
</script>
@@ -553,13 +717,13 @@
   @import url('../../../static/css/common/order.css');
   
   .station {
      font-size: 18px;
      padding: 24rpx;
      font-size: 15px;
      padding: 18rpx;
   }
   .station-title {
      font-size: 32px;
      font-size: 28px;
      font-weight: bold;
      padding: 24rpx 0;
      padding: 18rpx 0;
   }
   .station-barcode {
      font-size: 24px;
@@ -584,7 +748,7 @@
      padding: 24rpx;
   }
   .wrkMast-wrkNo {
      font-size: 32px;
      font-size: 30px;
      font-weight: bold;
      padding: 24rpx 0;
      display: flex;