package cn.iocoder.yudao.module.erp.dal.mysql.statistics; import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.purchase.ErpPurchasePriceAnalysisRespVO; import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.purchase.ErpPurchaseStatisticsReqVO; import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.purchase.ErpPurchaseSummaryRespVO; import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.purchase.ErpPurchaseSupplierStatisticsRespVO; import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.purchase.ErpPurchaseUncompletedOrderRespVO; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.time.LocalDateTime; /** * ERP 采购统计 Mapper * * @author 超级管理员 */ @Mapper public interface ErpPurchaseStatisticsMapper { BigDecimal getPurchasePrice(@Param("beginTime") LocalDateTime beginTime, @Param("endTime") LocalDateTime endTime); /** * 采购汇总统计(订单 / 入库 / 退货的总数与总金额) * * @return 汇总统计 */ ErpPurchaseSummaryRespVO selectPurchaseSummary(); /** * 供应商供货统计 * * @param page 分页 * @param reqVO 查询条件 * @return 分页结果 */ Page selectSupplierStatistics( Page page, @Param("reqVO") ErpPurchaseStatisticsReqVO reqVO); /** * 采购价格分析(按产品聚合) * * @param page 分页 * @param reqVO 查询条件 * @return 分页结果 */ Page selectPriceAnalysis( Page page, @Param("reqVO") ErpPurchaseStatisticsReqVO reqVO); /** * 未完成采购订单跟踪 * * @param page 分页 * @param reqVO 查询条件 * @return 分页结果 */ Page selectUncompletedOrders( Page page, @Param("reqVO") ErpPurchaseStatisticsReqVO reqVO); }