package org.xyzh.system.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.xyzh.common.dto.user.TbSysUserDeptRole;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

@Mapper
public interface UserDeptRoleMapper extends BaseMapper<TbSysUserDeptRole> {

    /**
     * @description 查询用户部门角色
     * @param userId 用户ID
     * @return List<TbSysUserDeptRole> 用户部门角色列表
     * @author yslg
     * @since 2025-10-09
     */
    List<TbSysUserDeptRole> selectByFilter(TbSysUserDeptRole filter);

    /**
     * @description 绑定用户
     * @param userDeptRoles 用户角色列表
     * @return int 影响行数
     * @author yslg
     * @since 2025-10-09
     */
    int bindUser(@Param("userDeptRoles") List<TbSysUserDeptRole> userDeptRoles);

    /**
     * @description 解绑用户
     * @param userDeptRoles 用户角色列表
     * @return int 影响行数
     * @author yslg
     * @since 2025-10-09
     */
    int unbindUser(@Param("userDeptRoles") List<TbSysUserDeptRole> userDeptRoles);
}
