From d632076bd5ec1ce60025d56248ad1713604ef467 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 03 九月 2026 10:05:02 +0800
Subject: [PATCH] fix: 发货金额精度修改

---
 src/views/salesManagement/salesLedger/index.vue |   57 ++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 32 insertions(+), 25 deletions(-)

diff --git a/src/views/salesManagement/salesLedger/index.vue b/src/views/salesManagement/salesLedger/index.vue
index d6c4207..8dab3ca 100644
--- a/src/views/salesManagement/salesLedger/index.vue
+++ b/src/views/salesManagement/salesLedger/index.vue
@@ -1094,6 +1094,7 @@
     tableAmountFormatter,
     formatDecimal,
     buildAmountSummaryFormat,
+    roundAmount,
   } from "@/utils/numberFormat";
   import ImageUpload from "@/components/AttachmentUpload/image/index.vue";
   import ProductSelectDialog from "@/views/basicData/product/ProductSelectDialog.vue";
@@ -1256,7 +1257,7 @@
       rawList.forEach(item => {
         total += Number(getDeliveryBatchQuantity(item) || 0);
       });
-      currentStock.value = total;
+      currentStock.value = roundAmount(total);
     } catch (e) {
       console.error(e);
       currentStock.value = 0;
@@ -1266,40 +1267,44 @@
     return Number(currentDeliveryRow.value?.noQuantity || 0);
   };
   const selectedDeliveryQuantity = computed(() => {
-    return (deliveryForm.value.batchNoList || []).reduce(
-      (sum, item) => sum + Number(item?.deliveryQuantity || 0),
-      0
+    return roundAmount(
+      (deliveryForm.value.batchNoList || []).reduce(
+        (sum, item) => sum + Number(item?.deliveryQuantity || 0),
+        0
+      )
     );
   });
   const getDeliveryBatchDeliveryMax = row => {
     const productQuantity = getCurrentDeliveryRowQuantity();
     const batchQuantity = Number(getDeliveryBatchQuantity(row) || 0);
-    const otherBatchTotal = (deliveryForm.value.batchNoList || []).reduce(
-      (sum, item) => {
-        if (item?.id === row?.id) return sum;
-        return sum + Number(item?.deliveryQuantity || 0);
-      },
-      0
+    const otherBatchTotal = roundAmount(
+      (deliveryForm.value.batchNoList || []).reduce(
+        (sum, item) => {
+          if (item?.id === row?.id) return sum;
+          return sum + Number(item?.deliveryQuantity || 0);
+        },
+        0
+      )
     );
-    const remainingProductQuantity = Math.max(
-      0,
-      productQuantity - otherBatchTotal
+    const remainingProductQuantity = roundAmount(
+      Math.max(0, productQuantity - otherBatchTotal)
     );
     return Math.max(0, Math.min(batchQuantity, remainingProductQuantity));
   };
   const handleDeliveryBatchQuantityChange = row => {
     const productQuantity = getCurrentDeliveryRowQuantity();
     const batchQuantity = Number(getDeliveryBatchQuantity(row) || 0);
-    const otherBatchTotal = (deliveryForm.value.batchNoList || []).reduce(
-      (sum, item) => {
-        if (item?.id === row?.id) return sum;
-        return sum + Number(item?.deliveryQuantity || 0);
-      },
-      0
+    const otherBatchTotal = roundAmount(
+      (deliveryForm.value.batchNoList || []).reduce(
+        (sum, item) => {
+          if (item?.id === row?.id) return sum;
+          return sum + Number(item?.deliveryQuantity || 0);
+        },
+        0
+      )
     );
-    const remainingProductQuantity = Math.max(
-      0,
-      productQuantity - otherBatchTotal
+    const remainingProductQuantity = roundAmount(
+      Math.max(0, productQuantity - otherBatchTotal)
     );
     const currentValue = Number(row?.deliveryQuantity || 0);
 
@@ -2533,9 +2538,11 @@
           proxy.$modal.msgWarning("璇疯嚦灏戝~鍐欎竴涓壒鍙风殑鍙戣揣鏁伴噺");
           return;
         }
-        const totalDeliveryQuantity = selectedBatchRows.reduce(
-          (sum, item) => sum + Number(item.deliveryQuantity || 0),
-          0
+        const totalDeliveryQuantity = roundAmount(
+          selectedBatchRows.reduce(
+            (sum, item) => sum + Number(item.deliveryQuantity || 0),
+            0
+          )
         );
         const currentRowNoQuantity = Number(
           currentDeliveryRow.value?.noQuantity || 0

--
Gitblit v1.9.3