| | |
| | | <!-- 工作档 --> |
| | | <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> |
| | | |
| | |
| | | <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> |
| | | <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> |
| | |
| | | </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> |
| | |
| | | </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> |
| | | |
| | | |
| | | |
| | |
| | | <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> |
| | |
| | | export default { |
| | | data() { |
| | | return { |
| | | baseUrl: '', |
| | | token: '', |
| | | station: null, |
| | | reload: { |
| | | loading: false, |
| | |
| | | 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 { |
| | |
| | | _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' }) |
| | | } |
| | |
| | | _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.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 |
| | |
| | | } |
| | | } 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() |
| | | }, |
| | | containerMoveOutC() { |
| | | containerMoveOutClose() { |
| | | this.$refs.doContainerMoveOut.close() |
| | | }, |
| | | containerMoveOut() { |
| | |
| | | success(res) { |
| | | res = res.data |
| | | if (res.code === 200) { |
| | | this.$refs.doContainerMoveOut.close() |
| | | _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() |
| | | } |
| | | } |
| | | }) |
| | |
| | | _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' }) |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | // 调拨离场 |
| | | 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> |
| | |
| | | @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; |
| | |
| | | padding: 24rpx; |
| | | } |
| | | .wrkMast-wrkNo { |
| | | font-size: 32px; |
| | | font-size: 30px; |
| | | font-weight: bold; |
| | | padding: 24rpx 0; |
| | | display: flex; |