ソースを参照

fix(wms): 修复不良品入库仓库选择问题并优化key值

修复仓库选择后不自动清空的问题,保留用户最近选择的仓库
将列表渲染的key从index改为orderId避免潜在问题
ylong 3 週間 前
コミット
270bacad52
2 ファイル変更15 行追加4 行削除
  1. 14 3
      pages/index/wms/bad-in.vue
  2. 1 1
      pages/index/wms/location-select.vue

+ 14 - 3
pages/index/wms/bad-in.vue

@@ -37,7 +37,7 @@
 
             <!-- 订单列表 -->
             <view class="order-list">
-                <bad-item v-for="(order, index) in ordersMap" :key="index" :data="order" @delete="deleteOrder(index)"
+                <bad-item v-for="(order, index) in ordersMap" :key="order.orderId" :data="order" @delete="deleteOrder(index)"
                     @edit="editOrder(index)"></bad-item>
             </view>
 
@@ -192,9 +192,8 @@ const handleSubmitConfirm = async () => {
 const clearData = () => {
     ordersMap.value.length = 0
     waybillCode.value = ''
-    formData.godownName = ''
     formData.positionCode = ''
-    formData.godownId = ''
+    // 不清空仓库选择,保留用户最近选择的仓库
 }
 
 const editOrder = (index) => {
@@ -246,6 +245,13 @@ const { unregister } = uni.$u.useEventListener((e) => {
 // #endif
 
 onMounted(() => {
+    // 从本地存储读取最近选择的仓库
+    const lastWarehouse = uni.getStorageSync('badInLastWarehouse')
+    if (lastWarehouse) {
+        formData.godownName = lastWarehouse.godownName
+        formData.godownId = lastWarehouse.godownId
+    }
+
     // 监听库位选择
     uni.$on('updateLocation', (locationCode) => {
         formData.positionCode = locationCode
@@ -255,6 +261,11 @@ onMounted(() => {
     uni.$on('updateWarehouse', (data) => {
         formData.godownName = data.godownName
         formData.godownId = data.id
+        // 保存到本地存储
+        uni.setStorageSync('badInLastWarehouse', {
+            godownName: data.godownName,
+            godownId: data.id
+        })
     })
 })
 onUnmounted(() => {

+ 1 - 1
pages/index/wms/location-select.vue

@@ -110,7 +110,7 @@
 		if (opts.positionCode) {
 			positionCode.value = opts.positionCode
 		}
-		getLocationListByGodownId(godownId.value)
+		// getLocationListByGodownId(godownId.value)
 
 		scrollHeight.value = uni.getSystemInfoSync().windowHeight - 44 - 60
 	})