liujie
5 天以前 c09cfe948106d09c6fa052e990dfd44d39ddc1eb
ruoyi-system/src/main/java/com/ruoyi/system/service/TErpProcurementService.java
@@ -3,11 +3,24 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.system.dto.AddProcurementDto;
import com.ruoyi.system.export.PlatformLedgerReportExport;
import com.ruoyi.system.export.ProcurementReportClinicExport;
import com.ruoyi.system.export.ProcurementReportPlatformExport;
import com.ruoyi.system.export.ProcurementReportSupplierExport;
import com.ruoyi.system.model.TErpGoods;
import com.ruoyi.system.model.TErpProcurement;
import com.ruoyi.system.model.TErpProcurementGoods;
import com.ruoyi.system.query.ClinicProcurementReportQuery;
import com.ruoyi.system.query.PerformanceReportQuery;
import com.ruoyi.system.query.TErpGoodsQuery;
import com.ruoyi.system.query.TErpProcurementQuery;
import com.ruoyi.system.vo.TErpProcurementDetailVo;
import com.ruoyi.system.vo.TErpProcurementVo;
import com.ruoyi.system.vo.*;
import javax.validation.Valid;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.util.List;
/**
 * <p>
@@ -21,7 +34,167 @@
    PageInfo<TErpProcurementVo> pageList(TErpProcurementQuery query, SysUser user);
    PageInfo<TErpProcurementVo> pageListWarehouse(TErpProcurementQuery query, SysUser user);
    TErpProcurementDetailVo detail(String id, SysUser user, String goodsName);
    PageInfo<TErpGoods> pageGoodsPageList(TErpGoodsQuery query, SysUser user);
    List<TErpGoodsVO> inventoryNotEnoughList(SysUser user);
    void addProcurement(String clinicSupplierId, SysUser user, @Valid List<AddProcurementDto> dtos);
    DetailProcurementVO detailProcurement(String clinicSupplierId, SysUser user, String id);
    void detailProcurementSend(List<String> clinicSupplierId, SysUser user, String id,String logisticsNumber);
    /**
     * 供应商采购统计
     * @param supplierAndClinicId
     * @param startTime
     * @param endTime
     * @return
     */
    List<SupplierThirtyProcurementStatisticsVO> supplierThirtyProcurementStatistics(String supplierAndClinicId, String startTime, String endTime, Integer roleType);
    /**
     * 供应商30天采购金额统计
     * @param supplierAndClinicId
     * @param startTime
     * @param endTime
     * @return
     */
    List<SupplierThirtyMoneyProcurementStatisticsVO> supplierThirtyMoneyProcurementStatistics(String supplierAndClinicId, String startTime, String endTime,Integer roleType);
    /**
     * 供应商30天采购总类统计
     * @param supplierId
     * @return
     */
    Integer supplierSalesStatisticsTypeCount(String supplierId);
    /**
     * 供应商30天采购总数统计
     * @param supplierId
     * @return
     */
    Integer supplierSalesStatisticsCount(String supplierId);
    /**
     * 供应商30天采购金额统计
     * @param supplierId
     * @param startTime
     * @param endTime
     * @return
     */
    BigDecimal supplierSalesStatisticsMoney(String supplierId, String startTime, String endTime);
    /**
     * 供应商30天销售占比
     * @param supplierId
     * @param startTime
     * @param endTime
     * @return
     */
    List<SupplierSalesStatisticsGoodsTypeVO> supplierSalesStatisticsGoodsType(String supplierId, String startTime, String endTime);
    /**
     * 供应商30天销售商品统计
     * @param supplierId
     * @param startTime
     * @param endTime
     * @param goodsName
     * @return
     */
    List<SupplierSalesStatisticsGoodsCountVO> supplierSalesStatisticsGoodsCount(String supplierId, String startTime, String endTime, String goodsName);
    /**
     * 供应商30天销售商品统计
     * @param supplierId
     * @param startTime
     * @param endTime
     * @param goodsName
     * @return
     */
    List<SupplierSalesStatisticsGoodsCountVO> supplierSalesStatisticsGoodsCountMonth(String supplierId, String startTime, String endTime, String goodsName);
    /**
     * 诊所下所有的采购订单详情数据
     * @param clinicIds 诊所id集合
     * @return
     */
    List<TErpProcurementGoods> branchAdminStatisticsThree(List<String> clinicIds);
    /**
     * 诊所采购报表
     * @param query
     * @return
     */
    PageInfo<ClinicProcurementReportVO> clinicProcurementReport(ClinicProcurementReportQuery query);
    /**
     * 诊所采购报表导出
     * @param query
     * @return
     */
    List<ProcurementReportClinicExport> exportProcurementReportClinic(ClinicProcurementReportQuery query);
    /**
     * 供应商采购报表导出
     * @param query
     * @return
     */
    List<ProcurementReportSupplierExport> exportProcurementReportSupplier(ClinicProcurementReportQuery query);
    /**
     * 平台采购报表导出
     * @param query
     * @return
     */
    List<ProcurementReportPlatformExport> exportProcurementReportPlatform(ClinicProcurementReportQuery query);
    /**
     * 平台分账报表
     * @param query
     * @return
     */
    PageInfo<ClinicProcurementReportVO> platformLedgerReport(ClinicProcurementReportQuery query);
    /**
     * 平台分账报表导出
     * @param query
     * @return
     */
    List<PlatformLedgerReportExport> exportPlatformLedgerReport(ClinicProcurementReportQuery query);
    /**
     * 分公司业绩报表
     * @param query
     * @return
     */
    PageInfo<BranchPerformanceReportVO> branchPerformanceReport(PerformanceReportQuery query);
    /**
     * 业务员业绩报表
     * @param query
     * @return
     */
    PageInfo<SalespersonPerformanceReportVO> salespersonPerformanceReport(PerformanceReportQuery query);
    /**
     * 分公司业绩报表导出
     * @param query
     * @return
     */
    List<BranchPerformanceReportVO> exportBranchPerformanceReport(PerformanceReportQuery query);
    /**
     * 业务员业绩报表导出
     * @param query
     * @return
     */
    List<SalespersonPerformanceReportVO> exportSalespersonPerformanceReport(PerformanceReportQuery query);
}