From 1ffb6c7910cfb4d55b4c169142b67ea872fcf614 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期二, 27 六月 2023 19:55:50 +0800 Subject: [PATCH] BUG联调 --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 108 ++++++++++++++++++++++------------------------------- 1 files changed, 45 insertions(+), 63 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 87aab84..ff6b573 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 @@ -1096,8 +1096,14 @@ //获取基础统计 MgtPlTotalMemberTotalVo plTotalMemberTotalVo = memberMapper.getPlTotalMemberTotal(mgtBasePlatformDto); MgtAgeTotalVo mgtAgeTotalVo = memberMapper.getPlTotalMemberTotalAge(mgtBasePlatformDto); - plTotalMemberTotalVo.setManTotal(mgtAgeTotalVo.getManTotal()); - plTotalMemberTotalVo.setWomenTotal(mgtAgeTotalVo.getWomenTotal()); + if(mgtAgeTotalVo!=null){ + plTotalMemberTotalVo.setManTotal(mgtAgeTotalVo.getManTotal()); + plTotalMemberTotalVo.setWomenTotal(mgtAgeTotalVo.getWomenTotal()); + }else{ + plTotalMemberTotalVo.setManTotal(0); + plTotalMemberTotalVo.setWomenTotal(0); + } + // 年龄段数组 String[] ageKey = {"<20", "21-30", "31-40", "41-50", ">50"}; // 不同年龄段的会员数数组 @@ -1105,109 +1111,85 @@ // 设置年龄段数组和不同年龄段的会员数数组 plTotalMemberTotalVo.setAgeKey(ageKey); plTotalMemberTotalVo.setAgeValue(ageValue); - // 获取不同护理类型的会员数 + // 获取不同调理类型的会员数 List<MgtMapTotalVo> nurseTotalVos = memberMapper.getPlTotalMemberTotalNurse(mgtBasePlatformDto); if (nurseTotalVos != null && nurseTotalVos.size() > 0) { - String[] nurseKey = new String[nurseTotalVos.size()]; - Integer[] nurseValue = new Integer[nurseTotalVos.size()]; - // 遍历不同护理类型的会员数列表,设置护理类型数组和对应的会员数数组 - for (int i = 0; i < nurseTotalVos.size(); i++) { - nurseKey[i] = nurseTotalVos.get(i).getMapKey(); - nurseValue[i] = nurseTotalVos.get(i).getMapValue(); - } - plTotalMemberTotalVo.setNurseKey(nurseKey); - plTotalMemberTotalVo.setNurseValue(nurseValue); + nurseTotalVos = listRemoveNull(nurseTotalVos); + plTotalMemberTotalVo.setNurseTotalVos(nurseTotalVos); } // 获取不同商品类型的会员数 List<MgtMapTotalVo> goodsTypeTotalVos = memberMapper.getPlTotalMemberTotalGoodsType(mgtBasePlatformDto); if (goodsTypeTotalVos != null && goodsTypeTotalVos.size() > 0) { - String[] goodsTypeKey = new String[goodsTypeTotalVos.size()]; - Integer[] goodsTypeValue = new Integer[goodsTypeTotalVos.size()]; - // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组 - for (int i = 0; i < goodsTypeTotalVos.size(); i++) { - goodsTypeKey[i] = goodsTypeTotalVos.get(i).getMapKey(); - goodsTypeValue[i] = goodsTypeTotalVos.get(i).getMapValue(); - } - plTotalMemberTotalVo.setGoodsTypeKey(goodsTypeKey); - plTotalMemberTotalVo.setGoodsTypeValue(goodsTypeValue); + goodsTypeTotalVos = listRemoveNull(goodsTypeTotalVos); + plTotalMemberTotalVo.setGoodsTypeTotalVos(goodsTypeTotalVos); } // 获取不同活跃度的会员数 List<Long> shopIdList = mgtBasePlatformDto.getShopIdList(); List<Activeness> activenessList = remoteConfigService.listActiveness().getData(); if (activenessList != null && !activenessList.isEmpty()) { - String[] activenessKey = new String[activenessList.size()]; - Integer[] activenessValue = new Integer[activenessList.size()]; Activeness activeness; String actStartDate; String actEndDate; Integer count; + List<MgtMapTotalVo> mgtMapTotalVoList = new ArrayList<>(); + MgtMapTotalVo mgtMapTotalVo; // 遍历不同活跃度列表,设置活跃度数组和对应的会员数数组 for (int i = 0; i < activenessList.size(); i++) { activeness = activenessList.get(i); actStartDate = DateUtils.parseDateToStr("yyyy-MM-dd", DateUtils.addDays(nowDay, activeness.getEndDay())); actEndDate = DateUtils.parseDateToStr("yyyy-MM-dd", DateUtils.addDays(nowDay, activeness.getStartDay())); count = memberMapper.getPlTotalMemberTotalActiveness(shopIdList, actStartDate, actEndDate); - activenessKey[i] = activeness.getActivenessName(); - activenessValue[i] = count; + if(StringUtils.isNotBlank(activeness.getActivenessName())){ + mgtMapTotalVo = new MgtMapTotalVo(); + mgtMapTotalVo.setMapKey(activeness.getActivenessName()); + mgtMapTotalVo.setMapValue(count); + } } - plTotalMemberTotalVo.setActivenessKey(activenessKey); - plTotalMemberTotalVo.setActivenessValue(activenessValue); + plTotalMemberTotalVo.setActivenessList(mgtMapTotalVoList); } //获取会员消费排名 List<MgtMapTotalVo> memberPayList = memberMapper.getPlTotalMemberRankPay(mgtBasePlatformDto); if (memberPayList != null && memberPayList.size() > 0) { - String[] memberPayKey = new String[memberPayList.size()]; - Integer[] memberPayValue = new Integer[memberPayList.size()]; - // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组 - for (int i = 0; i < memberPayList.size(); i++) { - memberPayKey[i] = memberPayList.get(i).getMapKey(); - memberPayValue[i] = memberPayList.get(i).getMapValue(); - } - plTotalMemberTotalVo.setOrderRankKey(memberPayKey); - plTotalMemberTotalVo.setOrderRankValue(memberPayValue); + memberPayList = listRemoveNull(memberPayList); + plTotalMemberTotalVo.setMemberPayList(memberPayList); } //获取来源渠道排名 List<MgtMapTotalVo> customerSourceList = memberMapper.getPlTotalMemberRankCustomerSource(mgtBasePlatformDto); if (customerSourceList != null && customerSourceList.size() > 0) { - String[] customerSourceKey = new String[customerSourceList.size()]; - Integer[] customerSourceValue = new Integer[customerSourceList.size()]; - // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组 - for (int i = 0; i < customerSourceList.size(); i++) { - customerSourceKey[i] = customerSourceList.get(i).getMapKey(); - customerSourceValue[i] = customerSourceList.get(i).getMapValue(); - } - plTotalMemberTotalVo.setCustomerSourceKey(customerSourceKey); - plTotalMemberTotalVo.setCustomerSourceValue(customerSourceValue); + customerSourceList = listRemoveNull(customerSourceList); + plTotalMemberTotalVo.setCustomerSourceList(customerSourceList); } //获取商铺会员排名 List<MgtMapTotalVo> shopMemberRankList = memberMapper.getPlTotalMemberRank(mgtBasePlatformDto); if (shopMemberRankList != null && shopMemberRankList.size() > 0) { - String[] shopMemberRankKey = new String[shopMemberRankList.size()]; - Integer[] shopMemberRankValue = new Integer[shopMemberRankList.size()]; - // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组 - for (int i = 0; i < shopMemberRankList.size(); i++) { - shopMemberRankKey[i] = shopMemberRankList.get(i).getMapKey(); - shopMemberRankValue[i] = shopMemberRankList.get(i).getMapValue(); - } - plTotalMemberTotalVo.setMemberRankKey(shopMemberRankKey); - plTotalMemberTotalVo.setMemberRankValue(shopMemberRankValue); + shopMemberRankList = listRemoveNull(shopMemberRankList); + plTotalMemberTotalVo.setShopMemberRankList(shopMemberRankList); } List<MgtMapTotalVo> memberGoodsRankList = remoteOrderService.listMemberGoodsRank(mgtBasePlatformDto).getData(); if (memberGoodsRankList != null && memberGoodsRankList.size() > 0) { - String[] shopMemberRankKey = new String[memberGoodsRankList.size()]; - Integer[] shopMemberRankValue = new Integer[memberGoodsRankList.size()]; - // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组 - for (int i = 0; i < memberGoodsRankList.size(); i++) { - shopMemberRankKey[i] = memberGoodsRankList.get(i).getMapKey(); - shopMemberRankValue[i] = memberGoodsRankList.get(i).getMapValue(); - } - plTotalMemberTotalVo.setGoodsRankKey(shopMemberRankKey); - plTotalMemberTotalVo.setGoodsRankValue(shopMemberRankValue); + memberGoodsRankList = listRemoveNull(memberGoodsRankList); + plTotalMemberTotalVo.setMemberGoodsRankList(memberGoodsRankList); } return plTotalMemberTotalVo; } /** + * @description 去除空字符串 + * @author jqs + * @date 2023/6/27 17:35 + * @param mgtMapTotalVos + * @return List<MgtMapTotalVo> + */ + private List<MgtMapTotalVo> listRemoveNull(List<MgtMapTotalVo> mgtMapTotalVos){ + for (int i = 0; i < mgtMapTotalVos.size(); i++) { + if(StringUtils.isBlank(mgtMapTotalVos.get(i).getMapKey())){ + mgtMapTotalVos.remove(i); + } + } + return mgtMapTotalVos; + } + + /** * @description 通过shopId获取userId * @author jqs * @date 2023/6/21 17:11 -- Gitblit v1.7.1