mirror of
https://github.com/suyiiyii/SIMS.git
synced 2025-06-05 13:36:12 +08:00
feat(rbac): stash
This commit is contained in:
parent
106ee2be90
commit
bed21a1db0
7
src/main/java/top/suyiiyii/sims/mapper/MpRoleMapper.java
Normal file
7
src/main/java/top/suyiiyii/sims/mapper/MpRoleMapper.java
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
package top.suyiiyii.sims.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import top.suyiiyii.sims.entity.Role;
|
||||||
|
|
||||||
|
public interface MpRoleMapper extends BaseMapper<Role> {
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
package top.suyiiyii.sims.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import top.suyiiyii.sims.entity.UserRole;
|
||||||
|
|
||||||
|
public interface MpUserRoleMapper extends BaseMapper<UserRole> {
|
||||||
|
}
|
41
src/main/java/top/suyiiyii/sims/service/RbacService.java
Normal file
41
src/main/java/top/suyiiyii/sims/service/RbacService.java
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
package top.suyiiyii.sims.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import top.suyiiyii.sims.entity.Role;
|
||||||
|
import top.suyiiyii.sims.entity.UserRole;
|
||||||
|
import top.suyiiyii.sims.mapper.MpRoleMapper;
|
||||||
|
import top.suyiiyii.sims.mapper.MpUserMapper;
|
||||||
|
import top.suyiiyii.sims.mapper.MpUserRoleMapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@Service
|
||||||
|
public class RbacService {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
MpUserMapper userMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
MpUserRoleMapper userRoleMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
MpRoleMapper roleMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据用户id获取用户的角色
|
||||||
|
*
|
||||||
|
* @param userId 用户id
|
||||||
|
* @return 用户的角色列表
|
||||||
|
*/
|
||||||
|
public List<Role> getRolesByUserId(int userId) {
|
||||||
|
// 根据用户id获取用户的角色id,使用mp的条件构造器
|
||||||
|
List<UserRole> userRoles = userRoleMapper.selectList(new QueryWrapper<UserRole>().eq("user_id", userId));
|
||||||
|
// 根据角色id获取角色
|
||||||
|
return roleMapper.selectBatchIds(userRoles.stream().map(UserRole::getRoleId).toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user