From 449f60184f2ae4507075d646b17bc7771b59aa7d Mon Sep 17 00:00:00 2001 From: Derran Date: Mon, 2 Dec 2024 18:02:30 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BA=A2=E5=A8=98=E8=AE=A2=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../aggregate/walletaccount/valueobj/WalletAccountRecord.java | 4 ++++ .../walletaccount/WalletAccountApplicationService.java | 3 ++- .../handler/withdrawaudit/WithdrawAuditEventHandler.java | 2 +- .../revenuereward/AcquireRevenueRewardDomainService.java | 4 ++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/walletaccount/valueobj/WalletAccountRecord.java b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/walletaccount/valueobj/WalletAccountRecord.java index 300c3f7..5ddb740 100644 --- a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/walletaccount/valueobj/WalletAccountRecord.java +++ b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/walletaccount/valueobj/WalletAccountRecord.java @@ -32,9 +32,13 @@ public class WalletAccountRecord extends ValueObject { @ApiModelProperty("当前金额") private BigDecimal currentBalance; + @ApiModelProperty("关联ID") + private Long associateId; + @ApiModelProperty("备注") private String remark; + public static WalletAccountRecord build(TradeTypeEnum tradeType, BigDecimal tradeAmount, Boolean isIncome, diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/walletaccount/WalletAccountApplicationService.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/walletaccount/WalletAccountApplicationService.java index 01bfcdc..848cdb8 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/walletaccount/WalletAccountApplicationService.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/walletaccount/WalletAccountApplicationService.java @@ -19,12 +19,13 @@ public class WalletAccountApplicationService { @Resource private WalletAccountAggregate walletAccountAggregate; - public void confirmWithdraw(Long walletAccountId, BigDecimal withdrawAmount) { + public void confirmWithdraw(Long walletAccountId, BigDecimal withdrawAmount, Long associateId) { WalletAccount walletAccount = walletAccountDao.selectById(walletAccountId); BigDecimal originalBalance = walletAccount.getTotalBalance(); walletAccount.setFrozenBalance(walletAccount.getFrozenBalance().subtract(withdrawAmount)); walletAccount.setTotalBalance(walletAccount.getAvailableBalance().add(walletAccount.getFrozenBalance())); WalletAccountRecord walletAccountRecord = WalletAccountRecord.build(TradeTypeEnum.WITHDRAW, withdrawAmount, false, originalBalance, walletAccount.getTotalBalance()); + walletAccountRecord.setAssociateId(associateId); walletAccount.setRecordList(Collections.singletonList(walletAccountRecord)); walletAccountAggregate.save(walletAccount); } diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/withdrawaudit/WithdrawAuditEventHandler.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/withdrawaudit/WithdrawAuditEventHandler.java index 782cacd..b48749d 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/withdrawaudit/WithdrawAuditEventHandler.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/application/handler/withdrawaudit/WithdrawAuditEventHandler.java @@ -40,7 +40,7 @@ public class WithdrawAuditEventHandler extends BaseApplicationService { try { WithdrawAudit withdrawAudit = withdrawAuditDao.selectById(event.getId()); if (withdrawAudit.getRemitStatus()) { - walletAccountApplicationService.confirmWithdraw(withdrawAudit.getWalletAccountId(), withdrawAudit.getWithdrawAmount()); + walletAccountApplicationService.confirmWithdraw(withdrawAudit.getWalletAccountId(), withdrawAudit.getWithdrawAmount(),withdrawAudit.getId()); } } catch (Exception e) { log.error("提现申请审核事件处理异常", e); diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/service/revenuereward/AcquireRevenueRewardDomainService.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/service/revenuereward/AcquireRevenueRewardDomainService.java index 5f06b1a..9c51e66 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/service/revenuereward/AcquireRevenueRewardDomainService.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/service/revenuereward/AcquireRevenueRewardDomainService.java @@ -1,5 +1,6 @@ package com.qniao.dam.domain.service.revenuereward; +import cn.hutool.core.collection.CollUtil; import com.qniao.dam.domain.aggregate.revenuereward.RevenueRewardAggregate; import com.qniao.dam.domain.aggregate.revenuereward.entity.RevenueReward; import com.qniao.dam.domain.aggregate.walletaccount.WalletAccountAggregate; @@ -20,6 +21,9 @@ public class AcquireRevenueRewardDomainService { @Transactional(rollbackFor = Exception.class) public void handle(RevenueReward revenueReward, WalletAccount walletAccount) { revenueRewardAggregate.save(revenueReward); + walletAccount.getRecordList().forEach(record -> { + record.setAssociateId(revenueReward.getRecordList().get(0).getId()); + }); walletAccountAggregate.save(walletAccount); } }