From 1ca4c6c6c7861c07980ad0dcd8d5df4b0219bfdc Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期三, 06 九月 2023 19:01:48 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 82 +++++++++++++++++++++++++++++++++++----- 1 files changed, 71 insertions(+), 11 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index 47fe560..9df1d7a 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -1,5 +1,5 @@ package com.ruoyi.member.service.impl.member; - +import com.google.common.collect.Lists; import cn.binarywang.wx.miniapp.api.WxMaService; import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import com.alibaba.fastjson.JSONObject; @@ -1229,10 +1229,36 @@ @Override public MgtTotalMemberTotalVo getTotalMemberTotal(MgtBaseShopDto mgtBaseShopDto) { Date nowDay = DateUtils.getNowDate(); + MgtTotalMemberTotalVo mgtTotalMemberTotalVo = new MgtTotalMemberTotalVo(); + mgtTotalMemberTotalVo.setMemberTotal(0); + mgtTotalMemberTotalVo.setOnlineTotal(0); + mgtTotalMemberTotalVo.setOfflineTotal(0); + mgtTotalMemberTotalVo.setIntroduceTotal(0); + mgtTotalMemberTotalVo.setCycleTotal(0); + mgtTotalMemberTotalVo.setExperienceTotal(0); + mgtTotalMemberTotalVo.setServiceTotal(0); + mgtTotalMemberTotalVo.setManTotal(0); + mgtTotalMemberTotalVo.setManPercent(new BigDecimal("0")); + mgtTotalMemberTotalVo.setWomenTotal(0); + mgtTotalMemberTotalVo.setWomenPercent(new BigDecimal("0")); + mgtTotalMemberTotalVo.setAgeKey(new String[0]); + mgtTotalMemberTotalVo.setAgeValue(new Integer[0]); + mgtTotalMemberTotalVo.setNurseTotalVos(Lists.newArrayList()); + mgtTotalMemberTotalVo.setMemberLevelTotalVos(Lists.newArrayList()); + mgtTotalMemberTotalVo.setGoodsTypeTotalVos(Lists.newArrayList()); + mgtTotalMemberTotalVo.setActivenessList(Lists.newArrayList()); + mgtTotalMemberTotalVo.setCustomerSourceList(Lists.newArrayList()); + mgtTotalMemberTotalVo.setMemberPayList(Lists.newArrayList()); // 获取店铺ID Long shopId = mgtBaseShopDto.getShopId(); // 获取总会员数和不同年龄段的会员数 - MgtTotalMemberTotalVo mgtTotalMemberTotalVo = memberMapper.getTotalMemberTotal(mgtBaseShopDto); + MgtTotalMemberTotalVo totalMemberTotalVo = memberMapper.getTotalMemberTotal(mgtBaseShopDto); + mgtTotalMemberTotalVo.setMemberTotal(totalMemberTotalVo.getMemberTotal()); + mgtTotalMemberTotalVo.setOnlineTotal(totalMemberTotalVo.getOnlineTotal()); + mgtTotalMemberTotalVo.setOfflineTotal(totalMemberTotalVo.getOfflineTotal()); + mgtTotalMemberTotalVo.setCycleTotal(totalMemberTotalVo.getCycleTotal()); + mgtTotalMemberTotalVo.setExperienceTotal(totalMemberTotalVo.getExperienceTotal()); + mgtTotalMemberTotalVo.setServiceTotal(totalMemberTotalVo.getServiceTotal()); MgtAgeTotalVo mgtAgeTotalVo = memberMapper.getTotalMemberTotalAge(mgtBaseShopDto); Integer manTotal = mgtAgeTotalVo.getManTotal(); Integer womenTotal = mgtAgeTotalVo.getWomenTotal(); @@ -1360,6 +1386,25 @@ */ @Override public MgtPlTotalMemberTotalVo getPlTotalMemberTotal(MgtBasePlatformDto mgtBasePlatformDto) { + MgtPlTotalMemberTotalVo plTotalMemberTotalVo = new MgtPlTotalMemberTotalVo(); + plTotalMemberTotalVo.setMemberTotal(0); + plTotalMemberTotalVo.setMemberYesterday(0); + plTotalMemberTotalVo.setMemberSeven(0); + plTotalMemberTotalVo.setManTotal(0); + plTotalMemberTotalVo.setManPercent(new BigDecimal("0")); + plTotalMemberTotalVo.setWomenTotal(0); + plTotalMemberTotalVo.setWomenPercent(new BigDecimal("0")); + plTotalMemberTotalVo.setAgeKey(new String[0]); + plTotalMemberTotalVo.setAgeValue(new Integer[0]); + plTotalMemberTotalVo.setAgePercent(new BigDecimal[0]); + plTotalMemberTotalVo.setNurseTotalVos(Lists.newArrayList()); + plTotalMemberTotalVo.setMemberLevelTotalVos(Lists.newArrayList()); + plTotalMemberTotalVo.setGoodsTypeTotalVos(Lists.newArrayList()); + plTotalMemberTotalVo.setActivenessList(Lists.newArrayList()); + plTotalMemberTotalVo.setCustomerSourceList(Lists.newArrayList()); + plTotalMemberTotalVo.setMemberPayList(Lists.newArrayList()); + plTotalMemberTotalVo.setMemberGoodsRankList(Lists.newArrayList()); + plTotalMemberTotalVo.setShopMemberRankList(Lists.newArrayList()); Date nowDay = DateUtils.getNowDate(); //如果区域代码不为null获取对应的商户id if (StringUtils.isNotBlank(mgtBasePlatformDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopCityCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopAreaCode())) { @@ -1373,11 +1418,16 @@ list = Arrays.stream(mgtShopIdByCodeVo.getShopIds().split(",")) .map(Long::valueOf) .collect(Collectors.toList()); + }else{ + return plTotalMemberTotalVo; } mgtBasePlatformDto.setShopIdList(list); } //获取基础统计 - MgtPlTotalMemberTotalVo plTotalMemberTotalVo = memberMapper.getPlTotalMemberTotal(mgtBasePlatformDto); + MgtPlTotalMemberTotalVo plTotalMemberTotalByDayVo = memberMapper.getPlTotalMemberTotal(mgtBasePlatformDto); + plTotalMemberTotalVo.setMemberTotal(plTotalMemberTotalByDayVo.getMemberTotal()); + plTotalMemberTotalVo.setMemberYesterday(plTotalMemberTotalByDayVo.getMemberYesterday()); + plTotalMemberTotalVo.setMemberSeven(plTotalMemberTotalByDayVo.getMemberSeven()); MgtAgeTotalVo mgtAgeTotalVo = memberMapper.getPlTotalMemberTotalAge(mgtBasePlatformDto); if (mgtAgeTotalVo != null) { Integer manTotal = mgtAgeTotalVo.getManTotal(); @@ -1683,11 +1733,6 @@ } MerMemberFixedTotalVo memberFixedTotalVo = new MerMemberFixedTotalVo(); Date nowDay = DateUtils.getNowDate(); - if(merTotalDto.getShopAllFlag()!=null&&merTotalDto.getShopAllFlag()==1){ - List<Long> shopIdList = remoteShopService.listShopIdByShopId(merTotalDto.getShopId()).getData(); - merTotalDto.setShopIdList(shopIdList); - merTotalDto.setShopId(null); - } MgtAgeTotalVo mgtAgeTotalVo = memberMapper.getMerMemberTotalAge(merTotalDto); Integer manTotal = mgtAgeTotalVo.getManTotal(); Integer womenTotal = mgtAgeTotalVo.getWomenTotal(); @@ -1742,11 +1787,17 @@ if (nurseTotalVos != null && nurseTotalVos.size() > 0) { nurseTotalVos = listRemoveNull(nurseTotalVos); memberFixedTotalVo.setNurseTotalVos(nurseTotalVos); + }else{ + nurseTotalVos = new ArrayList<>(); + memberFixedTotalVo.setNurseTotalVos(nurseTotalVos); } //获取不同等级的会员数 List<MgtMapIntTotalVo> memberLevelTotalVos = memberMapper.getMerMemberTotalLevel(merTotalDto); if (memberLevelTotalVos != null && memberLevelTotalVos.size() > 0) { memberLevelTotalVos = listRemoveNull(memberLevelTotalVos); + memberFixedTotalVo.setMemberLevelTotalVos(memberLevelTotalVos); + }else{ + memberLevelTotalVos = new ArrayList<>(); memberFixedTotalVo.setMemberLevelTotalVos(memberLevelTotalVos); } // 获取不同商品类型的会员数 @@ -1754,11 +1805,17 @@ if (goodsTypeTotalVos != null && goodsTypeTotalVos.size() > 0) { goodsTypeTotalVos = listRemoveNull(goodsTypeTotalVos); memberFixedTotalVo.setGoodsTypeTotalVos(goodsTypeTotalVos); + }else{ + goodsTypeTotalVos = new ArrayList<>(); + memberFixedTotalVo.setGoodsTypeTotalVos(goodsTypeTotalVos); } //获取会员消费排名 List<MgtMapIntTotalVo> memberPayList = memberMapper.getMerMemberPayRank(merTotalDto); if (memberPayList != null && memberPayList.size() > 0) { memberPayList = listRemoveNull(memberPayList); + memberFixedTotalVo.setMemberPayList(memberPayList); + }else{ + memberPayList = new ArrayList<>(); memberFixedTotalVo.setMemberPayList(memberPayList); } // 获取不同活跃度的会员数 @@ -1768,7 +1825,7 @@ String actStartDate; String actEndDate; Integer count; - List<MgtMapIntTotalVo> MgtMapIntTotalVoList = new ArrayList<>(); + List<MgtMapIntTotalVo> mgtMapIntTotalVoList = new ArrayList<>(); MgtMapIntTotalVo MgtMapIntTotalVo; // 遍历不同活跃度列表,设置活跃度数组和对应的会员数数组 for (int i = 0; i < activenessList.size(); i++) { @@ -1781,9 +1838,12 @@ MgtMapIntTotalVo = new MgtMapIntTotalVo(); MgtMapIntTotalVo.setMapKey(activeness.getActivenessName()); MgtMapIntTotalVo.setMapValue(count); - MgtMapIntTotalVoList.add(MgtMapIntTotalVo); + mgtMapIntTotalVoList.add(MgtMapIntTotalVo); } - memberFixedTotalVo.setActivenessList(MgtMapIntTotalVoList); + memberFixedTotalVo.setActivenessList(mgtMapIntTotalVoList); + }else{ + List<MgtMapIntTotalVo> mgtMapIntTotalVoList = new ArrayList<>(); + memberFixedTotalVo.setActivenessList(mgtMapIntTotalVoList); } return memberFixedTotalVo; } -- Gitblit v1.7.1