From f0b45fa1243b2824a3d6d299e7a54e8fab69f65d Mon Sep 17 00:00:00 2001
From: zhang_li
Date: Tue, 20 May 2025 13:24:18 +0800
Subject: [PATCH] =?UTF-8?q?YT-2596=E7=8E=B0=E5=9C=BA=E5=87=BA=E7=8E=B0?=
=?UTF-8?q?=E4=BE=9B=E5=BA=94=E5=95=86=E5=8F=91=E7=A5=A8=E6=96=B0=E5=A2=9E?=
=?UTF-8?q?=E5=90=8E=E6=9D=90=E6=96=99=E6=AC=BE=E6=9C=AA=E7=A8=8E=E9=87=91?=
=?UTF-8?q?=E9=A2=9D=E3=80=81=E6=9D=90=E6=96=99=E6=AC=BE=E7=A8=8E=E9=A2=9D?=
=?UTF-8?q?=E3=80=81=E6=9D=90=E6=96=99=E6=AC=BE=E4=BB=B7=E7=A8=8E=E5=90=88?=
=?UTF-8?q?=E8=AE=A1=E4=B8=BA0=E7=9A=84=E9=94=99=E8=AF=AF=E6=95=B0?=
=?UTF-8?q?=E6=8D=AE=EF=BC=8C=E5=89=8D=E7=AB=AF=E6=B6=89=E5=8F=8A=E5=88=B0?=
=?UTF-8?q?=E9=87=91=E9=A2=9D=E4=BF=9D=E7=95=99=E4=BD=8D=E6=95=B0=E6=9C=89?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../supplierinvoiceRequestMain/index.vue | 91 ++++++++-----------
.../supplierinvoiceRequestMain.data.ts | 4 +-
2 files changed, 39 insertions(+), 56 deletions(-)
diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue
index e3f8cf018..717d95fa2 100644
--- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue
+++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue
@@ -43,7 +43,7 @@
{{
- Number(row.differencePrice).toFixed(5)
+ Math.round(Number(row.differencePrice) * 100000) / 100000
}}
@@ -113,54 +113,48 @@
updateOriginFormModel(formModel)
}
formRef.value.setValues({
- claimTaxAmount: Number(Number(claimAmount * taxRate * 0.01).toFixed(2)),//索赔税额 = 索赔未税金额 * 税率
- claimTaxTotal :Number(Number(Number(claimAmount) + Number(claimTaxAmount)).toFixed(2)),//索赔价税合计 = 索赔未税金额 + 索赔税额
- moldTaxTotal :Number(Number(Number(moldUntaxedAmount) + Number(moldTaxAmount)).toFixed(2)),//模具价税合计 = 模具未税金额 + 模具税额
- moldTaxAmount: Number(Number(moldUntaxedAmount * taxRate * 0.01).toFixed(2)),//模具税额 = 模具未税金额 * 税率
+ claimTaxAmount: Number( Math.round((claimAmount * taxRate * 0.01) * 100) / 100),//索赔税额 = 索赔未税金额 * 税率
+ claimTaxTotal :Number(Math.round(Number(Number(claimAmount) + Number(claimTaxAmount)) * 100) / 100),//索赔价税合计 = 索赔未税金额 + 索赔税额
+ moldTaxTotal :Number(Math.round(Number(Number(moldUntaxedAmount) + Number(moldTaxAmount)) * 100) / 100),//模具价税合计 = 模具未税金额 + 模具税额
+ moldTaxAmount: Number(Math.round(Number(moldUntaxedAmount * taxRate * 0.01) * 100) / 100),//模具税额 = 模具未税金额 * 税率
afterTaxAmount: amount + taxAmount, // 3、系统价税合计:系统未税金额+系统税额-索赔总额
invoiceAmountMain: amount - claimAmount, // 发票总额:供应商维护未税金额-索赔总额
adTaxAmount: beforeTaxAmount + totalTaxAmount, //6、价税合计金额:未税金额+税额
- beforeTaxDiffAmount: Number(Number(Number(beforeTaxAmount) - (Number(amount) + Number(moldUntaxedAmount) - Number(discountAmount1) - Number(claimAmount))).toFixed(2)), // 未税尾差 = 发票未税金额 - (材料款未税金额 + 模具未税金额- 返利未税金额 - 索赔未税金额)
- taxAmountDiff: Number(Number(Number(totalTaxAmount) - (Number(taxAmount) + Number(moldTaxAmount) - Number(rebateTax) - Number(claimTaxAmount))).toFixed(2)),// 税额尾差 = 发票税额 - (材料款税额 + 模具税额 - 返利税额 - 索赔税额)
- totalTaxDiffAmount: Number(Number(Number(adTaxAmount) - (Number(afterTaxAmount) + Number(moldTaxTotal) - Number(rebateTotal) - Number(claimTaxTotal))).toFixed(2)),// 价税合计尾差 = 发票价税合计 - (材料款价税合计 + 模具价税合计 - 返利价税合计 - 索赔价税合计
- rebateTax: Number(Number(discountAmount1 * taxRate * 0.01).toFixed(2)),
+ beforeTaxDiffAmount: Number(Math.round(Number(Number(beforeTaxAmount) - (Number(amount) + Number(moldUntaxedAmount) - Number(discountAmount1) - Number(claimAmount))) * 100) / 100), // 未税尾差 = 发票未税金额 - (材料款未税金额 + 模具未税金额- 返利未税金额 - 索赔未税金额)
+ taxAmountDiff: Number( Math.round(Number(Number(totalTaxAmount) - (Number(taxAmount) + Number(moldTaxAmount) - Number(rebateTax) - Number(claimTaxAmount))) * 100) / 100),// 税额尾差 = 发票税额 - (材料款税额 + 模具税额 - 返利税额 - 索赔税额)
+ totalTaxDiffAmount: Number(Math.round(Number(Number(adTaxAmount) - (Number(afterTaxAmount) + Number(moldTaxTotal) - Number(rebateTotal) - Number(claimTaxTotal))) * 100) / 100),// 价税合计尾差 = 发票价税合计 - (材料款价税合计 + 模具价税合计 - 返利价税合计 - 索赔价税合计
+ rebateTax: Number(Math.round(Number(discountAmount1 * taxRate * 0.01) * 100) / 100),
rebateTotal: rebateTax + discountAmount1,
- beforeTaxAmount : Number(Number(Number(moldUntaxedAmount) + Number(amount)-Number(claimAmount) - Number(discountAmount1)).toFixed(2)), //发票未税金额 = 模具未税金额+供应商维护未税金额(如果有索赔总额,需要减去索赔总额)-返利未税金额
+ beforeTaxAmount : Number(Math.round(Number(Number(moldUntaxedAmount) + Number(amount)-Number(claimAmount) - Number(discountAmount1)) * 100) / 100), //发票未税金额 = 模具未税金额+供应商维护未税金额(如果有索赔总额,需要减去索赔总额)-返利未税金额
})
} else if (formType == 'create') {
// 新增
+
let taxAmount_ = taxAmount
if (taxRate != originFormModel.taxRate) {
taxAmount_ = tableData.reduce(
(prev, item) =>
- prev +
- Number(
- Number(
- taxRate *
- 0.01 *
- Number(Number(item['singlePrice'] * item['invoicableQuantity']).toFixed(2))
- ).toFixed(2)
- ),
+ prev +Number(Math.round(Number(taxRate * 0.01 *Number(Math.round(Number(item['singlePrice'] * item['invoicableQuantity']) * 100) / 100)) * 100) / 100),
0
)
updateOriginFormModel(formModel)
}
formRef.value.setValues({
- claimTaxAmount: Number(Number(claimAmount * taxRate * 0.01).toFixed(2)),//索赔税额 = 索赔未税金额 * 税率
- claimTaxTotal :Number(Number(Number(claimAmount) + Number(claimTaxAmount)).toFixed(2)),//索赔价税合计 = 索赔未税金额 + 索赔税额
- moldTaxTotal :Number(Number(Number(moldUntaxedAmount) + Number(moldTaxAmount)).toFixed(2)),//模具价税合计 = 模具未税金额 + 模具税额
- moldTaxAmount: Number(Number(moldUntaxedAmount * taxRate * 0.01).toFixed(2)),//模具税额 = 模具未税金额 * 税率
+ claimTaxAmount: Number(Math.round(Number(claimAmount * taxRate * 0.01) * 100) / 100),//索赔税额 = 索赔未税金额 * 税率
+ claimTaxTotal :Number( Math.round(Number(Number(claimAmount) + Number(claimTaxAmount)) * 100) / 100),//索赔价税合计 = 索赔未税金额 + 索赔税额
+ moldTaxTotal :Number(Math.round(Number(Number(moldUntaxedAmount) + Number(moldTaxAmount)) * 100) / 100),//模具价税合计 = 模具未税金额 + 模具税额
+ moldTaxAmount: Number(Math.round(Number(moldUntaxedAmount * taxRate * 0.01) * 100) / 100),//模具税额 = 模具未税金额 * 税率
taxAmount: taxAmount_,
afterTaxAmount: amount + taxAmount, // 3、系统价税合计:系统未税金额+系统税额-索赔总额
invoiceAmountMain: amount - claimAmount, // 发票总额:供应商维护未税金额-索赔总额
adTaxAmount: beforeTaxAmount + totalTaxAmount, //6、价税合计金额:未税金额+税额
- beforeTaxDiffAmount: Number(Number(Number(beforeTaxAmount) - (Number(amount) + Number(moldUntaxedAmount) - Number(discountAmount1) - Number(claimAmount))).toFixed(2)),// 未税尾差 = 发票未税金额 - (材料款未税金额 + 模具未税金额- 返利未税金额 - 索赔未税金额)
- taxAmountDiff: Number(Number(Number(totalTaxAmount) - (Number(taxAmount) + Number(moldTaxAmount) - Number(rebateTax) - Number(claimTaxAmount))).toFixed(2)),// 税额尾差 = 发票税额 - (材料款税额 + 模具税额 - 返利税额 - 索赔税额)
- totalTaxDiffAmount: Number(Number(Number(adTaxAmount) - (Number(afterTaxAmount) + Number(moldTaxTotal) - Number(rebateTotal) - Number(claimTaxTotal))).toFixed(2)),// 价税合计尾差 = 发票价税合计 - (材料款价税合计 + 模具价税合计 - 返利价税合计 - 索赔价税合计
- rebateTax: Number(Number(discountAmount1 * taxRate * 0.01).toFixed(2)),
+ beforeTaxDiffAmount: Number(Math.round(Number(Number(beforeTaxAmount) - (Number(amount) + Number(moldUntaxedAmount) - Number(discountAmount1) - Number(claimAmount))) * 100) / 100),// 未税尾差 = 发票未税金额 - (材料款未税金额 + 模具未税金额- 返利未税金额 - 索赔未税金额)
+ taxAmountDiff: Number(Math.round(Number(Number(totalTaxAmount) - (Number(taxAmount) + Number(moldTaxAmount) - Number(rebateTax) - Number(claimTaxAmount))) * 100) / 100),// 税额尾差 = 发票税额 - (材料款税额 + 模具税额 - 返利税额 - 索赔税额)
+ totalTaxDiffAmount: Number(Math.round(Number(Number(adTaxAmount) - (Number(afterTaxAmount) + Number(moldTaxTotal) - Number(rebateTotal) - Number(claimTaxTotal))) * 100) / 100),// 价税合计尾差 = 发票价税合计 - (材料款价税合计 + 模具价税合计 - 返利价税合计 - 索赔价税合计
+ rebateTax: Number(Math.round(Number(discountAmount1 * taxRate * 0.01) * 100) / 100),
rebateTotal: rebateTax + discountAmount1,
- beforeTaxAmount : Number(Number(Number(moldUntaxedAmount) + Number(amount)-Number(claimAmount) - Number(discountAmount1)).toFixed(2)), //发票未税金额 = 模具未税金额+供应商维护未税金额(如果有索赔总额,需要减去索赔总额)-返利未税金额
+ beforeTaxAmount : Number(Math.round(Number(Number(moldUntaxedAmount) + Number(amount)-Number(claimAmount) - Number(discountAmount1)) * 100) / 100), //发票未税金额 = 模具未税金额+供应商维护未税金额(如果有索赔总额,需要减去索赔总额)-返利未税金额
})
}
}
@@ -169,36 +163,28 @@
(formRef, formModel, tableData) => {
// 1、系统未税金额: 合同价格X可开票数量。每条数据的合同价格X可开票数量,计算结果取两位小数之后,求和
const { taxRate = 0 } = formModel
+ console.log(888,tableData)
const sumObject = {
amount: tableData.reduce(
- (prev, item) =>
- prev + Number(Number(item['singlePrice'] * item['invoicableQuantity']).toFixed(2)),
+ (prev, item) => prev + Number(Math.round((item['singlePrice'] * item['invoicableQuantity'])* 100)/ 100),
0
),
taxAmount: tableData.reduce(
(prev, item) =>
prev +
- Number(
- Number(
- taxRate *
- 0.01 *
- Number(Number(item['singlePrice'] * item['invoicableQuantity']).toFixed(2))
- ).toFixed(2)
- ),
+ Number(Math.round(Number(taxRate *0.01 * Number(Math.round(Number(item['singlePrice'] * item['invoicableQuantity']) * 100) / 100)) * 100) / 100),
0
),
moldUntaxedAmount: tableData.reduce(
(prev, item) =>
prev +
Number(
- Number(item['allocationPrice'] * item['invoicableQuantity']).toFixed(2)
+ Math.round(Number(item['allocationPrice'] * item['invoicableQuantity']) * 100) / 100
),
0
) //模具未税金额 = sum(明细中的模具分摊单价*开票数量)
}
- ;(sumObject.invoiceAmountMain = (
- Number(sumObject.amount) - Number(formRef.value.formModel.claimAmount)
- ).toFixed(2)) // 发票总额:供应商维护未税金额-索赔总额
+ ;(sumObject.invoiceAmountMain = Math.round((Number(sumObject.amount) - Number(formRef.value.formModel.claimAmount)) * 100) / 100) // 发票总额:供应商维护未税金额-索赔总额
formRef.value.setValues(sumObject)
}
"
@@ -218,18 +204,15 @@
系统未税金额:{{
- Number(
+ Math.round( Number(
selections.reduce(
(prev, item) =>
prev +
- Number(
- Number(
- Number(Number(item['purchasePrice']).toFixed(5)) * item['invoicableQuantity']
- ).toFixed(2)
+ Number( Math.round(Number(Number(Math.round(Number(item['purchasePrice']) * 100000) / 100000) * item['invoicableQuantity']) * 100) / 100
),
0
)
- ).toFixed(2)
+ ) * 100) / 100
}}
@@ -239,11 +222,11 @@
{{ basicFormFooter }}
-->
-
+
@@ -372,7 +355,7 @@
(formRef, formModel) => {
const { singlePrice = 0, purchasePrice = 0 } = formModel
formRef.value.setValues({
- differencePrice: Number((Number(singlePrice) - Number(purchasePrice)).toFixed(5))
+ differencePrice: Number(Math.round((Number(singlePrice) - Number(purchasePrice)) * 100000) / 100000)
})
}
"
@@ -1087,13 +1070,13 @@ const claimDetails = async (supplierCode) => {
claimDetailsList.value = await PurchaseClaimRequestDetailApi.getPurchaseClaimRequestDetailList(
supplierCode
)
- formRef.value.formRef.formModel.claimAmount = claimDetailsList.value
+ formRef.value.formRef.formModel.claimAmount = Math.round(claimDetailsList.value
.map((item) => item.claimAmount)
.reduce((prev, item) => prev + item)
- .toFixed(5)
- formRef.value.formRef.formModel.invoiceAmountMain = (
+ * 100000) / 100000
+ formRef.value.formRef.formModel.invoiceAmountMain = Math.round((
Number(formRef.value.formRef.formModel.amount) - Number(formRef.value.formModel.claimAmount)
- ).toFixed(2) // 发票总额:供应商维护未税金额-索赔总额
+ ) * 100) / 100 // 发票总额:供应商维护未税金额-索赔总额
}
// 编辑的时候获取索赔明细
const claimDetailsForUpdate = async (supplierCode, id) => {
@@ -1561,7 +1544,7 @@ const submitForm = async (formType, submitData) => {
let data = { ...submitData }
tableData.value.forEach((item) => {
item.differencePrice = Number(
- (Number(item?.singlePrice) - Number(item?.purchasePrice)).toFixed(5)
+ Math.round((Number(item?.singlePrice) - Number(item?.purchasePrice)) * 100000) / 100000
)
})
let flagInvoicableQuantity = false
diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
index 811a077cf..362521af5 100644
--- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
+++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
@@ -1299,7 +1299,7 @@ export const accountantFormartDetail = ( cellValue) => {
return ''
}
cellValue = cellValue + '' || ''
- cellValue = Number(cellValue).toFixed(2)
+ cellValue = Math.round(Number(cellValue) * 100) / 100
let x = cellValue.split('.')
let x1 = x[0]
let x2 = x.length > 1 ? '.' + x[1] : ''
@@ -1942,7 +1942,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive {
- cellValue= Number(cellValue).toFixed(5)
+ cellValue = Math.round(Number(cellValue) * 100000) / 100000
cellValue = cellValue + '' || ''
let x = cellValue.split('.')