package com.bonus.material.basic.service;

import com.bonus.material.basic.domain.report.*;

import java.util.List;

/**
 * 报表服务service
 * @Author ma_sh
 * @create 2025/1/22 9:53
 */
public interface BmReportService {

    /**
     * 新购入库报表查询
     * @param bean
     * @return
     */
    List<PurChaseReportInfo> getPurChaseReportList(PurChaseReportInfo bean);

    /**
     * 新购入库报表详情查询
     * @param bean
     * @return
     */
    List<PurChaseReportDetails> getPurChaseReportDetailsList(PurChaseReportInfo bean);

    /**
     * 新购入库报表详情查询
     * @param bean
     * @return
     */
    List<PurChaseReportDetails> getPurChaseReportSuccessList(PurChaseReportInfo bean);

    /**
     * 新购入库数量报表详情查询
     * @param bean
     * @return
     */
    List<PurChaseReportDetails> getPurChaseReportInBoundList(PurChaseReportInfo bean);

    /**
     * 新购未入库数量报表详情查询
     * @param bean
     * @return
     */
    List<PurChaseReportDetails> getPurChaseReportNotInBoundList(PurChaseReportInfo bean);


    /**
     * 领料出库报表查询
     * @param bean
     * @return
     */
    List<LeaseOutInfo> getLeaseOutList(LeaseOutInfo bean);

    /**
     * 领料出库报表详情查询
     * @param bean
     * @return
     */
    List<LeaseOutDetails> getLeaseOutDetailsList(LeaseOutInfo bean);

    /**
     * 退料报表查询
     * @param bean
     * @return
     */
    List<BackInputInfo> getBackInputList(BackInputInfo bean);

    /**
     * 退料报表详情查询
     * @param bean
     * @return
     */
    List<BackInputDetails> getBackDetailsInputList(BackInputInfo bean);

    /**
     * 维修报表
     * @param bean
     * @return
     */
    List<RepairInfo> getRepairList(RepairInfo bean);

    /**
     * 维修报表查询详情查询
     * @param bean
     * @return
     */
    List<RepairDetails> getRepairDetailsList(RepairInfo bean);

    /**
     * 修饰入库报表
     * @param bean
     * @return
     */
    List<RepairInputDto> getRepairInputList(RepairInputDto bean);

    /**
     * 修饰入库报表查询详情查询
     * @param bean
     * @return
     */
    List<RepairInputDetails> getRepairInputDetailsList(RepairInputDto bean);

    /**
     * 报废报表
     * @param bean
     * @return
     */
    List<ScrapInfo> getScrapList(ScrapInfo bean);

    /**
     * 报废报表查询详情
     * @param bean
     * @return
     */
    List<ScrapDetailsInfo> getScrapDetailsList(ScrapInfo bean);
}
