From 248ef3ba3de9994dc83d2b36690542893f9fb6e6 Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期四, 28 十一月 2024 16:26:06 +0800 Subject: [PATCH] # --- pages/phyz/stationManage/stationDetl.vue | 351 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 326 insertions(+), 25 deletions(-) diff --git a/pages/phyz/stationManage/stationDetl.vue b/pages/phyz/stationManage/stationDetl.vue index b1c321e..01a5687 100644 --- a/pages/phyz/stationManage/stationDetl.vue +++ b/pages/phyz/stationManage/stationDetl.vue @@ -11,7 +11,9 @@ <view>绔欑偣鐘舵�侊細{{station.locSts$}}</view> <view class="mt-flex"> <view class="station-barcode" style="flex: 1">璐ф灦鐮侊細<text>{{station.barcode ? station.barcode : '--'}}</text></view> - <view v-if="station.barcode && station.locSts == 'F'"><button size="mini" type="warn" @click="unbind()">瑙i櫎缁戝畾</button></view> + <view v-if="station.barcode && station.locSts == 'F'"> + <!-- <button size="mini" type="warn" @click="unbind()">瑙i櫎缁戝畾</button> --> + </view> </view> </view> @@ -26,6 +28,7 @@ <view>宸ヤ綔鐘舵��: {{wrkMast.wrkSts$}}</view> <view>婧愬簱浣�: {{wrkMast.sourceLocNo}}</view> <view>璐ф灦鐮�: {{wrkMast.barcode}}</view> + <view v-if="wrkMast.ioType == 111">鐩爣妤煎眰: {{wrkMast.crnNo}}</view> </view> <!-- 鏄庣粏 --> @@ -69,8 +72,8 @@ <view class="popup-item-right"><input type="text" v-model="barcode"></view> </view> <view class="btn"> - <view class="btn-left" @click="emptyPakinClose">鍙栨秷</view> - <view class="btn-right" @click="emptyPakinConfirm()">鍏ュ簱</view> + <button class="btn-left" @click="emptyPakinClose">鍙栨秷</button> + <button class="btn-right" @click="emptyPakinConfirm()" :disabled="emptyPakinDis">绌烘灦鍏ュ簱</button> </view> </view> </uni-popup> @@ -86,8 +89,8 @@ <view class="popup-item-right"><input type="text" v-model="barcode"></view> </view> <view class="btn"> - <view class="btn-left" @click="doBackClose">鍙栨秷</view> - <view class="btn-right" @click="doBackConfirm()">閫�搴�</view> + <button class="btn-left" @click="doBackClose">鍙栨秷</button> + <button class="btn-right" @click="doBackConfirm()" :disabled="doBackDis">閫�搴�</button> </view> </view> </uni-popup> @@ -104,8 +107,8 @@ <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> + <button class="btn-left" @click="containerMoveOutClose">鍙栨秷</button> + <button class="btn-right" @click="containerMoveOut()" :disabled="containerMoveOutDis">纭鍑哄簱</button> </view> </view> </uni-popup> @@ -122,8 +125,8 @@ <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> + <button class="btn-left" @click="containerMoveOutClose">鍙栨秷</button> + <button class="btn-right" @click="containerMoveOut2()" :disabled="containerMoveOut2Dis">纭绂诲満</button> </view> </view> </uni-popup> @@ -140,8 +143,8 @@ <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()">纭鎷f枡</view> + <button class="btn-left" @click="pickInClose">鍙栨秷</button> + <button class="btn-right" @click="pickIn()" :disabled="pickInDis">纭鎷f枡</button> </view> </view> </uni-popup> @@ -163,8 +166,8 @@ </view> </view> <view class="btn"> - <view class="btn-left" @click="emptyOutClose">鍙栨秷</view> - <view class="btn-right" @click="emptyOutConfirm()">鍑哄簱</view> + <button class="btn-left" @click="emptyOutClose">鍙栨秷</button> + <button class="btn-right" @click="emptyOutConfirm()" :disabled="emptyOutDis">鍑哄簱</button> </view> </view> </uni-popup> @@ -181,33 +184,108 @@ <view class="popup-item-right"><input type="text" v-model="barcode"></view> </view> <view class="btn"> - <view class="btn-left" @click="allocationInClose">鍙栨秷</view> - <view class="btn-right" @click="allocationInConfirm()">纭杩涘満</view> + <button class="btn-left" @click="allocationInClose">鍙栨秷</button> + <button class="btn-right" @click="allocationInConfirm()" :disabled="allocationInDis">纭杩涘満</button> </view> </view> </uni-popup> </view> + <!-- 寮圭獥 --> + <view> + <uni-popup ref="allocationOut" 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="allocationOutClose">鍙栨秷</view> + <view class="btn-right" @click="allocationOutConfirm()" :disabled="allocationOutDis">纭绂诲満</view> + </view> + </view> + </uni-popup> + </view> + <!-- 寮圭獥 --> + <view> + <uni-popup ref="empIn" 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"> + <button class="btn-left" @click="empInClose">鍙栨秷</button> + <button class="btn-right" @click="empInConfirm()" :disabled="empInDis">纭杩涘満</button> + </view> + </view> + </uni-popup> + </view> + + <!-- 寮圭獥 --> + <view> + <uni-popup ref="empOut" 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"> + <button class="btn-left" @click="empOutClose">鍙栨秷</button> + <button class="btn-right" @click="empOutConfirm()" :disabled="empOutDis">纭绂诲満</button> + </view> + </view> + </uni-popup> + </view> + + <!-- 寮圭獥 --> + <view> + <uni-popup ref="process" 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"> + <button class="btn-left" @click="processedClose">鍙栨秷</button> + <button class="btn-right" @click="processedConfirm()" :disabled="processedDis">鍔犲伐瀹屾垚</button> + </view> + </view> + </uni-popup> + </view> <!-- 搴曢儴鎿嶄綔鎸夐挳 --> <view class="buttom"> - <button size="mini" type="primary" @click="handBack()" v-if="btnType == 'handBack'">杞墜鍔�</button> - <button size="mini" type="warn" @click="doBack()" v-if="btnType == 'out' || btnType == 'pick'">閫�搴�</button> + <button size="mini" :disabled="dis" type="warn" @click="doBack()" v-if="btnType == 'out' || btnType == 'pick'">閫�搴搟{sec}}</button> + <!-- <button size="mini" type="primary" @click="handBack()" v-if="btnType == 'handBack'">杞墜鍔�</button> --> + <!-- <button size="mini" type="warn" @click="doBack()" v-if="btnType == 'out' || btnType == 'pick'">閫�搴�</button> --> <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="doContainerMoveOut2()" v-if="btnType == 'out'">璐ф灦绂诲満</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'">鍐嶆鎷f枡</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> + <button size="mini" type="primary" @click="empOut()" v-if="btnType == 'empOut'">绌烘灦绂诲満</button> + <button size="mini" type="primary" @click="empIn()" v-if="btnType == 'empIn'">绌烘灦杩涘満</button> + <button size="mini" type="primary" @click="processed()" v-if="btnType == 'processed'">宸插姞宸ュ洖搴�</button> </view> </view> </template> <script> + import utils from '@/pages/phyz/utils/utils.js' export default { data() { return { @@ -226,7 +304,20 @@ isOpen: false, wrkMast: '', wrkDetls: [], - waitPakins: [] + waitPakins: [], + dis: true, + sec: '', + emptyPakinDis: false, + containerMoveOutDis: false, + containerMoveOut2Dis: false, + pickInDis: false, + emptyOutDis: false, + allocationInDis: false, + allocationOutDis:false, + empInDis: false, + empOutDis: false, + doBackDis: false, + processedDis: false } }, onShow() { @@ -240,6 +331,19 @@ _this.station = data.item _this.reloadStation() }) + setInterval(()=> { + let k = utils.checkSec() + // console.log(k); + if (k == 180) { + this.dis = false + this.sec = '' + } else { + this.dis = true + this.sec = k + "绉掑悗閲嶈瘯" + } + },1000) + + }, methods: { // 鏇存柊绔欑偣 @@ -257,7 +361,11 @@ if (res.code === 200) { if (res.data.records[0].locSts == 'O') { if (res.data.records[0].devNo.substring(0, 2) == "DB") { - _this.btnType = 'allocationIn' + if (res.data.records[0].floor != 1) { + _this.btnType = 'allocationIn' + } else { + _this.btnType = 'empIn' + } } else { _this.btnType = 'emptyPakin' } @@ -322,10 +430,14 @@ }, emptyPakinClose() { this.$refs.emptyPakin.close() + this.emptyPakinDis = false }, emptyPakinConfirm() { let _this = this; + this.barcode = this.barcode.replace(/\s+/g, '') + _this.emptyPakinDis = true if (this.barcode.length != 6) { + _this.emptyPakinDis = false uni.showToast({ title: '璐ф灦鏉$爜寮傚父', icon: "error", position: 'top' }) return } @@ -340,6 +452,7 @@ header: { 'token': uni.getStorageSync('token') }, success(res) { var res = res.data + _this.emptyPakinDis = false if (res.code === 200) { setTimeout(()=> { _this.barcode = '' @@ -352,6 +465,12 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + setTimeout(()=> { + + },100) + }, + fail(res) { + _this.emptyPakinDis = false } }); }, @@ -363,6 +482,7 @@ }, emptyOutConfirm() { this.emptyOutClose() + this.emptyOutDis = true let _this = this; let params = [] let param = { devNo: this.station.devNo, containerType: this.containerType, } @@ -374,6 +494,7 @@ header: { 'token': uni.getStorageSync('token') }, success(res) { var res = res.data + _this.emptyOutDis = false if (res.code === 200) { setTimeout(()=> { _this.containerType = '' @@ -386,6 +507,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + _this.emptyOutDis = false } }); }, @@ -446,6 +570,9 @@ } else if (wrkMast.ioType == 103) { wrkMast['ioTitle'] = '鎷f枡鍑哄簱' _this.btnType = 'pick' + } else if (wrkMast.ioType == 107) { + wrkMast['ioTitle'] = '鍔犲伐鍑哄簱' + _this.btnType = 'processed' } else if (wrkMast.ioType == 109) { wrkMast['ioTitle'] = '鑷姩鍥炴祦' _this.btnType = 'handBack' @@ -457,7 +584,12 @@ } else if (wrkMast.ioType == 112) { wrkMast['ioTitle'] = '璋冩嫧鍏ュ簱' _this.btnType = 'null' - } + } else if (wrkMast.ioType == 113) { + if (wrkMast.wrkSts == 212) { + wrkMast['ioTitle'] = '璐ф灦鍥炴祦' + _this.btnType = 'empOut' + } + } if (wrkMast.barcode == barcode) { mast = wrkMast } @@ -539,6 +671,7 @@ this.$refs.doContainerMoveOut.close() }, containerMoveOut() { + this.containerMoveOutDis = true let _this = this let devNo = {devNo:[this.station.devNo],barcode: _this.barcode} uni.request({ @@ -548,6 +681,7 @@ method: 'POST', success(res) { res = res.data + _this.containerMoveOutDis = false if (res.code === 200) { _this.$refs.doContainerMoveOut.close() setTimeout(()=> { @@ -561,6 +695,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + _this.containerMoveOutDis = false } }) }, @@ -573,6 +710,7 @@ this.$refs.doContainerMoveOut2.close() }, containerMoveOut2() { + this.containerMoveOut2Dis = true let _this = this let devNo = {devNo:[this.station.devNo],barcode: _this.barcode} uni.request({ @@ -582,6 +720,7 @@ method: 'POST', success(res) { res = res.data + _this.containerMoveOut2Dis = false if (res.code === 200) { _this.$refs.doContainerMoveOut2.close() setTimeout(()=> { @@ -595,6 +734,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + _this.containerMoveOut2Dis = false } }) }, @@ -625,6 +767,7 @@ this.$refs.doPickIn.close() }, pickIn() { + this.pickInDis = true let _this = this uni.request({ url: `${_this.baseUrl}/agv/basDevp/visualized/container/pickIn`, @@ -632,6 +775,7 @@ data: {devNo: _this.station.devNo,barcode: _this.barcode}, method: 'POST', success(res) { + _this.pickInDis = false res = res.data if (res.code === 200) { _this.$refs.doPickIn.close() @@ -643,6 +787,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + _this.pickInDis = false } }) }, @@ -671,22 +818,67 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } - } + }, + }); }, - // 璋冩嫧绂诲満 allocationOut() { + this.$refs.allocationOut.open() + }, + allocationOutClose() { + this.$refs.allocationOut.close() + }, + // 璋冩嫧绂诲満 + allocationOutConfirm() { + let that = this + let params = [] + let param = { devNo: this.station.devNo, barcode: this.barcode, } + params.push(param) + uni.request({ + url: that.baseUrl + '/agvMobile/hand/control/allocationOut', + header: {'token': uni.getStorageSync('token')}, + data: param, + method: 'POST', + success(result) { + var res = result.data + if (res.code === 200) { + that.$refs.allocationOut.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' }) + } + }, + }); + }, + // 绌烘灦绂诲満 + empOut() { + this.$refs.empOut.open() + }, + empOutClose() { + this.$refs.empOut.close() + }, + empOutConfirm() { + this.empOutDis = true 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', + url: that.baseUrl + '/agvMobile/hand/control/empOut', header: {'token': uni.getStorageSync('token')}, - data: {devNo: that.station.devNo}, + data: {devNo: that.station.devNo,barcode: that.barcode}, method: 'POST', success(result) { var res = result.data + that.$refs.empOut.close() + that.empOutDis = false if (res.code === 200) { setTimeout(()=> { that.barcode = '' @@ -699,6 +891,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + that.empOutDis = false } }); }, @@ -709,6 +904,7 @@ this.$refs.allocationIn.close() }, allocationInConfirm() { + this.allocationInDis = true let that = this let params = [] let param = { devNo: this.station.devNo, containerCode: this.station.barcode, } @@ -719,6 +915,7 @@ data: {devNo: that.station.devNo, barcode: that.barcode}, method: 'POST', success(result) { + that.allocationInDis = false var res = result.data if (res.code === 200) { that.$refs.allocationIn.close() @@ -733,6 +930,48 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + that.allocationInDis = false + } + }); + }, + empIn() { + this.$refs.empIn.open() + }, + empInClose() { + this.$refs.empIn.close() + }, + empInConfirm() { + this.empInDis = true + 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/empIn', + header: {'token': uni.getStorageSync('token')}, + data: {devNo: that.station.devNo, barcode: that.barcode}, + method: 'POST', + success(result) { + that.empInDis = false + var res = result.data + if (res.code === 200) { + that.$refs.empIn.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' }) + } + }, + fail(res) { + that.empInDis = false } }); }, @@ -743,6 +982,7 @@ this.$refs.doBack.close() }, doBackConfirm() { + this.doBackDis = true let that = this let params = [] let param = { devNo: this.station.devNo, containerCode: this.station.barcode, } @@ -753,9 +993,11 @@ data: {devNo: that.station.devNo, barcode: that.barcode}, method: 'POST', success(result) { + that.doBackDis = false var res = result.data if (res.code === 200) { that.$refs.doBack.close() + utils.startStop() setTimeout(()=> { that.barcode = '' that.reloadStation() @@ -767,6 +1009,65 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + that.doBackDis = false + } + }); + }, + processed() { + let _this = this + uni.navigateTo({ + url: './confirmProcessed', + success(res) { + res.eventChannel.emit('item', { + item: _this.wrkDetls + }) + }, + // events: { + // acceptDataFromOpenedPage: function(data) { + // _this.getOrderDetlList(this.searchValue1,10) + // } + // } + }) + }, + // processed() { + // this.$refs.process.open() + // }, + processedClose() { + this.$refs.process.close() + }, + processedConfirm() { + this.processedDis = true + 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/processed', + header: {'token': uni.getStorageSync('token')}, + data: {devNo: that.station.devNo, barcode: that.barcode}, + method: 'POST', + success(result) { + that.processedDis = false + var res = result.data + if (res.code === 200) { + that.$refs.process.close() + utils.startStop() + 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' }) + } + }, + fail(res) { + that.processedDis = false } }); }, -- Gitblit v1.9.1