Commit 4f33a0c9c00b8c352eeb98e01babbdb8ed360216

Authored by owen
1 parent 5f57cc62

统计:交易统计Review修改

Showing 46 changed files with 418 additions and 294 deletions
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/convert/trade/TradeStatisticsConvert.java
1 1 package cn.iocoder.yudao.module.statistics.convert.trade;
2 2  
3   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
  3 +import cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO;
4 4 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeStatisticsComparisonRespVO;
5 5 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeSummaryRespVO;
6 6 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeTrendSummaryExcelVO;
7 7 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeTrendSummaryRespVO;
8 8 import cn.iocoder.yudao.module.statistics.dal.dataobject.trade.TradeStatisticsDO;
  9 +import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeOrderSummaryRespBO;
9 10 import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeSummaryRespBO;
10   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
11   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
  11 +import cn.iocoder.yudao.module.statistics.service.trade.bo.AfterSaleSummaryRespBO;
12 12 import org.mapstruct.Mapper;
13 13 import org.mapstruct.factory.Mappers;
14 14  
... ... @@ -46,8 +46,8 @@ public interface TradeStatisticsConvert {
46 46  
47 47 List<TradeTrendSummaryExcelVO> convertList02(List<TradeTrendSummaryRespVO> list);
48 48  
49   - TradeStatisticsDO convert(LocalDateTime time, TradeOrderSummaryRespDTO orderSummary,
50   - AfterSaleSummaryRespDTO afterSaleSummary, Integer brokerageSettlementPrice,
51   - WalletSummaryRespDTO walletSummary);
  49 + TradeStatisticsDO convert(LocalDateTime time, TradeOrderSummaryRespBO orderSummary,
  50 + AfterSaleSummaryRespBO afterSaleSummary, Integer brokerageSettlementPrice,
  51 + WalletSummaryRespBO walletSummary);
52 52  
53 53 }
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/dal/mysql/trade/AfterSaleStatisticsMapper.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.dal.mysql.trade;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
  4 +import cn.iocoder.yudao.module.statistics.dal.dataobject.trade.TradeStatisticsDO;
  5 +import cn.iocoder.yudao.module.statistics.service.trade.bo.AfterSaleSummaryRespBO;
  6 +import org.apache.ibatis.annotations.Mapper;
  7 +import org.apache.ibatis.annotations.Param;
  8 +
  9 +import java.time.LocalDateTime;
  10 +
  11 +/**
  12 + * 交易统计 Mapper
  13 + *
  14 + * @author owen
  15 + */
  16 +@Mapper
  17 +public interface AfterSaleStatisticsMapper extends BaseMapperX<TradeStatisticsDO> {
  18 +
  19 + AfterSaleSummaryRespBO selectSummaryByRefundTimeBetween(@Param("beginTime") LocalDateTime beginTime,
  20 + @Param("endTime") LocalDateTime endTime);
  21 +
  22 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/dal/mysql/trade/BrokerageStatisticsMapper.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.dal.mysql.trade;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
  4 +import cn.iocoder.yudao.module.statistics.dal.dataobject.trade.TradeStatisticsDO;
  5 +import org.apache.ibatis.annotations.Mapper;
  6 +import org.apache.ibatis.annotations.Param;
  7 +
  8 +import java.time.LocalDateTime;
  9 +
  10 +/**
  11 + * 交易统计 Mapper
  12 + *
  13 + * @author owen
  14 + */
  15 +@Mapper
  16 +public interface BrokerageStatisticsMapper extends BaseMapperX<TradeStatisticsDO> {
  17 +
  18 + Integer selectSummaryPriceByStatusAndUnfreezeTimeBetween(@Param("bizType") Integer bizType,
  19 + @Param("status") Integer status,
  20 + @Param("beginTime") LocalDateTime beginTime,
  21 + @Param("endTime") LocalDateTime endTime);
  22 +
  23 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/dal/mysql/trade/PayWalletStatisticsMapper.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.dal.mysql.trade;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
  4 +import cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO;
  5 +import cn.iocoder.yudao.module.statistics.dal.dataobject.trade.TradeStatisticsDO;
  6 +import org.apache.ibatis.annotations.Mapper;
  7 +import org.apache.ibatis.annotations.Param;
  8 +
  9 +import java.time.LocalDateTime;
  10 +
  11 +/**
  12 + * 交易统计 Mapper
  13 + *
  14 + * @author owen
  15 + */
  16 +@Mapper
  17 +public interface PayWalletStatisticsMapper extends BaseMapperX<TradeStatisticsDO> {
  18 +
  19 + WalletSummaryRespBO selectRechargeSummaryByPayTimeBetween(@Param("beginTime") LocalDateTime beginTime,
  20 + @Param("endTime") LocalDateTime endTime,
  21 + @Param("payStatus") Boolean payStatus);
  22 +
  23 + WalletSummaryRespBO selectRechargeSummaryByRefundTimeBetween(@Param("beginTime") LocalDateTime beginTime,
  24 + @Param("endTime") LocalDateTime endTime,
  25 + @Param("refundStatus") Integer refundStatus);
  26 +
  27 + Integer selectPriceSummaryByBizTypeAndCreateTimeBetween(@Param("beginTime") LocalDateTime beginTime,
  28 + @Param("endTime") LocalDateTime endTime,
  29 + @Param("bizType") Integer bizType);
  30 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/dal/mysql/trade/TradeOrderStatisticsMapper.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.dal.mysql.trade;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
  4 +import cn.iocoder.yudao.module.statistics.dal.dataobject.trade.TradeStatisticsDO;
  5 +import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeOrderSummaryRespBO;
  6 +import org.apache.ibatis.annotations.Mapper;
  7 +import org.apache.ibatis.annotations.Param;
  8 +
  9 +import java.time.LocalDateTime;
  10 +
  11 +/**
  12 + * 交易统计 Mapper
  13 + *
  14 + * @author owen
  15 + */
  16 +@Mapper
  17 +public interface TradeOrderStatisticsMapper extends BaseMapperX<TradeStatisticsDO> {
  18 +
  19 + TradeOrderSummaryRespBO selectSummaryByPayTimeBetween(@Param("beginTime") LocalDateTime beginTime,
  20 + @Param("endTime") LocalDateTime endTime);
  21 +
  22 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/AfterSaleStatisticsService.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.service.trade.bo.AfterSaleSummaryRespBO;
  4 +
  5 +import java.time.LocalDateTime;
  6 +
  7 +/**
  8 + * 售后统计 Service 接口
  9 + *
  10 + * @author owen
  11 + */
  12 +public interface AfterSaleStatisticsService {
  13 +
  14 + /**
  15 + * 获取售后单统计
  16 + *
  17 + * @param beginTime 起始时间
  18 + * @param endTime 截止时间
  19 + * @return 售后统计结果
  20 + */
  21 + AfterSaleSummaryRespBO getAfterSaleSummary(LocalDateTime beginTime, LocalDateTime endTime);
  22 +
  23 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/AfterSaleStatisticsServiceImpl.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.dal.mysql.trade.AfterSaleStatisticsMapper;
  4 +import cn.iocoder.yudao.module.statistics.service.trade.bo.AfterSaleSummaryRespBO;
  5 +import org.springframework.stereotype.Service;
  6 +import org.springframework.validation.annotation.Validated;
  7 +
  8 +import javax.annotation.Resource;
  9 +import java.time.LocalDateTime;
  10 +
  11 +/**
  12 + * 售后统计 Service 实现类
  13 + *
  14 + * @author owen
  15 + */
  16 +@Service
  17 +@Validated
  18 +public class AfterSaleStatisticsServiceImpl implements AfterSaleStatisticsService {
  19 +
  20 + @Resource
  21 + private AfterSaleStatisticsMapper afterSaleStatisticsMapper;
  22 +
  23 + @Override
  24 + public AfterSaleSummaryRespBO getAfterSaleSummary(LocalDateTime beginTime, LocalDateTime endTime) {
  25 + return afterSaleStatisticsMapper.selectSummaryByRefundTimeBetween(beginTime, endTime);
  26 + }
  27 +
  28 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/BrokerageStatisticsService.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import java.time.LocalDateTime;
  4 +
  5 +/**
  6 + * 分销统计 Service 接口
  7 + *
  8 + * @author owen
  9 + */
  10 +public interface BrokerageStatisticsService {
  11 +
  12 + /**
  13 + * 获取已结算的佣金金额
  14 + *
  15 + * @param beginTime 起始时间
  16 + * @param endTime 截止时间
  17 + * @return 已结算的佣金金额
  18 + */
  19 + Integer getBrokerageSettlementPriceSummary(LocalDateTime beginTime, LocalDateTime endTime);
  20 +
  21 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/BrokerageStatisticsServiceImpl.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.dal.mysql.trade.BrokerageStatisticsMapper;
  4 +import cn.iocoder.yudao.module.trade.enums.brokerage.BrokerageRecordBizTypeEnum;
  5 +import cn.iocoder.yudao.module.trade.enums.brokerage.BrokerageRecordStatusEnum;
  6 +import org.springframework.stereotype.Service;
  7 +import org.springframework.validation.annotation.Validated;
  8 +
  9 +import javax.annotation.Resource;
  10 +import java.time.LocalDateTime;
  11 +
  12 +/**
  13 + * 分销统计 Service 实现类
  14 + *
  15 + * @author owen
  16 + */
  17 +@Service
  18 +@Validated
  19 +public class BrokerageStatisticsServiceImpl implements BrokerageStatisticsService {
  20 +
  21 + @Resource
  22 + private BrokerageStatisticsMapper brokerageStatisticsMapper;
  23 +
  24 + @Override
  25 + public Integer getBrokerageSettlementPriceSummary(LocalDateTime beginTime, LocalDateTime endTime) {
  26 + return brokerageStatisticsMapper.selectSummaryPriceByStatusAndUnfreezeTimeBetween(
  27 + BrokerageRecordBizTypeEnum.ORDER.getType(), BrokerageRecordStatusEnum.SETTLEMENT.getStatus(),
  28 + beginTime, endTime);
  29 + }
  30 +
  31 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/PayWalletStatisticsService.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO;
  4 +
  5 +import java.time.LocalDateTime;
  6 +
  7 +/**
  8 + * 钱包统计 Service 接口
  9 + *
  10 + * @author owen
  11 + */
  12 +public interface PayWalletStatisticsService {
  13 +
  14 + /**
  15 + * 获取钱包统计
  16 + *
  17 + * @param beginTime 起始时间
  18 + * @param endTime 截止时间
  19 + * @return 钱包统计
  20 + */
  21 + WalletSummaryRespBO getWalletSummary(LocalDateTime beginTime, LocalDateTime endTime);
  22 +
  23 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/PayWalletStatisticsServiceImpl.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO;
  4 +import cn.iocoder.yudao.module.pay.enums.member.PayWalletBizTypeEnum;
  5 +import cn.iocoder.yudao.module.pay.enums.refund.PayRefundStatusEnum;
  6 +import cn.iocoder.yudao.module.statistics.dal.mysql.trade.PayWalletStatisticsMapper;
  7 +import org.springframework.stereotype.Service;
  8 +import org.springframework.validation.annotation.Validated;
  9 +
  10 +import javax.annotation.Resource;
  11 +import java.time.LocalDateTime;
  12 +
  13 +/**
  14 + * 钱包统计 Service 实现类
  15 + *
  16 + * @author owen
  17 + */
  18 +@Service
  19 +@Validated
  20 +public class PayWalletStatisticsServiceImpl implements PayWalletStatisticsService {
  21 +
  22 + @Resource
  23 + private PayWalletStatisticsMapper payWalletStatisticsMapper;
  24 +
  25 + @Override
  26 + public WalletSummaryRespBO getWalletSummary(LocalDateTime beginTime, LocalDateTime endTime) {
  27 + WalletSummaryRespBO paySummary = payWalletStatisticsMapper.selectRechargeSummaryByPayTimeBetween(
  28 + beginTime, endTime, true);
  29 + WalletSummaryRespBO refundSummary = payWalletStatisticsMapper.selectRechargeSummaryByRefundTimeBetween(
  30 + beginTime, endTime, PayRefundStatusEnum.SUCCESS.getStatus());
  31 + Integer walletPayPrice = payWalletStatisticsMapper.selectPriceSummaryByBizTypeAndCreateTimeBetween(
  32 + beginTime, endTime, PayWalletBizTypeEnum.PAYMENT.getType());
  33 +
  34 + paySummary.setOrderWalletPayPrice(walletPayPrice);
  35 + paySummary.setRechargeRefundCount(refundSummary.getRechargeRefundCount());
  36 + paySummary.setRechargeRefundPrice(refundSummary.getRechargeRefundPrice());
  37 +
  38 + return paySummary;
  39 + }
  40 +
  41 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/TradeOrderStatisticsService.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeOrderSummaryRespBO;
  4 +
  5 +import java.time.LocalDateTime;
  6 +
  7 +/**
  8 + * 交易订单统计 Service 接口
  9 + *
  10 + * @author owen
  11 + */
  12 +public interface TradeOrderStatisticsService {
  13 +
  14 + /**
  15 + * 获取订单统计
  16 + *
  17 + * @param beginTime 起始时间
  18 + * @param endTime 截止时间
  19 + * @return 订单统计结果
  20 + */
  21 + TradeOrderSummaryRespBO getOrderSummary(LocalDateTime beginTime, LocalDateTime endTime);
  22 +
  23 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/TradeOrderStatisticsServiceImpl.java 0 → 100644
  1 +package cn.iocoder.yudao.module.statistics.service.trade;
  2 +
  3 +import cn.iocoder.yudao.module.statistics.dal.mysql.trade.TradeOrderStatisticsMapper;
  4 +import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeOrderSummaryRespBO;
  5 +import org.springframework.stereotype.Service;
  6 +import org.springframework.validation.annotation.Validated;
  7 +
  8 +import javax.annotation.Resource;
  9 +import java.time.LocalDateTime;
  10 +
  11 +/**
  12 + * 交易订单统计 Service 实现类
  13 + *
  14 + * @author owen
  15 + */
  16 +@Service
  17 +@Validated
  18 +public class TradeOrderStatisticsServiceImpl implements TradeOrderStatisticsService {
  19 +
  20 + @Resource
  21 + private TradeOrderStatisticsMapper tradeOrderStatisticsMapper;
  22 +
  23 + @Override
  24 + public TradeOrderSummaryRespBO getOrderSummary(LocalDateTime beginTime, LocalDateTime endTime) {
  25 + return tradeOrderStatisticsMapper.selectSummaryByPayTimeBetween(beginTime, endTime);
  26 + }
  27 +
  28 +}
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/TradeStatisticsServiceImpl.java
... ... @@ -2,8 +2,7 @@ package cn.iocoder.yudao.module.statistics.service.trade;
2 2  
3 3 import cn.hutool.core.date.LocalDateTimeUtil;
4 4 import cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils;
5   -import cn.iocoder.yudao.module.pay.api.wallet.PayWalletApi;
6   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
  5 +import cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO;
7 6 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeStatisticsComparisonRespVO;
8 7 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeSummaryRespVO;
9 8 import cn.iocoder.yudao.module.statistics.controller.admin.trade.vo.TradeTrendSummaryRespVO;
... ... @@ -11,11 +10,8 @@ import cn.iocoder.yudao.module.statistics.convert.trade.TradeStatisticsConvert;
11 10 import cn.iocoder.yudao.module.statistics.dal.dataobject.trade.TradeStatisticsDO;
12 11 import cn.iocoder.yudao.module.statistics.dal.mysql.trade.TradeStatisticsMapper;
13 12 import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeSummaryRespBO;
14   -import cn.iocoder.yudao.module.trade.api.aftersale.TradeAfterSaleApi;
15   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
16   -import cn.iocoder.yudao.module.trade.api.brokerage.TradeBrokerageApi;
17   -import cn.iocoder.yudao.module.trade.api.order.TradeOrderApi;
18   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
  13 +import cn.iocoder.yudao.module.statistics.service.trade.bo.AfterSaleSummaryRespBO;
  14 +import cn.iocoder.yudao.module.statistics.service.trade.bo.TradeOrderSummaryRespBO;
19 15 import org.springframework.stereotype.Service;
20 16 import org.springframework.util.StopWatch;
21 17 import org.springframework.validation.annotation.Validated;
... ... @@ -37,18 +33,14 @@ public class TradeStatisticsServiceImpl implements TradeStatisticsService {
37 33 @Resource
38 34 private TradeStatisticsMapper tradeStatisticsMapper;
39 35  
40   - // TODO @疯狂:统计逻辑,自己服务 mapper 去统计,不要调用其它服务 API;
41   - // 主要的考虑点,其它服务是在线的业务,统计是离线业务,尽量不占用他们的 db 资源;
42   - // 统计服务,从建议使用从库,或者从 mysql 抽取到单独的 clickhouse 或者其它的大数据组件;
43   -
44 36 @Resource
45   - private TradeOrderApi tradeOrderApi;
  37 + private TradeOrderStatisticsService tradeOrderStatisticsService;
46 38 @Resource
47   - private TradeAfterSaleApi tradeAfterSaleApi;
  39 + private AfterSaleStatisticsService afterSaleStatisticsService;
48 40 @Resource
49   - private TradeBrokerageApi tradeBrokerageApi;
  41 + private BrokerageStatisticsService brokerageStatisticsService;
50 42 @Resource
51   - private PayWalletApi payWalletApi;
  43 + private PayWalletStatisticsService payWalletStatisticsService;
52 44  
53 45 @Override
54 46 public TradeStatisticsComparisonRespVO<TradeSummaryRespVO> getTradeSummaryComparison() {
... ... @@ -90,19 +82,19 @@ public class TradeStatisticsServiceImpl implements TradeStatisticsService {
90 82 // 统计
91 83 StopWatch stopWatch = new StopWatch("交易统计");
92 84 stopWatch.start("统计订单");
93   - TradeOrderSummaryRespDTO orderSummary = tradeOrderApi.getOrderSummary(beginTime, endTime);
  85 + TradeOrderSummaryRespBO orderSummary = tradeOrderStatisticsService.getOrderSummary(beginTime, endTime);
94 86 stopWatch.stop();
95 87  
96 88 stopWatch.start("统计售后");
97   - AfterSaleSummaryRespDTO afterSaleSummary = tradeAfterSaleApi.getAfterSaleSummary(beginTime, endTime);
  89 + AfterSaleSummaryRespBO afterSaleSummary = afterSaleStatisticsService.getAfterSaleSummary(beginTime, endTime);
98 90 stopWatch.stop();
99 91  
100 92 stopWatch.start("统计佣金");
101   - Integer brokerageSettlementPrice = tradeBrokerageApi.getBrokerageSettlementPriceSummary(beginTime, endTime);
  93 + Integer brokerageSettlementPrice = brokerageStatisticsService.getBrokerageSettlementPriceSummary(beginTime, endTime);
102 94 stopWatch.stop();
103 95  
104 96 stopWatch.start("统计充值");
105   - WalletSummaryRespDTO walletSummary = payWalletApi.getWalletSummary(beginTime, endTime);
  97 + WalletSummaryRespBO walletSummary = payWalletStatisticsService.getWalletSummary(beginTime, endTime);
106 98 stopWatch.stop();
107 99 // 插入数据
108 100 TradeStatisticsDO entity = TradeStatisticsConvert.INSTANCE.convert(yesterday, orderSummary, afterSaleSummary, brokerageSettlementPrice, walletSummary);
... ...
yudao-module-mall/yudao-module-trade-api/src/main/java/cn/iocoder/yudao/module/trade/api/aftersale/dto/AfterSaleSummaryRespDTO.java renamed to yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/bo/AfterSaleSummaryRespBO.java
1   -package cn.iocoder.yudao.module.trade.api.aftersale.dto;
  1 +package cn.iocoder.yudao.module.statistics.service.trade.bo;
2 2  
3 3 import lombok.Data;
4 4  
... ... @@ -8,7 +8,7 @@ import lombok.Data;
8 8 * @author owen
9 9 */
10 10 @Data
11   -public class AfterSaleSummaryRespDTO {
  11 +public class AfterSaleSummaryRespBO {
12 12  
13 13 /**
14 14 * 退款订单数
... ...
yudao-module-mall/yudao-module-trade-api/src/main/java/cn/iocoder/yudao/module/trade/api/order/dto/TradeOrderSummaryRespDTO.java renamed to yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/bo/TradeOrderSummaryRespBO.java
1   -package cn.iocoder.yudao.module.trade.api.order.dto;
  1 +package cn.iocoder.yudao.module.statistics.service.trade.bo;
2 2  
3 3 import lombok.Data;
4 4  
5 5 /**
6   - * 订单统计 Response DTO
  6 + * 订单统计 Response BO
7 7 *
8 8 * @author owen
9 9 */
10 10 @Data
11   -public class TradeOrderSummaryRespDTO {
  11 +public class TradeOrderSummaryRespBO {
12 12  
13 13 /**
14 14 * 创建订单数
... ...
yudao-module-pay/yudao-module-pay-api/src/main/java/cn/iocoder/yudao/module/pay/api/wallet/dto/WalletSummaryRespDTO.java renamed to yudao-module-mall/yudao-module-statistics-biz/src/main/java/cn/iocoder/yudao/module/statistics/service/trade/bo/WalletSummaryRespBO.java
1   -package cn.iocoder.yudao.module.pay.api.wallet.dto;
  1 +package cn.iocoder.yudao.module.statistics.service.trade.bo;
2 2  
3 3 import lombok.Data;
4 4  
... ... @@ -8,7 +8,7 @@ import lombok.Data;
8 8 * @author owen
9 9 */
10 10 @Data
11   -public class WalletSummaryRespDTO {
  11 +public class WalletSummaryRespBO {
12 12 /**
13 13 * 总支付金额(余额),单位:分
14 14 */
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/resources/mapper/trade/AfterSaleStatisticsMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="cn.iocoder.yudao.module.statistics.dal.mysql.trade.AfterSaleStatisticsMapper">
  4 + <select id="selectSummaryByRefundTimeBetween"
  5 + resultType="cn.iocoder.yudao.module.statistics.service.trade.bo.AfterSaleSummaryRespBO">
  6 + SELECT COUNT(1) AS afterSaleCount,
  7 + SUM(refund_price) AS afterSaleRefundPrice
  8 + FROM trade_after_sale
  9 + WHERE deleted = FALSE
  10 + AND refund_time BETWEEN #{beginTime} AND #{endTime}
  11 + </select>
  12 +</mapper>
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/resources/mapper/trade/BrokerageStatisticsMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="cn.iocoder.yudao.module.statistics.dal.mysql.trade.BrokerageStatisticsMapper">
  4 + <select id="selectSummaryPriceByStatusAndUnfreezeTimeBetween" resultType="java.lang.Integer">
  5 + SELECT SUM(price)
  6 + FROM trade_brokerage_record
  7 + WHERE biz_type = #{bizType}
  8 + AND status = #{status}
  9 + AND deleted = FALSE
  10 + AND unfreeze_time BETWEEN #{beginTime} AND #{endTime}
  11 + </select>
  12 +</mapper>
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/resources/mapper/trade/PayWalletStatisticsMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="cn.iocoder.yudao.module.statistics.dal.mysql.trade.PayWalletStatisticsMapper">
  4 + <select id="selectRechargeSummaryByPayTimeBetween"
  5 + resultType="cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO">
  6 + SELECT COUNT(1) AS rechargePayCount,
  7 + SUM(pay_price) AS rechargePayPrice
  8 + FROM pay_wallet_recharge
  9 + WHERE pay_status = #{payStatus}
  10 + AND deleted = FALSE
  11 + AND pay_time BETWEEN #{beginTime} AND #{endTime}
  12 + </select>
  13 +
  14 + <select id="selectRechargeSummaryByRefundTimeBetween"
  15 + resultType="cn.iocoder.yudao.module.statistics.service.trade.bo.WalletSummaryRespBO">
  16 + SELECT COUNT(1) AS rechargeRefundCount,
  17 + SUM(pay_price) AS rechargeRefundPrice
  18 + FROM pay_wallet_recharge
  19 + WHERE refund_status = #{refundStatus}
  20 + AND deleted = FALSE
  21 + AND refund_time BETWEEN #{beginTime} AND #{endTime}
  22 + </select>
  23 +
  24 + <select id="selectPriceSummaryByBizTypeAndCreateTimeBetween" resultType="java.lang.Integer">
  25 + SELECT SUM(price)
  26 + FROM pay_wallet_transaction
  27 + WHERE biz_type = #{bizType}
  28 + AND deleted = FALSE
  29 + AND create_time BETWEEN #{beginTime} AND #{endTime}
  30 + </select>
  31 +</mapper>
... ...
yudao-module-mall/yudao-module-statistics-biz/src/main/resources/mapper/trade/TradeOrderStatisticsMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="cn.iocoder.yudao.module.statistics.dal.mysql.trade.TradeOrderStatisticsMapper">
  4 + <select id="selectSummaryByPayTimeBetween"
  5 + resultType="cn.iocoder.yudao.module.statistics.service.trade.bo.TradeOrderSummaryRespBO">
  6 + SELECT COUNT(1) AS orderPayCount,
  7 + SUM(pay_price) AS orderPayPrice,
  8 + (SELECT COUNT(1)
  9 + FROM trade_order
  10 + WHERE deleted = FALSE
  11 + AND create_time BETWEEN #{beginTime} AND #{endTime}) AS orderPayPrice
  12 + FROM trade_order
  13 + WHERE deleted = FALSE
  14 + AND pay_time BETWEEN #{beginTime} AND #{endTime}
  15 + </select>
  16 +</mapper>
... ...
yudao-module-mall/yudao-module-trade-api/src/main/java/cn/iocoder/yudao/module/trade/api/aftersale/TradeAfterSaleApi.java
1 1 package cn.iocoder.yudao.module.trade.api.aftersale;
2 2  
3   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
4   -
5   -import java.time.LocalDateTime;
6   -
7 3 /**
8 4 * 售后 API 接口
9 5 *
... ... @@ -11,13 +7,4 @@ import java.time.LocalDateTime;
11 7 */
12 8 public interface TradeAfterSaleApi {
13 9  
14   - /**
15   - * 获取售后单统计
16   - *
17   - * @param beginTime 起始时间
18   - * @param endTime 截止时间
19   - * @return 售后统计结果
20   - */
21   - AfterSaleSummaryRespDTO getAfterSaleSummary(LocalDateTime beginTime, LocalDateTime endTime);
22   -
23 10 }
... ...
yudao-module-mall/yudao-module-trade-api/src/main/java/cn/iocoder/yudao/module/trade/api/brokerage/TradeBrokerageApi.java
1 1 package cn.iocoder.yudao.module.trade.api.brokerage;
2 2  
3   -import java.time.LocalDateTime;
4   -
5 3 /**
6 4 * 分销 API 接口
7 5 *
... ... @@ -9,13 +7,4 @@ import java.time.LocalDateTime;
9 7 */
10 8 public interface TradeBrokerageApi {
11 9  
12   - /**
13   - * 获取已结算的佣金金额
14   - *
15   - * @param beginTime 起始时间
16   - * @param endTime 截止时间
17   - * @return 已结算的佣金金额
18   - */
19   - Integer getBrokerageSettlementPriceSummary(LocalDateTime beginTime, LocalDateTime endTime);
20   -
21 10 }
... ...
yudao-module-mall/yudao-module-trade-api/src/main/java/cn/iocoder/yudao/module/trade/api/order/TradeOrderApi.java
1 1 package cn.iocoder.yudao.module.trade.api.order;
2 2  
3 3 import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderRespDTO;
4   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
5 4  
6   -import java.time.LocalDateTime;
7 5 import java.util.Collection;
8 6 import java.util.List;
9 7  
... ... @@ -31,13 +29,4 @@ public interface TradeOrderApi {
31 29 */
32 30 Integer getOrderStatus(Long id);
33 31  
34   - /**
35   - * 获取订单统计
36   - *
37   - * @param beginTime 起始时间
38   - * @param endTime 截止时间
39   - * @return 订单统计结果
40   - */
41   - TradeOrderSummaryRespDTO getOrderSummary(LocalDateTime beginTime, LocalDateTime endTime);
42   -
43 32 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/api/aftersale/TradeAfterSaleApiImpl.java
1 1 package cn.iocoder.yudao.module.trade.api.aftersale;
2 2  
3   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
4 3 import cn.iocoder.yudao.module.trade.service.aftersale.AfterSaleService;
5 4 import org.springframework.stereotype.Service;
6 5 import org.springframework.validation.annotation.Validated;
7 6  
8 7 import javax.annotation.Resource;
9   -import java.time.LocalDateTime;
10 8  
11 9 /**
12 10 * 售后 API 接口实现类
... ... @@ -20,9 +18,4 @@ public class TradeAfterSaleApiImpl implements TradeAfterSaleApi {
20 18 @Resource
21 19 private AfterSaleService afterSaleService;
22 20  
23   - @Override
24   - public AfterSaleSummaryRespDTO getAfterSaleSummary(LocalDateTime beginTime, LocalDateTime endTime) {
25   - return afterSaleService.getAfterSaleSummary(beginTime, endTime);
26   - }
27   -
28 21 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/api/brokerage/TradeBrokerageApiImpl.java
... ... @@ -5,7 +5,6 @@ import org.springframework.stereotype.Service;
5 5 import org.springframework.validation.annotation.Validated;
6 6  
7 7 import javax.annotation.Resource;
8   -import java.time.LocalDateTime;
9 8  
10 9 /**
11 10 * 订单 API 接口实现类
... ... @@ -19,9 +18,4 @@ public class TradeBrokerageApiImpl implements TradeBrokerageApi {
19 18 @Resource
20 19 private BrokerageRecordService brokerageRecordService;
21 20  
22   - @Override
23   - public Integer getBrokerageSettlementPriceSummary(LocalDateTime beginTime, LocalDateTime endTime) {
24   - return brokerageRecordService.getBrokerageSettlementPriceSummary(beginTime, endTime);
25   - }
26   -
27 21 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/api/order/TradeOrderApiImpl.java
1 1 package cn.iocoder.yudao.module.trade.api.order;
2 2  
3 3 import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderRespDTO;
4   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
5 4 import cn.iocoder.yudao.module.trade.convert.order.TradeOrderConvert;
6 5 import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO;
7 6 import cn.iocoder.yudao.module.trade.service.order.TradeOrderQueryService;
... ... @@ -9,8 +8,6 @@ import org.springframework.stereotype.Service;
9 8 import org.springframework.validation.annotation.Validated;
10 9  
11 10 import javax.annotation.Resource;
12   -
13   -import java.time.LocalDateTime;
14 11 import java.util.Collection;
15 12 import java.util.List;
16 13  
... ... @@ -43,9 +40,4 @@ public class TradeOrderApiImpl implements TradeOrderApi {
43 40 return order.getStatus();
44 41 }
45 42  
46   - @Override
47   - public TradeOrderSummaryRespDTO getOrderSummary(LocalDateTime beginTime, LocalDateTime endTime) {
48   - return tradeOrderQueryService.getOrderSummary(beginTime, endTime);
49   - }
50   -
51 43 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/aftersale/AfterSaleMapper.java
1 1 package cn.iocoder.yudao.module.trade.dal.mysql.aftersale;
2 2  
3   -import cn.hutool.core.bean.BeanUtil;
4   -import cn.hutool.core.collection.CollUtil;
5 3 import cn.iocoder.yudao.framework.common.pojo.PageParam;
6 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
7 5 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
8 6 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
9   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
10 7 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSalePageReqVO;
11 8 import cn.iocoder.yudao.module.trade.dal.dataobject.aftersale.AfterSaleDO;
12 9 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
13   -import com.github.yulichang.toolkit.MPJWrappers;
14 10 import org.apache.ibatis.annotations.Mapper;
15 11  
16   -import java.time.LocalDateTime;
17 12 import java.util.Collection;
18 13  
19 14 @Mapper
... ... @@ -53,12 +48,4 @@ public interface AfterSaleMapper extends BaseMapperX&lt;AfterSaleDO&gt; {
53 48 .in(AfterSaleDO::getStatus, statuses));
54 49 }
55 50  
56   - default AfterSaleSummaryRespDTO selectSummaryByRefundTimeBetween(LocalDateTime beginTime, LocalDateTime endTime) {
57   - return BeanUtil.copyProperties(CollUtil.get(selectMaps(MPJWrappers.<AfterSaleDO>lambdaJoin()
58   - .selectCount(AfterSaleDO::getId, AfterSaleSummaryRespDTO::getAfterSaleCount)
59   - .selectSum(AfterSaleDO::getRefundPrice, AfterSaleSummaryRespDTO::getAfterSaleRefundPrice)
60   - .between(AfterSaleDO::getRefundTime, beginTime, endTime)), 0),
61   - AfterSaleSummaryRespDTO.class);
62   - }
63   -
64 51 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/brokerage/BrokerageRecordMapper.java
1 1 package cn.iocoder.yudao.module.trade.dal.mysql.brokerage;
2 2  
3 3 import cn.hutool.core.bean.BeanUtil;
4   -import cn.hutool.core.collection.CollUtil;
5   -import cn.hutool.core.convert.Convert;
6 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
7 5 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
8 6 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
... ... @@ -111,13 +109,4 @@ public interface BrokerageRecordMapper extends BaseMapperX&lt;BrokerageRecordDO&gt; {
111 109 @Param("beginTime") LocalDateTime beginTime,
112 110 @Param("endTime") LocalDateTime endTime);
113 111  
114   - default Integer selectSummaryPriceByStatusAndUnfreezeTimeBetween(Integer bizType, Integer status,
115   - LocalDateTime beginTime, LocalDateTime endTime) {
116   - return Convert.toInt(CollUtil.getFirst(selectObjs(MPJWrappers.<BrokerageRecordDO>lambdaJoin()
117   - .selectSum(BrokerageRecordDO::getPrice)
118   - .eq(BrokerageRecordDO::getBizType, bizType)
119   - .eq(BrokerageRecordDO::getStatus, status)
120   - .between(BrokerageRecordDO::getUnfreezeTime, beginTime, endTime))), 0);
121   - }
122   -
123 112 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/order/TradeOrderMapper.java
1 1 package cn.iocoder.yudao.module.trade.dal.mysql.order;
2 2  
3   -import cn.hutool.core.bean.BeanUtil;
4   -import cn.hutool.core.collection.CollUtil;
5 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 4 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
7 5 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
8   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
9 6 import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO;
10 7 import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderPageReqVO;
11 8 import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO;
12 9 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
13   -import com.github.yulichang.toolkit.MPJWrappers;
14 10 import org.apache.ibatis.annotations.Mapper;
15 11  
16 12 import java.time.LocalDateTime;
... ... @@ -93,19 +89,6 @@ public interface TradeOrderMapper extends BaseMapperX&lt;TradeOrderDO&gt; {
93 89 .eq(TradeOrderDO::getSeckillActivityId, seckillActivityId));
94 90 }
95 91  
96   - default TradeOrderSummaryRespDTO selectSummaryByPayTimeBetween(LocalDateTime beginTime, LocalDateTime endTime) {
97   - return BeanUtil.copyProperties(CollUtil.get(selectMaps(MPJWrappers.<TradeOrderDO>lambdaJoin()
98   - .selectCount(TradeOrderDO::getId, TradeOrderSummaryRespDTO::getOrderPayCount)
99   - .selectSum(TradeOrderDO::getPayPrice, TradeOrderSummaryRespDTO::getOrderPayPrice)
100   - .between(TradeOrderDO::getPayTime, beginTime, endTime)), 0),
101   - TradeOrderSummaryRespDTO.class);
102   - }
103   -
104   - default Long selectCountByCreateTimeBetween(LocalDateTime beginTime, LocalDateTime endTime) {
105   - return selectCount(new LambdaQueryWrapperX<TradeOrderDO>()
106   - .between(TradeOrderDO::getCreateTime, beginTime, endTime));
107   - }
108   -
109 92 default TradeOrderDO selectOneByPickUpVerifyCode(String pickUpVerifyCode) {
110 93 return selectOne(TradeOrderDO::getPickUpVerifyCode, pickUpVerifyCode);
111 94 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/aftersale/AfterSaleService.java
... ... @@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.trade.service.aftersale;
2 2  
3 3 import cn.iocoder.yudao.framework.common.pojo.PageParam;
4 4 import cn.iocoder.yudao.framework.common.pojo.PageResult;
5   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
6 5 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSaleDisagreeReqVO;
7 6 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSalePageReqVO;
8 7 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSaleRefuseReqVO;
... ... @@ -10,8 +9,6 @@ import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleCre
10 9 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleDeliveryReqVO;
11 10 import cn.iocoder.yudao.module.trade.dal.dataobject.aftersale.AfterSaleDO;
12 11  
13   -import java.time.LocalDateTime;
14   -
15 12 /**
16 13 * 售后订单 Service 接口
17 14 *
... ... @@ -127,13 +124,4 @@ public interface AfterSaleService {
127 124 */
128 125 Long getApplyingAfterSaleCount(Long userId);
129 126  
130   - /**
131   - * 获取售后单统计
132   - *
133   - * @param beginTime 起始时间
134   - * @param endTime 截止时间
135   - * @return 售后统计结果
136   - */
137   - AfterSaleSummaryRespDTO getAfterSaleSummary(LocalDateTime beginTime, LocalDateTime endTime);
138   -
139 127 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/aftersale/AfterSaleServiceImpl.java
... ... @@ -7,7 +7,6 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
7 7 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
8 8 import cn.iocoder.yudao.module.pay.api.refund.PayRefundApi;
9 9 import cn.iocoder.yudao.module.pay.api.refund.dto.PayRefundCreateReqDTO;
10   -import cn.iocoder.yudao.module.trade.api.aftersale.dto.AfterSaleSummaryRespDTO;
11 10 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSaleDisagreeReqVO;
12 11 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSalePageReqVO;
13 12 import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.AfterSaleRefuseReqVO;
... ... @@ -411,9 +410,4 @@ public class AfterSaleServiceImpl implements AfterSaleService {
411 410 return tradeAfterSaleMapper.selectCountByUserIdAndStatus(userId, AfterSaleStatusEnum.APPLYING_STATUSES);
412 411 }
413 412  
414   - @Override
415   - public AfterSaleSummaryRespDTO getAfterSaleSummary(LocalDateTime beginTime, LocalDateTime endTime) {
416   - return tradeAfterSaleMapper.selectSummaryByRefundTimeBetween(beginTime,endTime);
417   - }
418   -
419 413 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/brokerage/BrokerageRecordService.java
... ... @@ -156,13 +156,4 @@ public interface BrokerageRecordService {
156 156 */
157 157 AppBrokerageProductPriceRespVO calculateProductBrokeragePrice(Long userId, Long spuId);
158 158  
159   - /**
160   - * 获取已结算的佣金金额
161   - *
162   - * @param beginTime 起始时间
163   - * @param endTime 截止时间
164   - * @return 已结算的佣金金额
165   - */
166   - Integer getBrokerageSettlementPriceSummary(LocalDateTime beginTime, LocalDateTime endTime);
167   -
168 159 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/brokerage/BrokerageRecordServiceImpl.java
... ... @@ -356,13 +356,6 @@ public class BrokerageRecordServiceImpl implements BrokerageRecordService {
356 356 return respVO;
357 357 }
358 358  
359   - @Override
360   - public Integer getBrokerageSettlementPriceSummary(LocalDateTime beginTime, LocalDateTime endTime) {
361   - return brokerageRecordMapper.selectSummaryPriceByStatusAndUnfreezeTimeBetween(
362   - BrokerageRecordBizTypeEnum.ORDER.getType(), BrokerageRecordStatusEnum.SETTLEMENT.getStatus(),
363   - beginTime, endTime);
364   - }
365   -
366 359 /**
367 360 * 获得自身的代理对象,解决 AOP 生效问题
368 361 *
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderQueryService.java
1 1 package cn.iocoder.yudao.module.trade.service.order;
2 2  
3 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
5 4 import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO;
6 5 import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderPageReqVO;
7 6 import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO;
8 7 import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
9 8 import cn.iocoder.yudao.module.trade.framework.delivery.core.client.dto.ExpressTrackRespDTO;
10 9  
11   -import java.time.LocalDateTime;
12 10 import java.util.Collection;
13 11 import java.util.List;
14 12  
... ... @@ -95,7 +93,7 @@ public interface TradeOrderQueryService {
95 93 /**
96 94 * 【会员】在指定秒杀活动下,用户购买的商品数量
97 95 *
98   - * @param userId 用户编号
  96 + * @param userId 用户编号
99 97 * @param activityId 活动编号
100 98 * @return 秒杀商品数量
101 99 */
... ... @@ -138,13 +136,4 @@ public interface TradeOrderQueryService {
138 136 */
139 137 List<TradeOrderItemDO> getOrderItemListByOrderId(Collection<Long> orderIds);
140 138  
141   - /**
142   - * 获取订单统计
143   - *
144   - * @param beginTime 起始时间
145   - * @param endTime 截止时间
146   - * @return 订单统计结果
147   - */
148   - TradeOrderSummaryRespDTO getOrderSummary(LocalDateTime beginTime, LocalDateTime endTime);
149   -
150 139 }
... ...
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderQueryServiceImpl.java
... ... @@ -6,7 +6,6 @@ import cn.hutool.core.util.StrUtil;
6 6 import cn.iocoder.yudao.framework.common.pojo.PageResult;
7 7 import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
8 8 import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
9   -import cn.iocoder.yudao.module.trade.api.order.dto.TradeOrderSummaryRespDTO;
10 9 import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO;
11 10 import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderPageReqVO;
12 11 import cn.iocoder.yudao.module.trade.dal.dataobject.delivery.DeliveryExpressDO;
... ... @@ -22,7 +21,6 @@ import cn.iocoder.yudao.module.trade.service.delivery.DeliveryExpressService;
22 21 import org.springframework.stereotype.Service;
23 22  
24 23 import javax.annotation.Resource;
25   -import java.time.LocalDateTime;
26 24 import java.util.*;
27 25  
28 26 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
... ... @@ -166,13 +164,6 @@ public class TradeOrderQueryServiceImpl implements TradeOrderQueryService {
166 164 .setPhone(order.getReceiverMobile()));
167 165 }
168 166  
169   - @Override
170   - public TradeOrderSummaryRespDTO getOrderSummary(LocalDateTime beginTime, LocalDateTime endTime) {
171   - TradeOrderSummaryRespDTO dto = tradeOrderMapper.selectSummaryByPayTimeBetween(beginTime, endTime);
172   - dto.setOrderCreateCount(tradeOrderMapper.selectCountByCreateTimeBetween(beginTime, endTime));
173   - return dto;
174   - }
175   -
176 167  
177 168 // =================== Order Item ===================
178 169  
... ...
yudao-module-pay/yudao-module-pay-api/src/main/java/cn/iocoder/yudao/module/pay/api/wallet/PayWalletApi.java
1 1 package cn.iocoder.yudao.module.pay.api.wallet;
2 2  
3   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
4   -
5   -import java.time.LocalDateTime;
6   -
7 3 /**
8 4 * 钱包 API 接口
9 5 *
... ... @@ -11,13 +7,4 @@ import java.time.LocalDateTime;
11 7 */
12 8 public interface PayWalletApi {
13 9  
14   - /**
15   - * 获取钱包统计
16   - *
17   - * @param beginTime 起始时间
18   - * @param endTime 截止时间
19   - * @return 钱包统计
20   - */
21   - WalletSummaryRespDTO getWalletSummary(LocalDateTime beginTime, LocalDateTime endTime);
22   -
23 10 }
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/api/wallet/PayWalletApiImpl.java
1 1 package cn.iocoder.yudao.module.pay.api.wallet;
2 2  
3   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
4   -import cn.iocoder.yudao.module.pay.enums.member.PayWalletBizTypeEnum;
5 3 import cn.iocoder.yudao.module.pay.service.wallet.PayWalletRechargeService;
6 4 import cn.iocoder.yudao.module.pay.service.wallet.PayWalletTransactionService;
7 5 import org.springframework.stereotype.Service;
8 6 import org.springframework.validation.annotation.Validated;
9 7  
10 8 import javax.annotation.Resource;
11   -import java.time.LocalDateTime;
12 9  
13 10 /**
14 11 * 钱包 API 接口实现类
... ... @@ -24,11 +21,4 @@ public class PayWalletApiImpl implements PayWalletApi {
24 21 @Resource
25 22 private PayWalletTransactionService payWalletTransactionService;
26 23  
27   - @Override
28   - public WalletSummaryRespDTO getWalletSummary(LocalDateTime beginTime, LocalDateTime endTime) {
29   - WalletSummaryRespDTO walletSummary = payWalletRechargeService.getWalletSummary(beginTime, endTime);
30   - walletSummary.setOrderWalletPayPrice(payWalletTransactionService.getPriceSummary(PayWalletBizTypeEnum.PAYMENT, beginTime, endTime));
31   - return walletSummary;
32   - }
33   -
34 24 }
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/dal/mysql/wallet/PayWalletRechargeMapper.java
1 1 package cn.iocoder.yudao.module.pay.dal.mysql.wallet;
2 2  
3   -import cn.hutool.core.bean.BeanUtil;
4   -import cn.hutool.core.collection.CollUtil;
5 3 import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
6 4 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
7   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
8 5 import cn.iocoder.yudao.module.pay.dal.dataobject.wallet.PayWalletRechargeDO;
9   -import cn.iocoder.yudao.module.pay.enums.refund.PayRefundStatusEnum;
10   -import com.github.yulichang.toolkit.MPJWrappers;
11 6 import org.apache.ibatis.annotations.Mapper;
12 7  
13   -import java.time.LocalDateTime;
14   -
15 8 @Mapper
16 9 public interface PayWalletRechargeMapper extends BaseMapperX<PayWalletRechargeDO> {
17 10  
... ... @@ -25,24 +18,6 @@ public interface PayWalletRechargeMapper extends BaseMapperX&lt;PayWalletRechargeDO
25 18 .eq(PayWalletRechargeDO::getId, id).eq(PayWalletRechargeDO::getRefundStatus, whereRefundStatus));
26 19 }
27 20  
28   - default WalletSummaryRespDTO selectRechargeSummaryByPayTimeBetween(LocalDateTime beginTime, LocalDateTime endTime) {
29   - return BeanUtil.copyProperties(CollUtil.get(selectMaps(MPJWrappers.<PayWalletRechargeDO>lambdaJoin()
30   - .selectCount(PayWalletRechargeDO::getId, WalletSummaryRespDTO::getRechargePayCount)
31   - .selectSum(PayWalletRechargeDO::getPayPrice, WalletSummaryRespDTO::getRechargePayPrice)
32   - .eq(PayWalletRechargeDO::getPayStatus, true)
33   - .between(PayWalletRechargeDO::getPayTime, beginTime, endTime)), 0),
34   - WalletSummaryRespDTO.class);
35   - }
36   -
37   - default WalletSummaryRespDTO selectRechargeSummaryByRefundTimeBetween(LocalDateTime beginTime, LocalDateTime endTime) {
38   - return BeanUtil.copyProperties(CollUtil.get(selectMaps(MPJWrappers.<PayWalletRechargeDO>lambdaJoin()
39   - .selectCount(PayWalletRechargeDO::getId, WalletSummaryRespDTO::getRechargeRefundCount)
40   - .selectSum(PayWalletRechargeDO::getRefundPayPrice, WalletSummaryRespDTO::getRechargeRefundPrice)
41   - .eq(PayWalletRechargeDO::getRefundStatus, PayRefundStatusEnum.SUCCESS.getStatus())
42   - .between(PayWalletRechargeDO::getRefundTime, beginTime, endTime)), 0),
43   - WalletSummaryRespDTO.class);
44   - }
45   -
46 21 }
47 22  
48 23  
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/dal/mysql/wallet/PayWalletTransactionMapper.java
... ... @@ -6,12 +6,9 @@ import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
6 6 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
7 7 import cn.iocoder.yudao.module.pay.controller.app.wallet.vo.transaction.AppPayWalletTransactionPageReqVO;
8 8 import cn.iocoder.yudao.module.pay.dal.dataobject.wallet.PayWalletTransactionDO;
9   -import com.github.yulichang.toolkit.MPJWrappers;
10 9 import org.apache.ibatis.annotations.Mapper;
11 10  
12   -import java.time.LocalDateTime;
13 11 import java.util.Objects;
14   -import java.util.Optional;
15 12  
16 13 @Mapper
17 14 public interface PayWalletTransactionMapper extends BaseMapperX<PayWalletTransactionDO> {
... ... @@ -38,15 +35,6 @@ public interface PayWalletTransactionMapper extends BaseMapperX&lt;PayWalletTransac
38 35 PayWalletTransactionDO::getBizType, bizType);
39 36 }
40 37  
41   - default Integer selectSummaryByBizTypeAndCreateTimeBetween(Integer type, LocalDateTime beginTime, LocalDateTime endTime) {
42   - return Optional.ofNullable(selectOne(MPJWrappers.<PayWalletTransactionDO>lambdaJoin()
43   - .selectSum(PayWalletTransactionDO::getPrice)
44   - .eq(PayWalletTransactionDO::getBizType, type)
45   - .between(PayWalletTransactionDO::getCreateTime, beginTime, endTime)))
46   - .map(PayWalletTransactionDO::getPrice)
47   - .orElse(0);
48   - }
49   -
50 38 }
51 39  
52 40  
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/service/wallet/PayWalletRechargeService.java
1 1 package cn.iocoder.yudao.module.pay.service.wallet;
2 2  
3   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
4 3 import cn.iocoder.yudao.module.pay.controller.app.wallet.vo.recharge.AppPayWalletRechargeCreateReqVO;
5 4 import cn.iocoder.yudao.module.pay.dal.dataobject.wallet.PayWalletRechargeDO;
6 5  
7   -import java.time.LocalDateTime;
8   -
9 6 /**
10 7 * 钱包充值 Service 接口
11 8 *
... ... @@ -16,8 +13,8 @@ public interface PayWalletRechargeService {
16 13 /**
17 14 * 创建钱包充值记录(发起充值)
18 15 *
19   - * @param userId 用户 id
20   - * @param userType 用户类型
  16 + * @param userId 用户 id
  17 + * @param userType 用户类型
21 18 * @param createReqVO 钱包充值请求 VO
22 19 * @return 钱包充值记录
23 20 */
... ... @@ -27,32 +24,25 @@ public interface PayWalletRechargeService {
27 24 /**
28 25 * 更新钱包充值成功
29 26 *
30   - * @param id 钱包充值记录 id
  27 + * @param id 钱包充值记录 id
31 28 * @param payOrderId 支付订单 id
32 29 */
33 30 void updateWalletRechargerPaid(Long id, Long payOrderId);
34 31  
35 32 /**
36 33 * 发起钱包充值退款
37   - * @param id 钱包充值编号
  34 + *
  35 + * @param id 钱包充值编号
38 36 * @param userIp 用户 ip 地址
39 37 */
40 38 void refundWalletRecharge(Long id, String userIp);
41 39  
42 40 /**
43 41 * 更新钱包充值记录为已退款
44   - * @param id 钱包充值 id
  42 + *
  43 + * @param id 钱包充值 id
45 44 * @param payRefundId 退款单id
46 45 */
47 46 void updateWalletRechargeRefunded(Long id, Long payRefundId);
48 47  
49   - /**
50   - * 获取钱包统计
51   - *
52   - * @param beginTime 起始时间
53   - * @param endTime 截止时间
54   - * @return 钱包统计
55   - */
56   - WalletSummaryRespDTO getWalletSummary(LocalDateTime beginTime, LocalDateTime endTime);
57   -
58 48 }
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/service/wallet/PayWalletRechargeServiceImpl.java
... ... @@ -4,7 +4,6 @@ import cn.hutool.core.lang.Assert;
4 4 import cn.iocoder.yudao.framework.pay.core.enums.refund.PayRefundStatusRespEnum;
5 5 import cn.iocoder.yudao.module.pay.api.order.dto.PayOrderCreateReqDTO;
6 6 import cn.iocoder.yudao.module.pay.api.refund.dto.PayRefundCreateReqDTO;
7   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
8 7 import cn.iocoder.yudao.module.pay.controller.app.wallet.vo.recharge.AppPayWalletRechargeCreateReqVO;
9 8 import cn.iocoder.yudao.module.pay.convert.wallet.PayWalletRechargeConvert;
10 9 import cn.iocoder.yudao.module.pay.dal.dataobject.order.PayOrderDO;
... ... @@ -258,15 +257,4 @@ public class PayWalletRechargeServiceImpl implements PayWalletRechargeService {
258 257 return payOrder;
259 258 }
260 259  
261   - @Override
262   - public WalletSummaryRespDTO getWalletSummary(LocalDateTime beginTime, LocalDateTime endTime) {
263   - WalletSummaryRespDTO paySummary = walletRechargeMapper.selectRechargeSummaryByPayTimeBetween(beginTime, endTime);
264   - WalletSummaryRespDTO refundSummary = walletRechargeMapper.selectRechargeSummaryByRefundTimeBetween(beginTime, endTime);
265   -
266   - paySummary.setRechargeRefundCount(refundSummary.getRechargeRefundCount());
267   - paySummary.setRechargeRefundPrice(refundSummary.getRechargeRefundPrice());
268   -
269   - return paySummary;
270   - }
271   -
272 260 }
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/service/wallet/PayWalletService.java
1 1 package cn.iocoder.yudao.module.pay.service.wallet;
2 2  
3   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
4 3 import cn.iocoder.yudao.module.pay.dal.dataobject.wallet.PayWalletDO;
5 4 import cn.iocoder.yudao.module.pay.dal.dataobject.wallet.PayWalletTransactionDO;
6 5 import cn.iocoder.yudao.module.pay.enums.member.PayWalletBizTypeEnum;
7 6  
8   -import java.time.LocalDateTime;
9   -
10 7 /**
11 8 * 钱包 Service 接口
12 9 *
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/service/wallet/PayWalletServiceImpl.java
1 1 package cn.iocoder.yudao.module.pay.service.wallet;
2 2  
3 3 import cn.hutool.core.lang.Assert;
4   -import cn.iocoder.yudao.module.pay.api.wallet.dto.WalletSummaryRespDTO;
5 4 import cn.iocoder.yudao.module.pay.dal.dataobject.order.PayOrderExtensionDO;
6 5 import cn.iocoder.yudao.module.pay.dal.dataobject.refund.PayRefundDO;
7 6 import cn.iocoder.yudao.module.pay.dal.dataobject.wallet.PayWalletDO;
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/service/wallet/PayWalletTransactionService.java
... ... @@ -7,7 +7,6 @@ import cn.iocoder.yudao.module.pay.enums.member.PayWalletBizTypeEnum;
7 7 import cn.iocoder.yudao.module.pay.service.wallet.bo.WalletTransactionCreateReqBO;
8 8  
9 9 import javax.validation.Valid;
10   -import java.time.LocalDateTime;
11 10  
12 11 /**
13 12 * 钱包余额流水 Service 接口
... ... @@ -50,14 +49,4 @@ public interface PayWalletTransactionService {
50 49 */
51 50 PayWalletTransactionDO getWalletTransaction(String bizId, PayWalletBizTypeEnum type);
52 51  
53   - /**
54   - * 获取支付金额合计
55   - *
56   - * @param bizType 业务类型
57   - * @param beginTime 开始时间
58   - * @param endTime 结束时间
59   - * @return 支付金额合计
60   - */
61   - Integer getPriceSummary(PayWalletBizTypeEnum bizType, LocalDateTime beginTime, LocalDateTime endTime);
62   -
63 52 }
... ...
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/service/wallet/PayWalletTransactionServiceImpl.java
... ... @@ -13,7 +13,6 @@ import lombok.extern.slf4j.Slf4j;
13 13 import org.springframework.stereotype.Service;
14 14  
15 15 import javax.annotation.Resource;
16   -import java.time.LocalDateTime;
17 16  
18 17 /**
19 18 * 钱包流水 Service 实现类
... ... @@ -61,9 +60,4 @@ public class PayWalletTransactionServiceImpl implements PayWalletTransactionServ
61 60 return payWalletTransactionMapper.selectByBiz(bizId, type.getType());
62 61 }
63 62  
64   - @Override
65   - public Integer getPriceSummary(PayWalletBizTypeEnum bizType, LocalDateTime beginTime, LocalDateTime endTime) {
66   - return payWalletTransactionMapper.selectSummaryByBizTypeAndCreateTimeBetween(bizType.getType(), beginTime, endTime);
67   - }
68   -
69 63 }
... ...