package cn.iocoder.yudao.module.erp.dal.mysql.statistics; import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleCustomerReceiptStatisticsDO; import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleCustomerStatisticsDO; import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleProductStatisticsDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; /** * ERP 销售统计 Mapper * * @author 超级管理员 */ @Mapper public interface ErpSaleStatisticsMapper { BigDecimal getSalePrice(@Param("beginTime") LocalDateTime beginTime, @Param("endTime") LocalDateTime endTime); /** * 按客户统计销售订单(仅统计已审核订单) * * 需求 6.7① 销售款统计、③ 客户销售统计 */ @Select("") List selectCustomerStatistics(@Param("customerId") Long customerId, @Param("beginTime") LocalDateTime beginTime, @Param("endTime") LocalDateTime endTime); /** * 按客户统计已审核收款单的收款金额 * * 需求 6.7① 销售款统计:已收款 / 未收款 */ @Select("") List selectCustomerReceiptStatistics(@Param("customerId") Long customerId, @Param("beginTime") LocalDateTime beginTime, @Param("endTime") LocalDateTime endTime); /** * 按产品统计销售明细(仅统计已审核订单) * * 需求 6.7② 产品销售统计 */ @Select("") List selectProductStatistics(@Param("productId") Long productId, @Param("beginTime") LocalDateTime beginTime, @Param("endTime") LocalDateTime endTime); }