jiangqs
2023-06-28 efe79e640c4598f52c2d1032fcead000edf8049e
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -1072,11 +1072,11 @@
    }
    /**
     * @param mgtShopOrderPageDto
     * @return MgtMemberOrderTotalVo
     * @description  获取订单统计
     * @author  jqs
     * @date    2023/6/16 12:51
     * @param mgtShopOrderPageDto
     * @return  MgtMemberOrderTotalVo
     */
    @Override
    public MgtOrderTotal getMgtOrderTotal(MgtShopOrderPageDto mgtShopOrderPageDto){
@@ -1118,12 +1118,12 @@
    }
    /**
     * @description  分页获取门店订单列表
     * @author  jqs
     * @date    2023/6/16 14:57
     * @param page
     * @param mgtShopOrderPageDto
     * @return  List<MgtShopOrderPageVo>
     * @description 分页获取门店订单列表
     * @author jqs
     * @date 2023/6/16 14:57
     */
    @Override
    public List<MgtShopOrderPageVo> pageMgtShopOrder(Page page, MgtShopOrderPageDto mgtShopOrderPageDto){
@@ -1197,11 +1197,11 @@
    /**
     * @param orderId
     * @return MgtOrderDetailVo
     * @description  获取订单详情
     * @author  jqs
     * @date    2023/6/16 16:49
     * @param orderId
     * @return  MgtOrderDetailVo
     */
    @Override
    public MgtOrderDetailVo getMgtOrderDetail(String orderId){
@@ -1278,9 +1278,9 @@
    }
    /**
     * @description boardOrderTotal
     * @param
     * @return MgtBulletinBoardVo
     * @description boardOrderTotal
     * @author jqs34
     * @date 2023/6/18 17:20
     */
@@ -1291,9 +1291,9 @@
    }
    /**
     * @description getTotalOrderTotal
     * @param mgtBaseShopDto
     * @return MgtTotalOrderTotalVo
     * @description getTotalOrderTotal
     * @author jqs34
     * @date 2023/6/19 22:23
     */
@@ -1347,6 +1347,8 @@
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
                goodsTypeTotalList.add(mgtMapTotalVo);
                goodsTypeMoneyList.add(mgtMapBigTotalVo);
            }
            mgtTotalOrderTotalVo.setGoodsTypeTotalList(goodsTypeTotalList);
            mgtTotalOrderTotalVo.setGoodsTypeMoneyList(goodsTypeMoneyList);
