feat: include pre-withdrawal balance in review
This commit is contained in:
parent
f46785818b
commit
712d76307f
@ -133,6 +133,8 @@ public class UserBankWithdrawCmdExe {
|
||||
.setBankCardId(bankCard.getId())
|
||||
.setBankCardType(bankCard.getCardType())
|
||||
.setAmount(cmd.getAmount())
|
||||
// balance 在扣款前读取并完成充足性校验;固化到申请文档后,异步重试始终投递同一份财务快照。
|
||||
.setBalanceBefore(balance)
|
||||
.setAmountType(salaryType.getCode())
|
||||
.setApprovalProcesses(List.of(
|
||||
new UserBankWithdrawMoneyApprovalProcess()
|
||||
|
||||
@ -75,6 +75,10 @@ public class HyAppWithdrawalReviewClient {
|
||||
payload.put("salaryAssetType", apply.getAmountType());
|
||||
payload.put("withdrawAmount", normalizedAmount.toPlainString());
|
||||
payload.put("withdrawAmountMinor", amountMinor);
|
||||
if (apply.getBalanceBefore() != null) {
|
||||
// 审核展示必须使用扣款前快照;不能在定时投递时重新查询已经扣减或退款后的余额。
|
||||
payload.put("balanceBefore", apply.getBalanceBefore().stripTrailingZeros().toPlainString());
|
||||
}
|
||||
payload.put("withdrawMethod", bankCard.getCardType());
|
||||
payload.put("withdrawAddress", bankCard.getCardNo());
|
||||
payload.put("createdAtMs", apply.getCreateTime().getTime());
|
||||
|
||||
@ -66,6 +66,11 @@ public class UserBankWithdrawMoneyApply implements Serializable {
|
||||
*/
|
||||
private BigDecimal amount;
|
||||
|
||||
/**
|
||||
* 提交提现前的可用余额快照;只记录申请时事实,审核页不能用之后变化的当前余额替代.
|
||||
*/
|
||||
private BigDecimal balanceBefore;
|
||||
|
||||
/**
|
||||
* 金额类型:MONEY(美金政策)、SALARY_DIAMOND(工资钻石政策)
|
||||
*/
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user