From fd7b8fb7c89832c28a838b0449bbb8a392433ee2 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 22 四月 2025 14:33:02 +0800 Subject: [PATCH] 将华为云短信替换成阿里云短信 --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java | 29 +++++++++++++++++++++++------ 1 files changed, 23 insertions(+), 6 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java index 146fbb7..490b9c6 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java @@ -1,20 +1,21 @@ package com.ruoyi.account.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.ruoyi.other.api.enums.WithdrawalAuditStatus; import com.ruoyi.account.api.model.AppUser; +import com.ruoyi.account.api.model.AppUserGiveawayTemporary; +import com.ruoyi.account.api.model.BalanceChangeRecordCopy; import com.ruoyi.account.api.model.WithdrawalRequests; -import com.ruoyi.account.service.AppUserService; -import com.ruoyi.account.service.WalletService; -import com.ruoyi.account.service.WithdrawalRequestsService; +import com.ruoyi.account.service.*; import com.ruoyi.account.vo.WalletVO; import com.ruoyi.common.core.domain.R; import com.ruoyi.other.api.domain.VipSetting; +import com.ruoyi.other.api.enums.WithdrawalAuditStatus; import com.ruoyi.other.api.feignClient.RemoteVipSettingClient; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.List; @Service @@ -25,6 +26,9 @@ private RemoteVipSettingClient remoteVipSettingClient; @Resource private WithdrawalRequestsService withdrawalRequestsService; + @Resource + private IAppUserGiveawayTemporaryService appUserGiveawayTemporaryService; + @Override public WalletVO getWalletByUserId(Long userId) { @@ -39,21 +43,34 @@ throw new RuntimeException("会员设置信息为空"); } + + List<AppUserGiveawayTemporary> list = appUserGiveawayTemporaryService.list(new LambdaQueryWrapper<AppUserGiveawayTemporary>().eq(AppUserGiveawayTemporary::getAppUserId, userId)); + BigDecimal commissionAmount = BigDecimal.ZERO; + if(!list.isEmpty()){ + commissionAmount = list.stream().map(AppUserGiveawayTemporary::getTotalDistributionAmount).reduce(BigDecimal.ZERO, BigDecimal::add); + } + // 获取提现审核中的金额 List<WithdrawalRequests> waitAuditList = withdrawalRequestsService.list(new LambdaQueryWrapper<WithdrawalRequests>() .eq(WithdrawalRequests::getAppUserId, userId) .eq(WithdrawalRequests::getAuditStatus, WithdrawalAuditStatus.WAIT_AUDIT.getCode())); BigDecimal reduce = waitAuditList.stream().map(WithdrawalRequests::getWithdrawalAmount).reduce(BigDecimal.ZERO, BigDecimal::add); + + WalletVO walletVO = new WalletVO(); + BigDecimal balance = appUser.getBalance(); + walletVO.setCommissionAmount(appUser.getTotalDistributionAmount().add(commissionAmount).setScale(2, RoundingMode.HALF_UP)); walletVO.setWithdrawalAmount(appUser.getWithdrawableAmount()); walletVO.setWithdrawnAmount(appUser.getWithdrawnAmount().subtract(reduce)); walletVO.setVipWithdrawalMinAmount(data.getVipWithdrawalMinAmount()); walletVO.setTotalRechargeAmount(appUser.getTotalRechargeAmount()); walletVO.setTotalRedPacketAmount(appUser.getTotalRedPacketAmount()); - walletVO.setTotalDistributionAmount(appUser.getTotalDistributionAmount()); + walletVO.setTotalDistributionAmount(appUser.getTotalDistributionAmount().add(commissionAmount).setScale(2, RoundingMode.HALF_UP)); walletVO.setAuditAmount(reduce); - walletVO.setBalance(appUser.getBalance()); + walletVO.setBalance(balance); return walletVO; } + + } -- Gitblit v1.7.1