@@ -1367,11 +1369,11 @@
    }
    /**
     * @param mgtMapTotalVos
     * @return List<MgtMapTotalVo>
     * @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++) {
@@ -1383,11 +1385,11 @@
    }
    /**
     * @param mgtMapTotalVos
     * @return List<MgtMapTotalVo>
     * @description  去除空字符串
     * @author  jqs
     * @date    2023/6/27 17:35
     * @param mgtMapTotalVos
     * @return  List<MgtMapTotalVo>
     */
    private List<MgtMapBigTotalVo> bigListRemoveNull(List<MgtMapBigTotalVo> mgtMapTotalVos){
        for (int i = 0; i < mgtMapTotalVos.size(); i++) {
@@ -1399,11 +1401,11 @@
    }
    /**
     * @param mgtBaseShopDto
     * @return MgtTotalActivityTotalVo
     * @description
     * @author  jqs
     * @date    2023/6/20 9:27
     * @param mgtBaseShopDto
     * @return  MgtTotalActivityTotalVo
     */
    @Override
    public MgtTotalActivityTotalVo getTotalActivityTotal(MgtBaseShopDto mgtBaseShopDto){
@@ -1412,35 +1414,47 @@
        //获取商品分类销售数据
        List<MgtMapTotalPlusVo> mgtMapTotalVoGoodsType = orderMapper.listTotalActivityTotalGoodsType(mgtBaseShopDto);
        if (mgtMapTotalVoGoodsType != null && mgtMapTotalVoGoodsType.size() > 0) {
            String[] goodsTypeKey = new String[mgtMapTotalVoGoodsType.size()];
            Integer[] goodsTypeTotalValue = new Integer[mgtMapTotalVoGoodsType.size()];
            BigDecimal[] goodsTypeMoneyValue = new BigDecimal[mgtMapTotalVoGoodsType.size()];
            List<MgtMapTotalVo> goodsTypeTotalList = new ArrayList<>();
            List<MgtMapBigTotalVo> goodsTypeMoneyList = new ArrayList<>();
            totalActivityTotalVo.setCycleTotal(0);
            totalActivityTotalVo.setCycleMoney(BigDecimal.ZERO);
            totalActivityTotalVo.setServiceTotal(0);
            totalActivityTotalVo.setServiceMoney(BigDecimal.ZERO);
            totalActivityTotalVo.setExperienceTotal(0);
            totalActivityTotalVo.setExperienceMoney(BigDecimal.ZERO);
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            MgtMapTotalVo mgtMapTotalVo;
            MgtMapBigTotalVo mgtMapBigTotalVo;
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            for (int i = 0; i < mgtMapTotalVoGoodsType.size(); i++) {
                goodsTypeTotalValue[i] = mgtMapTotalVoGoodsType.get(i).getMapValueFirst();
                goodsTypeMoneyValue[i] = mgtMapTotalVoGoodsType.get(i).getMapValueSecond();
                mgtMapTotalVo = new MgtMapTotalVo();
                mgtMapBigTotalVo = new MgtMapBigTotalVo();
                mgtMapTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                mgtMapBigTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")){
                    goodsTypeKey[i] = "周期";
                    totalActivityTotalVo.setCycleTotal(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setCycleMoney(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                    totalActivityTotalVo.setCyclePerson(mgtMapTotalVoGoodsType.get(i).getMapValueThird());
                    mgtMapTotalVo.setMapKey("周期");
                    mgtMapBigTotalVo.setMapKey("周期");
                    totalActivityTotalVo.setCycleTotal(totalActivityTotalVo.getCycleTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setCycleMoney(totalActivityTotalVo.getCycleMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")){
                    goodsTypeKey[i] = "服务";
                    totalActivityTotalVo.setServiceTotal(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setServiceMoney(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                    totalActivityTotalVo.setServicePerson(mgtMapTotalVoGoodsType.get(i).getMapValueThird());
                    mgtMapTotalVo.setMapKey("服务");
                    mgtMapBigTotalVo.setMapKey("服务");
                    totalActivityTotalVo.setServiceTotal(totalActivityTotalVo.getServiceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setServiceMoney(totalActivityTotalVo.getServiceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")){
                    goodsTypeKey[i] = "体验";
                    totalActivityTotalVo.setExperienceTotal(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setExperienceMoney(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                    totalActivityTotalVo.setExperiencePerson(mgtMapTotalVoGoodsType.get(i).getMapValueThird());
                    mgtMapTotalVo.setMapKey("体验");
                    mgtMapBigTotalVo.setMapKey("体验");
                    totalActivityTotalVo.setExperienceTotal(totalActivityTotalVo.getExperienceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setExperienceMoney(totalActivityTotalVo.getExperienceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")){
                    goodsTypeKey[i] = "单品";
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
                goodsTypeTotalList.add(mgtMapTotalVo);
                goodsTypeMoneyList.add(mgtMapBigTotalVo);
            }
            totalActivityTotalVo.setGoodsTypeKey(goodsTypeKey);
            totalActivityTotalVo.setGoodsTypeTotalValue(goodsTypeTotalValue);
            totalActivityTotalVo.setGoodsTypeMoneyValue(goodsTypeMoneyValue);
            totalActivityTotalVo.setGoodsTypeTotalList(goodsTypeTotalList);
            totalActivityTotalVo.setGoodsTypeMoneyList(goodsTypeMoneyList);
        }
        //获取订单分布
        List<MgtMapTotalPlusVo> mgtMapTotalVos = orderMapper.listTotalActivityTotal(mgtBaseShopDto);
@@ -1461,11 +1475,11 @@
    }
    /**
     * @param mgtActivityAgeDto
     * @return MgtTotalActivityTotalVo
     * @description
     * @author  jqs
     * @date    2023/6/20 9:56
     * @param mgtActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     */
    @Override
    public MgtTotalActivityTotalVo getTotalActivityAgeRank(MgtActivityAgeDto mgtActivityAgeDto){
@@ -1473,16 +1487,30 @@
        mgtActivityAgeDto.setUserIds(userIds);
        userIds = remoteMemberService.listUserIdByAge(mgtActivityAgeDto).getData();
        mgtActivityAgeDto.setUserIds(userIds);
        MgtTotalActivityTotalVo totalActivityTotalVo = orderMapper.getTotalActivityAgeRank(mgtActivityAgeDto);
        List<MgtMapTotalVo> ageRankList = orderMapper.getTotalActivityAgeRank(mgtActivityAgeDto);
        ageRankList = listRemoveNull(ageRankList);
        MgtTotalActivityTotalVo totalActivityTotalVo = new MgtTotalActivityTotalVo();
        String[] activityAgeKey = new String[ageRankList.size()];
        Integer[] activityAgeValue = new Integer[ageRankList.size()];
        if (!ageRankList.isEmpty()) {
            MgtMapTotalVo mgtMapTotalVo;
            for (int i = 0; i < ageRankList.size(); i++) {
                mgtMapTotalVo = ageRankList.get(i);
                activityAgeKey[i] = mgtMapTotalVo.getMapKey();
                activityAgeValue[i] = mgtMapTotalVo.getMapValue();
            }
        }
        totalActivityTotalVo.setActivityAgeKey(activityAgeKey);
        totalActivityTotalVo.setActivityAgeValue(activityAgeValue);
        return totalActivityTotalVo;
    }
    /**
     * @param mgtBaseShopDto
     * @return MgtTotalDataTotalVo
     * @description
     * @author  jqs
     * @date    2023/6/20 15:31
     * @param mgtBaseShopDto
     * @return  MgtTotalDataTotalVo
     */
    @Override
    public MgtTotalDataTotalVo getTotalDataTotal(MgtBaseShopDto mgtBaseShopDto){
@@ -1498,11 +1526,11 @@
    }
    /**
     * @param mgtBasePlatformDto
     * @return List<MgtMapTotalVo>
     * @description
     * @author  jqs
     * @date    2023/6/21 15:26
     * @param mgtBasePlatformDto
     * @return  List<MgtMapTotalVo>
     */
    @Override
    public List<MgtMapTotalVo> listMemberGoodsRank(MgtBasePlatformDto mgtBasePlatformDto){
@@ -1510,9 +1538,9 @@
    }
    /**
     * @description 获取平台商户数据统计
     * @param mgtBasePlatformDto
     * @return List<MgtTotalDataTotalVo>
     * @description 获取平台商户数据统计
     * @author jqs34
     * @date 2023/6/23 14:01
     */
@@ -1553,9 +1581,9 @@
    }
    /**
     * @description 获取平台商户订单统计
     * @param mgtBasePlatformDto
     * @return MgtTotalOrderTotalVo
     * @description 获取平台商户订单统计
     * @author jqs34
     * @date 2023/6/19 22:23
     */
@@ -1632,6 +1660,8 @@
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
                goodsTypeTotalList.add(mgtMapTotalVo);
                goodsTypeMoneyList.add(mgtMapBigTotalVo);
            }
            mgtTotalOrderTotalVo.setGoodsTypeTotalList(goodsTypeTotalList);
            mgtTotalOrderTotalVo.setGoodsTypeMoneyList(goodsTypeMoneyList);
@@ -1652,11 +1682,11 @@
    }
    /**
     * @param mgtBasePlatformDto
     * @return MgtTotalActivityTotalVo
     * @description
     * @author  jqs
     * @date    2023/6/20 9:27
     * @param mgtBasePlatformDto
     * @return  MgtTotalActivityTotalVo
     */
    @Override
    public MgtPlTotalActivityTotalVo getPlTotalActivityTotal(MgtBasePlatformDto mgtBasePlatformDto){
@@ -1772,30 +1802,44 @@
    }
    /**
     * @param mgtPlActivityAgeDto
     * @return MgtTotalActivityTotalVo
     * @description
     * @author  jqs
     * @date    2023/6/20 9:56
     * @param mgtPlActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     */
    @Override
    public List<MgtMapTotalPlusVo> getPlTotalActivityAgeRank(MgtPlActivityAgeDto mgtPlActivityAgeDto){
    public MgtPlTotalActivityTotalVo getPlTotalActivityAgeRank(MgtPlActivityAgeDto mgtPlActivityAgeDto) {
        List<Long> userIds = orderMapper.getPlUserIdAgeRank(mgtPlActivityAgeDto);
        MgtActivityAgeDto mgtActivityAgeDto = new MgtActivityAgeDto();
        mgtActivityAgeDto.setUserIds(userIds);
        mgtActivityAgeDto.setAgeType(mgtPlActivityAgeDto.getAgeType());
        userIds = remoteMemberService.listUserIdByAge(mgtActivityAgeDto).getData();
        mgtPlActivityAgeDto.setUserIds(userIds);
        List<MgtMapTotalPlusVo> ageRankList = orderMapper.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        return ageRankList;
        List<MgtMapTotalVo> ageRankList = orderMapper.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        ageRankList = listRemoveNull(ageRankList);
        MgtPlTotalActivityTotalVo plTotalActivityTotalVo = new MgtPlTotalActivityTotalVo();
        String[] activityAgeKey = new String[ageRankList.size()];
        Integer[] activityAgeValue = new Integer[ageRankList.size()];
        if (!ageRankList.isEmpty()) {
            MgtMapTotalVo mgtMapTotalVo;
            for (int i = 0; i < ageRankList.size(); i++) {
                mgtMapTotalVo = ageRankList.get(i);
                activityAgeKey[i] = mgtMapTotalVo.getMapKey();
                activityAgeValue[i] = mgtMapTotalVo.getMapValue();
            }
        }
        plTotalActivityTotalVo.setActivityAgeKey(activityAgeKey);
        plTotalActivityTotalVo.setActivityAgeValue(activityAgeValue);
        return plTotalActivityTotalVo;
    }
    /**
     * @param verifyCode
     * @return MerVerifyCouponVo
     * @description  获取优惠券核销信息
     * @author  jqs
     * @date    2023/6/27 11:10
     * @param verifyCode
     * @return  MerVerifyCouponVo
     */
    @Override
    public MerVerifyCouponVo verifyCoupon(String verifyCode){