package com.ruoyi.cs.mapper;

import java.util.List;
import com.ruoyi.cs.domain.CsUserInfo;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;

/**
 * 使用人员信息Mapper接口
 * 
 * @author ruoyi
 * @date 2024-04-25
 */
public interface CsUserInfoMapper 
{
    /**
     * 查询使用人员信息
     * 
     * @param userInfoId 使用人员信息主键
     * @return 使用人员信息
     */
    public CsUserInfo selectCsUserInfoByUserInfoId(String userInfoId);

    /**
     * 查询使用人员信息列表
     * 
     * @param csUserInfo 使用人员信息
     * @return 使用人员信息集合
     */
    public List<CsUserInfo> selectCsUserInfoList(CsUserInfo csUserInfo);

    /**
     * 新增使用人员信息
     * 
     * @param csUserInfo 使用人员信息
     * @return 结果
     */
    public int insertCsUserInfo(CsUserInfo csUserInfo);

    /**
     * 批量新增使用人员信息
     *
     * @param userInfoList 使用人员信息
     * @return 结果
     */
    public int batchInsertCsUserInfo(@Param("userInfoList") List<CsUserInfo> userInfoList);

    /**
     * 修改使用人员信息
     * 
     * @param csUserInfo 使用人员信息
     * @return 结果
     */
    public int updateCsUserInfo(CsUserInfo csUserInfo);

    /**
     * 删除使用人员信息
     * 
     * @param userInfoId 使用人员信息主键
     * @return 结果
     */
    public int deleteCsUserInfoByUserInfoId(String userInfoId);

    /**
     * 批量删除使用人员信息
     * 
     * @param userInfoIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCsUserInfoByUserInfoIds(String[] userInfoIds);

    /**
     * 查询使用人员信息列表By申请列表
     *
     * @param applyId 申请ID
     * @return 使用人员信息集合
     */
    public List<CsUserInfo> selectCsUserInfoListByApplyId(String applyId);

    /**
     * 批量删除申请单的使用人员信息
     *
     * @param applyId 申请Id
     * @return 结果
     */
    public int batchDeleteCsUserInfo(@Param("applyId") String  applyId);
}
