提交 c1e73fcb 作者: xiaowang

Merge branch 'develop' of ssh://git.mmcuav.cn:8222/iuav/cms into develop

...@@ -44,7 +44,9 @@ public enum ResultEnum implements BaseErrorInfoInterface { ...@@ -44,7 +44,9 @@ public enum ResultEnum implements BaseErrorInfoInterface {
UPDATE_OWNER_ROLE_MENUS_ERROR("8007", "禁止修改与当前登录账号角色相同的角色权限"), UPDATE_OWNER_ROLE_MENUS_ERROR("8007", "禁止修改与当前登录账号角色相同的角色权限"),
UPDATE_OWNER_ROLE_ERROR("8008", "禁止修改当前账号的角色"), UPDATE_OWNER_ROLE_ERROR("8008", "禁止修改当前账号的角色"),
UPDATE_ADMIN_ROLE_ERROR("8009", "禁止修改admin账号的角色"), UPDATE_ADMIN_ROLE_ERROR("8009", "禁止修改admin账号的角色"),
ONLY_ONE_ADMIN_ERROR("8010", "禁止该账号获取超级管理员角色"); ONLY_ONE_ADMIN_ERROR("8010", "禁止该账号获取超级管理员角色"),
DELETE_ADMIN_ERROR("8011", "禁止删除超级管理员角色账号"),
DELETE_YOURSELF_ERROR("8011", "禁止删除自己的账号");
/** /**
* 错误码 * 错误码
......
...@@ -47,7 +47,7 @@ public class BackUserAccountController extends BaseController { ...@@ -47,7 +47,7 @@ public class BackUserAccountController extends BaseController {
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("removeBAccount") @GetMapping("removeBAccount")
public ResultBody disableBAccount(@RequestParam Integer userAccountId, HttpServletRequest request) { public ResultBody disableBAccount(@RequestParam Integer userAccountId, HttpServletRequest request) {
return backUserAccountService.disableBAccount(userAccountId); return backUserAccountService.disableBAccount(userAccountId, this.getUserLoginInfoFromRedis(request).getUserAccountId());
} }
@ApiOperation(value = "账号-列表") @ApiOperation(value = "账号-列表")
......
...@@ -69,7 +69,6 @@ public class RoleController extends BaseController { ...@@ -69,7 +69,6 @@ public class RoleController extends BaseController {
return roleService.listRoleMenuInfo(roleId); return roleService.listRoleMenuInfo(roleId);
} }
@ApiOperation(value = "修改角色菜单权限") @ApiOperation(value = "修改角色菜单权限")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("updateRoleMenuInfo") @PostMapping("updateRoleMenuInfo")
......
...@@ -34,10 +34,11 @@ public interface BackUserAccountService { ...@@ -34,10 +34,11 @@ public interface BackUserAccountService {
/** /**
* 禁用后台用户 * 禁用后台用户
* *
* @param userAccountId * @param accountId
* @param backUserAccountId
* @return * @return
*/ */
ResultBody disableBAccount(Integer userAccountId); ResultBody disableBAccount(Integer accountId, Integer backUserAccountId);
/** /**
* 后台用户列表 * 后台用户列表
......
...@@ -47,24 +47,25 @@ public class BackUserAccountServiceImpl implements BackUserAccountService { ...@@ -47,24 +47,25 @@ public class BackUserAccountServiceImpl implements BackUserAccountService {
public ResultBody insertBAccount(BUserAccountVO bUserAccountVO) { public ResultBody insertBAccount(BUserAccountVO bUserAccountVO) {
if (!bUserAccountVO.getPassWord().equals(bUserAccountVO.getAlertPwd())) { 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()); int count = backUserAccountDao.countUserAccountNo(null, bUserAccountVO.getAccountNo());
if (count > 0) { 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())) { 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); BackUserAccountDO backUserAccountDO = new BackUserAccountDO(bUserAccountVO);
try { try {
backUserAccountDO.setPassword(PwdUtil.securityPwd(bUserAccountVO.getPassWord())); backUserAccountDO.setPassword(PwdUtil.securityPwd(bUserAccountVO.getPassWord()));
} catch (NoSuchAlgorithmException e) { } catch (NoSuchAlgorithmException e) {
throw new BizException(ResultEnum.PWD_CREATE_ERROR); return ResultBody.error(ResultEnum.PWD_CREATE_ERROR);
} }
backUserAccountDao.insertBackUserAccount(backUserAccountDO); backUserAccountDao.insertBackUserAccount(backUserAccountDO);
// 添加角色
roleDao.insertUserRoleRel(backUserAccountDO.getId(), bUserAccountVO.getRoleId());
// 添加单位信息 // 添加单位信息
if (bUserAccountVO.getCompanyId() != null) { if (bUserAccountVO.getCompanyId() != null) {
CompanyBackUserDO companyBackUserDO = new CompanyBackUserDO(); CompanyBackUserDO companyBackUserDO = new CompanyBackUserDO();
...@@ -86,35 +87,43 @@ public class BackUserAccountServiceImpl implements BackUserAccountService { ...@@ -86,35 +87,43 @@ public class BackUserAccountServiceImpl implements BackUserAccountService {
throw new BizException(ResultEnum.UPDATE_USER_ACCOUNT_REPEAT); 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()); RoleInfoDO roleInfoDO = roleDao.getRoleInfoByUserId(bUserAccountVO.getId());
if (!roleInfoDO.getId().equals(RoleEnums.ADMIN.getId()) && bUserAccountVO.getRoleId().equals(RoleEnums.ADMIN.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())) { if (loginSuccessDTO.getUserAccountId().toString().equals(bUserAccountVO.getId().toString())
throw new BizException(ResultEnum.UPDATE_OWNER_ROLE_ERROR); && !bUserAccountVO.getRoleId().toString().equals(roleInfoDO.getId())) {
return ResultBody.error(ResultEnum.UPDATE_OWNER_ROLE_ERROR);
} }
// 不能修改admin账号的角色 // 不能修改admin账号的角色
if (bUserAccountVO.getId().equals(1) && !bUserAccountVO.getRoleId().equals(RoleEnums.ADMIN.getId())) { 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()); roleDao.updateUserRoleRel(bUserAccountVO.getId(), bUserAccountVO.getRoleId());
return ResultBody.success(); return ResultBody.success();
} }
@Override @Override
public ResultBody disableBAccount(Integer userAccountId) { public ResultBody disableBAccount(Integer accountId, Integer backUserAccountId) {
backUserAccountDao.disableBackUserAccountDO(userAccountId); RoleInfoDO roleInfoDO = roleDao.getRoleInfoByUserId(accountId);
if (roleInfoDO.getSuperAdmin().equals(RoleEnums.ADMIN.getId())) {
return ResultBody.error(ResultEnum.DELETE_ADMIN_ERROR);
}
if (accountId.toString().equals(backUserAccountId.toString())) {
return ResultBody.error(ResultEnum.DELETE_YOURSELF_ERROR);
}
backUserAccountDao.disableBackUserAccountDO(accountId);
return ResultBody.success(); return ResultBody.success();
} }
......
...@@ -101,7 +101,6 @@ public class RoleServiceImpl implements RoleService { ...@@ -101,7 +101,6 @@ public class RoleServiceImpl implements RoleService {
if (roleMenuInfoVO.getRoleId().equals(loginSuccessDTO.getRoleInfo().getId())) { if (roleMenuInfoVO.getRoleId().equals(loginSuccessDTO.getRoleInfo().getId())) {
return ResultBody.error(ResultEnum.UPDATE_OWNER_ROLE_MENUS_ERROR); return ResultBody.error(ResultEnum.UPDATE_OWNER_ROLE_MENUS_ERROR);
} }
if (!CollectionUtils.isEmpty(roleMenuInfoVO.getMenuInfoIds())) {
List<MenuInfoDO> menuInfoDOList = roleDao.listRoleMenuInfo(roleMenuInfoVO.getRoleId()); List<MenuInfoDO> menuInfoDOList = roleDao.listRoleMenuInfo(roleMenuInfoVO.getRoleId());
List<Integer> existMenuIds = menuInfoDOList.stream().map(MenuInfoDO::getId).collect(Collectors.toList()); List<Integer> existMenuIds = menuInfoDOList.stream().map(MenuInfoDO::getId).collect(Collectors.toList());
// 新添加的权限 // 新添加的权限
...@@ -114,7 +113,6 @@ public class RoleServiceImpl implements RoleService { ...@@ -114,7 +113,6 @@ public class RoleServiceImpl implements RoleService {
if (!CollectionUtils.isEmpty(deleteMenuIds)) { if (!CollectionUtils.isEmpty(deleteMenuIds)) {
roleDao.batchDeleteMenuIds(roleMenuInfoVO.getRoleId(), deleteMenuIds); roleDao.batchDeleteMenuIds(roleMenuInfoVO.getRoleId(), deleteMenuIds);
} }
}
return ResultBody.success(); return ResultBody.success();
} }
......
...@@ -113,9 +113,7 @@ ...@@ -113,9 +113,7 @@
</select> </select>
<delete id="removeRoleInfo" parameterType="java.lang.Integer"> <delete id="removeRoleInfo" parameterType="java.lang.Integer">
delete update role_info set is_deleted = 1 where id = #{id}
from role_info
where id = #{id}
</delete> </delete>
<delete id="batchDeleteMenuIds"> <delete id="batchDeleteMenuIds">
...@@ -182,7 +180,7 @@ ...@@ -182,7 +180,7 @@
<select id="countNotDelUserAccountByRole" resultType="java.lang.Integer"> <select id="countNotDelUserAccountByRole" resultType="java.lang.Integer">
SELECT count(*) SELECT count(*)
FROM user_role_rel ur FROM user_role_rel ur
INNER JOIN user_account ua ON ur.back_user_account_id = ua.id INNER JOIN back_user_account ua ON ur.back_user_account_id = ua.id
WHERE ur.role_id = #{id} WHERE ur.role_id = #{id}
AND ua.is_deleted = 0 AND ua.is_deleted = 0
</select> </select>
......
...@@ -18,4 +18,4 @@ patches: ...@@ -18,4 +18,4 @@ patches:
images: images:
- name: REGISTRY/NAMESPACE/IMAGE:TAG - name: REGISTRY/NAMESPACE/IMAGE:TAG
newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/cms newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/cms
newTag: 1b4aa203732125215528da7902fe4b68c687dfd3 newTag: 6accac4106c773d7a04f22f7ea1686607acee6b9
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论