update 会员累计充值金额

This commit is contained in:
Guoqs
2024-05-22 17:24:42 +08:00
parent e265e63c1e
commit bd319b507a
5 changed files with 28 additions and 22 deletions

View File

@@ -95,12 +95,15 @@ public class MemberWalletInfoServiceImpl implements MemberWalletInfoService {
@Override
public MemberWalletVO selectMemberWalletInfo(String walletCode) {
MemberWalletVO memberWalletVO = memberWalletInfoMapper.selectMemberWalletInfo(walletCode);
// 总充值金额 = 累计本金充值 + 累计赠送金额
memberWalletVO.setTotalRechargeAmount(memberWalletVO.getAccumulatedRechargePrincipal().add(memberWalletVO.getAccumulatedRechargeGift()));
// 累计消费金额 = 累计充值 + 累计赠送 - 本金余额 - 赠送金余额
BigDecimal accumulatedConsumptionAmount = memberWalletVO.getAccumulatedRechargeAmount()
.add(memberWalletVO.getAccumulatedRechargeGift())
BigDecimal accumulatedConsumptionAmount = memberWalletVO.getTotalRechargeAmount()
.subtract(memberWalletVO.getPrincipalBalance())
.subtract(memberWalletVO.getGiftBalance());
memberWalletVO.setAccumulatedConsumptionAmount(accumulatedConsumptionAmount);
return memberWalletVO;
}

View File

@@ -46,13 +46,18 @@ public class MemberWalletVO {
/**
* 累计本金充值
*/
private BigDecimal accumulatedRechargeAmount;
private BigDecimal accumulatedRechargePrincipal;
/**
* 累计赠送金额
*/
private BigDecimal accumulatedRechargeGift;
/**
* 总充值金额 = 累计本金充值 + 累计赠送金额
*/
private BigDecimal totalRechargeAmount;
/**
* 累计消费
*/

View File

@@ -34,9 +34,9 @@ public class MemberWalletInfoVO {
private BigDecimal giftBalance;
/**
* 累计充值
* 累计充值本金
*/
private BigDecimal accumulatedRechargeAmount;
private BigDecimal accumulatedRechargePrincipal;
/**
* 累计赠送金额

View File

@@ -203,15 +203,15 @@
</select>
<select id="selectMemberWalletInfo" resultType="com.jsowell.pile.vo.base.MemberWalletVO">
SELECT t1.member_id as memberId,
t1.wallet_code as walletCode,
t1.merchant_id as merchantId,
ifnull(t1.principal_balance, 0) as principalBalance,
ifnull(t1.gift_balance, 0) as giftBalance,
ifnull(t2.accumulatedRechargeAmount, 0) as accumulatedRechargeAmount,
ifnull(t3.accumulatedRechargeGift, 0) as accumulatedRechargeGift
SELECT t1.member_id as memberId,
t1.wallet_code as walletCode,
t1.merchant_id as merchantId,
ifnull(t1.principal_balance, 0) as principalBalance,
ifnull(t1.gift_balance, 0) as giftBalance,
ifnull(t2.accumulatedRechargePrincipal, 0) as accumulatedRechargePrincipal,
ifnull(t3.accumulatedRechargeGift, 0) as accumulatedRechargeGift
from member_wallet_info t1
left join (select wallet_code, sum(amount) as accumulatedRechargeAmount
left join (select wallet_code, sum(amount) as accumulatedRechargePrincipal
from `member_wallet_log`
WHERE `wallet_code` = #{walletCode,jdbcType=VARCHAR}
and type = '1'