diff --git a/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/CustomerSaleInvoiceBasicForm.vue b/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/CustomerSaleInvoiceBasicForm.vue
index e2a236a2f..acc7b60eb 100644
--- a/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/CustomerSaleInvoiceBasicForm.vue
+++ b/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/CustomerSaleInvoiceBasicForm.vue
@@ -61,17 +61,17 @@
async (formRef, formModel, tableData) => {
const { taxRate = 0,moldUntaxedAmount=0 } = formModel
// 1、主数据未税金额 mainBeforeTaxAmount : 所有明细行的(品番数量 * 合计单价),先保留两位小数再求和
- let mainBeforeTaxAmount = tableData.reduce((prev, item) =>prev + Number((Number(item['sumPrice'])*Number(item['qty'])).toFixed(2)),0).toFixed(2)
+ let mainBeforeTaxAmount = Math.round(tableData.reduce((prev, item) =>prev + Number( Math.round((Number(item['sumPrice'])*Number(item['qty'])) * 100) / 100),0) * 100) / 100
// 2、主数据税额 mainTaxAmount = 所有明细行的(未税金额 * 税率),先保留两位小数再求和
- let mainTaxAmount = tableData.reduce((prev, item) =>prev + Number((Number(item['beforeTaxAmount'])*Number(taxRate)*0.01).toFixed(2)),0).toFixed(2)
+ let mainTaxAmount = Math.round(tableData.reduce((prev, item) =>prev + Number(Math.round((Number(item['beforeTaxAmount'])*Number(taxRate)*0.01)* 100) / 100),0)* 100) / 100
// 5、主数据材料未税金额 materialsUntaxedAmount : 所有明细行销售单价*数量保留两位小数之后累加
- let materialsUntaxedAmount = tableData.reduce((prev, item) =>prev + Number((Number(item['price'])*Number(item['qty'])).toFixed(2)),0).toFixed(2)
+ let materialsUntaxedAmount = Math.round(tableData.reduce((prev, item) =>prev + Number(Math.round((Number(item['price'])*Number(item['qty']))* 100) / 100),0)* 100) / 100
// 6、主数据材料税额 materialsTaxAmount = 所有明细行销售单价*数量 保留两位 * 税率,先保留两位小数再求和
- let materialsTaxAmount = tableData.reduce((prev, item) => prev + Number((Number((Number(item['price']) * Number(item['qty'])).toFixed(2)) * Number(taxRate) * 0.01).toFixed(2)), 0).toFixed(2)
+ let materialsTaxAmount = Math.round(tableData.reduce((prev, item) => prev + Number(Math.round((Number(Math.round((Number(item['price']) * Number(item['qty']))* 100) / 100) * Number(taxRate) * 0.01)* 100) / 100), 0)* 100) / 100
// 7、已分摊模具未税金额=各明细行的(品番数量 * 模具分摊单价),先保留两位小数再求和
- let alreadyMoldUntaxedAmount = tableData.reduce((prev, item) =>prev + Number((Number(item['allocationPrice'])*Number(item['qty'])).toFixed(2)),0).toFixed(2)
+ let alreadyMoldUntaxedAmount = Math.round(tableData.reduce((prev, item) =>prev + Number(Math.round((Number(item['allocationPrice'])*Number(item['qty']))* 100) / 100),0)* 100) / 100
// 8、主数据已分摊模具税额 alreadyMoldTaxAmount ==各明细行的(模具分摊单价 *数量 * 税率),先保留两位小数再求和
- let alreadyMoldTaxAmount = tableData.reduce((prev, item) => prev + Number((Number((Number(item['allocationPrice']) * Number(item['qty'])).toFixed(2)) * Number(taxRate) * 0.01).toFixed(2)), 0).toFixed(2)
+ let alreadyMoldTaxAmount = Math.round(tableData.reduce((prev, item) => prev + Number(Math.round((Number(Math.round((Number(item['allocationPrice']) * Number(item['qty']))* 100) / 100) * Number(taxRate) * 0.01)* 100) / 100), 0)* 100) / 100
const allAmountNum = await getAllocationAmount(formModel.customerStatementNumber)
const sumObject = {
@@ -80,7 +80,7 @@
// 主数据税额
taxAmount:mainTaxAmount,
// 主数据价税合计金额:mainAdTaxAmount =未税金额+税额
- adTaxAmount: (Number(mainBeforeTaxAmount) + Number(mainTaxAmount)).toFixed(2),
+ adTaxAmount: Math.round((Number(mainBeforeTaxAmount) + Number(mainTaxAmount))* 100) / 100,
// 主数据模具未税金额
moldUntaxedAmount:allAmountNum.moldUntaxedAmount,
// 主数据模具税额
@@ -92,17 +92,17 @@
// 主数据-材料金额
materialsTaxAmount: materialsTaxAmount,
// 主数据-材料含税金额= 材料未税金额+材料税额
- materialsTaxTotal: (Number(materialsUntaxedAmount) + Number(materialsTaxAmount)).toFixed(2),
+ materialsTaxTotal: Math.round((Number(materialsUntaxedAmount) + Number(materialsTaxAmount))* 100) / 100,
// 主数据已分摊模具未税金额
alreadyMoldUntaxedAmount: alreadyMoldUntaxedAmount,
// 主数据已分摊模具税额
alreadyMoldTaxAmount: alreadyMoldTaxAmount,
// 主数据模具未税差异=已分摊模具未税金额-模具未税金额
- moldTaxAmountDiff: (Number(alreadyMoldUntaxedAmount) - Number(allAmountNum.moldUntaxedAmount)).toFixed(2),
+ moldTaxAmountDiff: Math.round((Number(alreadyMoldUntaxedAmount) - Number(allAmountNum.moldUntaxedAmount))* 100) / 100,
// 主数据已分摊价税合计=已分摊模具未税金额+已分摊模具税额
- alreadyMoldTaxTotal: (Number(alreadyMoldUntaxedAmount) + Number(alreadyMoldTaxAmount)).toFixed(2),
+ alreadyMoldTaxTotal: Math.round((Number(alreadyMoldUntaxedAmount) + Number(alreadyMoldTaxAmount))* 100) / 100,
// 主数据模具税额差异 alreadyMoldTaxAmount = 模具税额 - 已分摊模具税额
- moldTaxAmountDifference: (Number(allAmountNum.moldTaxAmount) - Number(alreadyMoldTaxAmount)).toFixed(2),
+ moldTaxAmountDifference: Math.round((Number(allAmountNum.moldTaxAmount) - Number(alreadyMoldTaxAmount))* 100) / 100,
}
formRef.value.setValues(sumObject)
}
@@ -169,7 +169,7 @@ const onChange =async (field, cur, formRefParams)=>{
const allAmountNum = await getAllocationAmount(formRef.value.formRef.formModel.customerStatementNumber)
console.log(99,allAmountNum)
// // 2.主数据税额 mainTaxAmount = 未税金额*税率/100 保留两位小数
- // let mainTaxAmount = Number(beforeTaxAmount*taxRate*0.01).toFixed(2)
+ // let mainTaxAmount = Math.round(Number(beforeTaxAmount*taxRate*0.01)* 100) / 100
formRef.value.formRef.setValues({
beforeTaxAmount: allAmountNum.beforeTaxAmount,
// 主数据税额
@@ -196,8 +196,8 @@ const onChange =async (field, cur, formRefParams)=>{
moldTaxAmountDiff: allAmountNum.moldTaxAmountDiff,
// 主数据已分摊价税合计=已分摊模具未税金额+已分摊模具税额
alreadyMoldTaxTotal: allAmountNum.alreadyMoldTaxTotal,
- // 主数据模具税额差异 alreadyMoldTaxAmount = 模具税额 - 已分摊模具税额
- moldTaxAmountDifference: (Number(allAmountNum.moldTaxAmount) - Number(allAmountNum.alreadyMoldTaxAmount)).toFixed(2),
+ // 主数据模具税额差异 alreadyMoldTaxAmount = 模具税额 - 已分摊模具税额
+ moldTaxAmountDifference: Math.round((Number(allAmountNum.moldTaxAmount) - Number(allAmountNum.alreadyMoldTaxAmount))* 100) / 100,
})
}
} else if (field == 'invoiceType') {
@@ -214,7 +214,7 @@ const inputNumberChange = (field, index, row, val) => {
row['allocationPrice'] = row['beforeTaxAmount']/row['qty'] - row['price']
// 合计单价 = 销售单价 + 模具分摊单价
- row['sumPrice'] = (row['price'] + row['allocationPrice']).toFixed(11)
+ row['sumPrice'] =Math.round((row['price'] + row['allocationPrice'])* 100000000000) / 100000000000
// 税额:taxAmount 未税价格*税率/100,四舍五入保留2位小数
row['taxAmount'] = (row['beforeTaxAmount'] * formRef.value.formRef.formModel['taxRate'])/100 //含税金额
@@ -349,9 +349,9 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
// 初始化计算子表
const initTableDataPrice = ()=>{
tableData.value.forEach(item=>{
- item['sumPrice'] = (item['price'] + item['allocationPrice']).toFixed(11)
+ item['sumPrice'] = Math.round((item['price'] + item['allocationPrice'])* 100000000000) / 100000000000
// 未税金额 默认等于数量*合计单价,可修改,必填,最多可输入2位小数
- item['beforeTaxAmount'] = Number(new Decimal(Number(item['sumPrice'])).mul(new Decimal(item['qty'])).toNumber().toFixed(2))
+ item['beforeTaxAmount'] = Math.round((new Decimal(Number(item['sumPrice'])).mul(new Decimal(item['qty'])).toNumber())* 100) / 100
// 税额:taxAmount 未税价格*税率/100,四舍五入保留2位小数
item['taxAmount'] = (item['beforeTaxAmount'] * formRef.value.formRef.formModel['taxRate'])/100 //含税金额
@@ -389,31 +389,31 @@ const getAllocationAmount = async (customerStatementNumber) => {
const res = await CustomerSaleInvoiceMainApi.getAllocationAmount(curNumber.value,customerStatementNumber, formRef.value.formRef.formModel.taxRate)
return {
// 主数据未税金额
- beforeTaxAmount:res?.mainBeforeTaxAmount?.toFixed(2) || '',
+ beforeTaxAmount:res?.mainBeforeTaxAmount ? Math.round(res?.mainBeforeTaxAmount * 100) / 100 : '',
// 主数据税额
- taxAmount:res?.mainTaxAmount?.toFixed(2) || '',
+ taxAmount:res?.mainTaxAmount ? Math.round(res?.mainTaxAmount * 100) / 100 : '',
// 主数据价税合计金额:mainAdTaxAmount =未税金额+税额
- adTaxAmount: res?.mainAdTaxAmount?.toFixed(2) || '',
+ adTaxAmount: res?.mainAdTaxAmount?Math.round(res?.mainAdTaxAmount * 100) / 100 : '',
// 主数据模具未税金额
- moldUntaxedAmount:res?.moldUntaxedAmount?.toFixed(2) || '',
+ moldUntaxedAmount:res?.moldUntaxedAmount? Math.round(res?.moldUntaxedAmount * 100) / 100 :'',
// 主数据模具税额
- moldTaxAmount:res?.moldTaxAmount?.toFixed(2) || '',
+ moldTaxAmount:res?.moldTaxAmount?Math.round(res?.moldTaxAmount * 100) / 100 : '',
// 主数据模具含税金额
- moldTaxTotal:res?.moldTaxTotal?.toFixed(2) || '',
+ moldTaxTotal:res?.moldTaxTotal?Math.round(res?.moldTaxTotal * 100) / 100: '',
// 主数据-材料未税金额
- materialsUntaxedAmount: res?.materialsUntaxedAmount?.toFixed(2) || '',
+ materialsUntaxedAmount: res?.materialsUntaxedAmount?Math.round(res?.materialsUntaxedAmount * 100) / 100 : '',
// 主数据-材料金额
- materialsTaxAmount: res?.materialsTaxAmount?.toFixed(2) || '',
+ materialsTaxAmount: res?.materialsTaxAmount? Math.round(res?.materialsTaxAmount * 100) / 100 : '',
// 主数据-材料含税金额= 材料未税金额+材料税额
- materialsTaxTotal:res?.materialsTaxTotal?.toFixed(2) || '',
+ materialsTaxTotal:res?.materialsTaxTotal? Math.round(res?.materialsTaxTotal * 100) / 100: '',
// 主数据已分摊模具未税金额
- alreadyMoldUntaxedAmount: res?.alreadyMoldUntaxedAmount?.toFixed(2) || '',
+ alreadyMoldUntaxedAmount: res?.alreadyMoldUntaxedAmount? Math.round(res?.alreadyMoldUntaxedAmount * 100) / 100 :'',
// 主数据已分摊模具税额
- alreadyMoldTaxAmount: res?.alreadyMoldTaxAmount?.toFixed(2) || '',
+ alreadyMoldTaxAmount: res?.alreadyMoldTaxAmount ? Math.round(res?.alreadyMoldTaxAmount * 100) / 100: '',
// 主数据模具未税差异=已分摊模具未税金额-模具未税金额
- moldTaxAmountDiff: res?.moldTaxAmountDiff?.toFixed(2) || '',
+ moldTaxAmountDiff: res?.moldTaxAmountDiff?Math.round(res?.moldTaxAmountDiff * 100) / 100: '',
// 主数据已分摊价税合计=已分摊模具未税金额+已分摊模具税额
- alreadyMoldTaxTotal: res?.alreadyMoldTaxTotal?.toFixed(2) || '',
+ alreadyMoldTaxTotal: res?.alreadyMoldTaxTotal? Math.round(res?.alreadyMoldTaxTotal * 100) / 100 : '',
}
}
defineExpose({openForm,openFormTable})
diff --git a/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/index.vue b/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/index.vue
index 3f2c1072f..8a6a461b7 100644
--- a/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/index.vue
+++ b/src/views/wms/deliversettlementManage/customerSaleInvoiceRequestMain/index.vue
@@ -64,13 +64,13 @@
@handleMainFefresh='handleMainFefresh'
>
- {{scrop.row.taxAmount.toFixed(2)}}
+ {{ Math.round(scrop.row.taxAmount * 100) / 100}}
- {{scrop.row.afterTaxAmount.toFixed(2)}}
+ {{Math.round(scrop.row.afterTaxAmount * 100) / 100}}
- {{scrop.row.beforeTaxAmount.toFixed(2)}}
+ {{Math.round(scrop.row.beforeTaxAmount * 100) / 100}}
@@ -351,7 +351,7 @@ const detailBasicFormOnChange = (field, cur, formRef1) => {
const { beforeTaxAmount = 0, taxAmount = 0, qty = 0, price, allocationPrice, taxRate = 1 } = formRef1.value.formModel
formRef1.value.setValues({
// 含税金额 = 未税价格+税额,四舍五入保留2位小数
- afterTaxAmount: Number((Number(beforeTaxAmount) + Number(taxAmount)).toFixed(2)),
+ afterTaxAmount: Math.round((Number(beforeTaxAmount) + Number(taxAmount)) * 100) / 100,
// 模具分摊单价 默认从模具分摊对账单带出,未税金额修改后重新计算,等于未税金额/数量-销售单价
allocationPrice: Number(Number(Number(beforeTaxAmount)/Number(qty)) - Number(price)),
// 合计单价 = 销售单价 + 模具分摊单价
diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
index 362521af5..92782a244 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 = Math.round(Number(cellValue) * 100) / 100
+ cellValue = String(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 = Math.round(Number(cellValue) * 100000) / 100000
+ cellValue = String(Math.round(Number(cellValue) * 100000) / 100000)
cellValue = cellValue + '' || ''
let x = cellValue.split('.')