From 01bd8d7b18b84843e53432d8405ff325def10b94 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期四, 15 十月 2026 09:08:51 +0800
Subject: [PATCH] feat: 更新金额格式化功能,统一使用四舍五入到两位小数并去掉多余的零

---
 src/views/procurementManagement/procurementLedger/index.vue |   39 +++++++++++++++++++++++++--------------
 1 files changed, 25 insertions(+), 14 deletions(-)

diff --git a/src/views/procurementManagement/procurementLedger/index.vue b/src/views/procurementManagement/procurementLedger/index.vue
index 61852f4..b28df5d 100644
--- a/src/views/procurementManagement/procurementLedger/index.vue
+++ b/src/views/procurementManagement/procurementLedger/index.vue
@@ -133,10 +133,10 @@
                                :formatter="formattedNumber" />
               <el-table-column label="鍚◣鎬讳环(鍏�)"
                                prop="taxInclusiveTotalPrice"
-                               :formatter="formattedNumber" />
+                               :formatter="formattedAmount" />
               <el-table-column label="涓嶅惈绋庢�讳环(鍏�)"
                                prop="taxExclusiveTotalPrice"
-                               :formatter="formattedNumber" />
+                               :formatter="formattedAmount" />
             </el-table>
           </template>
         </el-table-column>
@@ -194,7 +194,7 @@
                          prop="contractAmount"
                          width="200"
                          show-overflow-tooltip
-                         :formatter="formattedNumber" />
+                         :formatter="formattedAmount" />
 <!--        <el-table-column label="瀹為檯鍚堝悓閲戦(鍏�)"-->
 <!--                         prop="netContractAmount"-->
 <!--                         width="200"-->
@@ -432,11 +432,11 @@
                            width="150" />
           <el-table-column label="鍚◣鎬讳环(鍏�)"
                            prop="taxInclusiveTotalPrice"
-                           :formatter="formattedNumber"
+                           :formatter="formattedAmount"
                            width="150" />
           <el-table-column label="涓嶅惈绋庢�讳环(鍏�)"
                            prop="taxExclusiveTotalPrice"
-                           :formatter="formattedNumber"
+                           :formatter="formattedAmount"
                            width="150" />
           <el-table-column label="鏄惁璐ㄦ"
                            prop="isChecked"
@@ -761,7 +761,7 @@
   import { modelList, productTreeList } from "@/api/basicData/product.js";
   import dayjs from "dayjs";
   import FileUpload from "@/components/AttachmentUpload/file/index.vue";
-  import { trimZeros } from "@/utils/formatNumber.js";
+  import { roundHalfUp, trimZeros } from "@/utils/formatNumber.js";
 
   const userStore = useUserStore();
 
@@ -1088,6 +1088,14 @@
   const formattedNumber = (row, column, cellValue) => {
     return trimZeros(cellValue, 6);
   };
+  // 閲戦鏄剧ず鏍煎紡鍖栵細鎸夊崄杩涘埗鍥涜垗浜斿叆鍒� 2 浣嶅皬鏁帮紙涓庢暟鎹簱 ROUND 涓�鑷达級锛屽啀鍘绘帀鏈熬澶氫綑鐨� 0
+  const formatAmount = value => {
+    return trimZeros(roundHalfUp(value, 2), 2);
+  };
+  // 閲戦鍒楃殑琛ㄦ牸鏍煎紡鍖栧嚱鏁帮紙鍗曚环鍒椾粛鐢� formattedNumber 淇濈暀 6 浣嶅皬鏁帮級
+  const formattedAmount = (row, column, cellValue) => {
+    return formatAmount(cellValue);
+  };
   // 鏌ヨ鍒楄〃
   /** 鎼滅储鎸夐挳鎿嶄綔 */
   const handleQuery = () => {
@@ -1207,10 +1215,11 @@
       ],
       {
         taxInclusiveUnitPrice: { decimalPlaces: 6, trimZeros: true },
-        taxInclusiveTotalPrice: { decimalPlaces: 6, trimZeros: true },
-        taxExclusiveTotalPrice: { decimalPlaces: 6, trimZeros: true },
-        ticketsAmount: { decimalPlaces: 6, trimZeros: true },
-        futureTicketsAmount: { decimalPlaces: 6, trimZeros: true },
+        // 閲戦鍒楋細姣忚鍏堟寜 2 浣嶅皬鏁板洓鑸嶄簲鍏ュ啀姹傚拰锛屼繚璇佸悎璁′笌鍒楀唴灞曠ず鍊间竴鑷�
+        taxInclusiveTotalPrice: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
+        taxExclusiveTotalPrice: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
+        ticketsAmount: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
+        futureTicketsAmount: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
         ticketsNum: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
         futureTickets: { noDecimal: true }, // 涓嶄繚鐣欏皬鏁�
       }
@@ -1280,8 +1289,9 @@
       param,
       ["contractAmount", "netContractAmount"],
       {
-        contractAmount: { decimalPlaces: 6, trimZeros: true },
-        netContractAmount: { decimalPlaces: 6, trimZeros: true },
+        // 閲戦鍒楋細姣忚鍏堟寜 2 浣嶅皬鏁板洓鑸嶄簲鍏ュ啀姹傚拰锛屼繚璇佸悎璁′笌鍒楀唴灞曠ず鍊间竴鑷�
+        contractAmount: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
+        netContractAmount: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
       }
     );
   };
@@ -1296,8 +1306,9 @@
       ],
       {
         taxInclusiveUnitPrice: { decimalPlaces: 6, trimZeros: true },
-        taxInclusiveTotalPrice: { decimalPlaces: 6, trimZeros: true },
-        taxExclusiveTotalPrice: { decimalPlaces: 6, trimZeros: true },
+        // 閲戦鍒楋細姣忚鍏堟寜 2 浣嶅皬鏁板洓鑸嶄簲鍏ュ啀姹傚拰锛屼繚璇佸悎璁′笌鍒楀唴灞曠ず鍊间竴鑷�
+        taxInclusiveTotalPrice: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
+        taxExclusiveTotalPrice: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
       }
     );
   };

--
Gitblit v1.9.3