package com.xhkjedu.suser.mapper.system;

import com.xhkjedu.base.TkMapper;
import com.xhkjedu.suser.model.system.TUserRole;
import com.xhkjedu.suser.vo.system.UserRoleVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @ClassName UserRoleMapper
 * Description 用户角色
 * Author WN
 * Date 2020/6/15 11:04
 **/
@Repository
public interface UserRoleMapper extends TkMapper<TUserRole> {

    //根据用户id删除用户角色信息
    void deleteByUserid(Integer userid);

    //用户角色id集合
    List<UserRoleVo> listRolesByUserid(@Param("userid") Integer userid);

    //角色下用户
    List<TUserRole> listUsersByRoleid(Integer roleid);

    /**
     * @author ywx
     * @description 获取有常用模块的用户id集合
     * @date 2020/7/9 20:55
     **/
    List<Integer> listUserId(@Param("roleid") Integer roleid);

    /**
     * @author ywx
     * @description 根据用户id删除没有权限的常用模块
     * @date 2020/7/9 20:55
     **/
    Integer deleteNoRoleByUserId(@Param("userid") Integer userid);

    /*
     * @Description 根据用户id获取用户权限模块地址
     * @Date 2023/11/27 11:43:01
     * @Author WN
     * @Param [userid]
     * @Return java.util.List<java.lang.String>
     **/
    List<String> listModuleurlsByUserid(@Param("userid") Integer userid);

    //角色用户
    List<Map> listRoleUser(@Param("roleid") Integer roleid);
}
