diff --git a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/entity/VirtualAccount.java b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/entity/VirtualAccount.java index bf0386b..42b11c9 100644 --- a/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/entity/VirtualAccount.java +++ b/dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/entity/VirtualAccount.java @@ -7,6 +7,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import com.qniao.domain.Entity; +import java.math.BigDecimal; import java.util.List; /** @@ -22,9 +23,15 @@ public class VirtualAccount extends Entity { @ApiModelProperty("用户唯一标识") private Long userId; - @ApiModelProperty("数量") + @ApiModelProperty("总数量") + private Integer totalBalance; + + @ApiModelProperty("可用数量") private Integer balance; + @ApiModelProperty("冻结数量") + private Integer frozenBalance; + private transient List recordList; } diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/VirtualAccountAggregate.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/VirtualAccountAggregate.java index 302b448..5dc5db6 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/VirtualAccountAggregate.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/virtualaccount/VirtualAccountAggregate.java @@ -44,6 +44,7 @@ public class VirtualAccountAggregate { VirtualAccountTradeTypeEnum tradeType, String remark) { Integer originalBalance = virtualAccount.getBalance(); + virtualAccount.setTotalBalance(virtualAccount.getTotalBalance() - tradeBalance); virtualAccount.setBalance(originalBalance - tradeBalance); VirtualAccountRecord record = new VirtualAccountRecord(); record.setTradeType(tradeType); @@ -58,6 +59,7 @@ public class VirtualAccountAggregate { Integer tradeBalance, VirtualAccountTradeTypeEnum tradeType) { Integer originalBalance = virtualAccount.getBalance(); + virtualAccount.setTotalBalance(virtualAccount.getTotalBalance() + tradeBalance); virtualAccount.setBalance(originalBalance + tradeBalance); VirtualAccountRecord record = new VirtualAccountRecord(); record.setTradeType(tradeType); diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/query/virtualaccount/impl/VirtualAccountQueryServiceImpl.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/query/virtualaccount/impl/VirtualAccountQueryServiceImpl.java index 9321c86..e940c7a 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/query/virtualaccount/impl/VirtualAccountQueryServiceImpl.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/query/virtualaccount/impl/VirtualAccountQueryServiceImpl.java @@ -53,7 +53,9 @@ public class VirtualAccountQueryServiceImpl implements VirtualAccountQueryServic if (Objects.isNull(virtualAccount)) { virtualAccount = new VirtualAccount(); virtualAccount.setUserId(userId); + virtualAccount.setTotalBalance(0); virtualAccount.setBalance(0); + virtualAccount.setFrozenBalance(0); } return virtualAccount; }