lishuangjiang@potevio.com il y a 1 an
Parent
commit
2e26857605

+ 19 - 4
sso-module-system/sso-module-system-biz/src/main/java/com/poteviohealth/cgp/sso/module/system/controller/admin/user/UserController.java

@@ -20,6 +20,7 @@ import com.poteviohealth.cgp.sso.module.system.enums.ErrorCodeConstants;
 import com.poteviohealth.cgp.sso.module.system.enums.common.SexEnum;
 import com.poteviohealth.cgp.sso.module.system.service.dept.DeptService;
 import com.poteviohealth.cgp.sso.module.system.service.oauth2.OAuth2ClientService;
+import com.poteviohealth.cgp.sso.module.system.service.permission.PermissionService;
 import com.poteviohealth.cgp.sso.module.system.service.user.AdminUserService;
 import com.poteviohealth.cgp.sso.module.system.service.userclient.UserClientService;
 import com.poteviohealth.cgp.sso.module.system.util.transmit.GuanRsa;
@@ -41,6 +42,7 @@ import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import java.io.IOException;
 import java.security.NoSuchAlgorithmException;
+import java.security.Permission;
 import java.security.interfaces.RSAPrivateKey;
 import java.security.spec.InvalidKeySpecException;
 import java.util.*;
@@ -57,7 +59,6 @@ import static com.poteviohealth.cgp.sso.module.system.enums.ErrorCodeConstants.*
 @RequestMapping("/system/user")
 @Validated
 public class UserController {
-
     @Resource
     private AdminUserService userService;
     @Resource
@@ -67,6 +68,9 @@ public class UserController {
     @Resource
     private UserClientService userClientService;
 
+    @Resource
+    private PermissionService permissionService;
+
     @PostMapping("/create")
     @Operation(summary = "新增用户")
     @PreAuthorize("@ss.hasPermission('system:user:create')")
@@ -75,9 +79,22 @@ public class UserController {
         //增加
         reqVO.setId(id);
         updateUserClient(reqVO);
+        updateUserRoles(reqVO);
         return success(id);
     }
 
+    private void updateUserRoles(UserSaveReqVO reqVO) {
+        Set<Long> roleIds = new HashSet<>();
+        if(reqVO.getRoleType().equals(CommonStatusEnum.ENABLE.getStatus())){
+            //可创建用户
+            roleIds.add(112L);
+        }else{
+            //不可创建用户
+            roleIds.add(113L);
+        }
+        permissionService.assignUserRole(reqVO.getId(),roleIds);
+    }
+
     private void updateUserClient(UserSaveReqVO reqVO) {
         Set<Long> clientIds = reqVO.getAssociatedSystem();
         if(CollectionUtils.isNotEmpty(clientIds)){
@@ -127,6 +144,7 @@ public class UserController {
         userService.updateUser(reqVO);
         //增加
         updateUserClient(reqVO);
+        updateUserRoles(reqVO);
         return success(true);
     }
 
@@ -324,7 +342,4 @@ public class UserController {
         userClientService.updateTokenById(userClient.getId(),token);
         return oAuth2Client.getLoginUrl()+"?timestamp="+timestamp+"&user="+loginUserName+"&token="+token;
     }
-
-
-
 }

+ 6 - 0
sso-module-system/sso-module-system-biz/src/main/java/com/poteviohealth/cgp/sso/module/system/controller/admin/user/vo/user/UserRespVO.java

@@ -89,5 +89,11 @@ public class UserRespVO{
     @Schema(description = "关联系统", example = "1,2")
     private Set<Long> associatedSystem;
 
+    @Schema(description = "内置用户标识", example = "1/2")
+    private Integer type;
+
+    @Schema(description = "角色类型", example = "0/1")
+    private Integer roleType;
+
 
 }