src/main/java/com/byh/biyesheji/service/impl/RoleServiceImpl.java
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
package com.byh.biyesheji.service.impl;
import com.byh.biyesheji.dao.RoleMapper;
import com.byh.biyesheji.dao.UserRoleMapper;
import com.byh.biyesheji.pojo.*;
import com.byh.biyesheji.service.RoleService;
import com.byh.biyesheji.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@Service
public class RoleServiceImpl implements RoleService {
@Autowired
RoleMapper roleMapper;
@Autowired
UserRoleMapper userRoleMapper;
@Autowired
UserService userService;
@Override //name的所有角色
public Set<String> listRoleNames(String userName) {
Set<String> result = new HashSet<>();
//查出管理员相应的角色
List<Role> roles = listRoles(userName);
//把每个角色名放到set集合中
for (Role role : roles) {
result.add(role.getName());
}
return result;
}
@Override //查出管理员相应的角色
public List<Role> listRoles(String userName) {
List<Role> roles = new ArrayList<>();
//通过name获得user实体
User user = userService.getByName(userName);
if(null==user)
return roles;
roles = listRoles(user);//调用下面的方法
return roles;
}
@Override //查出管理员相应的角色
public List<Role> listRoles(User user) {
List<Role> roles = new ArrayList<>();
//通过管理员id获取管理员的角色
UserRoleExample example = new UserRoleExample();
example.createCriteria().andUidEqualTo(user.getId());
List<UserRole> userRoles = userRoleMapper.selectByExample(example);//关联查询 查出用户id对应的角色id的记录
//通过关联查询 ,查出表Role的给出指定主键id的记录
for (UserRole userRole : userRoles){
Role role = roleMapper.selectByPrimaryKey(userRole.getRid());
roles.add(role);
后面还有 31 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。