package cn.iocoder.lyzsys.module.tjt.service.report;

import cn.iocoder.lyzsys.module.tjt.controller.admin.report.vo.*;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public interface ProjectOutputReportService {

    void exportProjectBudgetExcel(HttpServletResponse response, ProjectBudgetExportReqVO reqVO)
            throws IOException;

    void exportProjectQuarterOutputExcel(HttpServletResponse response, ProjectQuarterOutputExportReqVO reqVO)
            throws IOException;

    void exportProjectLeadQuarterOutputExcel(HttpServletResponse response,
                                             ProjectLeadQuarterOutputExportReqVO reqVO)
            throws IOException;

    void exportSpecialtyPersonOutputExcel(HttpServletResponse response, SpecialtyPersonOutputExportReqVO reqVO)
            throws IOException;

    SpecialtyPersonOutputPreviewRespVO getSpecialtyPersonOutputPreview(SpecialtyPersonOutputPreviewReqVO reqVO);

    ProjectOverviewPreviewRespVO getProjectOverviewPreview(ProjectOverviewExportReqVO reqVO);

    void exportProjectOverviewExcel(HttpServletResponse response, ProjectOverviewExportReqVO reqVO)
            throws IOException;

    EmployeeOutputSummaryPreviewRespVO getEmployeeOutputSummaryPreview(EmployeeOutputSummaryExportReqVO reqVO);

    void exportEmployeeOutputSummaryExcel(HttpServletResponse response, EmployeeOutputSummaryExportReqVO reqVO)
            throws IOException;

}
