package org.xyzh.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.xyzh.common.dto.dept.TbSysDeptRole;
import org.xyzh.common.dto.role.TbSysRole;

@Mapper
public interface DeptRoleMapper extends BaseMapper<TbSysDeptRole> {
    
    /**
     * @description 查询部门绑定角色
     * @param deptId 部门ID
     * @return List<TbSysRole> 角色列表
     * @author yslg
     * @since 2025-09-28
     */
    List<TbSysRole> selectDeptRole(String deptId);

    /**
     * @description 查询部门绑定角色
     * @return List<TbSysDeptRole> 部门角色列表
     * @author yslg
     * @since 2025-10-06
     */
    List<TbSysDeptRole> selectDeptRoleList();

    /**
     * @description 批量绑定部门角色
     * @param deptRoles 部门角色列表
     * @return int 影响行数
     * @author yslg
     * @since 2025-09-28
     */
    int batchBindDeptRole(@Param("deptRoles") List<TbSysDeptRole> deptRoles);

    int batchUnbindDeptRole(@Param("deptRoles") List<TbSysDeptRole> deptRoles);
}
