bug
jiangqs
2023-08-31 dbff53150cdc807faa56c0d1a947d24b69f372b9
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -20,6 +20,7 @@
import com.ruoyi.member.domain.pojo.member.IntegralRecord;
import com.ruoyi.member.domain.pojo.member.MemberArchive;
import com.ruoyi.member.domain.pojo.member.MemberTotal;
import com.ruoyi.member.domain.vo.MerMemberTotalVo;
import com.ruoyi.member.domain.vo.*;
import com.ruoyi.member.mapper.member.MemberMapper;
import com.ruoyi.member.service.member.IntegralRecordService;
@@ -476,16 +477,16 @@
        MemberTotal memberTotal = memberTotalService.getById(member.getMemberId());
        // 设置MerMemberInfoVo对象的属性值
        merMemberInfoVo.setSurpNumber(memberTotal.getUseableServiceCount());
        merMemberInfoVo.setUserNumber(memberTotal.getTotalPayCount());
        merMemberInfoVo.setPayMoney(memberTotal.getTotalPayMoney());
        // 创建MerBaseDto对象
        MerBaseDto merBaseDto = new MerBaseDto();
        // 设置MerBaseDto对象的属性值
        merBaseDto.setShopId(merBaseGetDto.getShopId());
        merBaseDto.setUserId(userId);
        // 获取未支付订单金额
        BigDecimal unpaidMoney = remoteOrderService.getMemberUnpaidOrder(merBaseDto).getData();
        merMemberInfoVo.setUnpaidMoney(unpaidMoney);
        MerMemberSimpleTotalVo memberSimpleTotalVo = remoteOrderService.getMerMemberSimpleTotalVo(merBaseDto).getData();
        merMemberInfoVo.setUserNumber(memberSimpleTotalVo.getUserNumber());
        merMemberInfoVo.setPayMoney(memberSimpleTotalVo.getPayMoney());
        merMemberInfoVo.setUnpaidMoney(memberSimpleTotalVo.getUnpaidMoney());
        // 获取最近的会员任务
        MemberTaskSimpleVo memberTaskSimpleVo = remoteShopService.getLastMemberTask(userId).getData();
        if (memberTaskSimpleVo != null) {
@@ -494,7 +495,7 @@
        }
        // 设置MerMemberInfoVo对象的属性值
        merMemberInfoVo.setNextTaskTime(memberTotal.getNextTaskTime());
        merMemberInfoVo.setLastPayTime(memberTotal.getLastPayTime());
        merMemberInfoVo.setLastPayTime(memberTotal.getLastConsumeTime());
        // 返回MerMemberInfoVo对象
        return merMemberInfoVo;
    }
@@ -868,6 +869,7 @@
        memberTotal.setShopSuggestFlag(0);
        memberTotal.setSignFlag(0);
        memberTotal.setBuyFlag(0);
        memberTotal.setTotalConsumeCount(0);
        memberTotalService.saveOrUpdate(memberTotal);
    }
