From 2dbb3a82f3e10218a7743a8dc318882dc888eef4 Mon Sep 17 00:00:00 2001 From: whycq <10027870+whycq@user.noreply.gitee.com> Date: 星期三, 12 六月 2024 08:12:57 +0800 Subject: [PATCH] # --- pages/phyz/stationManage/stationDetl.vue | 55 ++++++ pages/home/orderManage.vue | 7 pages/phyz/processOrder/processOrder.vue | 366 +++++++++++++++++++++++++++++++++++++++++++++ pages.json | 7 pages/phyz/checkLocDetl/checkLocDetl.vue | 10 pages/phyz/stationManage/stationManage.vue | 2 6 files changed, 434 insertions(+), 13 deletions(-) diff --git a/pages.json b/pages.json index b7b9f45..ee6a82b 100644 --- a/pages.json +++ b/pages.json @@ -736,6 +736,13 @@ { "navigationBarTitleText" : "璋冩嫧浠诲姟绠$悊" } + }, + { + "path" : "pages/phyz/processOrder/processOrder", + "style" : + { + "navigationBarTitleText" : "鍗婃垚鍝佸姞宸ュ崟" + } } ], "globalStyle": { diff --git a/pages/home/orderManage.vue b/pages/home/orderManage.vue index f061fb2..faf4c17 100644 --- a/pages/home/orderManage.vue +++ b/pages/home/orderManage.vue @@ -74,6 +74,13 @@ // cuIcon: 'pullup', url: `/phyz/orderOut/bcpOrderOutSelect` }, + { + title: '鍗婃垚鍝佸姞宸ュ崟', + name: 'processOrder', + color: 'blue', + // cuIcon: 'pullup', + url: `/phyz/orderOut/bcpOrderOutSelect` + }, ], colorList: ['cyan','blue','purple','mauve','pink','brown','red','orange','yellow','olive','olive','grey' ] diff --git a/pages/phyz/checkLocDetl/checkLocDetl.vue b/pages/phyz/checkLocDetl/checkLocDetl.vue index 3200cb7..ea7880a 100644 --- a/pages/phyz/checkLocDetl/checkLocDetl.vue +++ b/pages/phyz/checkLocDetl/checkLocDetl.vue @@ -1,9 +1,9 @@ <template> <view> <view class="code"> - <uni-search-bar v-model="searchValue1" + <!-- <uni-search-bar v-model="searchValue1" maxlength="500" ancel="cancel" @confirm="searchValueInput1()" @clear="clearVal" placeholder="杈撳叆 / 鎵弿 璐ф灦鐮�"> - </uni-search-bar> + </uni-search-bar> --> <view style="display: flex;padding: 10rpx 20rpx;"> <view class="dropdown"> <input type="text" style="flex: 1;" v-model="row1" placeholder="璇疯緭鍏ユ帓" @confirm="getLocMastList('')"> @@ -79,9 +79,9 @@ this.baseUrl = uni.getStorageSync('baseUrl'); this.token = uni.getStorageSync('token'); if (uni.getStorageSync('lev1')) { - this.lev1 = uni.getStorageSync('lev1'); + // this.lev1 = uni.getStorageSync('lev1'); } else { - this.lev1 = 2 + this.lev1 = '' } this.getLocMastList() @@ -124,7 +124,7 @@ }, getLocMastList(barcode) { let _this = this - uni.setStorageSync('lev1', this.lev1); + // uni.setStorageSync('lev1', this.lev1); uni.request({ url: `${_this.baseUrl}/agv/locMast/list/auth`, header: {'token': uni.getStorageSync('token')}, diff --git a/pages/phyz/processOrder/processOrder.vue b/pages/phyz/processOrder/processOrder.vue new file mode 100644 index 0000000..202a013 --- /dev/null +++ b/pages/phyz/processOrder/processOrder.vue @@ -0,0 +1,366 @@ +<template> + <view> + <view class="code"> + <uni-search-bar v-model="searchValue1" + maxlength="500" ancel="cancel" @confirm="searchValueInput1()" @clear="clear" placeholder="杈撳叆 / 鎵弿 璁㈠崟鍙�"> + </uni-search-bar> + <view class="code-title"> + <view></view> + <view style="width: 100%;text-align: center;margin: 16rpx 0;">{{searchValue1}} 鎬绘暟閲忥細- {{total}} -</view> + <view style="width: 100rpx;margin: 16rpx 0;" @click="filter()">绛涢��</view> + </view> + </view> + + <view class="list list-font-color" :class="orderDetl.color" v-for="(orderDetl,index) in dataList" :key="index"> + <view class="list-left"> + <view class="detl-threeCode">{{orderDetl.threeCode}}</view> + <view>涓诲崟鍙凤細{{orderDetl.orderNo}}</view> + <view>缂栧彿锛歿{orderDetl.matnr}}</view> + <view>鍚嶇О锛歿{orderDetl.maktx}}</view> + <view>绫诲瀷锛歿{orderDetl.brand}}</view> + <view>璁㈠崟鏁伴噺锛歿{orderDetl.anfme}}</view> + <view>寰呭姞宸ワ細{{orderDetl.stock}}</view> + <view>宸插姞宸ワ細{{orderDetl.qty}}</view> + </view> + <view class="list-right" @click="goToLocDetl(orderDetl)"> + <uni-icons type="right" size="25" color="#fff"></uni-icons> + </view> + </view> + + <!-- 鍨珮 --> + <view style="height: 340rpx;text-align: center;color: #b9b9b9;"> + - 宸茬粡鍒板簳浜� - + </view> + + <!-- <view class="buttom"> + <view style="width: 150rpx;text-align: center;padding-left: 12rpx;"> + 鍚嶇О + </view> + <uni-search-bar v-model="searchValue2" style="width: 100%;" + maxlength="500" ancel="cancel" @confirm="searchValueInput2()" @clear="clear2" placeholder="杈撳叆 / 鎵弿 璁㈠崟鍙�"> + </uni-search-bar> + </view> --> + <!-- 绛涢�夊脊绐� --> + <view> + <uni-popup ref="filter" type="dialog"> + <view class="filter-popup"> + <!-- 鏍囬 --> + <view class="title">绛涢��</view> + <view class="popup-item" style="background-color: #dfdfdf;"> + <view class="item-cl"> + <view>閿�鍞鍗曪細</view> + <input type="text" v-model="searchValue1"> + </view> + </view> + <view class="popup-item" style="background-color: #dfdfdf;"> + <view class="item-cl"> + <view>涓昏鍗曞彿锛�</view> + <input type="text" v-model="orderNo"> + </view> + </view> + <view class="popup-item" style="background-color: #dfdfdf;"> + <view class="item-cl"> + <view>鍟嗗搧缂栧彿锛�</view> + <input type="text" v-model="matnr"> + </view> + </view> + <view class="popup-item" style="background-color: #dfdfdf;"> + <view class="item-cl"> + <view>鍟嗗搧鍚嶇О锛�</view> + <input type="text" v-model="maktx"> + </view> + </view> + <view class="popup-item" style="background-color: #dfdfdf;"> + <view class="item-cl"> + <view>鍟嗗搧绉嶇被锛�</view> + <input type="text" v-model="brand"> + </view> + </view> + <view class="btn filter-btn"> + <view class="btn-left" @click="filterClose">閲嶇疆</view> + <view class="btn-right" @click="filterConfirm()">纭</view> + </view> + </view> + </uni-popup> + </view> + </view> +</template> + +<script> + export default { + data() { + return { + baseUrl: '', + token: '', + searchValue1: '', + searchValue2: '', + orderNo: '', + matnr: '', + maktx: '', + brand: '', + total: '', + dataList: [], + orderCarList: [], + data: { + curr: 1, + limit: 100, + three_code: '', + matnr: '', + maktx: '', + order_no: '', + brand: '' + }, + } + }, + onReachBottom() { + this.status = 'more'; + this.getOrderDetlList(this.searchValue1,10); + }, + onShow() { + this.baseUrl = uni.getStorageSync('baseUrl'); + this.token = uni.getStorageSync('token'); + this.searchValue1 = uni.getStorageSync('processCode1'); + this.searchValue2 = uni.getStorageSync('processCode2'); + this.getOrderDetlList(this.searchValue1,10) + }, + methods: { + getOrderDetlList(threeCode,limit) { + uni.showLoading({}) + let _this = this + _this.mask = true + _this.data.three_code = threeCode + _this.data.limit = limit + uni.request({ + url: `${_this.baseUrl}/orderDetl/pakout/list/authV5`, + header: {'token': uni.getStorageSync('token')}, + data: _this.data, + method: 'GET', + success(res) { + uni.hideLoading({}) + res = res.data + if (res.code === 200) { + for (let k of res.data.records) { + if (k.anfme > k.qty && k.qty == 0) { + k['color'] = 'order-sts-start' + } else if (k.anfme > k.qty && k.qty != 0) { + k['color'] = 'order-sts-working' + } else { + k['color'] = 'order-sts-end' + } + } + let list = res.data.records + _this.dataList = _this.dataList.concat(list); + _this.data.curr = _this.data.curr + 1 + _this.total = res.data.total + _this.mask = false + } 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' }) + } + } + }) + }, + searchValueInput1() { + this.dataList = [] + this.data.curr = 1 + uni.setStorageSync('processCode1', this.searchValue1); + uni.setStorageSync('processCode2', this.searchValue2); + if (this.searchValue1.length == 0) { + this.getOrderDetlList(this.searchValue1,10) + } else { + this.getOrderDetlList(this.searchValue1,10) + } + + }, + searchValueInput2() { + uni.setStorageSync('processCode1', this.searchValue1); + uni.setStorageSync('processCode2', this.searchValue2); + if (this.searchValue1.length == 0) { + this.getOrderDetlList(this.searchValue1,10) + } else { + this.getOrderDetlList(this.searchValue1,10) + } + }, + clear() { + this.dataList = [] + this.data.curr = 1 + setTimeout(()=> { + this.getOrderDetlList(this.searchValue,10) + },300) + }, + clear2() { + setTimeout(()=> { + this.searchValue2 = '' + this.getOrderDetlList(this.searchValue1,10) + },300) + }, + goToLocDetl(item) { + if (item.qty >= item.anfme) { + uni.showToast({ title: '宸插畬鎴愯鍗曚綔涓氭暟閲�', icon: "error", position: 'top' }) + return + } + let _this = this + uni.navigateTo({ + url: './orderList', + success(res) { + res.eventChannel.emit('item', { + item: item + }) + }, + events: { + acceptDataFromOpenedPage: function(data) { + _this.getOrderDetlList(this.searchValue1,10) + } + } + }) + }, + // 绛涢�� + filter() { + this.$refs.filter.open('bottom') + }, + filterConfirm() { + this.dataList = [] + this.data.curr = 1 + this.data.maktx = this.maktx + this.data.matnr = this.matnr + this.data.order_no = this.order_no + this.data.brand = this.brand + this.getOrderDetlList(this.searchValue1,10) + this.$refs.filter.close() + }, + filterClose() { + this.dataList = [] + this.data.curr = 1 + this.data.maktx = '' + this.data.matnr = '' + this.data.order_no = '' + this.data.brand = '' + this.getOrderDetlList(this.searchValue1,10) + this.$refs.filter.close() + } + + } + } +</script> + +<style> + @import url('../../../static/css/common/order.css'); + .list-font-color { + color: #fff; + /* background-color: #33bb44; */ + } + .order-sts-start { + background-color: #3eb689; + } + .order-sts-working { + background-color: #ff9d46; + } + .order-sts-end { + background-color: #ff7356; + } + .detl-threeCode { + font-size: 28px; + font-weight: bold; + } + + .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: #606266; + border-right: 1px solid #DCDFE6; + } + .btn-right { + display: flex; + flex: 1; + justify-content: center; + align-items: center; + color: #409EFF; + } + .filter-popup { + width: 100%; + height: 80vh; + background-color: #FFF; + position: relative; + border-radius: 30rpx 30rpx 0rpx 0rpx; + } + .filter-popup-item { + height: 100%; + width: 100%; + background-color: #c9cdd5; + } + .filter-popup-item-left { + width: 30%; + height: 100%; + background-color: #DCDFE6; + + } + .item-btn { + width: 100%; + height: 80rpx; + line-height: 80rpx; + background-color: #c9cdd5; + text-align: center; + } + .item-btn:checked { + background-color: #606266; + } + .filter-btn { + position: absolute; + left: 0; + bottom: 0; + width: 100%; + background-color: #FFF; + } + .item-cl { + display: flex;align-items: center; + } + .item-cl input { + border-bottom: 1px solid #b9b9b9; + } +</style> diff --git a/pages/phyz/stationManage/stationDetl.vue b/pages/phyz/stationManage/stationDetl.vue index 73d66cf..55257fa 100644 --- a/pages/phyz/stationManage/stationDetl.vue +++ b/pages/phyz/stationManage/stationDetl.vue @@ -73,7 +73,7 @@ </view> <view class="btn"> <button class="btn-left" @click="emptyPakinClose">鍙栨秷</button> - <button class="btn-right" @click="emptyPakinConfirm()" :disabled="emptyPakinDis">鍏ュ簱</button> + <button class="btn-right" @click="emptyPakinConfirm()" :disabled="emptyPakinDis">绌烘灦鍏ュ簱</button> </view> </view> </uni-popup> @@ -203,7 +203,7 @@ </view> <view class="btn"> <view class="btn-left" @click="allocationOutClose">鍙栨秷</view> - <view class="btn-right" @click="allocationOutConfirm()">纭杩涘満</view> + <view class="btn-right" @click="allocationOutConfirm()" :disabled="allocationOutDis">纭绂诲満</view> </view> </view> </uni-popup> @@ -222,6 +222,24 @@ <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> @@ -277,7 +295,9 @@ pickInDis: false, emptyOutDis: false, allocationInDis: false, + allocationOutDis:false, empInDis: false, + empOutDis: false, doBackDis: false } }, @@ -391,11 +411,13 @@ }, emptyPakinClose() { this.$refs.emptyPakin.close() + this.emptyPakinDis = false }, emptyPakinConfirm() { let _this = this; _this.emptyPakinDis = true if (this.barcode.length != 6) { + _this.emptyPakinDis = false uni.showToast({ title: '璐ф灦鏉$爜寮傚父', icon: "error", position: 'top' }) return } @@ -423,6 +445,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + setTimeout(()=> { + + },100) }, fail(res) { _this.emptyPakinDis = false @@ -775,22 +800,26 @@ }); }, allocationOut() { - + this.$refs.allocationOut.open() + }, + allocationOutClose() { + this.$refs.allocationOut.close() }, // 璋冩嫧绂诲満 - allocationOut() { + allocationOutConfirm() { let that = this let params = [] - let param = { devNo: this.station.devNo, containerCode: this.station.barcode, } + 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: {devNo: that.station.devNo}, + data: param, method: 'POST', success(result) { var res = result.data if (res.code === 200) { + that.$refs.allocationOut.close() setTimeout(()=> { that.barcode = '' that.reloadStation() @@ -807,6 +836,13 @@ }, // 绌烘灦绂诲満 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, } @@ -814,10 +850,12 @@ uni.request({ 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 = '' @@ -830,6 +868,9 @@ } else { uni.showToast({ title: res.msg, icon: "error", position: 'top' }) } + }, + fail(res) { + that.empOutDis = false } }); }, diff --git a/pages/phyz/stationManage/stationManage.vue b/pages/phyz/stationManage/stationManage.vue index 217b386..592f50d 100644 --- a/pages/phyz/stationManage/stationManage.vue +++ b/pages/phyz/stationManage/stationManage.vue @@ -130,7 +130,7 @@ this.stations = [] this.wrkMast = '' this.wrkDetls = [] - } else { + } else if (this.searchValue.length == 7) { this.getBasDevp('one') } }, -- Gitblit v1.9.1