package com.vetti.hotake.service;

import java.util.List;
import com.vetti.hotake.domain.HotakeRolesInfo;
import com.vetti.hotake.domain.dto.HotakeRolesInfoDto;

/**
 * 岗位信息Service接口
 * 
 * @author wangxiangshun
 * @date 2025-12-11
 */
public interface IHotakeRolesInfoService 
{
    /**
     * 查询岗位信息
     * 
     * @param id 岗位信息主键
     * @return 岗位信息
     */
    public HotakeRolesInfo selectHotakeRolesInfoById(Long id);

    /**
     * 查询岗位信息
     *
     * @param id 岗位信息主键
     * @return 岗位信息
     */
    public HotakeRolesInfoDto selectHotakeRolesInfoDtoById(Long id);


    /**
     * 查询岗位信息列表
     * 
     * @param hotakeRolesInfo 岗位信息
     * @return 岗位信息集合
     */
    public List<HotakeRolesInfo> selectHotakeRolesInfoList(HotakeRolesInfo hotakeRolesInfo);

    /**
     * 新增岗位信息
     * 
     * @param hotakeRolesInfo 岗位信息
     * @return 结果
     */
    public int insertHotakeRolesInfo(HotakeRolesInfo hotakeRolesInfo);

    /**
     * 修改岗位信息
     * 
     * @param hotakeRolesInfo 岗位信息
     * @return 结果
     */
    public int updateHotakeRolesInfo(HotakeRolesInfo hotakeRolesInfo);

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

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

    /**
     * 批量新增岗位信息
     *
     * @param hotakeRolesInfoList 岗位信息列表
     * @return 结果
     */
    public int batchInsertHotakeRolesInfo(List<HotakeRolesInfo> hotakeRolesInfoList);


    /**
     * 保存岗位信息
     *
     * @param hotakeRolesInfo 岗位信息
     * @return 结果
     */
    public HotakeRolesInfoDto saveHotakeRolesInfo(HotakeRolesInfoDto hotakeRolesInfo);

}
