package com.njcn.gather.aireport.reportmodel.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.gather.aireport.reportmodel.pojo.param.ReportModelParam;
import com.njcn.gather.aireport.reportmodel.pojo.po.ReportModelPO;
import com.njcn.gather.aireport.reportmodel.pojo.vo.ReportModelVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface ReportModelService extends IService<ReportModelPO> {

    Page<ReportModelVO> listReportModels(ReportModelParam.QueryParam param);

    boolean addReportModel(ReportModelParam.AddParam param, MultipartFile templateFile);

    boolean updateReportModel(ReportModelParam.UpdateParam param, MultipartFile templateFile);

    boolean deleteReportModels(List<String> ids);

    ReportModelVO getReportModel(String id);

    ReportModelPO requireNormal(String id);

    boolean submitAudit(ReportModelParam.SubmitAuditParam param);
}
