Sfoglia il codice sorgente

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

lfy 2 settimane fa
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 1
 package com.unis.module.system.controller.admin.user;
2 2
 
3 3
 import cn.hutool.core.collection.CollUtil;
4
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
5
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
4 6
 import com.unis.framework.apilog.core.annotation.ApiAccessLog;
5 7
 import com.unis.framework.common.enums.CommonStatusEnum;
6 8
 import com.unis.framework.common.pojo.CommonResult;
7 9
 import com.unis.framework.common.pojo.PageParam;
8 10
 import com.unis.framework.common.pojo.PageResult;
9 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 14
 import com.unis.module.system.controller.admin.user.vo.user.*;
11 15
 import com.unis.module.system.convert.user.UserConvert;
12 16
 import com.unis.module.system.dal.dataobject.dept.DeptDO;
13 17
 import com.unis.module.system.dal.dataobject.user.AdminUserDO;
14 18
 import com.unis.module.system.enums.common.SexEnum;
19
+import com.unis.module.system.enums.permission.RoleIdEnum;
15 20
 import com.unis.module.system.service.dept.DeptService;
16 21
 import com.unis.module.system.service.permission.RoleService;
17 22
 import com.unis.module.system.service.user.AdminUserService;
@@ -31,9 +36,11 @@ import java.io.IOException;
31 36
 import java.util.*;
32 37
 
33 38
 import static com.unis.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
39
+import static com.unis.framework.common.exception.util.ServiceExceptionUtil.exception;
34 40
 import static com.unis.framework.common.pojo.CommonResult.error;
35 41
 import static com.unis.framework.common.pojo.CommonResult.success;
36 42
 import static com.unis.framework.common.util.collection.CollectionUtils.convertList;
43
+import static com.unis.module.infra.enums.ErrorCodeConstants.ERROR;
37 44
 
38 45
 @Tag(name = "管理后台 - 用户")
39 46
 @RestController
@@ -67,7 +74,26 @@ public class UserController {
67 74
                 && (reqVO.getBankType() == null || reqVO.getBankType().isEmpty())) {
68 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 97
         Long id = userService.createUser(reqVO);
72 98
         return success(id);
73 99
     }