From 62ae01bb0bf26a4efb07e641011225599538b443 Mon Sep 17 00:00:00 2001 From: whycq <913841844@qq.com> Date: 星期二, 14 五月 2024 09:54:49 +0800 Subject: [PATCH] Merge branch 'phyzasrs' of http://47.97.1.152:5880/r/wms_app into phyzasrs --- pages/phyz/bcp/bcpDbList.vue | 487 ++++++++++++++++++++++++++++ pages/phyz/stationManage/stationDetl.vue | 8 pages/home/orderManage.vue | 13 manifest.json | 4 pages/phyz/orderOut/bcpOrderOutSelect.vue | 362 +++++++++++++++++++++ pages.json | 18 + static/css/common/order.css | 2 pages/phyz/bcp/bcpDbOrder.vue | 43 +- pages/phyz/stationManage/pickAgain.vue | 33 + pages/phyz/stationManage/stationManage.vue | 2 pages/phyz/bcp/bcpOrder.vue | 6 11 files changed, 944 insertions(+), 34 deletions(-) diff --git a/manifest.json b/manifest.json index d1e6e3e..ee1f101 100644 --- a/manifest.json +++ b/manifest.json @@ -2,8 +2,8 @@ "name" : "涓壃WMS", "appid" : "__UNI__DA5854D", "description" : "", - "versionName" : "20240428A", - "versionCode" : 103, + "versionName" : "20240514A", + "versionCode" : 106, "transformPx" : false, /* 5+App鐗规湁鐩稿叧 */ "app-plus" : { diff --git a/pages.json b/pages.json index dba3b33..54b496b 100644 --- a/pages.json +++ b/pages.json @@ -704,6 +704,24 @@ "enablePullDownRefresh" : false } } + ,{ + "path" : "pages/phyz/bcp/bcpDbList", + "style" : + { + "navigationBarTitleText": "璋冩嫧搴撲綅", + "enablePullDownRefresh": false + } + + } + ,{ + "path" : "pages/phyz/orderOut/bcpOrderOutSelect", + "style" : + { + "navigationBarTitleText": "鍗婃垚鍝佸嚭搴撳崟", + "enablePullDownRefresh": false + } + + } ], "globalStyle": { "navigationBarTextStyle": "black", diff --git a/pages/home/orderManage.vue b/pages/home/orderManage.vue index 1c7b94c..f061fb2 100644 --- a/pages/home/orderManage.vue +++ b/pages/home/orderManage.vue @@ -55,17 +55,24 @@ }, { title: '鍗婃垚鍝佸叆搴撳崟', - name: 'pakin', + name: 'bcpOrder', color: 'blue', // cuIcon: 'pullup', url: `/phyz/bcp/bcpOrder` }, { title: '鍗婃垚鍝佽皟鎷ㄥ崟', - name: 'pakin', + name: 'bcpDbOrder', color: 'blue', // cuIcon: 'pullup', - url: `/phyz/order/purchaseOrder` + url: `/phyz/bcp/bcpDbOrder` + }, + { + title: '鍗婃垚鍝佸嚭搴撳崟', + name: 'bcpOutOrder', + color: 'blue', + // cuIcon: 'pullup', + url: `/phyz/orderOut/bcpOrderOutSelect` }, ], diff --git a/pages/phyz/bcp/bcpDbList.vue b/pages/phyz/bcp/bcpDbList.vue new file mode 100644 index 0000000..5a4c2be --- /dev/null +++ b/pages/phyz/bcp/bcpDbList.vue @@ -0,0 +1,487 @@ +<template> + <view> + <view class="station station-wrk" v-if="station"> + <view class="mt-flex"> + <view class="station-title" style="flex: 4;">{{station.threeCode}}</view> + <view class="station-title" style="flex: 1;"> + <button size="mini" @click="allChecked()">{{allCheckBtnTitle}}</button> + </view> + </view> + <view>璋冩嫧鍗曞彿锛歿{station.orderNo}}</view> + <view>鐗╂枡缂栧彿锛歿{station.matnr}}</view> + <view style="width: 100%;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;">鐗╂枡鍚嶇О锛歿{station.maktx}}</view> + <view style="display: flex;"> + <view style="flex: 2;">璋冩嫧鏁伴噺锛歿{station.anfme}}</view> + <view style="flex: 3;">搴撳瓨鏁伴噺锛歿{station.stock}}</view> + </view> + <view style="display: flex;"> + <view style="flex: 2;">宸茶皟鎷ㄦ暟閲忥細{{station.qty}}</view> + <view style="flex: 3;">褰撳墠閫夋嫨璋冩嫧鏁伴噺锛歿{station.count ? station.count : 0}}</view> + </view> + </view> + <!-- 鍨珮 --> + <view style="height: 400rpx;text-align: center;color: #b9b9b9;"> + </view> + <view class="list list-font-color" :class="orderDetl.color" v-for="(orderDetl,index) in dataList" :key="index"> + <view class="list-left" style="display: flex;flex-direction: column;"> + <!-- 涓� --> + <view> + <view class="detl-locNo">{{orderDetl.locNo}}</view> + <view class="detl-locNo">璐ф灦鐮侊細{{orderDetl.suppCode}}</view> + </view> + <!-- 涓� --> + <view style="display: flex;"> + <view style="flex: 1;"> + <view>搴撲綅鐘舵�侊細{{orderDetl.locSts$}}</view> + <view>搴撳瓨鏁伴噺锛歿{orderDetl.anfme}}</view> + </view> + </view> + <!-- 涓� --> + </view> + <view class="list-right" @click="checkboxChange(orderDetl)"> + <label > + <checkbox :value="orderDetl.orderNo" :checked="orderDetl.checked" style="transform:scale(0.7)" /><text></text> + </label> + </view> + </view> + + <!-- 鍨珮 --> + <view style="height: 160rpx;text-align: center;color: #b9b9b9;"> + - 宸茬粡鍒板簳浜� - + </view> + <!-- 閫夋嫨妤煎眰寮圭獥 --> + <view> + <uni-popup ref="filter" type="dialog"> + <view class="filter-popup"> + <!-- 鏍囬 --> + <view class="title">璋冩嫧妤煎眰</view> + <view class="popup-item" style="width: 100%;display: flex;justify-content: center;"> + <view style="margin-top: 50rpx;width: 60%;"> + <uni-combox :candidates="floorList" placeholder="璇烽�夋嫨鐩爣妤煎眰" v-model="floor"></uni-combox> + </view> + </view> + <view class="btn filter-btn"> + <view class="btn-right" @click="filterConfirm()">寮�濮嬭皟鎷�</view> + </view> + </view> + </uni-popup> + </view> + <!-- 搴曢儴鎿嶄綔鎸夐挳 --> + <view class="buttom"> + <button size="mini" @click="isAuto('unAuto')">鎵嬪姩</button> + <button size="mini" type="primary" @click="isAuto('auto')">鑷姩</button> + </view> + </view> +</template> + +<script> + export default { + data() { + return { + baseUrl: '', + token: '', + dataList: [], + dbList: [], + count: 0, + containerType: '', + isOpen: true, + option: '', + selects: [], + orderId: '', + station: '', + allCheck: false, + allCheckBtnTitle: '鍏ㄩ��', + floorList: ['2妤�','3妤�'], + floor: '', + moveType: '' + } + }, + onShow() { + let _this = this + this.baseUrl = uni.getStorageSync('baseUrl'); + this.token = uni.getStorageSync('token'); + // const eventChannel = this.$scope.eventChannel; // 鍏煎APP-NVUE + const eventChannel = this.getOpenerEventChannel(); + // 鐩戝惉acceptDataFromOpenerPage浜嬩欢锛岃幏鍙栦笂涓�椤甸潰閫氳繃eventChannel浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹� + eventChannel.on('item', function(data) { + console.log(data.item); + data.item['count'] = 0 + _this.station = data.item + _this.orderId = data.item.id + _this.getLocDetl(data.item.orderNo,data.item.threeCode,data.item.matnr,data.item.id) + }) + }, + methods: { + getLocDetl(orderNo,threeCode,matnr,id) { + let _this = this + uni.request({ + url: `${_this.baseUrl}/agvMobile/query/locDetl/v1`, + header: { 'token': uni.getStorageSync('token') }, + data: { + orderNo: orderNo, + threeCode: threeCode , + matnr: matnr, + floor: "F1" + }, + method: 'POST', + success(res) { + res = res.data + console.log(res); + if (res.code === 200) { + for (let k of res.data) { + if (k.locSts == "F") { + k['color'] = 'order-sts-start' + } else if (k.locSts != "F") { + k['color'] = 'order-sts-working' + } else { + k['color'] = 'order-sts-end' + } + k['id'] = id + } + _this.dataList = 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' }) + } + } + }) + }, + pakoutPrive(item) { + let _this = this + console.log(item); + if (item.locSts != 'F') { + uni.showToast({ title: '褰撳墠搴撲綅涓嶆槸鍦ㄥ簱鐘舵�侊紒', icon: "error", position: 'top' }) + return + } + uni.navigateTo({ + url: "./orderCheck", + success: function(res) { + // 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹� 鍚戝彟澶栦竴涓〉闈紶閫掑�肩殑 + res.eventChannel.emit('mat', { + mat: item, + }) + }, + events: { + // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹� 鍙﹀涓�涓〉闈紶杩囨潵鐨� + acceptDataFromOpenedPage: function(data) { + // _this.matnr = data.data + }, + }, + }); + }, + pakout(item) { + let _this = this + let items = [item] + uni.request({ + url: `${_this.baseUrl}/out/pakout/auth`, + header: { 'token': uni.getStorageSync('token') }, + data: items, + method: 'POST', + success(res) { + res = res.data + console.log(res); + if (res.code === 200) { + + } 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' }) + } + } + }) + }, + // 寮�鍚� / 鍏抽棴涓嬫媺妗� + toggleDropdown() { + this.isOpen = !this.isOpen + }, + // 閫夋嫨璐ф灦绫诲瀷 + selected(option) { + this.containerType = option + }, + checkboxChange(e) { + console.log(e); + let items = this.dataList, + values = e.orderNo; + if (e.checked) { + this.$set(e,'checked',false) + } else { + this.$set(e,'checked',true) + } + let num = 0 + for (let k of items) { + if (k.checked) { + num++ + } + if (num == items.length) { + this.allCheck = true + this.allCheckBtnTitle = '鍙栨秷' + } else { + this.allCheck = false + this.allCheckBtnTitle = '鍏ㄩ��' + } + } + this.upDateCount() + }, + upDateCount() { + let num = 0 + for (let k of this.dataList) { + if (k.checked) { + num = num + k.anfme + } + } + this.station.count = num + }, + allChecked() { + if (this.allCheck) { + this.allCheck = false + this.allCheckBtnTitle = '鍏ㄩ��' + } else { + this.allCheck = true + this.allCheckBtnTitle = '鍙栨秷' + } + for (let item of this.dataList) { + if (this.allCheck) { + if (item.anfme == item.qty) { + this.$set(item,'checked',false) + } else { + this.$set(item,'checked',true) + } + } else { + this.$set(item,'checked',false) + } + } + this.upDateCount() + }, + isAuto(type) { + this.dbList = [] + for (let k of this.dataList) { + if (k.checked) { + this.dbList.push(k) + } + } + if (this.dbList.length == 0) { + uni.showToast({ title: '璇烽�夋嫨璋冩嫧搴撲綅', icon: "error", position: 'top' }) + return + } + this.moveType = type + this.$refs.filter.open('bottom') + }, + filterConfirm() { + console.log(this.dbList); + if (this.floor == '') { + uni.showToast({ title: '璇烽�夋嫨璋冩嫧妤煎眰', icon: "error", position: 'top' }) + return + } + let _this = this + let param = {floor: this.floor,dbList: this.dbList,moveType: this.moveType} + uni.request({ + url: `${_this.baseUrl}/agvMobile/agv/v1/locMove`, + data: param, + method: 'POST', + success(res) { + console.log(res); + res = res.data + if (res.code === 200) { + uni.navigateBack({ + delta: 1 + }); + } + } + }) + this.$refs.filter.close('bottom') + } + } + } +</script> + +<style> + @import url('../../../static/css/common/order.css'); + + .station { + position: fixed; + top: 85rpx; + left: 0; + right: 0; + font-size: 18px; + padding: 24rpx; + z-index: 999; + } + /* #ifdef APP-PLUS */ + .station { + position: fixed; + top: 0rpx; + left: 0; + right: 0; + font-size: 18px; + padding: 24rpx; + z-index: 999; + } + /* #endif */ + .station-title { + font-size: 32px; + font-weight: bold; + /* padding: 2rpx 0; */ + } + .station-barcode { + font-size: 24px; + font-weight: bold; + padding: 24rpx 0; + } + .station-wrk { + background-color: #ff7356; + color: #fff; + } + .station-nowrk { + background-color: #3eb689; + color: #fff; + } + .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; + } + .detl-locNo { + font-size: 20px; + font-weight: bold; + } + .out-btn { + background-color: #3e82ff; + height: 120rpx; + width: 120rpx; + line-height: 120rpx; + text-align: center; + border-radius: 50%; + margin-left: 20rpx; + margin-right: 20rpx; + } + .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 { + position: relative; + display: flex; + align-items: center; + font-size: 14px; + } + .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; + } + + .dropdown { + position: relative; + display: flex; + width: 93%; + align-items: center; + padding: 0rpx 20rpx; + } + .dropdown-content { + position: absolute; + top: calc(100% + 15rpx); + left: 0; + width: calc(100% - 20rpx); + max-height: 300rpx; + background-color: #fff; + box-shadow: 0 0px 6px rgba(0, 0, 0, 0.3); + border-radius: 8rpx; + z-index: 10; + } + .dropdown-item { + padding: 12rpx; + line-height: 1.2; + font-size: 22px; + color: #3a3a3a; + } + .filter-popup { + width: 100%; + height: 40vh; + 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; + + } + .filter-btn { + position: absolute; + left: 0; + bottom: 0; + width: 100%; + background-color: #FFF; + } + + +</style> diff --git a/pages/phyz/bcp/bcpDbOrder.vue b/pages/phyz/bcp/bcpDbOrder.vue index b67e620..93207ff 100644 --- a/pages/phyz/bcp/bcpDbOrder.vue +++ b/pages/phyz/bcp/bcpDbOrder.vue @@ -18,23 +18,16 @@ <view>缂栧彿锛歿{orderDetl.matnr}}</view> <view>鍚嶇О锛歿{orderDetl.maktx}}</view> <view>绫诲瀷锛歿{orderDetl.brand}}</view> - <view>鎬绘暟閲忥細{{orderDetl.anfme}}</view> - <view>宸插叆鏁伴噺锛歿{orderDetl.qty}}</view> + <view>璋冩嫧鎬婚噺锛歿{orderDetl.anfme}}</view> + <view>搴撳瓨鏁伴噺锛歿{orderDetl.stock}}</view> + <view>宸插畬鎴愭暟閲忥細{{orderDetl.qty}}</view> </view> - <view class="list-right" @click="addItem(index)"> - <uni-icons type="folder-add" size="25" color="#fff"></uni-icons> + <view class="list-right" @click="goToLocDetl(orderDetl)"> + <uni-icons type="right" size="25" color="#fff"></uni-icons> </view> </view> - <view class="shop-car" @click="orderCar()"> - <view class="car-left"> - <uni-icons type="cart-filled" size="35" color="#fff"></uni-icons> - </view> - <view class="car-right"> - <text>{{orderCarList.length}}</text> - </view> - </view> <!-- 鍨珮 --> <view style="height: 340rpx;text-align: center;color: #b9b9b9;"> - 宸茬粡鍒板簳浜� - @@ -139,7 +132,7 @@ onLoad() { this.baseUrl = uni.getStorageSync('baseUrl'); this.token = uni.getStorageSync('token'); - this.searchValue = uni.getStorageSync('threeCode'); + this.searchValue = uni.getStorageSync('bcpDbThreeCode'); this.getOrderDetlList(this.searchValue,10) console.log("onLoad"); }, @@ -157,7 +150,7 @@ _this.data.three_code = threeCode _this.data.limit = limit uni.request({ - url: `${_this.baseUrl}/order/bcp/detls/pakin/page/auth`, + url: `${_this.baseUrl}/order/bcpDb/detls/pakin/page/auth`, header: {'token': uni.getStorageSync('token')}, data: _this.data, method: 'GET', @@ -192,7 +185,7 @@ searchValueInput2() { this.dataList = [] this.data.curr = 1 - uni.setStorageSync('threeCode', this.searchValue); + uni.setStorageSync('bcpDbThreeCode', this.searchValue); if (this.searchValue.length == 0) { this.getOrderDetlList(this.searchValue,10) } else { @@ -257,7 +250,7 @@ console.log(data); if (data.data == 1) { _this.orderCarList = [] - _this.getOrderDetlList(uni.getStorageSync('threeCode'),10) + _this.getOrderDetlList(uni.getStorageSync('bcpDbThreeCode'),10) } } } @@ -289,7 +282,23 @@ this.data.brand = '' this.getOrderDetlList(this.searchValue,10) this.$refs.filter.close() - } + }, + goToLocDetl(item) { + let _this = this + uni.navigateTo({ + url: './bcpDbList', + success(res) { + res.eventChannel.emit('item', { + item: item + }) + }, + events: { + acceptDataFromOpenedPage: function(data) { + _this.getOrderDetlList(this.searchValue1,10) + } + } + }) + }, } } diff --git a/pages/phyz/bcp/bcpOrder.vue b/pages/phyz/bcp/bcpOrder.vue index b67e620..63d2bd5 100644 --- a/pages/phyz/bcp/bcpOrder.vue +++ b/pages/phyz/bcp/bcpOrder.vue @@ -139,7 +139,7 @@ onLoad() { this.baseUrl = uni.getStorageSync('baseUrl'); this.token = uni.getStorageSync('token'); - this.searchValue = uni.getStorageSync('threeCode'); + this.searchValue = uni.getStorageSync('bcpThreeCode'); this.getOrderDetlList(this.searchValue,10) console.log("onLoad"); }, @@ -192,7 +192,7 @@ searchValueInput2() { this.dataList = [] this.data.curr = 1 - uni.setStorageSync('threeCode', this.searchValue); + uni.setStorageSync('bcpThreeCode', this.searchValue); if (this.searchValue.length == 0) { this.getOrderDetlList(this.searchValue,10) } else { @@ -257,7 +257,7 @@ console.log(data); if (data.data == 1) { _this.orderCarList = [] - _this.getOrderDetlList(uni.getStorageSync('threeCode'),10) + _this.getOrderDetlList(uni.getStorageSync('bcpThreeCode'),10) } } } diff --git a/pages/phyz/orderOut/bcpOrderOutSelect.vue b/pages/phyz/orderOut/bcpOrderOutSelect.vue new file mode 100644 index 0000000..b8d107e --- /dev/null +++ b/pages/phyz/orderOut/bcpOrderOutSelect.vue @@ -0,0 +1,362 @@ +<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('threeCodeOut1'); + this.searchValue2 = uni.getStorageSync('threeCodeOut2'); + 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/authV4`, + 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('threeCodeOut1', this.searchValue1); + uni.setStorageSync('threeCodeOut2', this.searchValue2); + if (this.searchValue1.length == 0) { + this.getOrderDetlList(this.searchValue1,10) + } else { + this.getOrderDetlList(this.searchValue1,10) + } + + }, + searchValueInput2() { + uni.setStorageSync('threeCodeOut1', this.searchValue1); + uni.setStorageSync('threeCodeOut2', 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) { + 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/pickAgain.vue b/pages/phyz/stationManage/pickAgain.vue index dfd1b5c..3c22660 100644 --- a/pages/phyz/stationManage/pickAgain.vue +++ b/pages/phyz/stationManage/pickAgain.vue @@ -8,6 +8,7 @@ <view>鍚嶇О锛歿{orderDetl.maktx}}</view> <view>搴撳瓨鏁伴噺锛歿{orderDetl.anfme}}</view> <view>璁㈠崟鍙嚭鏁伴噺锛歿{orderDetl.stock}}</view> + <view>宸叉嫞鏁伴噺锛歿{orderDetl.pickedAnfme}}</view> <view>鎷f枡鏁伴噺锛歿{orderDetl.count}}</view> </view> <view class="list-right" @click="addItem(index)"> @@ -51,7 +52,8 @@ count: 0, maxCount: 0, wrkNo: '', - locNo: '' + locNo: '', + pickedAnfme: 0 } }, onShow() { @@ -85,6 +87,8 @@ res = res.data console.log(res); if (res.code === 200) { + _this.chosed(_this.pickList,res.data.records) + return let enbleList = [], isfl; for (let k of res.data.records) { isfl = false; @@ -120,8 +124,31 @@ }) }, // 宸查�夋嫞鏂欏垪琛� - orderCar() { - + chosed(wrkDetls,locDetls) { + let isfl = false, enbleList = [] + for (let locDetl of locDetls) { + locDetl['color'] = 'order-sts-start' + locDetl['pickedAnfme'] = 0 + locDetl['count'] = 0 + for (let wrkDetl of wrkDetls) { + if (wrkDetl.threeCode == locDetl.threeCode && wrkDetl.matnr == locDetl.matnr) { + locDetl['pickedAnfme'] = wrkDetl.anfme + if (locDetl.stock == -1) { + locDetl.stock = 0 + } + if (wrkDetl.anfme < locDetl.anfme) { + locDetl['color'] = 'order-sts-working' + locDetl['pickedAnfme'] = wrkDetl.anfme + locDetl['count'] = 0 + } else { + locDetl['color'] = 'order-sts-end' + } + break + } + } + + } + this.dataList = locDetls }, // 娣诲姞鍏ュ簱鍟嗗搧鑷� 寰呯粍鎵樺垪琛� addItem(index) { diff --git a/pages/phyz/stationManage/stationDetl.vue b/pages/phyz/stationManage/stationDetl.vue index e966559..a4d6060 100644 --- a/pages/phyz/stationManage/stationDetl.vue +++ b/pages/phyz/stationManage/stationDetl.vue @@ -637,13 +637,13 @@ @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; diff --git a/pages/phyz/stationManage/stationManage.vue b/pages/phyz/stationManage/stationManage.vue index d5e07e1..217b386 100644 --- a/pages/phyz/stationManage/stationManage.vue +++ b/pages/phyz/stationManage/stationManage.vue @@ -1,5 +1,5 @@ <template> - <view> + <view style="font-size: 14px;"> <view class="code"> <uni-search-bar :focus="searchValueFocus" v-model="searchValue" @input="searchValueInput()" maxlength="500" ancel="cancel" @clear="clear" placeholder="杈撳叆 / 鎵弿 绔欑偣鍙�"> diff --git a/static/css/common/order.css b/static/css/common/order.css index 60d37f4..e8ecb55 100644 --- a/static/css/common/order.css +++ b/static/css/common/order.css @@ -15,7 +15,7 @@ } .list { margin: 20rpx; - + font-size: 14px; background-color: #fff; border-radius: 20rpx; border: 1px solid #eeeeee; -- Gitblit v1.9.1