From 1c6231e2ec50afbc1079cede9356315d1862de67 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 20 十一月 2025 08:26:36 +0800
Subject: [PATCH] no message

---
 locale/zh-Hans.json               |    5 
 pages/home/index.vue              |    7 +
 pages.json                        |    6 +
 pages/outbound/ModifyTaskBind.vue |  235 +++++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 250 insertions(+), 3 deletions(-)

diff --git a/locale/zh-Hans.json b/locale/zh-Hans.json
index 76ac425..5907f10 100644
--- a/locale/zh-Hans.json
+++ b/locale/zh-Hans.json
@@ -37,9 +37,8 @@
 		"hello":"鎮ㄥソ锛屾杩庣櫥褰昗MS绯荤粺锛�",
 		"intro":"璁╁埗閫犱笌鐗╂祦鏇撮珮鏁�",
 		"checkOrder":"鍗曟嵁鐩樼偣",
-		"tempCheck": "涓存椂鐩樼偣"
-		
-		
+		"tempCheck": "涓存椂鐩樼偣",
+		"modifyBind": "浠诲姟鏄庣粏鎹㈢粦"
 	},
 	"other":{
 		"asnNo":"ASN鍗曞彿"
diff --git a/pages.json b/pages.json
index fb3ff8d..3eb1230 100644
--- a/pages.json
+++ b/pages.json
@@ -11,6 +11,12 @@
 			"style": {
 				"navigationBarTitleText": "%page.index%"
 			}
+		},
+		{
+			"path": "pages/outbound/ModifyTaskBind",
+			"style": {
+				"navigationBarTitleText": "%page.modifyBind%"
+			}
 		},
 		{
 			"path": "pages/outbound/wavePick",
diff --git a/pages/home/index.vue b/pages/home/index.vue
index 519db7f..b633498 100644
--- a/pages/home/index.vue
+++ b/pages/home/index.vue
@@ -151,6 +151,13 @@
 					</view>
 					<text>{{$t('index.wavePick')}}</text>
 				</navigator>
+			</view>
+			<view class="cu-item">
+				<navigator hover-class='none' url="/pages/outbound/ModifyTaskBind" navigateTo>
+					<view class="cuIcon-apps text-blue">
+					</view>
+					<text>{{$t('index.modifyBind')}}</text>
+				</navigator>
 			</view>
 			<view class="cu-item">
 				<navigator hover-class='none' url="/pages/check/checkOrder" navigateTo>
diff --git a/pages/outbound/ModifyTaskBind.vue b/pages/outbound/ModifyTaskBind.vue
new file mode 100644
index 0000000..ded9e34
--- /dev/null
+++ b/pages/outbound/ModifyTaskBind.vue
@@ -0,0 +1,235 @@
+<template>
+	<view class="has-foot">
+		<form>
+			<view class="cu-form-group" v-show="!isconfirm">
+				<view class="title">鎵樼洏鐮�</view>
+				<input placeholder="璇锋壂鎻忔墭鐩樼爜" v-model="barcode" @input="search()" focus></input>
+				<text class='cuIcon-close text-gray margin-right-xs' v-show="barcode!==''" @click="clearCode"></text>
+			</view>
+		</form>
+		<view class="cu-list det menu sm-border  padding">
+			<block v-for="(item, index) in list" :key="index">
+				<view class="cu-list det menu">
+					<view class="cu-bar bg-white solid-bottom margin-top-sm">
+						<view class="action">
+							<view class="index">
+								{{index+1}}
+							</view>
+						</view>
+						<view class="content2">
+							<text class="text-gray"><text class="text-black ">{{item.exceStatus$}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-gray">鍝佺鐮侊細<text>{{item.matnrCode}}</text></text>
+						</view>
+						<view class="content">
+							<text class="text-gray">鍝佺被鏁伴噺锛�<text>{{item.anfme}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-gray">鍝佺鍚嶇О锛�<text>{{item.maktx}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="content">
+							<text class="text-gray">鍘熺エ鍙凤細<text>{{item.extendFields.crushNo}}</text></text>
+						</view>
+					</view>
+					<view class="cu-item">
+						<view class="cu-form-group content">
+							<view class="text-blue"><text class="text-red">*</text>绁ㄥ彿锛�</view>
+							<input v-model="item.crushNo" class="text-black" focus>
+						</view>
+					</view>
+				</view>
+			</block>
+		</view>
+
+		<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 {
+				isClickItem: false,
+				clickItem: '',
+				QRbarcode: null,
+				barcode: '',
+				whAreaId: '',
+				list: [],
+				range: [],
+				isconfirm: false,
+				itemStyle: {
+					backgroundColor: '#42b983',
+					borderColor: '#42b983'
+				},
+			}
+		},
+		computed: {
+			...mapState('user', ['dynamicFields']),
+			allCount() {
+				return this.list.reduce((acc, row) => +row.receiptQty + acc, 0)
+			}
+		},
+		mounted() {
+			this.search()
+		},
+		methods: {
+			clickTaskItem(index) {
+				let that = this
+				uni.navigateTo({
+					url: "./wavePickItem",
+					// 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�
+					success: function(res) {
+						res.eventChannel.emit('waveItem', {
+							data: that.list[index]
+						})
+					}
+
+				});
+			},
+			typeChange(e) {
+				this.typeSelect = e.value
+				this.search()
+			},
+			async search() {
+				this.list = []
+				if (this.barcode === '' || this.barcode === null) {
+					return;
+				}
+				const {
+					code,
+					data,
+					msg
+				} = await request('/task/items', {
+					barcode: this.barcode
+				})
+				if (code === 200) {
+					if (Object.keys(data).length === 0) {
+						uni.showToast({
+							title: "鏈煡璇㈠埌娉㈡鏁版嵁",
+							icon: "none",
+							position: 'top'
+						})
+					}
+					this.list.push(...data)
+				} else if (code == 401) {
+					setTimeout(() => {
+						uni.removeStorageSync('token');
+						uni.reLaunch({
+							url: "/pages/login/login"
+						});
+					}, 1000);
+				} else {
+					uni.showToast({
+						title: msg,
+						icon: "none",
+						position: 'top'
+					})
+				}
+			},
+			clearCode() {
+				this.barcode = ''
+			},
+			remove(index) {
+				this.list.splice(index, 1);
+			},
+			clear() {
+				this.list = []
+				this.barcode = ''
+			},
+			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 confirm() {
+					const {	code, data,	msg } = await request('/task/item/update', this.list)
+					if (code === 200) {
+						uni.showToast({
+							title: '鎹㈢粦鎴愬姛锛侊紒'
+						})
+						this.list = []
+						this.barcode = ''
+						this.isconfirm = false
+					} else {
+						uni.showToast({
+							title: msg,
+							icon: "none",
+							position: 'top'
+						})
+					}
+			},
+
+			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;
+	}
+
+	.text-blue {
+		color: #0081ff !important;
+
+	}
+
+	.item {
+		position: relative;
+		display: flex;
+		min-height: 80upx;
+		align-items: center;
+	}
+
+	.content2 {
+		/* background-color: coral; */
+		width: 100%;
+		display: flex;
+		flex-direction: row;
+		align-items: center;
+		justify-content: flex-end;
+		margin-right: 10px;
+		color: #0081ff;
+	}
+</style>
\ No newline at end of file

--
Gitblit v1.9.1