From 35a6571ff25e5da94784d228d6bb73df768013d7 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期四, 11 四月 2024 19:51:31 +0800
Subject: [PATCH] #
---
pages/phyz/stationManage/stationDetl.vue | 330 +++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 306 insertions(+), 24 deletions(-)
diff --git a/pages/phyz/stationManage/stationDetl.vue b/pages/phyz/stationManage/stationDetl.vue
index 7ae41fe..9fa6b9d 100644
--- a/pages/phyz/stationManage/stationDetl.vue
+++ b/pages/phyz/stationManage/stationDetl.vue
@@ -11,18 +11,50 @@
<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"><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>
<!-- 宸ヤ綔妗� -->
- <view class="wrkMast">
- <view >宸ヤ綔鍙�</view>
- <view>宸ヤ綔绫诲瀷</view>
- <view>婧愬簱浣�</view>
+ <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>
+ <view>宸ヤ綔绫诲瀷: {{wrkMast.ioType$}}</view>
+ <view>婧愬簱浣�: {{wrkMast.sourceLocNo}}</view>
</view>
+ <!-- 鏄庣粏 -->
+ <view class="wrkDetls" v-if="wrkDetls.length > 0">
+ <view style="font-weight: bold;">宸ヤ綔鏄庣粏</view>
+ <view class="wrkDetl" v-for="wrkDetl in wrkDetls">
+ <view>鍟嗗搧鍚嶇О:{{wrkDetl.maktx}}</view>
+ <view>鍟嗗搧缂栫爜:{{wrkDetl.matnr}}</view>
+ <view>閿�鍞鍗曞彿:{{wrkDetl.threeCode ? wrkDetl.threeCode : ' --'}}</view>
+ <view>鑷敱椤�:{{wrkDetl.deadTime ? wrkDetl.deadTime : ' --'}}</view>
+ <view>鏁伴噺:{{wrkDetl.anfme}}</view>
+ </view>
+ </view>
+
+
+ <!-- 缁勬墭鏄庣粏 -->
+ <view class="waitPakins" v-if="waitPakins.length > 0">
+ <view style="font-weight: bold;">缁勬墭鏄庣粏</view>
+ <view class="waitPakin" v-for="waitPakin in waitPakins">
+ <view>鍟嗗搧鍚嶇О:{{waitPakin.maktx}}</view>
+ <view>鍟嗗搧缂栫爜:{{waitPakin.matnr}}</view>
+ <view>璁㈠崟缂栧彿:{{waitPakin.orderNo}}</view>
+ <view>閿�鍞鍗曞彿:{{waitPakin.threeCode ? waitPakin.threeCode : ' --'}}</view>
+ <view>鑷敱椤�:{{waitPakin.deadTime ? waitPakin.deadTime : ' --'}}</view>
+ <view>鐘舵��:{{waitPakin.ioStatus$}}</view>
+ <view>鍏ュ簱鏁伴噺:{{waitPakin.anfme}}</view>
+
+ </view>
+ </view>
+
+ <view style="height: 140rpx;"></view>
<!-- 寮圭獥 -->
<view>
@@ -37,6 +69,42 @@
<view class="btn">
<view class="btn-left" @click="emptyPakinClose">鍙栨秷</view>
<view class="btn-right" @click="emptyPakinConfirm()">鍏ュ簱</view>
+ </view>
+ </view>
+ </uni-popup>
+ </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="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>
@@ -72,8 +140,9 @@
<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'">纭鍑哄簱</button>
- <button size="mini" type="primary" @click="pickIn()" v-if="btnType == 'pick'">宸叉嫞鏂欏洖搴�</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>
</view>
</view>
</template>
@@ -92,7 +161,10 @@
containerType: '',
selects: [],
option: '',
- isOpen: false
+ isOpen: false,
+ wrkMast: '',
+ wrkDetls: [],
+ waitPakins: []
}
},
onShow() {
@@ -103,7 +175,6 @@
const eventChannel = this.getOpenerEventChannel();
// 鐩戝惉acceptDataFromOpenerPage浜嬩欢锛岃幏鍙栦笂涓�椤甸潰閫氳繃eventChannel浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�
eventChannel.on('item', function(data) {
- console.log(data);
_this.station = data.item
_this.reloadStation()
})
@@ -122,7 +193,6 @@
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') {
@@ -144,8 +214,8 @@
_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);
@@ -264,8 +334,12 @@
res = res.data
if (res.code === 200) {
_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);
+ } else {
+ uni.showToast({ title: res.msg, icon: "error", position: 'top' })
}
- console.log(res);
}
})
},
@@ -278,7 +352,7 @@
this.containerType = option
},
// 鏌ヨ宸ヤ綔妗�
- getWrkMast() {
+ getWrkMast(barcode) {
let _this = this
uni.request({
url: `${_this.baseUrl}/agv/wrkMast/list/auth`,
@@ -291,13 +365,184 @@
method: 'GET',
success(res) {
res = res.data
- if (res.code === 200) {
- for (let item of res.data.records) {
-
+ if (res.code === 200 && res.data.records.length > 0) {
+ 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'] = '鎷f枡鍥炲簱'
+ } else if (wrkMast.ioType == 101) {
+ wrkMast['ioTitle'] = '鍏ㄦ澘鍑哄簱'
+ _this.btnType = 'out'
+ } else if (wrkMast.ioType == 103) {
+ wrkMast['ioTitle'] = '鎷f枡鍑哄簱'
+ _this.btnType = 'pick'
+ } else if (wrkMast.ioType == 110) {
+ wrkMast['ioTitle'] = '绌烘澘鍑哄簱'
+ }
+ if (wrkMast.barcode == barcode) {
+ mast = wrkMast
+ }
}
+
+ _this.wrkMast = mast
+ _this.getWrkDetl(mast.wrkNo)
+ } else if (res.code === 200 && res.data.records.length == 0) {
+ _this.wrkMast = null
+ _this.wrkDetls = []
+ if (_this.station.barcode != '') {
+ _this.getWaitPakin(_this.station.barcode)
+ }
+ } 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' })
}
}
})
+ },
+ // 鑾峰彇宸ヤ綔鏄庣粏
+ getWrkDetl(wrkNo) {
+ let _this = this
+ uni.request({
+ url: `${_this.baseUrl}/agv/wrkDetl/list/auth`,
+ header: {'token': uni.getStorageSync('token')},
+ data: {
+ curr: 1,
+ limit: 1000,
+ wrk_no: wrkNo
+ },
+ method: 'GET',
+ success(res) {
+ res = res.data
+ if (res.code === 200) {
+ _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);
+ } else {
+ uni.showToast({ title: res.msg, icon: "error", position: 'top' })
+ }
+ }
+ })
+ },
+ // 鑾峰彇缁勬墭妗�
+ getWaitPakin(barcode) {
+ let _this = this
+ uni.request({
+ url: `${_this.baseUrl}/agv/waitPakin/list/auth`,
+ header: {'token': uni.getStorageSync('token')},
+ data: {
+ curr: 1,
+ limit: 1000,
+ supp_code: barcode
+ },
+ method: 'GET',
+ success(res) {
+ res = res.data
+ if (res.code === 200) {
+ _this.waitPakins = res.data.records
+ _this.btnType = 'start'
+ } 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' })
+ }
+ }
+ })
+ },
+ // 鍏ㄦ澘鍑哄簱 纭鍑哄簱
+ doContainerMoveOut() {
+ this.$refs.doContainerMoveOut.open()
+ },
+ containerMoveOutClose() {
+ this.$refs.doContainerMoveOut.close()
+ },
+ containerMoveOut() {
+ let _this = this
+ let devNo = {devNo:[this.station.devNo],barcode: _this.barcode}
+ uni.request({
+ url: `${_this.baseUrl}/agv/basDevp/visualized/container/moveOut`,
+ data: JSON.stringify(devNo),
+ method: 'POST',
+ success(res) {
+ res = res.data
+ if (res.code === 200) {
+ _this.$refs.doContainerMoveOut.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' })
+ }
+ }
+ })
+ },
+ // 鎷f枡鍑哄簱 纭鍚庡洖搴�
+ 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,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);
+ } else {
+ uni.showToast({ title: res.msg, icon: "error", position: 'top' })
+ }
+ }
+ })
+ },
+ // 鍚姩鍏ュ簱
+ startPakin(type) {
+ let that = this
+ let params = []
+ let param = { devNo: this.station.devNo, containerCode: this.station.barcode, }
+ params.push(param)
+ uni.request({
+ url: that.baseUrl + '/agvMobile/pakin/empty/auth',
+ data: {pad: params},
+ method: 'POST',
+ header: {'token': uni.getStorageSync('token')},
+ success(result) {
+ var res = result.data
+ if (res.code === 200) {
+ 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' })
+ }
+ }
+ });
},
}
}
@@ -305,14 +550,15 @@
<style>
@import url('../../../static/css/common/order.css');
+
+ .station {
+ font-size: 18px;
+ padding: 24rpx;
+ }
.station-title {
font-size: 32px;
font-weight: bold;
padding: 24rpx 0;
- }
- .station {
- font-size: 18px;
- padding: 24rpx;
}
.station-barcode {
font-size: 24px;
@@ -330,12 +576,48 @@
.wrkMast {
-
+ background-color: #0083ff;
+ color: #fff;
+ margin-top: 10rpx;
+ font-size: 18px;
+ padding: 24rpx;
+ }
+ .wrkMast-wrkNo {
+ font-size: 32px;
+ font-weight: bold;
+ padding: 24rpx 0;
+ display: flex;
}
+ .wrkDetls {
+ background-color: #2299ff;
+ color: #fff;
+ margin-top: 10rpx;
+ font-size: 18px;
+ padding: 24rpx;
+ }
+ .wrkDetl {
+ padding: 16rpx 0;
+ border-bottom: 1px solid #FFF;
+ }
+ .wrkDetl:last-child {
+ border-bottom: none;
+ }
-
-
+ .waitPakins {
+ background-color: #c494ed;
+ color: #fff;
+ margin-top: 10rpx;
+ font-size: 18px;
+ padding: 24rpx;
+ }
+ .waitPakin {
+ padding: 16rpx 0;
+ border-bottom: 1px solid #FFF;
+ }
+ .waitPakin:last-child {
+ border-bottom: none;
+ }
.popup {
--
Gitblit v1.9.1