use of com.company.project.entity.SysUserRole in project springboot-manager by aitangbao.
the class UserController method setUserOwnRole.
@PutMapping("/user/roles/{userId}")
@ApiOperation(value = "赋予角色-用户赋予角色接口")
@LogAnnotation(title = "用户管理", action = "赋予角色-用户赋予角色接口")
@RequiresPermissions("sys:user:update:role")
public DataResult setUserOwnRole(@PathVariable("userId") String userId, @RequestBody List<String> roleIds) {
LambdaQueryWrapper<SysUserRole> queryWrapper = Wrappers.lambdaQuery();
queryWrapper.eq(SysUserRole::getUserId, userId);
userRoleService.remove(queryWrapper);
if (!CollectionUtils.isEmpty(roleIds)) {
UserRoleOperationReqVO reqVO = new UserRoleOperationReqVO();
reqVO.setUserId(userId);
reqVO.setRoleIds(roleIds);
userRoleService.addUserRoleInfo(reqVO);
}
// 刷新权限
httpSessionService.refreshUerId(userId);
return DataResult.success();
}
use of com.company.project.entity.SysUserRole in project springboot-manager by aitangbao.
the class UserRoleServiceImpl method addUserRoleInfo.
@Transactional(rollbackFor = Exception.class)
@Override
public void addUserRoleInfo(UserRoleOperationReqVO vo) {
if (CollectionUtils.isEmpty(vo.getRoleIds())) {
return;
}
List<SysUserRole> list = new ArrayList<>();
for (String roleId : vo.getRoleIds()) {
SysUserRole sysUserRole = new SysUserRole();
sysUserRole.setUserId(vo.getUserId());
sysUserRole.setRoleId(roleId);
list.add(sysUserRole);
}
sysUserRoleMapper.delete(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getUserId, vo.getUserId()));
// 批量插入
this.saveBatch(list);
}
Aggregations