wangwei 7 lat temu
rodzic
commit
6a23391edb

+ 9 - 0
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/UserController.java

@@ -29,6 +29,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
+import cn.com.qmth.examcloud.commons.base.exception.StatusException;
 import cn.com.qmth.examcloud.commons.base.util.ErrorMsg;
 import cn.com.qmth.examcloud.commons.web.security.annotation.Uac;
 import cn.com.qmth.examcloud.commons.web.security.entity.AccessUser;
@@ -37,6 +38,7 @@ import cn.com.qmth.examcloud.commons.web.security.enums.UacPolicy;
 import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
 import cn.com.qmth.examcloud.core.basic.dao.UserRepo;
 import cn.com.qmth.examcloud.core.basic.dao.entity.User;
+import cn.com.qmth.examcloud.core.basic.dao.entity.UserRole;
 import cn.com.qmth.examcloud.core.basic.dao.enums.UserType;
 import cn.com.qmth.examcloud.core.basic.service.bean.UserInfo;
 import cn.com.qmth.examcloud.core.basic.service.impl.UserServiceImpl;
@@ -121,6 +123,13 @@ public class UserController extends ControllerSupport{
 	@PutMapping
 	public User updateUser(@RequestBody User user, HttpServletRequest request) {
 		cn.com.qmth.examcloud.commons.web.security.bean.User accessUser = getAccessUser();
+		
+		List<UserRole> userRoles = user.getUserRoles();
+		for (UserRole cur : userRoles) {
+			if (cur.getRoleCode().equals(RoleMeta.SUPER_ADMIN.getCode())) {
+				throw new StatusException("B-101001", "禁止添加超级管理员");
+			}
+		}
 
 		if (accessUser.getRootOrgId() != 0) {
 			user.setRootOrgId(accessUser.getRootOrgId());