From 3e4321e342c1b009dbeea6b186d148148529756a Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期二, 03 三月 2026 08:27:26 +0800
Subject: [PATCH] 单号调整

---
 pages/listing/matnrPalletising.vue |   18 
 locale/zh-Hans.json                |    2 
 pages/inspect/report.vue           |  356 ++++++++--------
 checkOrder.vue                     |    2 
 pages/rece/other.vue               |  768 +++++++++++++++++++-------------------
 5 files changed, 573 insertions(+), 573 deletions(-)

diff --git a/checkOrder.vue b/checkOrder.vue
index b3c71d4..f6f093b 100644
--- a/checkOrder.vue
+++ b/checkOrder.vue
@@ -148,7 +148,7 @@
 				if (code === 200) {					
 					if (Object.keys(data).length === 0){
 						uni.showToast({
-							title: "鏈煡璇㈠埌娉㈡鏁版嵁",
+							title: "鏈煡璇㈠埌鏁版嵁",
 							icon: "none",
 							position: 'top'
 						})
diff --git a/locale/zh-Hans.json b/locale/zh-Hans.json
index 5907f10..1efd4ce 100644
--- a/locale/zh-Hans.json
+++ b/locale/zh-Hans.json
@@ -41,7 +41,7 @@
 		"modifyBind": "浠诲姟鏄庣粏鎹㈢粦"
 	},
 	"other":{
-		"asnNo":"ASN鍗曞彿"
+		"asnNo":"WMS鍗曞彿"
 		
 	}
 	
diff --git a/pages/inspect/report.vue b/pages/inspect/report.vue
index 96dc40b..9b144b1 100644
--- a/pages/inspect/report.vue
+++ b/pages/inspect/report.vue
@@ -1,179 +1,179 @@
-<template>
-	<view class="has-foot">
-		<form>
-			<view class="cu-form-group ">
-				<view class="title">ASN鍗曞彿</view>
-				<input placeholder="閫夋嫨ASN鍗曞彿" v-model="asnCode"></input>
-				<text class='cuIcon-search text-blue' @click="search"></text>
-			</view>
-		</form>
-
-		<view class="flex solid-bottom padding-sm justify-between">
-			<view class="text-blue">SKU鏁伴噺:{{list.length}}</view>
-		</view>
-
-		<view class="cu-list det menu sm-border  padding">
-			<block v-for="(item, index) in list" :key="index">
-				<view class="cu-bar bg-white solid-bottom margin-top-sm">
-					<view class="action">
-						<view class="index">
-							{{index+1}}
-						</view>
-						<view class="text-blue">
-							{{`${item.maktx}`}}
-						</view>
-					</view>
-					<!-- 	<view class="action" v-if="!isconfirm">
-						<text @click="remove(index)" class="cuIcon-close text-red" style="font-size: 24px;"></text>
-					</view> -->
-				</view>
-
-				<view class="cu-item ">
-					<view class="content">
-						<text class="text-black">閲囪喘鍗曚綅: <text class="text-grey ">{{item.purUnit}}</text></text>
-					</view>
-					<view class="content">
-						<text class="text-black">閲囪喘鏁伴噺: <text class="text-grey ">{{item.purQty}}</text></text>
-					</view>
-				</view>
-
-				<view class="cu-item ">
-					<view class="content">
-						<text class="text-black">渚涘簲鍟�: <text class="text-grey ">{{item.suplierName}}</text></text>
-					</view>
-					<view class="content">
-						<text class="text-black">渚涘簲鍟嗙紪鐮�: <text class="text-grey ">{{item.suplierCode}}</text></text>
-					</view>
-				</view>
-
-			</block>
-		</view>
-
-		<block v-if="list.length">
-			<view class="cu-bar bg-white solid-bottom ">
-				<view class="action">
-					<text class="cuIcon-title text-orange "></text> 鎶ユ璁板綍
-				</view>
-			</view>
-
-
-			<view class="cu-timeline margin-bottom">
-				<view class="cu-item padding-tb-sm" v-for="el in histories" :key="el.name">
-					<view class="content flex justify-between padding-tb-sm">
-						<text>{{el.name}}</text> <text>{{el.date}}</text>
-					</view>
-				</view>
-			</view>
-		</block>
-
-		<view class="cu-bar btn-group foot">
-			<button class="cu-btn bg-blue shadow-blur" @click="confirm">鎻愪氦鎶ユ</button>
-		</view>
-
-	</view>
-</template>
-
-<script>
-	import {
-		request
-	} from '../../common/request.js'
-	import {
-		mapState,
-		mapMutations,
-		mapActions,
-		mapGetters
-	} from 'vuex';
-	export default {
-		data() {
-			return {
-				asnCode: '',
-				asnId: '',
-				container: '',
-				list: [],
-				histories: [],
-			}
-		},
-		computed: {
-			...mapState('user', ['dynamicFields']),
-			allCount() {
-				return this.list.reduce((acc, row) => +row.qty + acc, 0) || 0
-			}
-		},
-		mounted() {
-
-		},
-		methods: {
-			async search() {
-				const {
-					code,
-					data,
-					msg
-				} = await request('/asnOrder/inspect/' + this.asnCode, {}, "get")
-				if (code === 200) {
-					this.list = data.items;
-					this.asnId = data.id;
-					// this.histories = data.histories;
-
-				} else {
-					uni.showToast({
-						title: msg,
-						icon: "none",
-						position: 'top'
-					})
-				}
-
-			},
-			async confirm() {
-				const {
-					code,
-					data,
-					msg
-				} = await request('/inspect/confirm/' + this.asnId, {}, "get")
-				if (code === 200) {
-					uni.showToast({
-						title: '鎶ユ鎴愬姛'
-					})
-					this.list = []
-					this.asnCode = ''
-					this.asnId = ''
-				} else {
-					uni.showToast({
-						title: msg,
-						icon: "none",
-						position: 'top'
-					})
-				}
-
-
-			},
-
-		}
-	}
-</script>
-
-<style>
-	.index {
-		border: 1px solid #e54d42;
-		color: #e54d42;
-		border-radius: 50%;
-		display: block;
-		width: 50rpx;
-		height: 50rpx;
-		line-height: 48rpx;
-		text-align: center;
-		margin-right: 20rpx;
-		font-size: 30rpx;
-	}
-
-	.text-blue {
-		color: #0081ff !important;
-
-	}
-
-	.item {
-		position: relative;
-		display: flex;
-		min-height: 80upx;
-		align-items: center;
-	}
+<template>
+	<view class="has-foot">
+		<form>
+			<view class="cu-form-group ">
+				<view class="title">WMS鍗曞彿</view>
+				<input placeholder="閫夋嫨WMS鍗曞彿" v-model="asnCode"></input>
+				<text class='cuIcon-search text-blue' @click="search"></text>
+			</view>
+		</form>
+
+		<view class="flex solid-bottom padding-sm justify-between">
+			<view class="text-blue">SKU鏁伴噺:{{list.length}}</view>
+		</view>
+
+		<view class="cu-list det menu sm-border  padding">
+			<block v-for="(item, index) in list" :key="index">
+				<view class="cu-bar bg-white solid-bottom margin-top-sm">
+					<view class="action">
+						<view class="index">
+							{{index+1}}
+						</view>
+						<view class="text-blue">
+							{{`${item.maktx}`}}
+						</view>
+					</view>
+					<!-- 	<view class="action" v-if="!isconfirm">
+						<text @click="remove(index)" class="cuIcon-close text-red" style="font-size: 24px;"></text>
+					</view> -->
+				</view>
+
+				<view class="cu-item ">
+					<view class="content">
+						<text class="text-black">閲囪喘鍗曚綅: <text class="text-grey ">{{item.purUnit}}</text></text>
+					</view>
+					<view class="content">
+						<text class="text-black">閲囪喘鏁伴噺: <text class="text-grey ">{{item.purQty}}</text></text>
+					</view>
+				</view>
+
+				<view class="cu-item ">
+					<view class="content">
+						<text class="text-black">渚涘簲鍟�: <text class="text-grey ">{{item.suplierName}}</text></text>
+					</view>
+					<view class="content">
+						<text class="text-black">渚涘簲鍟嗙紪鐮�: <text class="text-grey ">{{item.suplierCode}}</text></text>
+					</view>
+				</view>
+
+			</block>
+		</view>
+
+		<block v-if="list.length">
+			<view class="cu-bar bg-white solid-bottom ">
+				<view class="action">
+					<text class="cuIcon-title text-orange "></text> 鎶ユ璁板綍
+				</view>
+			</view>
+
+
+			<view class="cu-timeline margin-bottom">
+				<view class="cu-item padding-tb-sm" v-for="el in histories" :key="el.name">
+					<view class="content flex justify-between padding-tb-sm">
+						<text>{{el.name}}</text> <text>{{el.date}}</text>
+					</view>
+				</view>
+			</view>
+		</block>
+
+		<view class="cu-bar btn-group foot">
+			<button class="cu-btn bg-blue shadow-blur" @click="confirm">鎻愪氦鎶ユ</button>
+		</view>
+
+	</view>
+</template>
+
+<script>
+	import {
+		request
+	} from '../../common/request.js'
+	import {
+		mapState,
+		mapMutations,
+		mapActions,
+		mapGetters
+	} from 'vuex';
+	export default {
+		data() {
+			return {
+				asnCode: '',
+				asnId: '',
+				container: '',
+				list: [],
+				histories: [],
+			}
+		},
+		computed: {
+			...mapState('user', ['dynamicFields']),
+			allCount() {
+				return this.list.reduce((acc, row) => +row.qty + acc, 0) || 0
+			}
+		},
+		mounted() {
+
+		},
+		methods: {
+			async search() {
+				const {
+					code,
+					data,
+					msg
+				} = await request('/asnOrder/inspect/' + this.asnCode, {}, "get")
+				if (code === 200) {
+					this.list = data.items;
+					this.asnId = data.id;
+					// this.histories = data.histories;
+
+				} else {
+					uni.showToast({
+						title: msg,
+						icon: "none",
+						position: 'top'
+					})
+				}
+
+			},
+			async confirm() {
+				const {
+					code,
+					data,
+					msg
+				} = await request('/inspect/confirm/' + this.asnId, {}, "get")
+				if (code === 200) {
+					uni.showToast({
+						title: '鎶ユ鎴愬姛'
+					})
+					this.list = []
+					this.asnCode = ''
+					this.asnId = ''
+				} else {
+					uni.showToast({
+						title: msg,
+						icon: "none",
+						position: 'top'
+					})
+				}
+
+
+			},
+
+		}
+	}
+</script>
+
+<style>
+	.index {
+		border: 1px solid #e54d42;
+		color: #e54d42;
+		border-radius: 50%;
+		display: block;
+		width: 50rpx;
+		height: 50rpx;
+		line-height: 48rpx;
+		text-align: center;
+		margin-right: 20rpx;
+		font-size: 30rpx;
+	}
+
+	.text-blue {
+		color: #0081ff !important;
+
+	}
+
+	.item {
+		position: relative;
+		display: flex;
+		min-height: 80upx;
+		align-items: center;
+	}
 </style>
\ No newline at end of file
diff --git a/pages/listing/matnrPalletising.vue b/pages/listing/matnrPalletising.vue
index 7dd5f0c..b73cfda 100644
--- a/pages/listing/matnrPalletising.vue
+++ b/pages/listing/matnrPalletising.vue
@@ -20,8 +20,8 @@
 <!--					&lt;!&ndash; <text class='cuIcon-search text-blue' @click="search"></text> &ndash;&gt;-->
 <!--				</view>-->
 				<view class="cu-form-group">
-					<view class="title">ASN鍗曞彿</view>
-					<input placeholder="璇疯緭鍏SN鍗曞彿" v-model="asnCode" @input="onAsnCodeInput" @confirm="onAsnCodeConfirm"></input>
+					<view class="title">WMS鍗曞彿</view>
+					<input placeholder="璇疯緭鍏MS鍗曞彿" v-model="asnCode" @input="onAsnCodeInput" @confirm="onAsnCodeConfirm"></input>
 				</view>
 			</form>
 			<view class="flex solid-bottom padding-sm justify-between">
@@ -174,7 +174,7 @@
 				}
 			},
 			onAsnCodeInput(e) {
-				// 鎵弿ASN鍗曞彿鏃惰嚜鍔ㄨЕ鍙戞煡璇�
+				// 鎵弿WMS鍗曞彿鏃惰嚜鍔ㄨЕ鍙戞煡璇�
 				if (e.detail && e.detail.value && e.detail.value.trim() !== '') {
 					this.asnCode = e.detail.value;
 					// 寤惰繜涓�涓嬪啀鏌ヨ锛岄伩鍏嶉绻佽姹�
@@ -182,13 +182,13 @@
 						clearTimeout(this.asnCodeTimer);
 					}
 					this.asnCodeTimer = setTimeout(() => {
-						// 鎵弿ASN鍗曞彿鏃讹紝鑷姩鍔犺浇璇ヨ鍗曠殑鐗╂枡淇℃伅
+						// 鎵弿WMS鍗曞彿鏃讹紝鑷姩鍔犺浇璇ヨ鍗曠殑鐗╂枡淇℃伅
 						this.getDet();
 					}, 500);
 				}
 			},
 			onAsnCodeConfirm() {
-				// 纭杈撳叆ASN鍗曞彿鏃讹紝绔嬪嵆瑙﹀彂鏌ヨ
+				// 纭杈撳叆WMS鍗曞彿鏃讹紝绔嬪嵆瑙﹀彂鏌ヨ
 				if (this.asnCode && this.asnCode.trim() !== '') {
 					this.getDet();
 				}
@@ -215,7 +215,7 @@
 				if ((!that.matnrCode || that.matnrCode.trim() === '') && 
 				    (!that.asnCode || that.asnCode.trim() === '')) {
 					uni.showToast({
-						title: "璇疯緭鍏ョ墿鏂欑紪鐮佹垨ASN鍗曞彿",
+						title: "璇疯緭鍏ョ墿鏂欑紪鐮佹垨WMS鍗曞彿",
 						icon: "none",
 						position: 'top'
 					})
@@ -352,12 +352,12 @@
 							// 閮芥湁璺熻釜鐮侊紝璺熻釜鐮佺浉鍚屽垯璁や负鏄悓涓�鐗╂枡
 							return existingItem.trackCode === item.trackCode;
 						}
-						// 鐗╂枡缂栫爜鐩稿悓锛屾鏌SN鍗曞彿锛堝鏋滄湁ASN鍗曞彿锛孉SN鍗曞彿涓嶅悓鍒欏厑璁告坊鍔狅級
+						// 鐗╂枡缂栫爜鐩稿悓锛屾鏌MS鍗曞彿锛堝鏋滄湁鍗曞彿锛屽崟鍙蜂笉鍚屽垯鍏佽娣诲姞锛�
 						if (existingItem.asnCode && item.asnCode) {
-							// 閮芥湁ASN鍗曞彿锛孉SN鍗曞彿鐩稿悓鍒欒涓烘槸鍚屼竴鐗╂枡
+							// 閮芥湁WMS鍗曞彿锛屽崟鍙风浉鍚屽垯璁や负鏄悓涓�鐗╂枡
 							return existingItem.asnCode === item.asnCode;
 						}
-						// 鐗╂枡缂栫爜鐩稿悓锛屼絾閮芥病鏈夎窡韪爜鍜孉SN鍗曞彿锛堥兘鏄粠鐗╂枡淇℃伅琛ㄨ幏鍙栫殑锛夛紝璁や负鏄悓涓�鐗╂枡
+						// 鐗╂枡缂栫爜鐩稿悓锛屼絾閮芥病鏈夎窡韪爜鍜學MS鍗曞彿锛堥兘鏄粠鐗╂枡淇℃伅琛ㄨ幏鍙栫殑锛夛紝璁や负鏄悓涓�鐗╂枡
 						if (existingItem.matnrCode === item.matnrCode &&
 						    !existingItem.trackCode && !item.trackCode && 
 						    !existingItem.asnCode && !item.asnCode) {
diff --git a/pages/rece/other.vue b/pages/rece/other.vue
index d1506bf..ea7e8cd 100644
--- a/pages/rece/other.vue
+++ b/pages/rece/other.vue
@@ -1,385 +1,385 @@
-<template>
-	<view class="has-foot">
-		<form>
-			<view class="cu-form-group margin-top" v-show="!isconfirm">
-				<view class="title">ASN鍗曞彿</view>
-				<input placeholder="璇锋壂鎻廇SN鍗曞彿" v-model="asncode" focus></input>
-				<text class='cuIcon-close text-gray margin-right-xs' v-show="asncode!==''" @click="clearCode"></text>
-				<!-- <text class='cuIcon-search text-blue' @click="search"></text> -->
-			</view>
-			<view class="cu-form-group" v-show="!isconfirm">
-				<view class="title">鐗╂枡缂栫爜</view>
-				<input placeholder="璇锋壂鎻忕墿鏂欑紪鐮�" v-model="barcode"></input>
-				<text class='cuIcon-close text-gray margin-right-xs' v-show="barcode!==''" @click="clearBarcode"></text>
-				<text class='cuIcon-search text-blue' @click="search"></text>
-			</view>
-		</form>
-		<view class="padding-lr margin-top-sm">
-			<block v-for="(item, index) in list" :key="index">
-				<view class="cu-list det menu sm-border margin-bottom-sm " :class="[item.barcode===barcode&&'act']"
-					:ref="item.barcode+'ref'">
-					<view class="cu-bar bg-white solid-bottom ">
-						<view class="action">
-							<view class="index">
-								{{index+1}}
-							</view>
-							<view class="text-blue">
-								缂栫爜:
-								{{`${item.matnr}`}}
-							</view>
-						</view>
-						<view class="action" v-if="!isconfirm">
-							<text @click="remove(index)" class="cuIcon-close text-red" style="font-size: 24px;"></text>
-						</view>
-					</view>
-
-					<view class="cu-item">
-						<view class="content">
-							<text class="text-black">ASN:</text>
-							<text class="text-grey ">{{item.asnCode}}</text>
-						</view>
-						<view class="action">
-
-						</view>
-					</view>
-					<view class="cu-item">
-						<view class="content">
-							<text class="text-black">鐗╂枡鍚嶇О:</text>
-							<text class="text-grey ">{{item.maktx}}</text>
-						</view>
-					</view>
-
-					<!-- 	<view class="cu-item">
-						<view class="content">
-							<text class="text-black">渚涘簲鍟嗘壒娆�:</text>
-						</view>
-						<view class="action">
-							<text class="text-grey ">{{item.splrBatch}}</text>
-						</view>
-					</view> -->
-
-					<!-- <view class="cu-item">
-						<view class="content">
-							<text class="text-black">鏈�澶у簱瀛�: <text class="text-grey ">{{item.maxQty}}</text></text>
-						</view>
-						<view class="content">
-							<text class="text-black">瀹炴椂搴撳瓨: <text class="text-grey ">{{item.stockQty}}</text></text>
-						</view>
-					</view> -->
-					<view class="cu-item">
-						<view class="content">
-							<text class="text-black">琛屽彿: <text class="text-grey ">{{item.platItemId}}</text></text>
-						</view>
-						<view class="content">
-							<text class="text-black">璐ㄦ缁撴灉: <text class="text-grey ">{{item.inspect}}</text></text>
-						</view>
-					</view>
-					<view class="cu-item">
-						<view class="content">
-							<text class="text-black">閲囪喘鍗曚綅:<text class="text-grey ">{{item.purUnit}}</text></text>
-						</view>
-			<!-- 			<view class="content">
-							<text class="text-black">搴撳瓨鍗曚綅: <text class="text-grey ">{{item.stockUnit}}</text></text>
-						</view> -->
-					</view>
-					<view class="cu-item">
-						<view class="content">
-							<text class="black">璁″垝鏀惰揣鏁伴噺:<text class="text-grey ">{{item.anfme}}</text></text>
-						</view>
-
-						<view class="content">
-							<text class="black">宸叉敹璐ф暟閲�:<text class="text-grey ">{{item.qty}}</text></text>
-						</view>
-					</view>
-					<view class="cu-item">
-						<view class="content" v-if="!isconfirm">
-							<view class="cu-form-group padding-lr-0">
-								<view class="title text-blue"><text
-										class="text-red text-xl vertical-middle">*</text>鏀惰揣鏁伴噺:</view>
-								<uni-number-box style="width: 70%;" :max="max" v-model="item.receiptQty"
-									:step='1'></uni-number-box>
-							</view>
-						</view>
-						<view class="content" v-else>
-							<text class="text-black">鏀惰揣鏁伴噺:<text class="text-grey ">{{item.receiptQty}}</text></text>
-						</view>
-					</view>
-					<view class="cu-item">
-
-						<view class="content">
-							<text class="text-black">鎵规:<text class="text-grey ">{{item.splrBatch}}</text></text>
-						</view>
-					</view>
-
-					<view class="cu-item">
-						<view class="content" v-if="!isconfirm">
-							<view class="cu-form-group padding-lr-0">
-								<view class="title text-blue">鐢熶骇鏃ユ湡:</view>
-								<picker mode="date" v-model="item.prodTime" @change="DateChange($event,item)"
-									placeholder="璇疯緭鍏ョ敓浜ф棩鏈�">
-									<view class="picker text-left">
-										{{item.prodTime|| '璇烽�夋嫨鏃ユ湡'}}
-									</view>
-								</picker>
-							</view>
-						</view>
-						<view class="content" v-else>
-							<text class="text-black">鐢熶骇鏃ユ湡:<text class="text-grey ">{{item.prodTime}}</text></text>
-						</view>
-					</view>
-					<!-- <view class="cu-item grid  col-1" v-if="!isconfirm">
-						<view v-for="el in dynamicFields" :key="el.id">
-							<view class="cu-form-group padding-lr-0">
-								<view class="title text-blue">{{el.fieldsAlise}}:</view>
-								<input :placeholder='`璇疯緭鍏�${el.fieldsAlise}`' v-model="item[el.fields]"></input>
-							</view>
-						</view>
-					</view> -->
-					<view class="cu-item grid  col-2" v-if="item.extendFields">
-						<view class="item" v-for="el in dynamicFields" :key="el.id">
-							<text class="text-black">{{el.fieldsAlise}}:
-								<text class="text-grey ">{{item.extendFields[el.fields]}}</text></text>
-						</view>
-					</view>
-				</view>
-			</block>
-		</view>
-
-		<view class="text-blue text-right padding-lr " v-show="isconfirm">
-			鏈鏀惰揣鎬绘暟閲�:{{allCount}}
-		</view>
-
-		<view class="cu-form-group margin-bottom">
-			<view class="title">鏀惰揣鍖�</view>
-			<view style="width: 80%;">
-				<uni-data-select style="min-width: 90%; max-width: 90%;" v-model="whAreaId" :localdata="range"
-					placement="top" @change="selChange"></uni-data-select>
-			</view>
-		</view>
-
-		<view class="cu-bar btn-group foot" v-show="!isconfirm">
-			<button class="cu-btn text-blue line-blue shadow" @click="clear">娓呯┖</button>
-			<button class="cu-btn bg-blue shadow-blur" @click="next">涓嬩竴姝�</button>
-		</view>
-
-		<view class="cu-bar btn-group foot" v-show="isconfirm">
-			<button class="cu-btn text-blue line-blue shadow" @click="prev">涓婁竴姝�</button>
-			<button class="cu-btn bg-blue shadow-blur" :disabled="repeatClick" @click="confirm(false)">鏀惰揣</button>
-		</view>
-
-	</view>
-</template>
-
-<script>
-	import {
-		request
-	} from '../../common/request.js'
-	import {
-		mapState,
-		mapMutations,
-		mapActions,
-		mapGetters
-	} from 'vuex';
-	export default {
-		data() {
-			return {
-				asncode: '',
-				barcode: '',
-				whAreaId: '',
-				list: [],
-				range: [],
-				repeatClick: false,
-				isconfirm: false,
-				max: 99999999,
-			}
-		},
-		computed: {
-			...mapState('user', ['dynamicFields']),
-			...mapState('user', {
-				dynFields: state => state.dynamicFields
-			}),
-			allCount() {
-				return this.list.reduce((acc, row) => +row.receiptQty + acc, 0)
-			}
-
-		},
-		mounted() {
-			this.getRece()
-			this.whAreaId = uni.getStorageSync('whAreaId')
-		},
-		methods: {
-			async search() {
-				const {
-					code,
-					data,
-					msg
-				} = await request('/orders/other', {
-					asnCode: this.asncode,
-					matnrCode: this.barcode
-				})
-				if (code === 200) {
-					this.list = data
-				} else {
-					uni.showToast({
-						title: msg,
-						icon: "none",
-						position: 'top'
-					})
-				}
-			},
-
-			clearCode() {
-				this.asncode = ''
-			},
-			clearBarcode() {
-				this.barcode = ''
-			},
-			scrollTo() {
-
-				// const ref = this.$refs[`${this.barcode}ref`][0];
-				// uni.pageScrollTo({
-				// 	scrollTop: ref.$el.offsetTop,
-				// 	duration: 300
-				// })
-			},
-			remove(index) {
-				this.list.splice(index, 1);
-			},
-			clear() {
-				this.list = []
-				this.barcode = ''
-				this.asncode = ''
-				this.whAreaId = ''
-				this.range = []
-			},
-			next() {
-				if (this.list.length) {
-					this.isconfirm = true
-				} else {
-					uni.showToast({
-						icon: "none",
-						title: '鏈�夌墿鏂欐爣绛�'
-					})
-				}
-			},
-			prev() {
-				this.isconfirm = false
-			},
-			selChange(val) {
-				uni.setStorageSync('whAreaId', val)
-			},
-			async complete(id) {
-				this.repeatClick = true
-				const {
-					code,
-					data,
-					msg
-				} = await request('/complete/' + id)
-				if (code === 200) {
-					uni.showToast({
-						title: msg,
-						icon: "none",
-					})
-				} else {
-					uni.showToast({
-						title: msg,
-						icon: "none",
-					})
-				}
-				this.repeatClick = false
-			},
-			async confirm(isCom) {
-				if (this.whAreaId === '') {
-					uni.showToast({
-						icon: "none",
-						title: '璇烽�夋嫨鏀惰揣鍖�'
-					})
-				} else {
-					console.log(this.dynFields)
-					const newArr = this.list.map(item => {
-						return {
-							...item,
-							receiptQty: item.receiptQty === null ? 0 : +item.receiptQty,
-							// extendFields: this.dynFields.filter(el => el.unique == 1).map(exf => {
-							// 	return {
-							// 		[`${exf.fields}`]: item[exf.fields]
-							// 	}
-							// }).filter(field => Object.values(field)[0] != undefined)
-						};
-					}).filter(el => el.receiptQty !== 0);
-
-					const {
-						code,
-						data,
-						msg
-					} = await request('/orders/confirm', {
-						receipts: newArr,
-						whAreaId: this.whAreaId
-					})
-					if (code === 200) {
-						uni.showToast({
-							title: msg,
-							icon: "none",
-						})
-						this.list = []
-						this.barcode = ''
-						this.isconfirm = false
-						isCom && this.complete(data.id)
-					} else {
-						uni.showToast({
-							title: msg,
-							icon: "none",
-						})
-					}
-				}
-			},
-			async getRece() {				
-				const {
-					code,
-					data,
-					msg
-				} = await request('/areas/receipt', {}, 'get')
-				if (code === 200) {
-					this.range = data.map(item => ({
-						value: item.id,
-						text: item.warehouseId$ + "-- " + item.name
-					}));
-				}
-			},
-			DateChange(e, item) {
-				item.prodTime = e.detail.value
-			}
-		}
-	}
-</script>
-
-<style>
-	.index {
-		border: 1px solid #e54d42;
-		color: #e54d42;
-		border-radius: 50%;
-		display: block;
-		width: 50rpx;
-		height: 50rpx;
-		line-height: 48rpx;
-		text-align: center;
-		margin-right: 20rpx;
-		font-size: 30rpx;
-	}
-
-	.act {
-		border: 1px solid #e54d42;
-	}
-
-	.text-blue {
-		color: #0081ff !important;
-
-	}
-
-	.item {
-		position: relative;
-		display: flex;
-		min-height: 80upx;
-		align-items: center;
-	}
+<template>
+	<view class="has-foot">
+		<form>
+			<view class="cu-form-group margin-top" v-show="!isconfirm">
+				<view class="title">WMS鍗曞彿</view>
+				<input placeholder="璇锋壂鎻廤MS鍗曞彿" v-model="asncode" focus></input>
+				<text class='cuIcon-close text-gray margin-right-xs' v-show="asncode!==''" @click="clearCode"></text>
+				<!-- <text class='cuIcon-search text-blue' @click="search"></text> -->
+			</view>
+			<view class="cu-form-group" v-show="!isconfirm">
+				<view class="title">鐗╂枡缂栫爜</view>
+				<input placeholder="璇锋壂鎻忕墿鏂欑紪鐮�" v-model="barcode"></input>
+				<text class='cuIcon-close text-gray margin-right-xs' v-show="barcode!==''" @click="clearBarcode"></text>
+				<text class='cuIcon-search text-blue' @click="search"></text>
+			</view>
+		</form>
+		<view class="padding-lr margin-top-sm">
+			<block v-for="(item, index) in list" :key="index">
+				<view class="cu-list det menu sm-border margin-bottom-sm " :class="[item.barcode===barcode&&'act']"
+					:ref="item.barcode+'ref'">
+					<view class="cu-bar bg-white solid-bottom ">
+						<view class="action">
+							<view class="index">
+								{{index+1}}
+							</view>
+							<view class="text-blue">
+								缂栫爜:
+								{{`${item.matnr}`}}
+							</view>
+						</view>
+						<view class="action" v-if="!isconfirm">
+							<text @click="remove(index)" class="cuIcon-close text-red" style="font-size: 24px;"></text>
+						</view>
+					</view>
+
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-black">ASN:</text>
+							<text class="text-grey ">{{item.asnCode}}</text>
+						</view>
+						<view class="action">
+
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-black">鐗╂枡鍚嶇О:</text>
+							<text class="text-grey ">{{item.maktx}}</text>
+						</view>
+					</view>
+
+					<!-- 	<view class="cu-item">
+						<view class="content">
+							<text class="text-black">渚涘簲鍟嗘壒娆�:</text>
+						</view>
+						<view class="action">
+							<text class="text-grey ">{{item.splrBatch}}</text>
+						</view>
+					</view> -->
+
+					<!-- <view class="cu-item">
+						<view class="content">
+							<text class="text-black">鏈�澶у簱瀛�: <text class="text-grey ">{{item.maxQty}}</text></text>
+						</view>
+						<view class="content">
+							<text class="text-black">瀹炴椂搴撳瓨: <text class="text-grey ">{{item.stockQty}}</text></text>
+						</view>
+					</view> -->
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-black">琛屽彿: <text class="text-grey ">{{item.platItemId}}</text></text>
+						</view>
+						<view class="content">
+							<text class="text-black">璐ㄦ缁撴灉: <text class="text-grey ">{{item.inspect}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-black">閲囪喘鍗曚綅:<text class="text-grey ">{{item.purUnit}}</text></text>
+						</view>
+			<!-- 			<view class="content">
+							<text class="text-black">搴撳瓨鍗曚綅: <text class="text-grey ">{{item.stockUnit}}</text></text>
+						</view> -->
+					</view>
+					<view class="cu-item">
+						<view class="content">
+							<text class="black">璁″垝鏀惰揣鏁伴噺:<text class="text-grey ">{{item.anfme}}</text></text>
+						</view>
+
+						<view class="content">
+							<text class="black">宸叉敹璐ф暟閲�:<text class="text-grey ">{{item.qty}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="content" v-if="!isconfirm">
+							<view class="cu-form-group padding-lr-0">
+								<view class="title text-blue"><text
+										class="text-red text-xl vertical-middle">*</text>鏀惰揣鏁伴噺:</view>
+								<uni-number-box style="width: 70%;" :max="max" v-model="item.receiptQty"
+									:step='1'></uni-number-box>
+							</view>
+						</view>
+						<view class="content" v-else>
+							<text class="text-black">鏀惰揣鏁伴噺:<text class="text-grey ">{{item.receiptQty}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+
+						<view class="content">
+							<text class="text-black">鎵规:<text class="text-grey ">{{item.splrBatch}}</text></text>
+						</view>
+					</view>
+
+					<view class="cu-item">
+						<view class="content" v-if="!isconfirm">
+							<view class="cu-form-group padding-lr-0">
+								<view class="title text-blue">鐢熶骇鏃ユ湡:</view>
+								<picker mode="date" v-model="item.prodTime" @change="DateChange($event,item)"
+									placeholder="璇疯緭鍏ョ敓浜ф棩鏈�">
+									<view class="picker text-left">
+										{{item.prodTime|| '璇烽�夋嫨鏃ユ湡'}}
+									</view>
+								</picker>
+							</view>
+						</view>
+						<view class="content" v-else>
+							<text class="text-black">鐢熶骇鏃ユ湡:<text class="text-grey ">{{item.prodTime}}</text></text>
+						</view>
+					</view>
+					<!-- <view class="cu-item grid  col-1" v-if="!isconfirm">
+						<view v-for="el in dynamicFields" :key="el.id">
+							<view class="cu-form-group padding-lr-0">
+								<view class="title text-blue">{{el.fieldsAlise}}:</view>
+								<input :placeholder='`璇疯緭鍏�${el.fieldsAlise}`' v-model="item[el.fields]"></input>
+							</view>
+						</view>
+					</view> -->
+					<view class="cu-item grid  col-2" v-if="item.extendFields">
+						<view class="item" v-for="el in dynamicFields" :key="el.id">
+							<text class="text-black">{{el.fieldsAlise}}:
+								<text class="text-grey ">{{item.extendFields[el.fields]}}</text></text>
+						</view>
+					</view>
+				</view>
+			</block>
+		</view>
+
+		<view class="text-blue text-right padding-lr " v-show="isconfirm">
+			鏈鏀惰揣鎬绘暟閲�:{{allCount}}
+		</view>
+
+		<view class="cu-form-group margin-bottom">
+			<view class="title">鏀惰揣鍖�</view>
+			<view style="width: 80%;">
+				<uni-data-select style="min-width: 90%; max-width: 90%;" v-model="whAreaId" :localdata="range"
+					placement="top" @change="selChange"></uni-data-select>
+			</view>
+		</view>
+
+		<view class="cu-bar btn-group foot" v-show="!isconfirm">
+			<button class="cu-btn text-blue line-blue shadow" @click="clear">娓呯┖</button>
+			<button class="cu-btn bg-blue shadow-blur" @click="next">涓嬩竴姝�</button>
+		</view>
+
+		<view class="cu-bar btn-group foot" v-show="isconfirm">
+			<button class="cu-btn text-blue line-blue shadow" @click="prev">涓婁竴姝�</button>
+			<button class="cu-btn bg-blue shadow-blur" :disabled="repeatClick" @click="confirm(false)">鏀惰揣</button>
+		</view>
+
+	</view>
+</template>
+
+<script>
+	import {
+		request
+	} from '../../common/request.js'
+	import {
+		mapState,
+		mapMutations,
+		mapActions,
+		mapGetters
+	} from 'vuex';
+	export default {
+		data() {
+			return {
+				asncode: '',
+				barcode: '',
+				whAreaId: '',
+				list: [],
+				range: [],
+				repeatClick: false,
+				isconfirm: false,
+				max: 99999999,
+			}
+		},
+		computed: {
+			...mapState('user', ['dynamicFields']),
+			...mapState('user', {
+				dynFields: state => state.dynamicFields
+			}),
+			allCount() {
+				return this.list.reduce((acc, row) => +row.receiptQty + acc, 0)
+			}
+
+		},
+		mounted() {
+			this.getRece()
+			this.whAreaId = uni.getStorageSync('whAreaId')
+		},
+		methods: {
+			async search() {
+				const {
+					code,
+					data,
+					msg
+				} = await request('/orders/other', {
+					asnCode: this.asncode,
+					matnrCode: this.barcode
+				})
+				if (code === 200) {
+					this.list = data
+				} else {
+					uni.showToast({
+						title: msg,
+						icon: "none",
+						position: 'top'
+					})
+				}
+			},
+
+			clearCode() {
+				this.asncode = ''
+			},
+			clearBarcode() {
+				this.barcode = ''
+			},
+			scrollTo() {
+
+				// const ref = this.$refs[`${this.barcode}ref`][0];
+				// uni.pageScrollTo({
+				// 	scrollTop: ref.$el.offsetTop,
+				// 	duration: 300
+				// })
+			},
+			remove(index) {
+				this.list.splice(index, 1);
+			},
+			clear() {
+				this.list = []
+				this.barcode = ''
+				this.asncode = ''
+				this.whAreaId = ''
+				this.range = []
+			},
+			next() {
+				if (this.list.length) {
+					this.isconfirm = true
+				} else {
+					uni.showToast({
+						icon: "none",
+						title: '鏈�夌墿鏂欐爣绛�'
+					})
+				}
+			},
+			prev() {
+				this.isconfirm = false
+			},
+			selChange(val) {
+				uni.setStorageSync('whAreaId', val)
+			},
+			async complete(id) {
+				this.repeatClick = true
+				const {
+					code,
+					data,
+					msg
+				} = await request('/complete/' + id)
+				if (code === 200) {
+					uni.showToast({
+						title: msg,
+						icon: "none",
+					})
+				} else {
+					uni.showToast({
+						title: msg,
+						icon: "none",
+					})
+				}
+				this.repeatClick = false
+			},
+			async confirm(isCom) {
+				if (this.whAreaId === '') {
+					uni.showToast({
+						icon: "none",
+						title: '璇烽�夋嫨鏀惰揣鍖�'
+					})
+				} else {
+					console.log(this.dynFields)
+					const newArr = this.list.map(item => {
+						return {
+							...item,
+							receiptQty: item.receiptQty === null ? 0 : +item.receiptQty,
+							// extendFields: this.dynFields.filter(el => el.unique == 1).map(exf => {
+							// 	return {
+							// 		[`${exf.fields}`]: item[exf.fields]
+							// 	}
+							// }).filter(field => Object.values(field)[0] != undefined)
+						};
+					}).filter(el => el.receiptQty !== 0);
+
+					const {
+						code,
+						data,
+						msg
+					} = await request('/orders/confirm', {
+						receipts: newArr,
+						whAreaId: this.whAreaId
+					})
+					if (code === 200) {
+						uni.showToast({
+							title: msg,
+							icon: "none",
+						})
+						this.list = []
+						this.barcode = ''
+						this.isconfirm = false
+						isCom && this.complete(data.id)
+					} else {
+						uni.showToast({
+							title: msg,
+							icon: "none",
+						})
+					}
+				}
+			},
+			async getRece() {				
+				const {
+					code,
+					data,
+					msg
+				} = await request('/areas/receipt', {}, 'get')
+				if (code === 200) {
+					this.range = data.map(item => ({
+						value: item.id,
+						text: item.warehouseId$ + "-- " + item.name
+					}));
+				}
+			},
+			DateChange(e, item) {
+				item.prodTime = e.detail.value
+			}
+		}
+	}
+</script>
+
+<style>
+	.index {
+		border: 1px solid #e54d42;
+		color: #e54d42;
+		border-radius: 50%;
+		display: block;
+		width: 50rpx;
+		height: 50rpx;
+		line-height: 48rpx;
+		text-align: center;
+		margin-right: 20rpx;
+		font-size: 30rpx;
+	}
+
+	.act {
+		border: 1px solid #e54d42;
+	}
+
+	.text-blue {
+		color: #0081ff !important;
+
+	}
+
+	.item {
+		position: relative;
+		display: flex;
+		min-height: 80upx;
+		align-items: center;
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1