From 71e05a80df83069c9611ba5ef0fdc2a37eb6a3ae Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期五, 09 十月 2026 11:49:21 +0800
Subject: [PATCH] fix: 客户往来金额调整为2位小数

---
 src/main/java/com/ruoyi/common/utils/AmountUtils.java |   28 +++++++++++++++++++++-------
 1 files changed, 21 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/ruoyi/common/utils/AmountUtils.java b/src/main/java/com/ruoyi/common/utils/AmountUtils.java
index 7155fc6..364c6b1 100644
--- a/src/main/java/com/ruoyi/common/utils/AmountUtils.java
+++ b/src/main/java/com/ruoyi/common/utils/AmountUtils.java
@@ -13,12 +13,15 @@
 import java.util.List;
 
 /**
- * 閲戦绮惧害宸ュ叿锛氱粺涓�淇濈暀 6 浣嶅皬鏁�
+ * 閲戦绮惧害宸ュ叿锛氶粯璁ょ粺涓�淇濈暀 6 浣嶅皬鏁帮紝閲戦锛堝厓锛変繚鐣� 2 浣嶅皬鏁�
  */
 public final class AmountUtils {
 
     public static final int AMOUNT_SCALE = 6;
     public static final RoundingMode AMOUNT_ROUNDING = RoundingMode.HALF_UP;
+
+    /** 閲戦锛堝厓锛変繚鐣欏皬鏁颁綅鏁帮紙鍒嗭級 */
+    public static final int MONEY_SCALE = 2;
 
     private AmountUtils() {
     }
@@ -28,6 +31,17 @@
             return BigDecimal.ZERO.setScale(AMOUNT_SCALE, AMOUNT_ROUNDING);
         }
         return value.setScale(AMOUNT_SCALE, AMOUNT_ROUNDING);
+    }
+
+    /**
+     * 閲戦锛堝厓锛夌簿搴﹀鐞嗭細鍥涜垗浜斿叆淇濈暀 2 浣嶅皬鏁帮紝
+     * 閬垮厤鎸夊惈绋庡崟浠风疮璁″嚭搴撻噾棰濇椂浜х敓璇樊锛屽叏閮ㄥ彂璐у悗浠嶆樉绀烘湭鍑哄簱闆跺ご
+     */
+    public static BigDecimal scaleMoney(BigDecimal value) {
+        if (value == null) {
+            return BigDecimal.ZERO.setScale(MONEY_SCALE, AMOUNT_ROUNDING);
+        }
+        return value.setScale(MONEY_SCALE, AMOUNT_ROUNDING);
     }
 
     public static BigDecimal calcTaxExclusiveTotalPrice(BigDecimal taxInclusiveTotalPrice, BigDecimal taxRate) {
@@ -92,18 +106,18 @@
         if (vo == null) {
             return;
         }
-        vo.setContractAmounts(scaleAmount(vo.getContractAmounts()));
-        vo.setShippedAmount(scaleAmount(vo.getShippedAmount()));
-        vo.setUnshippedAmount(scaleAmount(vo.getUnshippedAmount()));
+        vo.setContractAmounts(scaleMoney(vo.getContractAmounts()));
+        vo.setShippedAmount(scaleMoney(vo.getShippedAmount()));
+        vo.setUnshippedAmount(scaleMoney(vo.getUnshippedAmount()));
     }
 
     public static void normalizeCustomerTransactionDetail(CustomerTransactionsDetailsVo vo) {
         if (vo == null) {
             return;
         }
-        vo.setContractAmount(scaleAmount(vo.getContractAmount()));
-        vo.setShippedAmount(scaleAmount(vo.getShippedAmount()));
-        vo.setUnshippedAmount(scaleAmount(vo.getUnshippedAmount()));
+        vo.setContractAmount(scaleMoney(vo.getContractAmount()));
+        vo.setShippedAmount(scaleMoney(vo.getShippedAmount()));
+        vo.setUnshippedAmount(scaleMoney(vo.getUnshippedAmount()));
     }
 
     public static void normalizeProcurementBusinessSummary(ProcurementBusinessSummaryDto dto) {

--
Gitblit v1.9.3