gaoluyang
8 天以前 8e4eee5ad4d74e1a4e6ab4de3a9c28000700dce0
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/statistics/ErpSaleStatisticsService.java
@@ -1,7 +1,11 @@
package cn.iocoder.yudao.module.erp.service.statistics;
import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.sale.ErpSaleCustomerSummaryRespVO;
import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.sale.ErpSaleProductSummaryRespVO;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
/**
 * ERP 销售统计 Service 接口
@@ -21,4 +25,28 @@
     */
    BigDecimal getSalePrice(LocalDateTime beginTime, LocalDateTime endTime);
    /**
     * 按客户统计销售款(销售额、已收款、未收款)
     *
     * 需求 6.7① 销售款统计、③ 客户销售统计
     *
     * @param customerId 客户编号,为空表示全部客户
     * @param beginTime  下单时间 >= 开始时间
     * @param endTime    下单时间 <= 结束时间
     * @return 客户维度统计列表(已填充客户名称)
     */
    List<ErpSaleCustomerSummaryRespVO> getCustomerSummary(Long customerId, LocalDateTime beginTime, LocalDateTime endTime);
    /**
     * 按产品统计销售量与销售额
     *
     * 需求 6.7② 产品销售统计
     *
     * @param productId 产品编号,为空表示全部产品
     * @param beginTime 下单时间 >= 开始时间
     * @param endTime   下单时间 <= 结束时间
     * @return 产品维度统计列表(已填充产品名称)
     */
    List<ErpSaleProductSummaryRespVO> getProductSummary(Long productId, LocalDateTime beginTime, LocalDateTime endTime);
}