From 4a3cec49a290c733ca7f7fdab858c43098a2892e Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期三, 29 五月 2024 08:17:31 +0800 Subject: [PATCH] # --- pages/phyz/checkLocDetl/locDetl.vue | 289 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 266 insertions(+), 23 deletions(-) diff --git a/pages/phyz/checkLocDetl/locDetl.vue b/pages/phyz/checkLocDetl/locDetl.vue index 725cff3..7385e0a 100644 --- a/pages/phyz/checkLocDetl/locDetl.vue +++ b/pages/phyz/checkLocDetl/locDetl.vue @@ -1,24 +1,60 @@ <template> <view> - <view>褰撳墠搴撲綅鍙凤細{{locNo}}</view> - <view>褰撳墠璐ф灦鐮侊細{{barcode}}</view> - - <view> - <view>瀹為檯搴撳瓨</view> - <view>搴撲綅鍙穥{containerDetl.locNo}}</view> - <view>璐ф灦鐮亄{containerDetl.barcode}}</view> - <view>搴撳瓨鍝佺被{{containerDetl.count}}</view> + <view style="padding: 16rpx 32rpx;font-size: 20px;font-weight: bold;"> + <view>褰撳墠搴撲綅鍙凤細{{locNo}}</view> + <view>褰撳墠璐ф灦鐮侊細{{barcode}}</view> </view> - <view v-if="locDetlShow"> - <view>鏁版嵁搴撳瓨</view> - <view>搴撲綅鍙穥{locDetl.locNo}}</view> - <view>璐ф灦鐮亄{locDetl.barcode}}</view> - <view>搴撳瓨鍝佺被{{locDetl.count}}</view> + <view class="list locSts-O"> + <view class="list-left"> + <view>瀹為檯搴撳瓨</view> + <view>搴撲綅鍙凤細{{containerDetl.locNo}}</view> + <view>璐ф灦鐮侊細{{containerDetl.barcode}}</view> + <view>搴撳瓨鍝佺被锛歿{containerDetl.count}}</view> + </view> + <view class="list-right" @click="goToLocDetl(containerDetl)"> + <uni-icons type="right" size="25" color="#fff"></uni-icons> + </view> + </view> + + <view class="list locSts-D" v-if="locDetlShow"> + <view class="list-left"> + <view>鏁版嵁搴撳瓨</view> + <view>搴撲綅鍙凤細{{locDetl.locNo}}</view> + <view>璐ф灦鐮侊細{{locDetl.barcode}}</view> + <view>搴撳瓨鍝佺被锛歿{locDetl.count}}</view> + </view> + <view class="list-right" @click="goToLocDetl(locDetl)"> + <uni-icons type="right" size="25" color="#fff"></uni-icons> + </view> + </view> + + <!-- 寮圭獥 --> + <view> + <uni-popup ref="chageDetl" type="dialog"> + <view class="popup"> + <!-- 鏍囬 --> + <view class="title">淇敼搴撲綅鐘舵��</view> + <view class="popup-item"> + <view class="dropdown" @click="toggleDropdown()"> + <input type="text" style="width: 270rpx;" v-model="locSts" placeholder="鏇存敼涓�"> + <uni-icons :type="isOpen ? 'top' : 'bottom'" color="#c1c1c1" style="margin-left: 10rpx;"></uni-icons> + <scroll-view scroll-y="ture" class="dropdown-content" v-if="isOpen"> + <view class="dropdown-item" v-for="option in locStss" @click="selected(option)">{{option.title}}</view> + </scroll-view> + </view> + </view> + <view class="btn"> + <view class="btn-left" @click="changeClose()">鍙栨秷</view> + <view class="btn-right" @click="changeCount()">淇敼</view> + </view> + </view> + </uni-popup> </view> <!-- 搴曢儴鎿嶄綔鎸夐挳 --> <view class="buttom"> - <button size="mini" type="primary" @click="agvStart('warn')">绾犳搴撲綅</button> + <button size="mini" type="primary" @click="changeSts('warn')">鏇存敼搴撲綅鐘舵��</button> + <button size="mini" type="primary" @click="changeStart('warn')">绾犳搴撲綅</button> </view> </view> </template> @@ -34,15 +70,27 @@ containerDetl: { locNo: '', barcode: '', - count: '' + count: '', + data: [] }, locDetl: { locNo: '', barcode: '', - count: '' + count: '', + data: [] }, dataList: [], - locDetlShow: false + locDetlShow: true, + isOpen: false, + locSts: '', + locSts2: '', + locStss: [ + {title: 'F.鍦ㄥ簱',val: 'F'}, + {title: 'D.绌烘《/绌烘爤鏉�',val: 'D'}, + {title: 'O.绌哄簱浣�',val: 'O'}, + {title: 'X.绂佺敤',val: 'X'}, + ], + sourceLoc: '' } }, onShow() { @@ -55,6 +103,9 @@ eventChannel.on('item', function(data) { console.log(data); _this.locNo = data.item.locNo + _this.barcode = data.item.barcode + _this.sourceLoc = data.item.item + console.log(_this.sourceLoc); _this.getLocDetl(data.item.locNo,data.item.barcode) }) }, @@ -64,23 +115,143 @@ let param = {locNo:locNo,containerCode: barcode} uni.request({ url: `${_this.baseUrl}/agvMobile/check/detl/v1`, + header: {'token': uni.getStorageSync('token')}, data: param, method: 'POST', success(res) { res = res.data console.log(res); if (res.code === 200) { - _this.dataList = res.data.containerCode - if (res.data.containerCode[0].locNo) { - _this.containerDetl.locNo = res.data.containerCode[0].locNo - _this.containerDetl.barcode = res.data.containerCode[0].suppCode - _this.containerDetl.count = res.data.containerCode.length + if (res.data.containerCode.length > 0) { + _this.dataList = res.data.containerCode + if (res.data.containerCode[0].locNo) { + _this.containerDetl.locNo = res.data.containerCode[0].locNo + _this.containerDetl.barcode = res.data.containerCode[0].suppCode + _this.containerDetl.count = res.data.containerCode.length + _this.containerDetl.data = res.data.containerCode + } } + + if (res.data.locNo.length > 0) { - _this.locDetlShow = true + _this.locDetl.locNo = res.data.locNo[0].locNo + _this.locDetl.barcode = res.data.locNo[0].suppCode + _this.locDetl.count = res.data.locNo.length + _this.locDetl.data = res.data.locNo } + } 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' }) + } + } + }) + }, + goToLocDetl(item) { + let _this = this + if (item.data.length <= 0) { + uni.showToast({ title: '娌℃湁搴撳瓨', icon: "error", position: 'top' }) + return + } + uni.navigateTo({ + url: "./locDetlList", + success: function(res) { + // 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹� 鍚戝彟澶栦竴涓〉闈紶閫掑�肩殑 + res.eventChannel.emit('item', { + item: item + }) + }, + events: { + // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹� 鍙﹀涓�涓〉闈紶杩囨潵鐨� + acceptDataFromOpenedPage: function(data) { + _this.getLocDetl(_this.locNo,_this.barcode) + } + }, + }); + }, + toggleDropdown() { + this.isOpen = !this.isOpen; + }, + changeSts() { + this.$refs.chageDetl.open() + }, + selected(option) { + this.locSts = option.title + this.locSts2 = option.val + }, + changeClose() { + this.$refs.chageDetl.close() + }, + changeCount() { + let _this = this + _this.sourceLoc.locSts = this.locSts2 + let barcode = _this.barcode + if (this.locSts2 == 'O') { + barcode = '' + } + let param = { + locNo: _this.sourceLoc.locNo, + locSts: _this.sourceLoc.locSts, + barcode: _this.barcode, + row1: _this.sourceLoc.row1, + bay1: _this.sourceLoc.bay1, + lev1: _this.sourceLoc.lev1, + floor: _this.sourceLoc.floor + } + Object.keys(_this.sourceLoc).forEach(function(key){ + if (_this.sourceLoc[key] == null) { + _this.sourceLoc[key] = '' + } + }) + uni.request({ + url: `${_this.baseUrl}/agv/locMast/update/auth`, + header: { + 'token': uni.getStorageSync('token'), + 'content-type': 'application/x-www-form-urlencoded' + }, + data: param, + method: 'POST', + success(res) { + res = res.data + if (res.code === 200) { + uni.showToast({ title: res.msg, icon: "success", position: 'top' }) + _this.$refs.chageDetl.close() + setTimeout(()=> { + uni.navigateBack() + },1000) + } 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' }) + } + } + }) + }, + changeStart() { + let _this = this + let param = {locNo:_this.locNo,containerCode: _this.barcode} + uni.request({ + url: `${_this.baseUrl}/agvMobile/update/detl/v1`, + header: { 'token': uni.getStorageSync('token')}, + data: param, + method: 'POST', + success(res) { + res = res.data + if (res.code === 200) { + uni.showToast({ title: res.msg, icon: "success", position: 'top' }) + _this.$refs.chageDetl.close() + setTimeout(()=> { + uni.navigateBack() + },1000) + } 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' }) } } }) @@ -91,4 +262,76 @@ <style> @import url('../../../static/css/common/order.css'); + .locSts-D { + color: #FFF; + background-color: #daad25; + } + .locSts-O { + color: #FFF; + background-color: #55aaff; + } + .popup { + width: 80vw; + min-height: 100rpx; + background-color: #FFF; + border-radius: 25rpx; + position: relative; + } + .title { + height: 100rpx; + line-height: 100rpx; + width: 100%; + color: #606266; + text-align: center; + font-size: 16px; + } + .popup-item { + height: 80rpx; + line-height: 80rpx; + display: flex; + align-items: center; + justify-content: center; + } + .popup-item-left { + width: 16vw; + padding-right: 20rpx; + text-align: right; + color: #606266; + } + .popup-item-right { + display: flex; + align-items: center; + width: 50vw; + height: 50rpx; + padding: 2px 5px; + border: 1px solid #E4E7ED; + border-radius: 5rpx; + } + .popup-item-right input{ + color: #606266; + } + .btn { + display: flex; + height: 90rpx; + margin-top: 20rpx; + border-top: 1px solid #DCDFE6; + justify-content: center; + align-items: center; + } + .btn-left { + display: flex; + flex: 1; + height: 100%; + justify-content: center; + align-items: center; + color: #e2231a; + border-right: 1px solid #DCDFE6; + } + .btn-right { + display: flex; + flex: 1; + justify-content: center; + align-items: center; + color: #409EFF; + } </style> -- Gitblit v1.9.1