Browse Source

银行创建角色时赋值银行类型

lfy 2 weeks ago
parent
commit
16f2b2ce35

+ 27 - 1
delivery-module-system/delivery-module-system-biz/src/main/java/com/unis/module/system/controller/admin/user/UserController.java

@@ -1,17 +1,22 @@
1
 package com.unis.module.system.controller.admin.user;
1
 package com.unis.module.system.controller.admin.user;
2
 
2
 
3
 import cn.hutool.core.collection.CollUtil;
3
 import cn.hutool.core.collection.CollUtil;
4
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
5
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
4
 import com.unis.framework.apilog.core.annotation.ApiAccessLog;
6
 import com.unis.framework.apilog.core.annotation.ApiAccessLog;
5
 import com.unis.framework.common.enums.CommonStatusEnum;
7
 import com.unis.framework.common.enums.CommonStatusEnum;
6
 import com.unis.framework.common.pojo.CommonResult;
8
 import com.unis.framework.common.pojo.CommonResult;
7
 import com.unis.framework.common.pojo.PageParam;
9
 import com.unis.framework.common.pojo.PageParam;
8
 import com.unis.framework.common.pojo.PageResult;
10
 import com.unis.framework.common.pojo.PageResult;
9
 import com.unis.framework.excel.core.util.ExcelUtils;
11
 import com.unis.framework.excel.core.util.ExcelUtils;
12
+import com.unis.framework.security.core.LoginUser;
13
+import com.unis.framework.security.core.util.SecurityFrameworkUtils;
10
 import com.unis.module.system.controller.admin.user.vo.user.*;
14
 import com.unis.module.system.controller.admin.user.vo.user.*;
11
 import com.unis.module.system.convert.user.UserConvert;
15
 import com.unis.module.system.convert.user.UserConvert;
12
 import com.unis.module.system.dal.dataobject.dept.DeptDO;
16
 import com.unis.module.system.dal.dataobject.dept.DeptDO;
13
 import com.unis.module.system.dal.dataobject.user.AdminUserDO;
17
 import com.unis.module.system.dal.dataobject.user.AdminUserDO;
14
 import com.unis.module.system.enums.common.SexEnum;
18
 import com.unis.module.system.enums.common.SexEnum;
19
+import com.unis.module.system.enums.permission.RoleIdEnum;
15
 import com.unis.module.system.service.dept.DeptService;
20
 import com.unis.module.system.service.dept.DeptService;
16
 import com.unis.module.system.service.permission.RoleService;
21
 import com.unis.module.system.service.permission.RoleService;
17
 import com.unis.module.system.service.user.AdminUserService;
22
 import com.unis.module.system.service.user.AdminUserService;
@@ -31,9 +36,11 @@ import java.io.IOException;
31
 import java.util.*;
36
 import java.util.*;
32
 
37
 
33
 import static com.unis.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
38
 import static com.unis.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
39
+import static com.unis.framework.common.exception.util.ServiceExceptionUtil.exception;
34
 import static com.unis.framework.common.pojo.CommonResult.error;
40
 import static com.unis.framework.common.pojo.CommonResult.error;
35
 import static com.unis.framework.common.pojo.CommonResult.success;
41
 import static com.unis.framework.common.pojo.CommonResult.success;
36
 import static com.unis.framework.common.util.collection.CollectionUtils.convertList;
42
 import static com.unis.framework.common.util.collection.CollectionUtils.convertList;
43
+import static com.unis.module.infra.enums.ErrorCodeConstants.ERROR;
37
 
44
 
38
 @Tag(name = "管理后台 - 用户")
45
 @Tag(name = "管理后台 - 用户")
39
 @RestController
46
 @RestController
@@ -67,7 +74,26 @@ public class UserController {
67
                 && (reqVO.getBankType() == null || reqVO.getBankType().isEmpty())) {
74
                 && (reqVO.getBankType() == null || reqVO.getBankType().isEmpty())) {
68
             return error(400, "请选择银行类型");
75
             return error(400, "请选择银行类型");
69
         }
76
         }
70
-
77
+        LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
78
+        if (ObjectUtils.isEmpty(loginUser)) {
79
+            throw exception(ERROR, "不存在用户信息");
80
+        }
81
+        String roles = loginUser.getInfo().get("roleIds");
82
+        if (ObjectUtils.isEmpty(roles)) {
83
+            throw exception(ERROR, "当前用户不存在角色信息");
84
+        }
85
+        if (roles.contains("[") && roles.contains("]")) {
86
+            String roleIdsReal = roles.substring(1, roles.length() - 1);
87
+            String[] items = roleIdsReal.split(",");
88
+            List<String> roleIdList = Arrays.asList(items);
89
+            if (roleIdList.contains(RoleIdEnum.BANK_ADMIN.getRoleId())) {
90
+                String bankType = loginUser.getInfo().get("bankType");
91
+                if (StringUtils.isBlank(bankType)) {
92
+                    throw exception(ERROR, "当前银行用户不存在银行信息");
93
+                }
94
+                reqVO.setBankType(bankType);
95
+            }
96
+        }
71
         Long id = userService.createUser(reqVO);
97
         Long id = userService.createUser(reqVO);
72
         return success(id);
98
         return success(id);
73
     }
99
     }