package cn.iocoder.yudao.module.erp.service.statistics;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
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 java.math.BigDecimal;
|
import java.time.LocalDateTime;
|
|
/**
|
* ERP 采购统计 Service 接口
|
*
|
* @author 超级管理员
|
*/
|
public interface ErpPurchaseStatisticsService {
|
|
/**
|
* 获得采购金额
|
*
|
* 计算逻辑:采购出库的金额 - 采购退货的金额
|
*
|
* @param beginTime >= 开始时间
|
* @param endTime < 结束时间
|
* @return 采购金额
|
*/
|
BigDecimal getPurchasePrice(LocalDateTime beginTime, LocalDateTime endTime);
|
|
/**
|
* 获得采购汇总统计(订单 / 入库 / 退货的总数与总金额)
|
*
|
* @return 汇总统计
|
*/
|
ErpPurchaseSummaryRespVO getPurchaseSummary();
|
|
/**
|
* 获得供应商供货统计
|
*
|
* @param reqVO 查询条件
|
* @return 分页结果
|
*/
|
PageResult<ErpPurchaseSupplierStatisticsRespVO> getSupplierStatistics(ErpPurchaseStatisticsReqVO reqVO);
|
|
/**
|
* 获得采购价格分析
|
*
|
* @param reqVO 查询条件
|
* @return 分页结果
|
*/
|
PageResult<ErpPurchasePriceAnalysisRespVO> getPriceAnalysis(ErpPurchaseStatisticsReqVO reqVO);
|
|
/**
|
* 获得未完成采购订单跟踪
|
*
|
* @param reqVO 查询条件
|
* @return 分页结果
|
*/
|
PageResult<ErpPurchaseUncompletedOrderRespVO> getUncompletedOrders(ErpPurchaseStatisticsReqVO reqVO);
|
|
}
|