From f0f00e9ba8a755e4317e029d73b69a92ad9f9df1 Mon Sep 17 00:00:00 2001 From: kongzy <kongzy> Date: 星期六, 14 九月 2024 17:02:41 +0800 Subject: [PATCH] update --- exam-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java | 30 +++++++++++++++++++++--------- 1 files changed, 21 insertions(+), 9 deletions(-) diff --git a/exam-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java b/exam-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java index 899df46..b35568b 100644 --- a/exam-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java +++ b/exam-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java @@ -9,7 +9,10 @@ import com.gkhy.exam.common.domain.entity.SysUser; import com.gkhy.exam.common.enums.UserTypeEnum; import com.gkhy.exam.common.exception.ApiException; -import com.gkhy.exam.common.utils.*; +import com.gkhy.exam.common.utils.PageUtils; +import com.gkhy.exam.common.utils.RedisUtils; +import com.gkhy.exam.common.utils.SecurityUtils; +import com.gkhy.exam.common.utils.StringUtils; import com.gkhy.exam.system.mapper.SysUserMapper; import com.gkhy.exam.system.service.SysConfigService; import com.gkhy.exam.system.service.SysUserService; @@ -17,6 +20,7 @@ import org.springframework.stereotype.Service; import javax.validation.Validator; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -44,14 +48,17 @@ @Override public CommonPage<SysUser> selectUserList(SysUser user) { SysUser currentUser=SecurityUtils.getLoginUser().getUser(); - Map<String,Object> paramsMap=new HashMap<>(); - paramsMap.put("userType",currentUser.getUserType()); - user.setParams(paramsMap); - if(!currentUser.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode())){ - user.setCompanyId(currentUser.getCompanyId()); + List<SysUser> users=new ArrayList<>(); + if(!currentUser.getUserType().equals(UserTypeEnum.WORKSHOP_USER.getCode())){ + if(!currentUser.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode())){ + user.setCompanyId(currentUser.getCompanyId()); + Map<String,Object> paramsMap=new HashMap<>(); + paramsMap.put("userType",currentUser.getUserType()); + user.setParams(paramsMap); + } + PageUtils.startPage(); + users=baseMapper.userList(user); } - PageUtils.startPage(); - List<SysUser> users=baseMapper.userList(user); return CommonPage.restPage(users); } @@ -109,6 +116,7 @@ checkRequestData(user); checkUserAllowed(user); user.setUpdateBy(SecurityUtils.getUsername()); + user.setPassword(null); int row=baseMapper.updateById(user); if(row<1){ throw new ApiException("更新用户信息失败"); @@ -182,7 +190,11 @@ Integer currentUserType=currentUser.getUserType(); Integer userType=user.getUserType(); //校验权限,规则:上一级用户可以增加下一级用户类型的用户 - if(!currentUserType.equals(UserTypeEnum.SYSTEM_USER.getCode())){ + if(currentUserType.equals(UserTypeEnum.SYSTEM_USER.getCode())){ + if( !userType.equals(UserTypeEnum.SYSTEM_USER.getCode())&&!userType.equals(UserTypeEnum.OTHER_USER.getCode()) &&!userType.equals(UserTypeEnum.COMPANY_USER.getCode())){ + throw new ApiException("管理员只能操作管理员、企业级和其他类型的用户"); + } + }else{ if(userType.equals(UserTypeEnum.OTHER_USER.getCode())){ throw new ApiException("没有权限操作或者更新上级用户类型的用户"); } -- Gitblit v1.9.2