@@ -1242,6 +1244,9 @@
        BigDecimal bigTen = new BigDecimal("100.00");
        BigDecimal menPercent = new BigDecimal("100.00");
        BigDecimal womenPercent = new BigDecimal("100.00");
        if(personTotal==0){
            personTotalBig = bigTen;
        }
        if(manTotal==0&&womenTotal==0){
            menPercent = new BigDecimal("50.00");
            womenPercent = new BigDecimal("50.00");
@@ -1252,7 +1257,7 @@
            menPercent = new BigDecimal("100.00");
            womenPercent = new BigDecimal("0.00");
        }else{
            menPercent = manTotalBig.divide(personTotalBig).setScale(0,BigDecimal.ROUND_HALF_UP);
            menPercent = manTotalBig.divide(personTotalBig,2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
            womenPercent = bigTen.subtract(menPercent);
        }
        mgtTotalMemberTotalVo.setManPercent(menPercent);
@@ -1319,7 +1324,7 @@
        //获取会员消费排名
        List<MgtMapIntTotalVo> memberPayList = memberMapper.getTotalMemberRankPay(mgtBaseShopDto);
        if (memberPayList != null && memberPayList.size() > 0) {
            memberPayList = listRemoveNull(memberPayList);
            //memberPayList = listRemoveNull(memberPayList);
            mgtTotalMemberTotalVo.setMemberPayList(memberPayList);
        }
        //获取来源渠道排名
@@ -1363,12 +1368,13 @@
            mgtShopIdByCodeDto.setShopCityCode(mgtBasePlatformDto.getShopCityCode());
            mgtShopIdByCodeDto.setShopAreaCode(mgtBasePlatformDto.getShopAreaCode());
            MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData();
            List<Long> list = new ArrayList<>();
            if (StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())) {
                List<Long> list = Arrays.stream(mgtShopIdByCodeVo.getShopIds().split(","))
                list = Arrays.stream(mgtShopIdByCodeVo.getShopIds().split(","))
                        .map(Long::valueOf)
                        .collect(Collectors.toList());
                mgtBasePlatformDto.setShopIdList(list);
            }
            mgtBasePlatformDto.setShopIdList(list);
        }
        //获取基础统计
        MgtPlTotalMemberTotalVo plTotalMemberTotalVo = memberMapper.getPlTotalMemberTotal(mgtBasePlatformDto);
@@ -1382,6 +1388,9 @@
            BigDecimal bigTen = new BigDecimal("100.00");
            BigDecimal menPercent = new BigDecimal("100.00");
            BigDecimal womenPercent = new BigDecimal("100.00");
            if(personTotal==0){
                personTotalBig = bigTen;
            }
            if(manTotal==0&&womenTotal==0){
                menPercent = new BigDecimal("50.00");
                womenPercent = new BigDecimal("50.00");
@@ -1392,7 +1401,7 @@
                menPercent = new BigDecimal("100.00");
                womenPercent = new BigDecimal("0.00");
            }else{
                menPercent = manTotalBig.divide(personTotalBig).setScale(0,BigDecimal.ROUND_HALF_UP);
                menPercent = manTotalBig.divide(personTotalBig,2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"));
                womenPercent = bigTen.subtract(menPercent);
            }
            plTotalMemberTotalVo.setManTotal(manTotal);
@@ -1632,6 +1641,11 @@
        if (memberTotalChangeDto.getGoodsOrderChange() != null) {
            memberTotal.setTotalGoodsOrder(memberTotal.getTotalGoodsOrder() + memberTotalChangeDto.getGoodsOrderChange());
        }
        //消费记录
        if(memberTotalChangeDto.getConsumeTime()!=null){
            memberTotal.setTotalConsumeCount(memberTotal.getTotalConsumeCount()+1);
            memberTotal.setLastConsumeTime(memberTotalChangeDto.getConsumeTime());
        }
        memberTotalService.saveOrUpdate(memberTotal);
    }
@@ -1685,6 +1699,9 @@
        BigDecimal bigTen = new BigDecimal("100.00");
        BigDecimal menPercent = new BigDecimal("100.00");
        BigDecimal womenPercent = new BigDecimal("100.00");
        if(personTotal==0){
            personTotalBig = bigTen;
        }
        if(manTotal==0&&womenTotal==0){
            menPercent = new BigDecimal("50.00");
            womenPercent = new BigDecimal("50.00");
@@ -1812,11 +1829,13 @@
        }
        MerMemberRecommendTotalVo memberRecommendTotalVo = new MerMemberRecommendTotalVo();
        //获取会员推荐排名
        List<MgtMapIntTotalVo> recommendList = memberMapper.getMerMemberRecommendRank(merTotalDto);
        /*List<MgtMapIntTotalVo> recommendList = memberMapper.getMerMemberRecommendRank(merTotalDto);
        if (recommendList != null && recommendList.size() > 0) {
            recommendList = listRemoveNull(recommendList);
            memberRecommendTotalVo.setRecommendList(recommendList);
        }
        }*/
        List<MgtMapIntTotalVo> recommendList = new ArrayList<>();
        memberRecommendTotalVo.setRecommendList(recommendList);
        return memberRecommendTotalVo;
    }