KKSU
2023-11-28 93ed0466abb1a825705d8a92eded1879b329c623
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -2,10 +2,7 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.common.enumerates.AgentLevelEnum;
import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
import cc.mrbird.febs.common.enumerates.GreenScoreEnum;
import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
import cc.mrbird.febs.common.enumerates.*;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.utils.AppContants;
import cc.mrbird.febs.common.utils.LoginUserUtil;
@@ -78,6 +75,7 @@
    private final MallScoreRecordMapper mallScoreRecordMapper;
    private final MallScoreAchieveReleaseMapper mallScoreAchieveReleaseMapper;
    private final NBYHService nbyhService;
    private final MallMemberAmountMapper mallMemberAmountMapper;
    @Override
    public IPage<MallMember> getMallMemberList(MallMember mallMember, QueryRequest request) {
@@ -875,6 +873,81 @@
    }
    @Override
    public IPage<AdminMallMemberVo> getFcmMallMemberList(MallMember mallMember, QueryRequest request) {
        Page<AdminMallMemberVo> page = new Page<>(request.getPageNum(), request.getPageSize());
        IPage<AdminMallMemberVo> adminMallMemberVoIPage = this.baseMapper.getFcmMallMemberList(page, mallMember);
        return adminMallMemberVoIPage;
    }
    @Override
    public FebsResponse frozenWith(Long id, int i) {
        MallMember mallMember = mallMemberMapper.selectById(id);
        if(ObjectUtil.isEmpty(mallMember)) {
            return new FebsResponse().fail().message("会员信息不存在");
        }
        mallMember.setIsFrozen(i);
        mallMemberMapper.updateById(mallMember);
        return new FebsResponse().success();
    }
    @Override
    public FebsResponse updateSystemPayInfo(MallSystemPayDto mallSystemPayDto) {
        Long amountId = mallSystemPayDto.getId();
        MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectById(amountId);
        MallMember mallMember = mallMemberMapper.selectById(mallMemberAmount.getMemberId());
        if(ObjectUtil.isEmpty(mallMember)){
            throw new FebsException("会员不存在");
        }
        BigDecimal bigDecimal = mallSystemPayDto.getAddBalance();
        Integer type = mallSystemPayDto.getType();
        Integer flowType = 0;
        if (type == 1) {
            BigDecimal add = mallMemberAmount.getTrendsNft().add(bigDecimal);
            if(BigDecimal.ZERO.compareTo(add) > 0){
                throw new FebsException("输入合适的值");
            }
            mallMemberAmount.setTrendsNft(add);
            mallMemberAmountMapper.updateTrendsNftById(mallMemberAmount);
            flowType = FlowTypeNewEnum.NFT.getValue();
        } else if (type == 2) {
            BigDecimal add = mallMemberAmount.getFcmCntAva().add(bigDecimal);
            if(BigDecimal.ZERO.compareTo(add) > 0){
                throw new FebsException("输入合适的值");
            }
            mallMemberAmount.setFcmCntAva(add);
            mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount);
            flowType = FlowTypeNewEnum.FCM_COIN.getValue();
        } else if (type == 3) {
            BigDecimal add = mallMemberAmount.getTokenAva().add(bigDecimal);
            if(BigDecimal.ZERO.compareTo(add) > 0){
                throw new FebsException("输入合适的值");
            }
            mallMemberAmount.setTokenAva(add);
            mallMemberAmountMapper.updateTokenAvaById(mallMemberAmount);
            flowType = FlowTypeNewEnum.TOKEN.getValue();
        } else {
            throw new FebsException("参数错误");
        }
        String orderNo = MallUtils.getOrderNum("BF");
        mallMoneyFlowService.addMoneyFlow(
                mallMemberAmount.getMemberId(),
                bigDecimal,
                MoneyFlowTypeNewEnum.SYSTEM_PEY.getValue(),
                orderNo,
                mallMemberAmount.getMemberId(),
                flowType,
                MoneyFlowTypeNewEnum.SYSTEM_PEY.getDescrition());
        return new FebsResponse().success();
    }
    @Override
    public MallMemberVo getMallmemberAmountByMemberId(long id) {
        MallMemberVo mallMemberVo = mallMemberMapper.getMallmemberAmountByMemberId(id);
        return mallMemberVo;
    }
    private String refererIds(String parentId) {
        boolean flag = false;
        if (StrUtil.isBlank(parentId)) {