提交 9bef06bd 作者: zhenjie

账号关联角色bug修复

上级 df5b953a
......@@ -69,7 +69,6 @@ public class RoleController extends BaseController {
return roleService.listRoleMenuInfo(roleId);
}
@ApiOperation(value = "修改角色菜单权限")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("updateRoleMenuInfo")
......
......@@ -47,15 +47,15 @@ public class BackUserAccountServiceImpl implements BackUserAccountService {
public ResultBody insertBAccount(BUserAccountVO bUserAccountVO) {
if (!bUserAccountVO.getPassWord().equals(bUserAccountVO.getAlertPwd())) {
// 两次密码不一致
throw new BizException(ResultEnum.PWD_ALERT_ERROR);
return ResultBody.error(ResultEnum.PWD_ALERT_ERROR);
}
// 获取新增的账户名是否已经存在
int count = backUserAccountDao.countUserAccountNo(null, bUserAccountVO.getAccountNo());
if (count > 0) {
throw new BizException(ResultEnum.ADD_USER_ACCOUNT_NAME_EXISTS);
return ResultBody.error(ResultEnum.ADD_USER_ACCOUNT_NAME_EXISTS);
}
if (bUserAccountVO.getRoleId().equals(RoleEnums.ADMIN.getId())) {
throw new BizException(ResultEnum.ONLY_ONE_ADMIN_ERROR);
return ResultBody.error(ResultEnum.ONLY_ONE_ADMIN_ERROR);
}
roleDao.insertUserRoleRel(bUserAccountVO.getId(), bUserAccountVO.getRoleId());
BackUserAccountDO backUserAccountDO = new BackUserAccountDO(bUserAccountVO);
......@@ -86,27 +86,28 @@ public class BackUserAccountServiceImpl implements BackUserAccountService {
throw new BizException(ResultEnum.UPDATE_USER_ACCOUNT_REPEAT);
}
}
BackUserAccountDO userAccountDO = new BackUserAccountDO(bUserAccountVO);
backUserAccountDao.updateBackUserAccount(userAccountDO);
// 修改单位信息
if (bUserAccountVO.getCompanyId() != null) {
CompanyBackUserDO companyBackUserDO = new CompanyBackUserDO();
companyBackUserDO.setBackUserAccountId(userAccountDO.getId());
companyBackUserDO.setCompanyInfoId(bUserAccountVO.getCompanyId());
companyService.updateCompanyBackUser(companyBackUserDO);
}
// 当前角色不是超级管理员,则不能修改为管理员账号
RoleInfoDO roleInfoDO = roleDao.getRoleInfoByUserId(bUserAccountVO.getId());
if (!roleInfoDO.getId().equals(RoleEnums.ADMIN.getId()) && bUserAccountVO.getRoleId().equals(RoleEnums.ADMIN.getId())) {
throw new BizException(ResultEnum.ONLY_ONE_ADMIN_ERROR);
return ResultBody.error(ResultEnum.ONLY_ONE_ADMIN_ERROR);
}
// 不能修改自己的角色
if (loginSuccessDTO.getUserAccountId().toString().equals(bUserAccountVO.getId().toString())) {
throw new BizException(ResultEnum.UPDATE_OWNER_ROLE_ERROR);
if (loginSuccessDTO.getUserAccountId().toString().equals(bUserAccountVO.getId().toString())
&& !bUserAccountVO.getRoleId().toString().equals(roleInfoDO.getId())) {
return ResultBody.error(ResultEnum.UPDATE_OWNER_ROLE_ERROR);
}
// 不能修改admin账号的角色
if (bUserAccountVO.getId().equals(1) && !bUserAccountVO.getRoleId().equals(RoleEnums.ADMIN.getId())) {
throw new BizException(ResultEnum.UPDATE_ADMIN_ROLE_ERROR);
return ResultBody.error(ResultEnum.UPDATE_ADMIN_ROLE_ERROR);
}
BackUserAccountDO userAccountDO = new BackUserAccountDO(bUserAccountVO);
backUserAccountDao.updateBackUserAccount(userAccountDO);
// 修改单位信息
if (bUserAccountVO.getCompanyId() != null) {
CompanyBackUserDO companyBackUserDO = new CompanyBackUserDO();
companyBackUserDO.setBackUserAccountId(userAccountDO.getId());
companyBackUserDO.setCompanyInfoId(bUserAccountVO.getCompanyId());
companyService.updateCompanyBackUser(companyBackUserDO);
}
roleDao.updateUserRoleRel(bUserAccountVO.getId(), bUserAccountVO.getRoleId());
return ResultBody.success();
......
......@@ -101,7 +101,6 @@ public class RoleServiceImpl implements RoleService {
if (roleMenuInfoVO.getRoleId().equals(loginSuccessDTO.getRoleInfo().getId())) {
return ResultBody.error(ResultEnum.UPDATE_OWNER_ROLE_MENUS_ERROR);
}
if (!CollectionUtils.isEmpty(roleMenuInfoVO.getMenuInfoIds())) {
List<MenuInfoDO> menuInfoDOList = roleDao.listRoleMenuInfo(roleMenuInfoVO.getRoleId());
List<Integer> existMenuIds = menuInfoDOList.stream().map(MenuInfoDO::getId).collect(Collectors.toList());
// 新添加的权限
......@@ -114,7 +113,6 @@ public class RoleServiceImpl implements RoleService {
if (!CollectionUtils.isEmpty(deleteMenuIds)) {
roleDao.batchDeleteMenuIds(roleMenuInfoVO.getRoleId(), deleteMenuIds);
}
}
return ResultBody.success();
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论