use of com.albedo.java.modules.sys.domain.RoleDo in project albedo by somowhere.
the class UserServiceImpl method getInfo.
/**
* 通过查用户的全部信息
*
* @param userVo 用户
* @return
*/
@Override
@Transactional(readOnly = true, rollbackFor = Exception.class)
public UserInfo getInfo(UserVo userVo) {
UserInfo userInfo = new UserInfo();
userInfo.setUser(userVo);
List<RoleDo> roleDos = roleService.findListByUserId(userVo.getId());
// 设置角色列表 (ID)
List<Long> roleIds = roleDos.stream().map(RoleDo::getId).collect(Collectors.toList());
userInfo.setRoles(ArrayUtil.toArray(roleIds, Long.class));
// 设置权限列表(menu.permission)
Set<String> permissions = new HashSet<>();
roleIds.forEach(roleId -> {
List<String> permissionList = menuService.findListByRoleId(roleId).stream().filter(menuVo -> StringUtil.isNotEmpty(menuVo.getPermission())).map(MenuVo::getPermission).collect(Collectors.toList());
permissions.addAll(permissionList);
});
userInfo.setPermissions(ArrayUtil.toArray(permissions, String.class));
return userInfo;
}
use of com.albedo.java.modules.sys.domain.RoleDo in project albedo by somowhere.
the class UserServiceImpl method save.
@Override
public void save(@Valid UserExcelVo userExcelVo) {
UserDto user = new UserDto();
BeanUtils.copyProperties(userExcelVo, user);
DeptDo deptDo = deptService.getOne(Wrappers.<DeptDo>query().lambda().eq(DeptDo::getName, userExcelVo.getDeptName()));
if (deptDo != null) {
user.setDeptId(deptDo.getId());
}
RoleDo roleDo = roleService.getOne(Wrappers.<RoleDo>query().lambda().eq(RoleDo::getName, userExcelVo.getRoleName()));
ArgumentAssert.notNull(roleDo, () -> new BizException("无法获取角色" + userExcelVo.getRoleName() + "信息"));
user.setRoleIdList(Lists.newArrayList(roleDo.getId()));
saveOrUpdate(user);
}
use of com.albedo.java.modules.sys.domain.RoleDo in project albedo by somowhere.
the class DeptServiceImpl method checkDept.
/**
* 检查角色是否有用户信息
*
* @return
*/
private void checkDept(Long deptId, String deptName) {
List<UserDo> userDoList = userRepository.selectList(Wrappers.<UserDo>lambdaQuery().eq(UserDo::getDeptId, deptId));
ArgumentAssert.notEmpty(userDoList, "操作失败!用户:" + CollUtil.convertToString(userDoList, UserDo.F_USERNAME, StringUtil.COMMA) + "所属要操作的部门:" + deptName);
List<RoleDo> roleDoList = roleRepository.findListByDeptId(deptId);
ArgumentAssert.notEmpty(roleDoList, () -> new BizException("操作失败!角色:" + CollUtil.convertToString(roleDoList, RoleDo.F_NAME, StringUtil.COMMA) + "的权限信息属于要操作的部门:" + deptName));
}
use of com.albedo.java.modules.sys.domain.RoleDo in project albedo by somowhere.
the class RoleServiceImpl method lockOrUnLock.
@Override
public void lockOrUnLock(Set<Long> idList) {
idList.forEach(id -> {
SysCacheUtil.delRoleCaches(id);
RoleDo roleDo = repository.selectById(id);
roleDo.setAvailable(CommonConstants.YES.equals(roleDo.getAvailable()) ? CommonConstants.NO : CommonConstants.YES);
repository.updateById(roleDo);
});
}
use of com.albedo.java.modules.sys.domain.RoleDo in project albedo by somowhere.
the class UserRoleServiceImpl method initAdmin.
@Override
public boolean initAdmin(Long userId) {
RoleDo roleDo = roleRepository.selectOne(Wraps.<RoleDo>lbQ().eq(RoleDo::getCode, CommonConstants.ADMIN_ROLE_CODE));
ArgumentAssert.notNull(roleDo, "初始化用户角色失败, 无法查询到内置角色:%s", CommonConstants.ADMIN_ROLE_CODE);
UserRoleDo userRoleDo = UserRoleDo.builder().userId(userId).roleId(roleDo.getId()).build();
return super.save(userRoleDo);
}
Aggregations