Commit 0e7bb82e by jianan

优化分期出账、金额精度

parent 6823a5ab
......@@ -939,31 +939,24 @@ const handleSplitCellChange = ({ row, col, newValue, oldValue, rowIndex, prop })
spiltDigit.value
)
updatedRow.originalAmount = originalAmount
// 原币种金额发生变化更新港币金额
// 原币种金额发生变化更新港币金额(出的钱取整到元)
if (updatedRow.originalToHkdRate) {
updatedRow.hkdAmount = calculateAmount(
updatedRow.originalAmount,
updatedRow.originalToHkdRate,
spiltDigit.value
0
)
}
//港币金额发生变化 更新实际发放金额
//港币金额发生变化 更新实际发放金额(取整到元)
if (updatedRow.hkdToPayoutRate && updatedRow.hkdAmount) {
updatedRow.payoutAmount = calculateAmount(
updatedRow.hkdAmount,
updatedRow.hkdToPayoutRate,
spiltDigit.value
)
}
//港币金额发生变化 更新保单币种金额
if (updatedRow.exchangeRate && updatedRow.hkdAmount) {
updatedRow.ruleAmount = calculateAmount(
updatedRow.hkdAmount,
updatedRow.exchangeRate,
spiltDigit.value,
'Divided'
0
)
}
// 保单币种金额 = 原币种金额(同币,锚只由比例决定,不通过港币反算)
updatedRow.ruleAmount = updatedRow.originalAmount
needUpdate = true
}
......@@ -971,43 +964,33 @@ const handleSplitCellChange = ({ row, col, newValue, oldValue, rowIndex, prop })
if (prop === 'originalToHkdRate' || prop === 'originalAmount') {
const originalToHkdRate = prop === 'originalToHkdRate' ? newValue : currentRow.originalToHkdRate
const originalAmount = prop === 'originalAmount' ? newValue : currentRow.originalAmount
const hkdAmount = calculateAmount(originalAmount, originalToHkdRate, spiltDigit.value)
// 港币金额取整到元(出的钱保留整数)
const hkdAmount = calculateAmount(originalAmount, originalToHkdRate, 0)
updatedRow.hkdAmount = hkdAmount
//港币金额发生变化 更新实际发放金额
//港币金额发生变化 更新实际发放金额(取整到元)
if (updatedRow.hkdToPayoutRate && updatedRow.hkdAmount) {
updatedRow.payoutAmount = calculateAmount(
updatedRow.hkdAmount,
updatedRow.hkdToPayoutRate,
spiltDigit.value
)
}
//港币金额发生变化 更新保单币种金额
if (updatedRow.exchangeRate && updatedRow.hkdAmount) {
updatedRow.ruleAmount = calculateAmount(
updatedRow.hkdAmount,
updatedRow.exchangeRate,
spiltDigit.value,
'Divided'
0
)
}
// 保单币种金额 = 原币种金额(同币,锚只由比例决定,不通过港币反算)
updatedRow.ruleAmount = updatedRow.originalAmount
needUpdate = true
}
// 联动规则3:港币->发放币种 或 港币金额 变化 → 重算 实际发放金额 = 港币金额*港币->发放币种汇率
if (prop === 'hkdToPayoutRate' || prop === 'hkdAmount') {
const hkdToPayoutRate = prop === 'hkdToPayoutRate' ? newValue : currentRow.hkdToPayoutRate
const hkdAmount = prop === 'hkdAmount' ? newValue : currentRow.hkdAmount
const payoutAmount = calculateAmount(hkdAmount, hkdToPayoutRate, spiltDigit.value)
// 实际发放金额取整到元(出的钱保留整数)
const payoutAmount = calculateAmount(hkdAmount, hkdToPayoutRate, 0)
updatedRow.payoutAmount = payoutAmount
needUpdate = true
}
// 联动规则4:保单币种->港币 或 港币金额 变化 → 重算 保单币种金额 = 港币金额/保单币种->港币汇率
if (prop === 'exchangeRate' || prop === 'hkdAmount') {
const exchangeRate = prop === 'exchangeRate' ? newValue : currentRow.exchangeRate
const hkdAmount = prop === 'hkdAmount' ? newValue : currentRow.hkdAmount
const ruleAmount = calculateAmount(hkdAmount, exchangeRate, spiltDigit.value, 'Divided')
updatedRow.ruleAmount = ruleAmount
needUpdate = true
}
// 原规则4(按保单币种->港币汇率用港币反算保单币种金额)已删除:
// 保单币种金额是锚,只由比例决定;修改该汇率不再改动锚。
// 手动修改港币金额时由规则3重算实际发放金额。
// 如果用户手动修改了 hkdAmount,不做反向联动(符合需求)
if (needUpdate) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment