package com.casic.missiles.service.business;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.casic.missiles.dto.BaseApprovalSubmitRequest;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.business.print.CertificateListRequest;
import com.casic.missiles.dto.business.print.CertificateListResponse;
import com.casic.missiles.dto.business.print.CertificatePrintDetail;
import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest;
import com.casic.missiles.dto.flowable.ApprovalAgreeRequest;
import com.casic.missiles.dto.flowable.ApprovalRefuseRequest;

import javax.servlet.http.HttpServletResponse;

public interface IBusinessCertificatePrintService {

    Page<CertificateListResponse> certificatePrintListPage(CertificateListRequest request, Page<CertificateListResponse> responsePage) throws Exception;

    CertificatePrintDetail certificatePrintDetail(Long id);

    void certificatePrintExport(CertificateListRequest request, HttpServletResponse response, Page<CertificateListResponse> page) throws Exception;
    ReturnDTO certificatePrintStatus(Long id,String printStatus);

    ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request);

    ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request);

    ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request);

}
