jiangqs
2023-07-11 7109e2fefaa46caffcd36b44828f48e0f8a790ba
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -240,12 +240,14 @@
            member.setCreateTime(new Date());
            member.setMobile(mobile);
            initMemberTotal(memberId);
            log.info("sysUser01-----------------" + sysUser.toString());
        } else {
            sysUser = sysUserService.getSysUser(member.getUserId()).getData();
            log.info("sysUser02-----------------" + sysUser.toString());
        }
        member.setWxUnionid(appUserRegisterDto.getWxUnionid());
        member.setMiniOpenid(appUserRegisterDto.getMiniOpenid());
        log.info("member-----------------" + member.toString());
        log.info("member02-----------------" + member.toString());
        this.saveOrUpdate(member);
        appUserRegisterVo.setMobile(mobile);
        appUserRegisterVo.setNickName(member.getNickName());
@@ -1070,6 +1072,31 @@
        // 获取总会员数和不同年龄段的会员数
        MgtTotalMemberTotalVo mgtTotalMemberTotalVo = memberMapper.getTotalMemberTotal(mgtBaseShopDto);
        MgtAgeTotalVo mgtAgeTotalVo = memberMapper.getTotalMemberTotalAge(mgtBaseShopDto);
        Integer manTotal = mgtAgeTotalVo.getManTotal();
        Integer womenTotal = mgtAgeTotalVo.getWomenTotal();
        mgtTotalMemberTotalVo.setManTotal(manTotal);
        mgtTotalMemberTotalVo.setWomenTotal(womenTotal);
        Integer personTotal = manTotal + womenTotal;
        BigDecimal manTotalBig = new BigDecimal(manTotal);
        BigDecimal personTotalBig = new BigDecimal(personTotal);
        BigDecimal bigTen = new BigDecimal("100.00");
        BigDecimal menPercent = new BigDecimal("100.00");
        BigDecimal womenPercent = new BigDecimal("100.00");
        if(manTotal==0&&womenTotal==0){
            menPercent = new BigDecimal("50.00");
            womenPercent = new BigDecimal("50.00");
        }else if(manTotal==0&&womenTotal>0){
            menPercent = new BigDecimal("0.00");
            womenPercent = new BigDecimal("100.00");
        }else if(manTotal>0&&womenTotal==0){
            menPercent = new BigDecimal("100.00");
            womenPercent = new BigDecimal("0.00");
        }else{
            menPercent = manTotalBig.divide(personTotalBig).setScale(0,BigDecimal.ROUND_HALF_UP);
            womenPercent = bigTen.subtract(menPercent);
        }
        mgtTotalMemberTotalVo.setManPercent(menPercent);
        mgtTotalMemberTotalVo.setWomenPercent(womenPercent);
        // 年龄段数组
        String[] ageKey = {"<20", "21-30", "31-40", "41-50", ">50"};
        // 不同年龄段的会员数数组
@@ -1410,8 +1437,21 @@
        BigDecimal manTotalBig = new BigDecimal(manTotal);
        BigDecimal personTotalBig = new BigDecimal(personTotal);
        BigDecimal bigTen = new BigDecimal("100.00");
        BigDecimal menPercent = manTotalBig.divide(personTotalBig).setScale(0,BigDecimal.ROUND_HALF_UP);
        BigDecimal womenPercent = bigTen.subtract(menPercent);
        BigDecimal menPercent = new BigDecimal("100.00");
        BigDecimal womenPercent = new BigDecimal("100.00");
        if(manTotal==0&&womenTotal==0){
            menPercent = new BigDecimal("50.00");
            womenPercent = new BigDecimal("50.00");
        }else if(manTotal==0&&womenTotal>0){
            menPercent = new BigDecimal("0.00");
            womenPercent = new BigDecimal("100.00");
        }else if(manTotal>0&&womenTotal==0){
            menPercent = new BigDecimal("100.00");
            womenPercent = new BigDecimal("0.00");
        }else{
            menPercent = manTotalBig.divide(personTotalBig).setScale(0,BigDecimal.ROUND_HALF_UP);
            womenPercent = bigTen.subtract(menPercent);
        }
        memberFixedTotalVo.setManPercent(menPercent);
        memberFixedTotalVo.setWomenPercent(womenPercent);
        // 年龄段数组