移动管理员权限检查
This commit is contained in:
parent
08b58d4717
commit
1dd56d4690
|
@ -2,8 +2,6 @@ package com.jsl.oa.services.impl;
|
||||||
|
|
||||||
import com.jsl.oa.dao.UserDAO;
|
import com.jsl.oa.dao.UserDAO;
|
||||||
import com.jsl.oa.mapper.RoleMapper;
|
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.UserCurrentDO;
|
||||||
import com.jsl.oa.model.doData.UserDO;
|
import com.jsl.oa.model.doData.UserDO;
|
||||||
import com.jsl.oa.model.voData.UserAllCurrentVO;
|
import com.jsl.oa.model.voData.UserAllCurrentVO;
|
||||||
|
@ -67,7 +65,7 @@ public class UserServiceImpl implements UserService {
|
||||||
@Override
|
@Override
|
||||||
public BaseResponse userCurrentAll(HttpServletRequest request, @NotNull UserAllCurrentVO userAllCurrentVO) {
|
public BaseResponse userCurrentAll(HttpServletRequest request, @NotNull UserAllCurrentVO userAllCurrentVO) {
|
||||||
// 检查是否是管理员用户
|
// 检查是否是管理员用户
|
||||||
if (!checkUserIsAdmin(request)) {
|
if (!Processing.checkUserIsAdmin(request, roleMapper)) {
|
||||||
return ResultUtil.error(ErrorCode.NOT_ADMIN);
|
return ResultUtil.error(ErrorCode.NOT_ADMIN);
|
||||||
}
|
}
|
||||||
// 检查数据
|
// 检查数据
|
||||||
|
@ -104,7 +102,7 @@ public class UserServiceImpl implements UserService {
|
||||||
@Override
|
@Override
|
||||||
public BaseResponse userCurrent(HttpServletRequest request, String id, String username, String email, String phone) {
|
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);
|
return ResultUtil.error(ErrorCode.NOT_ADMIN);
|
||||||
}
|
}
|
||||||
// 根据顺序优先级进行用户信息获取
|
// 根据顺序优先级进行用户信息获取
|
||||||
|
@ -125,22 +123,4 @@ public class UserServiceImpl implements UserService {
|
||||||
return ResultUtil.error(ErrorCode.USER_NOT_EXIST);
|
return ResultUtil.error(ErrorCode.USER_NOT_EXIST);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* <h2>检查用户是否是管理员</h2>
|
|
||||||
* <hr/>
|
|
||||||
* 该方法用于检查用户是否是管理员,类型封装后字节返回结果
|
|
||||||
*
|
|
||||||
* @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;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package com.jsl.oa.utils;
|
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.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.springframework.validation.BindingResult;
|
import org.springframework.validation.BindingResult;
|
||||||
|
@ -146,6 +149,25 @@ public class Processing {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <h2>检查用户是否是管理员</h2>
|
||||||
|
* <hr/>
|
||||||
|
* 该方法用于检查用户是否是管理员,类型封装后字节返回结果
|
||||||
|
*
|
||||||
|
* @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) {
|
private static char getCharFromIndex(int index) {
|
||||||
// 生成字符集合,可以根据需要自定义
|
// 生成字符集合,可以根据需要自定义
|
||||||
String charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
String charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
|
||||||
|
|
Loading…
Reference in New Issue
Block a user