From db8242513644b246a30222663ef20e21f1e7c7ce Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: Tue, 10 Jun 2025 09:55:46 +0800
Subject: [PATCH] init
---
exam-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java | 56 +++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 47 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..7690a1c 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
@@ -3,13 +3,17 @@
import cn.hutool.core.codec.Base64;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.exam.common.annotation.DataScope;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.constant.CacheConstant;
import com.gkhy.exam.common.constant.UserConstant;
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 +21,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,15 +49,43 @@
@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);
+ }
+ /**
+ * 根据条件分页查询已分配用户角色列表
+ *
+ * @param user 用户信息
+ * @return 用户信息集合信息
+ */
+ @Override
+ @DataScope( userAlias = "u")
+ public List<SysUser> selectAllocatedList(SysUser user)
+ {
+ return baseMapper.selectAllocatedList(user);
+ }
+
+ /**
+ * 根据条件分页查询未分配用户角色列表
+ *
+ * @param user 用户信息
+ * @return 用户信息集合信息
+ */
+ @Override
+ @DataScope( userAlias = "u")
+ public List<SysUser> selectUnallocatedList(SysUser user)
+ {
+ return baseMapper.selectUnallocatedList(user);
}
@@ -109,6 +142,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 +216,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