manifest.json | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
pages/phyz/processOrder/orderCheck.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
pages/phyz/processOrder/orderCheck2.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
pages/phyz/processOrder/processOrder.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
manifest.json
@@ -2,8 +2,8 @@ "name" : "中扬WMS", "appid" : "__UNI__DA5854D", "description" : "", "versionName" : "20240809A", "versionCode" : 126, "versionName" : "20240819A", "versionCode" : 127, "transformPx" : false, /* 5+App特有相关 */ "app-plus" : { pages/phyz/processOrder/orderCheck.vue
@@ -1,32 +1,33 @@ <template> <view> <view class="list shop-car"> <view class="list shop-car" v-for="item in dataList"> <view class="list-left"> <view class="detl-threeCode" style="padding: 16rpx 0;">{{data.csocode}}</view> <view>库位:{{data.locNo}}</view> <view>编号:{{data.matnr}}</view> <view>名称:{{data.maktx}}</view> <view>自由项:{{data.containerCode}}</view> <view>规格:{{data.specs}}</view> <view>批号:{{data.batch}}</view> <view>工序:{{data.processSts$}}</view> <view>库存数量:{{count}}</view> <view class="detl-threeCode" style="padding: 16rpx 0;">{{item.csocode}}</view> <view>库位:{{item.locNo}}</view> <view>编号:{{item.matnr}}</view> <view>名称:{{item.maktx}}</view> <view>自由项:{{item.containerCode}}</view> <view>规格:{{item.specs}}</view> <view>批号:{{item.batch}}</view> <view>库存数量:{{item.count}}</view> <view class="detl-threeCode" style="display: flex;padding: 32rpx 0;align-items: center;font-size: 24px;"> <view>出库数量:{{data.anfme}}</view> <view style="margin-left: 50rpx;" @click="revise()"> <view>出库数量:{{item.anfme}}</view> <view style="margin-left: 50rpx;" @click="revise(item)"> <uni-icons type="compose" size="30" color="#fff"></uni-icons> </view> </view> <view class="detl-threeCode" style="display: flex;padding: 0 0 32rpx 0;font-size: 24px;">出库站: <view class="dropdown" @click="toggleDropdown(data)"> <input type="text" style="width: 270rpx;font-size: 20px;" v-model="data.agvStaNo" placeholder="请选择出库站" placeholder-style="color: #fff"> <uni-icons :type="data.isOpen ? 'top' : 'bottom'" color="#fff" style="margin-left: 10rpx;"></uni-icons> <scroll-view scroll-y="ture" class="dropdown-content" v-if="data.isOpen"> <view class="dropdown-item" v-for="option in data.agvStaNos" @click="selected(option,data)">{{option}}</view> <view class="dropdown" @click="toggleDropdown(item)"> <!-- <view style="height: 100%;width: 100%; position: fixed;background-color: rgba(0,0,0,.4);left:0;top:0" v-if = "item.isOpen"></view> --> <input type="text" style="width: 270rpx;font-size: 20px;" v-model="item.agvStaNo" placeholder="请选择出库站" placeholder-style="color: #fff"> <uni-icons :type="item.isOpen ? 'top' : 'bottom'" color="#fff" style="margin-left: 10rpx;"></uni-icons> <scroll-view scroll-y="ture" class="dropdown-content" v-if="item.isOpen"> <view class="dropdown-item" v-for="option in options" @click="selected(option,item)">{{option}}</view> </scroll-view> </view> </view> <button @click="combConfirm(item)" :disabled="combDis">立即出库</button> </view> </view> <!-- 弹窗 --> @@ -37,7 +38,7 @@ <view class="title">出库数量</view> <view class="popup-item"> <view> <uni-number-box :value="data.anfme" :step='1' :min="0" :max="count" color="#747474" @change="changeValue" /> <uni-number-box :value="data.anfme" :step='1' :min="0" :max="maxCount" color="#747474" @change="changeValue" /> </view> </view> @@ -54,11 +55,12 @@ </view> </uni-popup> </view> <view style="height: 100rpx;"></view> <!-- 底部操作按钮 --> <view class="buttom"> <!-- <view class="buttom"> <button size="mini" @click="reset('warn')">稍后处理</button> <button size="mini" type="primary" @click="combConfirm('warn')" :disabled="combDis">立即出库</button> </view> </view> --> </view> </template> @@ -69,9 +71,12 @@ baseUrl: '', token: '', data: {}, dataList: [], option: '', count: 0, combDis: false options: [], combDis: false, maxCount: 0, orderType: '' } }, onShow() { @@ -81,17 +86,31 @@ // const eventChannel = this.$scope.eventChannel; // 兼容APP-NVUE const eventChannel = this.getOpenerEventChannel(); // 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据 eventChannel.on('mat', function(data) { let ids = [data.mat.id] _this.getPakoutList(ids,data.mat.locNo) // eventChannel.on('mat', function(data) { // let ids = [data.mat.id] // _this.getPakoutList(ids,data.mat.locNo) // }) eventChannel.on('item', function(data) { let ids = [data.item.id] _this.getPakoutList(ids) }) eventChannel.on('type', function(data) { console.log(data); if (data) { _this.orderType = data.type } }) }, methods: { max() { this.data.anfme = this.count this.data.anfme = this.data.count }, toggleDropdown(item) { this.options = [] item.isOpen = !item.isOpen; for (let k of item.agvStaNos) { this.options.push(k) } }, selected(option,item) { item.agvStaNo = option @@ -106,26 +125,18 @@ method: 'POST', success(res) { res = res.data console.log(res); if (res.code === 200) { for (let k of res.data) { if (locNo == k.locNo) { if (k.locNo != null) { k['isOpen'] = false _this.count = k.anfme // k.anfme = 0 switch (k.processSts) { case 1: k["processSts$"] = "待加工" break; case 2: k["processSts$"] = "已加工" break; case 3: k["processSts$"] = "无需加工" break; k['count'] = k.anfme k.anfme = 0 if (_this.orderType == 'bcp') { if (k.locNo.substring(k.locNo.length - 1, k.locNo.length) == 1) { continue } } _this.data = k return _this.dataList.push(k) } } } else if (res.code == 403) { @@ -137,12 +148,14 @@ } }) }, revise() { revise(item) { this.data = item this.maxCount = item.count this.$refs.addItem.open() }, addClose() { this.$refs.addItem.close() // this.data.anfme = 0 this.data.anfme = 0 }, addConfirm() { this.$refs.addItem.close() @@ -150,7 +163,7 @@ changeValue(value) { this.data.anfme = value }, combConfirm() { combConfirm(item) { let _this = this _this.combDis = true if (_this.data.anfme == 0) { @@ -159,9 +172,9 @@ } uni.showLoading({}) let combList = [] combList.push(_this.data) combList.push(item) uni.request({ url: `${_this.baseUrl}/process/out/pakout/auth`, url: `${_this.baseUrl}/out/pakout/auth`, header: {'token': uni.getStorageSync('token')}, data: combList, method: 'POST', pages/phyz/processOrder/orderCheck2.vue
New file @@ -0,0 +1,274 @@ <template> <view> <view class="list shop-car"> <view class="list-left"> <view class="detl-threeCode" style="padding: 16rpx 0;">{{data.csocode}}</view> <view>库位:{{data.locNo}}</view> <view>编号:{{data.matnr}}</view> <view>名称:{{data.maktx}}</view> <view>自由项:{{data.containerCode}}</view> <view>规格:{{data.specs}}</view> <view>批号:{{data.batch}}</view> <view>工序:{{data.processSts$}}</view> <view>库存数量:{{count}}</view> <view class="detl-threeCode" style="display: flex;padding: 32rpx 0;align-items: center;font-size: 24px;"> <view>出库数量:{{data.anfme}}</view> <view style="margin-left: 50rpx;" @click="revise()"> <uni-icons type="compose" size="30" color="#fff"></uni-icons> </view> </view> <view class="detl-threeCode" style="display: flex;padding: 0 0 32rpx 0;font-size: 24px;">出库站: <view class="dropdown" @click="toggleDropdown(data)"> <input type="text" style="width: 270rpx;font-size: 20px;" v-model="data.agvStaNo" placeholder="请选择出库站" placeholder-style="color: #fff"> <uni-icons :type="data.isOpen ? 'top' : 'bottom'" color="#fff" style="margin-left: 10rpx;"></uni-icons> <scroll-view scroll-y="ture" class="dropdown-content" v-if="data.isOpen"> <view class="dropdown-item" v-for="option in data.agvStaNos" @click="selected(option,data)">{{option}}</view> </scroll-view> </view> </view> </view> </view> <!-- 弹窗 --> <view> <uni-popup ref="addItem" type="dialog"> <view class="popup"> <!-- 标题 --> <view class="title">出库数量</view> <view class="popup-item"> <view> <uni-number-box :value="data.anfme" :step='1' :min="0" :max="count" color="#747474" @change="changeValue" /> </view> </view> <view class="popup-item"> <view> <view @click="max()" style="padding: 0rpx 16rpx;background-color: #d9d9d9;font-size: 10px;">MAX</view> </view> </view> <view class="btn"> <view class="btn-left" @click="addClose">取消</view> <view class="btn-right" @click="addConfirm()">确认</view> </view> </view> </uni-popup> </view> <!-- 底部操作按钮 --> <view class="buttom"> <button size="mini" @click="reset('warn')">稍后处理</button> <button size="mini" type="primary" @click="combConfirm('warn')" :disabled="combDis">立即出库</button> </view> </view> </template> <script> export default { data() { return { baseUrl: '', token: '', data: {}, option: '', count: 0, combDis: false } }, 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('mat', function(data) { let ids = [data.mat.id] _this.getPakoutList(ids,data.mat.locNo) }) }, methods: { max() { this.data.anfme = this.count }, toggleDropdown(item) { item.isOpen = !item.isOpen; }, selected(option,item) { item.agvStaNo = option }, // 订单明细 getPakoutList(ids,locNo) { let _this = this uni.request({ url: `${_this.baseUrl}/out/pakout/preview/auth`, header: {'token': uni.getStorageSync('token')}, data: ids, method: 'POST', success(res) { res = res.data console.log(res); if (res.code === 200) { for (let k of res.data) { if (locNo == k.locNo) { k['isOpen'] = false _this.count = k.anfme // k.anfme = 0 switch (k.processSts) { case 1: k["processSts$"] = "待加工" break; case 2: k["processSts$"] = "已加工" break; case 3: k["processSts$"] = "无需加工" break; } _this.data = k return } } } 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' }) } } }) }, revise() { this.$refs.addItem.open() }, addClose() { this.$refs.addItem.close() // this.data.anfme = 0 }, addConfirm() { this.$refs.addItem.close() }, changeValue(value) { this.data.anfme = value }, combConfirm() { let _this = this _this.combDis = true if (_this.data.anfme == 0) { uni.showToast({ title: '出库数量不能为0!', icon: "error", position: 'top'}) return } uni.showLoading({}) let combList = [] combList.push(_this.data) uni.request({ url: `${_this.baseUrl}/process/out/pakout/auth`, header: {'token': uni.getStorageSync('token')}, data: combList, method: 'POST', success(res) { _this.combDis = false res = res.data if (res.code === 200) { uni.hideLoading({}) uni.showToast({ title: '出库成功', icon: "success", position: 'top'}) setTimeout(()=> { uni.navigateBack({ delta: 2 }); },700) } 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' }) } }, fail(res) { _this.combDis = false } }) } } } </script> <style scoped> @import url('../../../static/css/common/order.css'); .shop-car { background-color: #2299ff; color: #fff; } .detl-threeCode { font-size: 34px; font-weight: bold; } .dropdown-item { font-size: 20px; font-weight: bold; } .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: #606266; border-right: 1px solid #DCDFE6; } .btn-right { display: flex; flex: 1; justify-content: center; align-items: center; color: #409EFF; } </style> pages/phyz/processOrder/processOrder.vue
@@ -203,7 +203,7 @@ } let _this = this uni.navigateTo({ url: './processList', url: './orderCheck', success(res) { res.eventChannel.emit('item', { item: item