gaoluyang
12 小时以前 3ab45f295fb26c7794b4829976f3fb20c68a012e
src/views/procurementManagement/procurementLedger/index.vue
@@ -490,7 +490,7 @@
            <el-form-item label="含税单价(元):" prop="taxInclusiveUnitPrice">
              <el-input-number
                v-model="productForm.taxInclusiveUnitPrice"
                :precision="2"
                :precision="3"
                :step="0.1"
                clearable
                style="width: 100%"
@@ -503,7 +503,7 @@
                     <el-input-number
                        :step="0.1"
                        clearable
                        :precision="2"
                        :precision="3"
                        style="width: 100%"
                        v-model="productForm.quantity"
                        placeholder="请输入"
@@ -517,7 +517,7 @@
            <el-form-item label="含税总价(元):" prop="taxInclusiveTotalPrice">
              <el-input-number
                v-model="productForm.taxInclusiveTotalPrice"
                :precision="2"
                :precision="3"
                :step="0.1"
                clearable
                style="width: 100%"
@@ -554,7 +554,7 @@
                  <el-form-item label="库存预警数量:" prop="warnNum">
                     <el-input-number
                        v-model="productForm.warnNum"
                        :precision="2"
                        :precision="3"
                        :step="0.1"
                        clearable
                        style="width: 100%"
@@ -638,7 +638,7 @@
            <el-form-item label="合同金额(元):" prop="contractAmount">
              <el-input-number
                v-model="scanAddForm.contractAmount"
                :precision="2"
                :precision="3"
                :step="0.1"
                clearable
                style="width: 100%"
@@ -822,7 +822,7 @@
import useUserStore from "@/store/modules/user";
import { modelList, productTreeList } from "@/api/basicData/product.js";
import dayjs from "dayjs";
import { getCurrentDate } from "@/utils/index.js";
import { getCurrentDate, truncate } from "@/utils/index.js";
const userStore = useUserStore();
@@ -930,7 +930,7 @@
};
const formattedNumber = (row, column, cellValue) => {
  return parseFloat(cellValue).toFixed(2);
  return truncate(parseFloat(cellValue), 3);
};
// 查询列表
/** 搜索按钮操作 */
@@ -1340,16 +1340,18 @@
  }
  // 含税总价计算
  productForm.value.taxInclusiveTotalPrice =
    proxy.calculateTaxIncludeTotalPrice(
      productForm.value.taxInclusiveUnitPrice,
      productForm.value.quantity
    truncate(
      Number(productForm.value.taxInclusiveUnitPrice) * Number(productForm.value.quantity),
      3
    );
  if (productForm.value.taxRate) {
    // 不含税总价计算
    const taxRate = Number(productForm.value.taxRate);
    const taxRateDecimal = taxRate / 100;
    productForm.value.taxExclusiveTotalPrice =
      proxy.calculateTaxExclusiveTotalPrice(
        productForm.value.taxInclusiveTotalPrice,
        productForm.value.taxRate
      truncate(
        Number(productForm.value.taxInclusiveTotalPrice) / (1 + taxRateDecimal),
        3
      );
  }
};
@@ -1364,29 +1366,29 @@
    // 已知含税总价和数量,反算含税单价
    if (productForm.value.quantity) {
      productForm.value.taxInclusiveUnitPrice = 
        (Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.quantity)).toFixed(2);
        truncate(Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.quantity), 3);
    }
    // 已知含税总价和含税单价,反算数量
    else if (productForm.value.taxInclusiveUnitPrice) {
      productForm.value.quantity = 
        (Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.taxInclusiveUnitPrice)).toFixed(2);
        truncate(Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.taxInclusiveUnitPrice), 3);
    }
    // 反算不含税总价
    productForm.value.taxExclusiveTotalPrice = 
      (Number(productForm.value.taxInclusiveTotalPrice) / (1 + taxRate / 100)).toFixed(2);
      truncate(Number(productForm.value.taxInclusiveTotalPrice) / (1 + taxRate / 100), 3);
  } else if (field === 'taxExclusiveTotalPrice') {
    // 反算含税总价
    productForm.value.taxInclusiveTotalPrice = 
      (Number(productForm.value.taxExclusiveTotalPrice) * (1 + taxRate / 100)).toFixed(2);
      truncate(Number(productForm.value.taxExclusiveTotalPrice) * (1 + taxRate / 100), 3);
    // 已知数量,反算含税单价
    if (productForm.value.quantity) {
      productForm.value.taxInclusiveUnitPrice = 
        (Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.quantity)).toFixed(2);
        truncate(Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.quantity), 3);
    }
    // 已知含税单价,反算数量
    else if (productForm.value.taxInclusiveUnitPrice) {
      productForm.value.quantity = 
        (Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.taxInclusiveUnitPrice)).toFixed(2);
        truncate(Number(productForm.value.taxInclusiveTotalPrice) / Number(productForm.value.taxInclusiveUnitPrice), 3);
    }
  }
};