package com.ruoyi.postCheck.service;

import java.util.List;

import com.ruoyi.postCheck.domain.PostChecked;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 岗检表管理Service接口
 *
 * @author csg
 * @date 2024-01-05
 */
public interface IPostCheckedService extends IService<PostChecked> {
    /**
     * 查询岗检表管理
     *
     * @param id 岗检表管理主键
     * @return 岗检表管理
     */
    public PostChecked selectPostCheckedById(Long id);

    /**
     * 查询岗检表管理列表
     *
     * @param postChecked 岗检表管理
     * @return 岗检表管理集合
     */
    public List<PostChecked> selectPostCheckedList(PostChecked postChecked);

    /**
     * 新增岗检表管理
     *
     * @param postChecked 岗检表管理
     * @return 结果
     */
    public int insertPostChecked(PostChecked postChecked);

    /**
     * 修改岗检表管理
     *
     * @param postChecked 岗检表管理
     * @return 结果
     */
    public int updatePostChecked(PostChecked postChecked);

    /**
     * 批量删除岗检表管理
     *
     * @param ids 需要删除的岗检表管理主键集合
     * @return 结果
     */
    public int deletePostCheckedByIds(Long[] ids);

    /**
     * 删除岗检表管理信息
     *
     * @param id 岗检表管理主键
     * @return 结果
    public int deletePostCheckedById(Long id);
     */

    /**
     * 岗检表审核
     * @param id 主键
     * @param status 状态：3-通过；4-驳回；
     * @param reason 未通过理由
     * @return
     */
    int statusApprove(Long id, Integer status, String reason);

    /**
     * 批量导入检查表Excel表格
     * @param fileNameList 数组：前端上传文件接口返回的相对路径（含文件名称）
     */
//    void batchImport(String[] fileNameList) throws Exception;

    /**
     * 岗检责任制清单人力资源审核通过，自动生成全要素岗检检查表
     * @param postListId 岗检责任制清单ID
     * @return
     */
    boolean autoCreateCheckedTypeAll(Long postListId);

    /**
     * 岗检表提交审核
     * @param id
     * @return
     */
    int submitApprove(Long id);
}
