KKSU
2024-12-19 4276af8de8132927af9921b9fef55fef123f5ff5
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -276,39 +276,12 @@
        RunVip runVip = runVipMapper.selectOne(new LambdaQueryWrapper<RunVip>().eq(RunVip::getVipCode, mallMemberVo.getLevel()));
        mallMemberVo.setLevelName(runVip.getVipName());
        mallMemberVo.setLevelPng(runVip.getVipPng());
        mallMemberVo.setChangeState(runVip.getChangeState());
        mallMemberVo.setWithdrawState(runVip.getWithdrawState());
        MallMemberWallet wallet = mallMemberWalletMapper.selectWalletByMemberId(mallMemberVo.getId());
        mallMemberVo.setBalance(wallet.getBalance());
        mallMemberVo.setScore(wallet.getScore());
        mallMemberVo.setMinScore(
                new BigDecimal(
                        dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                            RunVipDataDictionaryEnum.RUN_VIP_SCORE_MIN.getType(),
                            RunVipDataDictionaryEnum.RUN_VIP_SCORE_MIN.getCode()).getValue()
                ).setScale(0,BigDecimal.ROUND_DOWN)
        );
        mallMemberVo.setScoreBalance(
                new BigDecimal(
                        dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                                RunVipDataDictionaryEnum.RUN_VIP_SCORE_TO_BALANCE.getType(),
                                RunVipDataDictionaryEnum.RUN_VIP_SCORE_TO_BALANCE.getCode()).getValue()
                ).setScale(2, BigDecimal.ROUND_DOWN)
        );
        mallMemberVo.setBalanceCoin(
                new BigDecimal(
                        dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                                RunVipDataDictionaryEnum.RUN_VIP_BALANCE_TO_COIN.getType(),
                                RunVipDataDictionaryEnum.RUN_VIP_BALANCE_TO_COIN.getCode()).getValue()
                ).setScale(2, BigDecimal.ROUND_DOWN)
        );
        mallMemberVo.setBalanceCoinPercent(
                new BigDecimal(
                        dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                                RunVipDataDictionaryEnum.RUN_VIP_BALANCE_TO_COIN_PERCENT.getType(),
                                RunVipDataDictionaryEnum.RUN_VIP_BALANCE_TO_COIN_PERCENT.getCode()).getValue()
                ).setScale(4, BigDecimal.ROUND_DOWN)
        );
        return new FebsResponse().success().data(mallMemberVo);
    }
@@ -361,7 +334,7 @@
            mallMember.setAvatar(modifyMemberInfoDto.getPhoto());
        }
        this.baseMapper.updateById(mallMember);
        this.baseMapper.updateNameAndAvatar(member.getId(),modifyMemberInfoDto.getName(),modifyMemberInfoDto.getPhoto());
        return new FebsResponse().success().message("修改成功");
    }
@@ -409,9 +382,10 @@
            }else{
                item.setMyTeamCnt(mallMemberRefs.size());
                //获取mallMembers的所有id
                myTeamVo.setMyTeamBalance(getTeamBalance(mallMemberRefs));
                item.setMyTeamBalance(getTeamBalance(mallMemberRefs));
            }
        });
        myTeamVo.setTeam(teamListVos);
        return new FebsResponse().success().data(myTeamVo);
@@ -691,20 +665,24 @@
    @Override
    public void setPayment(ApiMallMemberPaymentDto apiMallMemberPaymentDto) {
        List<MallMemberPayment> mallMemberPayments = mallMemberPaymentMapper.selectList(
                new LambdaQueryWrapper<MallMemberPayment>().eq(MallMemberPayment::getBank, apiMallMemberPaymentDto.getBank()));
        if(CollUtil.isNotEmpty(mallMemberPayments)){
            throw new FebsException("地址已使用");
        }
        MallMember member = LoginUserUtil.getLoginUser();
        if(null == apiMallMemberPaymentDto.getId()){//新增
            List<MallMemberPayment> mallMemberPayments = mallMemberPaymentMapper.selectList(
                    new LambdaQueryWrapper<MallMemberPayment>().eq(MallMemberPayment::getBank, apiMallMemberPaymentDto.getBank()));
            if(CollUtil.isNotEmpty(mallMemberPayments)){
                throw new FebsException("地址已使用");
            }
            MallMemberPayment mallMemberPayment = new MallMemberPayment();
            mallMemberPayment.setMemberId(member.getId());
            mallMemberPayment.setBankNo(apiMallMemberPaymentDto.getBankNo());
            mallMemberPayment.setBank(apiMallMemberPaymentDto.getBank());
            mallMemberPaymentMapper.insert(mallMemberPayment);
        }else{
            List<MallMemberPayment> mallMemberPayments = mallMemberPaymentMapper.selectList(
                    new LambdaQueryWrapper<MallMemberPayment>().eq(MallMemberPayment::getBank, apiMallMemberPaymentDto.getBank()));
            if(CollUtil.isNotEmpty(mallMemberPayments) && mallMemberPayments.size() > 1){
                throw new FebsException("地址已使用");
            }
            MallMemberPayment mallMemberPayment = mallMemberPaymentMapper.selectById(apiMallMemberPaymentDto.getId());
            mallMemberPayment.setMemberId(member.getId());
            mallMemberPayment.setBankNo(apiMallMemberPaymentDto.getBankNo());
@@ -1561,6 +1539,14 @@
        return new FebsResponse().success().data(data);
    }
    public static String hidePhoneNumber(String phoneNumber) {
        // 获取前3位和后4位
        String prefix = phoneNumber.substring(0, 3);
        // 生成隐藏的电话号码
        return prefix + "****";
    }
    @Override
    public List<ApiChartVo> dayRecord(ApiRecordDto apiRecordDto) {
        /**
@@ -1576,7 +1562,11 @@
            mallMoneyFlowLambdaQueryWrapper.ge(MallMoneyFlow :: getCreatedTime , dateTime);
        }
        mallMoneyFlowLambdaQueryWrapper.eq(MallMoneyFlow :: getFlowType, FlowTypeEnum.SCORE.getValue());
        mallMoneyFlowLambdaQueryWrapper.eq(MallMoneyFlow :: getType, RunVipMoneyFlowTypeEnum.SCORE_OUT_BALANCE.getValue());
        mallMoneyFlowLambdaQueryWrapper.in(
                MallMoneyFlow :: getType,
                RunVipMoneyFlowTypeEnum.GET_SCORE.getValue(),
                RunVipMoneyFlowTypeEnum.SYS_SCORE.getValue()
        );
        List<MallMoneyFlow> mallMoneyFlows = mallMoneyFlowMapper.selectList(mallMoneyFlowLambdaQueryWrapper);
        List<ApiChartVo> apiChartVos = new ArrayList<>();
@@ -1602,7 +1592,7 @@
        sortedList.forEach(entry -> {
            ApiChartVo apiChartVo = new ApiChartVo();
            MallMember mallMember = this.baseMapper.selectById(entry.getKey());
            apiChartVo.setPhone(mallMember.getPhone());
            apiChartVo.setName(hidePhoneNumber(mallMember.getName()));
            apiChartVo.setAvatar(mallMember.getAvatar());
            apiChartVo.setScore(entry.getValue());
            apiChartVos.add(apiChartVo);