package com.hotent.project.manager;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.hotent.base.query.PageList;
import com.hotent.enterpriseDeclare.req.CostAuditTaskPageReq;
import com.hotent.project.model.CostProjectApproval;
import com.hotent.base.manager.BaseManager;
import com.hotent.project.req.CostProjectApprovalPageReq;
import com.hotent.project.req.CostProjectApprovalPublishReq;
import com.hotent.project.resp.CostProjectApprovalDetailResp;

import java.util.List;

/**
 * 成本监审立项主表 服务类
 *
 * @company 山西清众科技股份有限公司
 * @author 超级管理员
 * @since 2025-09-22
 */
public interface CostProjectApprovalManager extends BaseManager<CostProjectApproval> {
	/**
	 * 根据主键获取详情
	 * @param id
	 * @return
	 */
	CostProjectApprovalDetailResp getDetail(String id);
	/**
	 * 新建、更新成本监审立项主表
	 * @param costProjectApproval
	 * @return
	 */
	void createOrUpdate(CostProjectApproval costProjectApproval);

	/**
	 * 分页查询
	 */
	PageList<CostProjectApproval> pageList(CostProjectApprovalPageReq req) throws Exception;


	/**
	 * 任务发布
	 */
	void publish(CostProjectApprovalPublishReq req);

    IPage<CostProjectApproval> pageListForAuditTask(CostAuditTaskPageReq req);

    List<CostProjectApproval> getList();

	List<CostProjectApproval> getAnalyzeList();
}
