mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-22 03:55:17 +08:00
update 会员钱包
This commit is contained in:
@@ -7,6 +7,7 @@ import com.jsowell.common.constant.CacheConstants;
|
||||
import com.jsowell.common.constant.Constants;
|
||||
import com.jsowell.common.core.redis.RedisCache;
|
||||
import com.jsowell.common.enums.MemberWalletEnum;
|
||||
import com.jsowell.common.enums.ykc.ReturnCodeEnum;
|
||||
import com.jsowell.common.exception.BusinessException;
|
||||
import com.jsowell.common.util.DateUtils;
|
||||
import com.jsowell.common.util.SecurityUtils;
|
||||
@@ -25,6 +26,7 @@ import com.jsowell.pile.mapper.MemberWalletLogMapper;
|
||||
import com.jsowell.pile.service.*;
|
||||
import com.jsowell.pile.util.UserUtils;
|
||||
import com.jsowell.pile.vo.base.LoginUserDetailVO;
|
||||
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
||||
import com.jsowell.pile.vo.uniapp.MemberBalanceVO;
|
||||
import com.jsowell.pile.vo.uniapp.MemberVO;
|
||||
import com.jsowell.pile.vo.uniapp.MemberWalletLogVO;
|
||||
@@ -40,6 +42,7 @@ import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 会员基础信息Service业务层处理
|
||||
@@ -180,19 +183,29 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
||||
*/
|
||||
@Override
|
||||
public int updateMemberBalance(UpdateMemberBalanceDTO dto) {
|
||||
String memberId = dto.getMemberId();
|
||||
BigDecimal updateGiftBalance = dto.getUpdateGiftBalance();
|
||||
BigDecimal updatePrincipalBalance = dto.getUpdatePrincipalBalance();
|
||||
log.info("修改用户余额 memberId:{}, updatePrincipalBalance:{}, updateGiftBalance:{}", memberId, updatePrincipalBalance, updateGiftBalance);
|
||||
String memberId = dto.getMemberId(); // 会员id
|
||||
BigDecimal updateGiftBalance = dto.getUpdateGiftBalance(); // 更新赠送金额
|
||||
BigDecimal updatePrincipalBalance = dto.getUpdatePrincipalBalance(); // 更新本金金额
|
||||
String targetMerchantId = dto.getTargetMerchantId(); // 目标运营商id
|
||||
log.info("修改用户余额 memberId:{}, updatePrincipalBalance:{}, targetMerchantId:{}", memberId, updatePrincipalBalance, targetMerchantId);
|
||||
|
||||
// 校验权限
|
||||
LoginUserDetailVO loginUserDetail = UserUtils.getLoginUserDetail();
|
||||
List<MerchantInfoVO> merchantInfoVOList = loginUserDetail.getMerchantInfoVOList();
|
||||
List<String> collect = merchantInfoVOList.stream().map(MerchantInfoVO::getMerchantId).collect(Collectors.toList());
|
||||
if (!collect.contains(targetMerchantId)) {
|
||||
throw new BusinessException(ReturnCodeEnum.CODE_PERMISSION_DENIED);
|
||||
}
|
||||
|
||||
// 查询用户余额
|
||||
MemberWalletInfo walletInfo = memberWalletInfoService.selectByMemberId(memberId, dto.getTargetMerchantId());
|
||||
MemberWalletInfo walletInfo = memberWalletInfoService.selectByMemberId(memberId, targetMerchantId);
|
||||
if (walletInfo == null) {
|
||||
log.warn("根据会员id:{}, 目标运营商id:{}, 查询会员信息为空, 新建会员钱包", memberId, dto.getTargetMerchantId());
|
||||
log.warn("根据会员id:{}, 目标运营商id:{}, 查询会员信息为空, 新建会员钱包", memberId, targetMerchantId);
|
||||
// 如果查询到钱包为空,就新建一个该运营商的钱包
|
||||
walletInfo = MemberWalletInfo.builder()
|
||||
.walletCode(IdUtils.get16UUID())
|
||||
.memberId(memberId)
|
||||
.merchantId(dto.getTargetMerchantId())
|
||||
.merchantId(targetMerchantId)
|
||||
.giftBalance(BigDecimal.ZERO)
|
||||
.principalBalance(BigDecimal.ZERO)
|
||||
.version(0)
|
||||
|
||||
Reference in New Issue
Block a user