package com.ruoyi.oa.service;

import java.util.List;
import com.ruoyi.oa.domain.CmcContract;

/**
 * cmc合同评审Service接口
 * 
 * @author cmc
 * @date 2024-03-15
 */
public interface ICmcContractService 
{
    /**
     * 查询cmc合同评审
     * 
     * @param contractId cmc合同评审主键
     * @return cmc合同评审
     */
    public CmcContract selectCmcContractByContractId(String contractId);

    /**
     * 查询cmc合同统计
     *
     * @param contractId cmc合同评审主键
     * @return cmc合同评审
     */
    public CmcContract selectCmcContractStatisticByContractId(String contractId);

    /**
     * 查询cmc合同评审列表
     * 
     * @param cmcContract cmc合同评审
     * @return cmc合同评审集合
     */
    public List<CmcContract> selectCmcContractList(CmcContract cmcContract);

    /**
     * 关联项目查询cmc合同评审列表
     *
     * @param cmcContract cmc合同评审
     * @return cmc合同评审集合
     */
    public List<CmcContract> selectCmcContractListP(CmcContract cmcContract);

    /**
     *模糊查询cmc合同评审列表
     *
     * @param cmcContract cmc合同评审
     * @return cmc合同评审集合
     */
    public List<CmcContract> selectCmcContractListFuzzy(CmcContract cmcContract);

    /**
     * 按时间范围查询cmc合同评审列表
     *
     * @param cmcContract cmc合同评审
     * @return cmc合同评审集合
     */
    public List<CmcContract> selectCmcContractListByRange(CmcContract cmcContract);

    /**
     * 新增cmc合同评审
     * 
     * @param cmcContract cmc合同评审
     * @return 结果
     */
    public int insertCmcContract(CmcContract cmcContract);

    /**
     * 修改cmc合同评审
     * 
     * @param cmcContract cmc合同评审
     * @return 结果
     */
    public int updateCmcContract(CmcContract cmcContract);

    /**
     * 批量删除cmc合同评审
     * 
     * @param contractIds 需要删除的cmc合同评审主键集合
     * @return 结果
     */
    public int deleteCmcContractByContractIds(String[] contractIds);

    /**
     * 删除cmc合同评审信息
     * 
     * @param contractId cmc合同评审主键
     * @return 结果
     */
    public int deleteCmcContractByContractId(String contractId);

    /**
     * 查询cmc合同统计列表
     *
     * @return 结果
     */
    public List<CmcContract> selectCmcContractStatistic();
}
