src/views/salesManagement/salesLedger/index.vue
@@ -161,12 +161,12 @@
              <el-table-column
                label="含税总价(元)"
                prop="taxInclusiveTotalPrice"
                :formatter="formattedNumber"
                :formatter="formattedAmount"
              />
              <el-table-column
                label="不含税总价(元)"
                prop="taxExclusiveTotalPrice"
                :formatter="formattedNumber"
                :formatter="formattedAmount"
              />
              <!--操作-->
              <el-table-column Width="60px" label="操作" align="center">
@@ -219,7 +219,7 @@
          prop="contractAmount"
          width="220"
          show-overflow-tooltip
          :formatter="formattedNumber"
          :formatter="formattedAmount"
        />
        <el-table-column
          label="录入人"
@@ -523,12 +523,12 @@
          <el-table-column
            label="含税总价(元)"
            prop="taxInclusiveTotalPrice"
            :formatter="formattedNumber"
            :formatter="formattedAmount"
          />
          <el-table-column
            label="不含税总价(元)"
            prop="taxExclusiveTotalPrice"
            :formatter="formattedNumber"
            :formatter="formattedAmount"
          />
          <el-table-column label="是否生产" prop="isProduction" width="150">
            <template #default="scope">
@@ -654,7 +654,7 @@
          align="right"
        >
          <template #default="scope">
            {{ trimZeros(scope.row.totalAmount, 6) }}
            {{ formatAmount(scope.row.totalAmount) }}
          </template>
        </el-table-column>
        <el-table-column fixed="right" label="操作" width="120" align="center">
@@ -962,7 +962,7 @@
                      <td>{{ trimZeros(product.taxInclusiveUnitPrice, 6) }}</td>
                      <td>{{ trimZeros(product.quantity, 6) }}</td>
                      <td>
                        {{ trimZeros(product.taxInclusiveTotalPrice, 6) }}
                        {{ formatAmount(product.taxInclusiveTotalPrice) }}
                      </td>
                    </tr>
                    <tr v-if="!item.products || item.products.length === 0">
@@ -1190,7 +1190,7 @@
import FileUpload from "@/components/AttachmentUpload/file/index.vue";
import ImageUpload from "@/components/AttachmentUpload/image/index.vue";
import { getCurrentDate } from "@/utils/index.js";
import { trimZeros } from "@/utils/formatNumber.js";
import { roundHalfUp, trimZeros } from "@/utils/formatNumber.js";
import { listCustomer } from "@/api/basicData/customer.js";
const FileList = defineAsyncComponent(() =>
@@ -1536,6 +1536,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 findLedgerRecordByRow = (row) => {
  if (!row) return null;
  if (
@@ -1694,9 +1702,10 @@
    param,
    ["contractAmount", "taxInclusiveTotalPrice", "taxExclusiveTotalPrice"],
    {
      contractAmount: { decimalPlaces: 6, trimZeros: true },
      taxInclusiveTotalPrice: { decimalPlaces: 6, trimZeros: true },
      taxExclusiveTotalPrice: { decimalPlaces: 6, trimZeros: true },
      // 金额列:每行先按 2 位小数四舍五入再求和,保证合计与列内展示值一致
      contractAmount: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
      taxInclusiveTotalPrice: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
      taxExclusiveTotalPrice: { roundEach: 2, decimalPlaces: 2, trimZeros: true },
    }
  );
};
@@ -1711,8 +1720,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 },
    }
  );
};
@@ -2544,7 +2554,7 @@
  const total = products.reduce((sum, product) => {
    return sum + (parseFloat(product.taxInclusiveTotalPrice) || 0);
  }, 0);
  return trimZeros(total, 6);
  return formatAmount(total);
};
// 用于打印的计算函数
@@ -2561,7 +2571,7 @@
  const total = products.reduce((sum, product) => {
    return sum + (parseFloat(product.taxInclusiveTotalPrice) || 0);
  }, 0);
  return trimZeros(total, 6);
  return formatAmount(total);
};
const mathNum = () => {