package com.fs.hospital.mapper;

import java.util.List;
import com.fs.hospital.domain.HospitalPost;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

/**
 * 岗位信息Mapper接口
 *
 * @author fs
 * @date 2024-02-26
 */
public interface HospitalPostMapper
{
    /**
     * 查询岗位信息
     *
     * @param postId 岗位信息主键
     * @return 岗位信息
     */
    public HospitalPost selectHospitalPostByPostId(Long postId);

    /**
     * 查询岗位信息列表
     *
     * @param hospitalPost 岗位信息
     * @return 岗位信息集合
     */
    public List<HospitalPost> selectHospitalPostList(HospitalPost hospitalPost);

    /**
     * 新增岗位信息
     *
     * @param hospitalPost 岗位信息
     * @return 结果
     */
    public int insertHospitalPost(HospitalPost hospitalPost);

    /**
     * 修改岗位信息
     *
     * @param hospitalPost 岗位信息
     * @return 结果
     */
    public int updateHospitalPost(HospitalPost hospitalPost);

    /**
     * 删除岗位信息
     *
     * @param postId 岗位信息主键
     * @return 结果
     */
    public int deleteHospitalPostByPostId(Long postId);

    /**
     * 批量删除岗位信息
     *
     * @param postIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteHospitalPostByPostIds(Long[] postIds);

    List<Integer> selectPostListByUserId(Long userId);

    List<HospitalPost> selectPostsByUserName(String username);
    @Select("select count(1) from hospital_post where post_code=#{postCode} and hospital_id=#{hospitalId}")
    int checkPostCodeUnique(@Param("hospitalId") Long hospitalId, @Param("postCode")String postCode);
}
