package org.jk.system.mapper;



import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jetbrains.annotations.NotNull;
import org.jk.system.domain.DocumentAuditConfig;
import org.jk.system.domain.bo.DocumentAuditConfigBo;

import java.util.List;

/**
 * 审核配置Mapper接口
 *
 * @author takai
 * @date 2025-05-29
 */
public interface DocumentAuditConfigMapper
{
    /**
     * 查询审核配置
     *
     * @param id 审核配置主键
     * @return 审核配置
     */
    public DocumentAuditConfig selectDocumentAuditConfigById(Long id);

    /**
     * 查询审核配置列表
     *
     * @param documentAuditConfig 审核配置
     * @return 审核配置集合
     */
    public List<DocumentAuditConfig> selectDocumentAuditConfigList(DocumentAuditConfig documentAuditConfig);

    /**
     * 新增审核配置
     *
     * @param documentAuditConfig 审核配置
     * @return 结果
     */
    public int insertDocumentAuditConfig(DocumentAuditConfig documentAuditConfig);

    /**
     * 修改审核配置
     *
     * @param documentAuditConfig 审核配置
     * @return 结果
     */
    public int updateDocumentAuditConfig(DocumentAuditConfig documentAuditConfig);

    /**
     * 删除审核配置
     *
     * @param id 审核配置主键
     * @return 结果
     */
    public int deleteDocumentAuditConfigById(Long id);

    /**
     * 批量删除审核配置
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDocumentAuditConfigByIds(Long[] ids);

    public List<DocumentAuditConfig> selectDocumentAuditConfigListByBo(DocumentAuditConfigBo documentAuditConfigBo);

    /**
     * 查询审核配置列表
     *
     * @param documentAuditConfig 审核配置
     * @return 审核配置集合
     */
    public Page<DocumentAuditConfig> selectPageList(@Param("ew") DocumentAuditConfig documentAuditConfig, @Param("page") Page page);

    public Page<DocumentAuditConfig> selectDocumentPageList(@Param("ew") DocumentAuditConfigBo documentAuditConfigBo,@Param("page") Page page);
}
