| | |
| | | "name" : "中扬WMS", |
| | | "appid" : "__UNI__DA5854D", |
| | | "description" : "", |
| | | "versionName" : "20250225A", |
| | | "versionName" : "20250310A", |
| | | "versionCode" : 146, |
| | | "transformPx" : false, |
| | | /* 5+App特有相关 */ |
| | |
| | | <template> |
| | | <view> |
| | | <view class="code"> |
| | | <uni-search-bar v-model="searchValue1" |
| | | maxlength="500" ancel="cancel" @confirm="searchValueInput1()" @clear="clear" placeholder="输入 / 扫描 订单号"> |
| | | <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>订单数量:{{orderDetl.anfme}}</view> |
| | | <view>库存数量:{{orderDetl.stock}}</view> |
| | | <view>已出数量:{{orderDetl.qty}}</view> |
| | | <view v-if="orderDetl.workNum">正在作业数量:{{orderDetl.workNum}}</view> |
| | | <view>正在作业数量:{{orderDetl.workNum||orderDetl.workNum==0?orderDetl.workNum:""}}</view> |
| | | |
| | | </view> |
| | | <view class="list-right" @click="goToLocDetl(orderDetl)"> |
| | |
| | | _this.data.limit = limit |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/orderDetl/pakout/list/authV4`, |
| | | header: {'token': uni.getStorageSync('token')}, |
| | | header: { |
| | | 'token': uni.getStorageSync('token') |
| | | }, |
| | | data: _this.data, |
| | | method: 'GET', |
| | | success(res) { |
| | |
| | | } |
| | | } |
| | | let list = res.data.records |
| | | if (_this.wrkingData&&_this.wrkingData.length >0){ |
| | | for (let item of list) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item.threeCode) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item |
| | | .threeCode) { |
| | | item['workNum'] = k.anfme |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | _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); |
| | | 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' }) |
| | | uni.showToast({ |
| | | title: res.msg, |
| | | icon: "error", |
| | | position: 'top' |
| | | }) |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | get() { |
| | | let _this = this |
| | | let data = {limit:9999,curr: 1} |
| | | let data = { |
| | | limit: 9999, |
| | | curr: 1 |
| | | } |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/agv/wrkDetl/list/auth`, |
| | | header: {'token': uni.getStorageSync('token')}, |
| | | url: `${_this.baseUrl}/orderDetl/pakout/workNum`, |
| | | header: { |
| | | 'token': uni.getStorageSync('token') |
| | | }, |
| | | data: data, |
| | | method: 'GET', |
| | | success(res) { |
| | | var res = res.data |
| | | if (res.code === 200) { |
| | | const result = res.data.records.reduce((acc, curr) => { |
| | | const result = res.data.reduce((acc, curr) => { |
| | | const key = `${curr.matnr}-${curr.orderNo}-${curr.threeCode}`; |
| | | if (acc[key]) { |
| | | acc[key].anfme += curr.anfme; |
| | | } else { |
| | | acc[key] = { ...curr }; |
| | | acc[key] = { |
| | | ...curr |
| | | }; |
| | | } |
| | | return acc; |
| | | }, {}); |
| | | const newArray = Object.values(result); |
| | | _this.wrkingData = newArray |
| | | if (_this.dataList&&_this.dataList.length >0){ |
| | | for (let item of _this.dataList) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == |
| | | item.threeCode) { |
| | | item['workNum'] = k.anfme |
| | | break |
| | | }else{ |
| | | item['workNum'] = 0 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | |
| | | }, |
| | | goToLocDetl(item) { |
| | | if (item.qty >= item.anfme) { |
| | | uni.showToast({ title: '已完成订单作业数量', icon: "error", position: 'top' }) |
| | | uni.showToast({ |
| | | title: '已完成订单作业数量', |
| | | icon: "error", |
| | | position: 'top' |
| | | }) |
| | | return |
| | | } |
| | | let _this = this |
| | |
| | | |
| | | <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; |
| | |
| | | text-align: center; |
| | | font-size: 16px; |
| | | } |
| | | |
| | | .popup-item { |
| | | height: 80rpx; |
| | | line-height: 80rpx; |
| | |
| | | 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; |
| | |
| | | border: 1px solid #E4E7ED; |
| | | border-radius: 5rpx; |
| | | } |
| | | |
| | | .popup-item-right input{ |
| | | color: #606266; |
| | | } |
| | | |
| | | .btn { |
| | | display: flex; |
| | | height: 90rpx; |
| | |
| | | justify-content: center; |
| | | align-items: center; |
| | | } |
| | | |
| | | .btn-left { |
| | | display: flex; |
| | | flex: 1; |
| | |
| | | color: #606266; |
| | | border-right: 1px solid #DCDFE6; |
| | | } |
| | | |
| | | .btn-right { |
| | | display: flex; |
| | | flex: 1; |
| | |
| | | align-items: center; |
| | | color: #409EFF; |
| | | } |
| | | |
| | | .filter-popup { |
| | | width: 100%; |
| | | height: 80vh; |
| | |
| | | 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; |
| | |
| | | background-color: #c9cdd5; |
| | | text-align: center; |
| | | } |
| | | |
| | | .item-btn:checked { |
| | | background-color: #606266; |
| | | } |
| | | |
| | | .filter-btn { |
| | | position: absolute; |
| | | left: 0; |
| | |
| | | width: 100%; |
| | | background-color: #FFF; |
| | | } |
| | | |
| | | .item-cl { |
| | | display: flex;align-items: center; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .item-cl input { |
| | | border-bottom: 1px solid #b9b9b9; |
| | | } |
| | |
| | | <view>订单数量:{{orderDetl.anfme}}</view> |
| | | <view>库存数量:{{orderDetl.stock}}</view> |
| | | <view>已出数量:{{orderDetl.qty}}</view> |
| | | <view v-if="orderDetl.workNum">正在作业数量:{{orderDetl.workNum}}</view> |
| | | <view>正在作业数量:{{orderDetl.workNum||orderDetl.workNum==0?orderDetl.workNum:""}}</view> |
| | | |
| | | </view> |
| | | <view class="list-right" @click="goToLocDetl(orderDetl)"> |
| | |
| | | } |
| | | } |
| | | let list = res.data.records |
| | | if (_this.wrkingData&&_this.wrkingData.length >0){ |
| | | for (let item of list) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item.threeCode) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item |
| | | .threeCode) { |
| | | item['workNum'] = k.anfme |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | let _this = this |
| | | let data = {limit:9999,curr: 1} |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/agv/wrkDetl/list/auth`, |
| | | url: `${_this.baseUrl}/orderDetl/pakout/workNum`, |
| | | header: {'token': uni.getStorageSync('token')}, |
| | | data: data, |
| | | method: 'GET', |
| | | success(res) { |
| | | var res = res.data |
| | | if (res.code === 200) { |
| | | const result = res.data.records.reduce((acc, curr) => { |
| | | const result = res.data.reduce((acc, curr) => { |
| | | const key = `${curr.matnr}-${curr.orderNo}-${curr.threeCode}`; |
| | | if (acc[key]) { |
| | | acc[key].anfme += curr.anfme; |
| | |
| | | }, {}); |
| | | const newArray = Object.values(result); |
| | | _this.wrkingData = newArray |
| | | if (_this.dataList&&_this.dataList.length >0){ |
| | | for (let item of _this.dataList) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == |
| | | item.threeCode) { |
| | | item['workNum'] = k.anfme |
| | | break |
| | | }else{ |
| | | item['workNum'] = 0 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | |
| | | <view>订单数量:{{orderDetl.anfme}}</view> |
| | | <view>库存数量:{{orderDetl.stock}}</view> |
| | | <view>已出数量:{{orderDetl.qty}}</view> |
| | | <view v-if="orderDetl.workNum">正在作业数量:{{orderDetl.workNum}}</view> |
| | | <view>正在作业数量:{{orderDetl.workNum||orderDetl.workNum==0?orderDetl.workNum:""}}</view> |
| | | </view> |
| | | <view class="list-right" @click="goToLocDetl(orderDetl)"> |
| | | <uni-icons type="right" size="25" color="#fff"></uni-icons> |
| | |
| | | } |
| | | } |
| | | let list = res.data.records |
| | | if (_this.wrkingData&&_this.wrkingData.length >0){ |
| | | for (let item of list) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item.threeCode) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item |
| | | .threeCode) { |
| | | item['workNum'] = k.anfme |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | let _this = this |
| | | let data = {limit:9999,curr: 1} |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/agv/wrkDetl/list/auth`, |
| | | url: `${_this.baseUrl}/orderDetl/pakout/workNum`, |
| | | header: {'token': uni.getStorageSync('token')}, |
| | | data: data, |
| | | method: 'GET', |
| | | success(res) { |
| | | var res = res.data |
| | | if (res.code === 200) { |
| | | const result = res.data.records.reduce((acc, curr) => { |
| | | const result = res.data.reduce((acc, curr) => { |
| | | const key = `${curr.matnr}-${curr.orderNo}-${curr.threeCode}`; |
| | | if (acc[key]) { |
| | | acc[key].anfme += curr.anfme; |
| | |
| | | }, {}); |
| | | const newArray = Object.values(result); |
| | | _this.wrkingData = newArray |
| | | |
| | | if (_this.dataList&&_this.dataList.length >0){ |
| | | for (let item of _this.dataList) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == |
| | | item.threeCode) { |
| | | item['workNum'] = k.anfme |
| | | break |
| | | }else{ |
| | | item['workNum'] = 0 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | |
| | | <view>订单数量:{{orderDetl.anfme}}</view> |
| | | <view>库存数量:{{orderDetl.stock}}</view> |
| | | <view>已出数量:{{orderDetl.qty}}</view> |
| | | <view v-if="orderDetl.workNum">正在作业数量:{{orderDetl.workNum}}</view> |
| | | <view>正在作业数量:{{orderDetl.workNum||orderDetl.workNum==0?orderDetl.workNum:""}}</view> |
| | | </view> |
| | | <view class="list-right" @click="goToLocDetl(orderDetl)"> |
| | | <uni-icons type="right" size="25" color="#fff"></uni-icons> |
| | |
| | | } |
| | | } |
| | | let list = res.data.records |
| | | |
| | | if (_this.wrkingData&&_this.wrkingData.length >0){ |
| | | for (let item of list) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item.threeCode) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item |
| | | .threeCode) { |
| | | item['workNum'] = k.anfme |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | let _this = this |
| | | let data = {limit:9999,curr: 1} |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/agv/wrkDetl/list/auth`, |
| | | url: `${_this.baseUrl}/orderDetl/pakout/workNum`, |
| | | header: {'token': uni.getStorageSync('token')}, |
| | | data: data, |
| | | method: 'GET', |
| | | success(res) { |
| | | var res = res.data |
| | | if (res.code === 200) { |
| | | const result = res.data.records.reduce((acc, curr) => { |
| | | const result = res.data.reduce((acc, curr) => { |
| | | const key = `${curr.matnr}-${curr.orderNo}-${curr.threeCode}`; |
| | | if (acc[key]) { |
| | | acc[key].anfme += curr.anfme; |
| | |
| | | }, {}); |
| | | const newArray = Object.values(result); |
| | | _this.wrkingData = newArray |
| | | |
| | | if (_this.dataList&&_this.dataList.length >0){ |
| | | for (let item of _this.dataList) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == |
| | | item.threeCode) { |
| | | item['workNum'] = k.anfme |
| | | break |
| | | }else{ |
| | | item['workNum'] = 0 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | |
| | | <view>订单数量:{{orderDetl.anfme}}</view> |
| | | <view>库存数量:{{orderDetl.stock}}</view> |
| | | <view>已出数量:{{orderDetl.qty}}</view> |
| | | <view v-if="orderDetl.workNum">正在作业数量:{{orderDetl.workNum}}</view> |
| | | <view>正在作业数量:{{orderDetl.workNum||orderDetl.workNum==0?orderDetl.workNum:""}}</view> |
| | | </view> |
| | | <view class="list-right" @click="goToLocDetl(orderDetl)"> |
| | | <uni-icons type="right" size="25" color="#fff"></uni-icons> |
| | |
| | | order_no: '', |
| | | brand: '' |
| | | }, |
| | | wrkingData: [] |
| | | } |
| | | }, |
| | | onReachBottom() { |
| | |
| | | }, |
| | | methods: { |
| | | getOrderDetlList(threeCode,limit) { |
| | | this.wrkingData= [] |
| | | this.get() |
| | | uni.showLoading({}) |
| | | let _this = this |
| | | _this.mask = true |
| | |
| | | } |
| | | } |
| | | let list = res.data.records |
| | | if (_this.wrkingData&&_this.wrkingData.length >0){ |
| | | for (let item of list) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == item |
| | | .threeCode) { |
| | | item['workNum'] = k.anfme |
| | | } |
| | | } |
| | | } |
| | | } |
| | | _this.dataList = _this.dataList.concat(list); |
| | | _this.data.curr = _this.data.curr + 1 |
| | | _this.total = res.data.total |
| | |
| | | } |
| | | }) |
| | | }, |
| | | get() { |
| | | let _this = this |
| | | let data = {limit:9999,curr: 1} |
| | | uni.request({ |
| | | url: `${_this.baseUrl}/orderDetl/pakout/workNum`, |
| | | header: {'token': uni.getStorageSync('token')}, |
| | | data: data, |
| | | method: 'GET', |
| | | success(res) { |
| | | var res = res.data |
| | | if (res.code === 200) { |
| | | const result = res.data.reduce((acc, curr) => { |
| | | const key = `${curr.matnr}-${curr.orderNo}-${curr.threeCode}`; |
| | | if (acc[key]) { |
| | | acc[key].anfme += curr.anfme; |
| | | } else { |
| | | acc[key] = { ...curr }; |
| | | } |
| | | return acc; |
| | | }, {}); |
| | | const newArray = Object.values(result); |
| | | _this.wrkingData = newArray |
| | | |
| | | if (_this.dataList&&_this.dataList.length >0){ |
| | | for (let item of _this.dataList) { |
| | | for (let k of _this.wrkingData) { |
| | | if (k.matnr == item.matnr && k.orderNo == item.orderNo && k.threeCode == |
| | | item.threeCode) { |
| | | item['workNum'] = k.anfme |
| | | break |
| | | }else{ |
| | | item['workNum'] = 0 |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | searchValueInput1() { |
| | | this.dataList = [] |
| | | this.data.curr = 1 |