diff --git a/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java b/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java index 19dc272..fd8fb34 100755 --- a/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java +++ b/src/main/java/com/jsl/oa/services/impl/UserServiceImpl.java @@ -2,8 +2,6 @@ package com.jsl.oa.services.impl; import com.jsl.oa.dao.UserDAO; import com.jsl.oa.mapper.RoleMapper; -import com.jsl.oa.model.doData.RoleDO; -import com.jsl.oa.model.doData.RoleUserDO; import com.jsl.oa.model.doData.UserCurrentDO; import com.jsl.oa.model.doData.UserDO; import com.jsl.oa.model.voData.UserAllCurrentVO; @@ -67,7 +65,7 @@ public class UserServiceImpl implements UserService { @Override public BaseResponse userCurrentAll(HttpServletRequest request, @NotNull UserAllCurrentVO userAllCurrentVO) { // 检查是否是管理员用户 - if (!checkUserIsAdmin(request)) { + if (!Processing.checkUserIsAdmin(request, roleMapper)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 检查数据 @@ -104,7 +102,7 @@ public class UserServiceImpl implements UserService { @Override public BaseResponse userCurrent(HttpServletRequest request, String id, String username, String email, String phone) { // 检查是否是管理员用户 - if (!checkUserIsAdmin(request)) { + if (!Processing.checkUserIsAdmin(request, roleMapper)) { return ResultUtil.error(ErrorCode.NOT_ADMIN); } // 根据顺序优先级进行用户信息获取 @@ -125,22 +123,4 @@ public class UserServiceImpl implements UserService { return ResultUtil.error(ErrorCode.USER_NOT_EXIST); } } - - /** - *

检查用户是否是管理员

- *
- * 该方法用于检查用户是否是管理员,类型封装后字节返回结果 - * - * @param request 请求 - * @return 如果为 true 是管理员,false 不是管理员 - */ - private @NotNull Boolean checkUserIsAdmin(HttpServletRequest request) { - RoleUserDO roleUserDO = roleMapper.getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); - if (roleUserDO != null) { - RoleDO roleDO = roleMapper.getRoleByRoleName("admin"); - return roleUserDO.getRid().equals(roleDO.getId()); - } else { - return false; - } - } } diff --git a/src/main/java/com/jsl/oa/utils/Processing.java b/src/main/java/com/jsl/oa/utils/Processing.java index 06aa2e6..ebf036f 100755 --- a/src/main/java/com/jsl/oa/utils/Processing.java +++ b/src/main/java/com/jsl/oa/utils/Processing.java @@ -1,5 +1,8 @@ package com.jsl.oa.utils; +import com.jsl.oa.mapper.RoleMapper; +import com.jsl.oa.model.doData.RoleDO; +import com.jsl.oa.model.doData.RoleUserDO; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.springframework.validation.BindingResult; @@ -146,6 +149,25 @@ public class Processing { } } + /** + *

检查用户是否是管理员

+ *
+ * 该方法用于检查用户是否是管理员,类型封装后字节返回结果 + * + * @param request 请求 + * @param roleMapper RoleMapper + * @return 如果为 true 是管理员,false 不是管理员 + */ + public static @NotNull Boolean checkUserIsAdmin(HttpServletRequest request, @NotNull RoleMapper roleMapper) { + RoleUserDO roleUserDO = roleMapper.getRoleUserByUid(Processing.getAuthHeaderToUserId(request)); + if (roleUserDO != null) { + RoleDO roleDO = roleMapper.getRoleByRoleName("admin"); + return roleUserDO.getRid().equals(roleDO.getId()); + } else { + return false; + } + } + private static char getCharFromIndex(int index) { // 生成字符集合,可以根据需要自定义 String charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";