Răsfoiți Sursa

fix:5341【盘点计划】新增操作,选择产品后,点击确定,列表显示的数量不一致;好些产品都存在此问题

mlchen 2 zile în urmă
părinte
comite
c290251a81

+ 13 - 1
src/views/warehouseManagement/stocktaking/plan/components/addInventoryDialog.vue

@@ -254,6 +254,7 @@
         <el-table-column
           label="计量数量"
           prop="measureQuantity"
+          :formatter="formatAvailableQuantity"
           :show-overflow-tooltip="true"
         ></el-table-column>
         <el-table-column
@@ -500,6 +501,12 @@
       }
     },
     methods: {
+      formatAvailableQuantity(row) {
+        // 盘点计划表格展示当前可用数量,而不是库存累计计量数量
+        const availableCountBase = Number(row.availableCountBase) || 0;
+        const lockQuantity = Number(row.lockQuantity) || 0;
+        return Math.round((availableCountBase - lockQuantity) * 100) / 100;
+      },
       // 添加物品明细
       async addGoods(data) {
         console.log(data);
@@ -647,11 +654,16 @@
             let params = {
               ...this.addForm,
               planDetailAddPOList: this.productList.map((item) => {
+                // 盘点计划保存当前可用数量,需扣除已锁库数量,避免与选择弹窗显示不一致
+                const availableCountBase = Number(item.availableCountBase) || 0;
+                const lockQuantity = Number(item.lockQuantity) || 0;
+                const measureQuantity = Math.round((availableCountBase - lockQuantity) * 100) / 100;
                 return {
                   batchNo: item.batchNo,
+                  systemBatchNo: item.systemBatchNo,
                   categoryId: item.categoryId,
                   categoryName: item.categoryName,
-                  info: item
+                  info: { ...item, measureQuantity }
                 };
               })
             };