Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
S
sts网站
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liyang
sts网站
Commits
f46b1bbe
Commit
f46b1bbe
authored
May 29, 2024
by
RuoYi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
限制用户操作数据权限范围
parent
e5f30b1a
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
26 additions
and
12 deletions
+26
-12
SysUserController.java
...va/com/ruoyi/web/controller/system/SysUserController.java
+5
-0
SysUser.java
...ain/java/com/ruoyi/common/core/domain/entity/SysUser.java
+1
-1
ISysRoleService.java
...c/main/java/com/ruoyi/system/service/ISysRoleService.java
+2
-2
SysDeptServiceImpl.java
...ava/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
+1
-1
SysRoleServiceImpl.java
...ava/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
+10
-7
SysUserServiceImpl.java
...ava/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+7
-1
No files found.
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
View file @
f46b1bbe
...
...
@@ -124,6 +124,8 @@ public class SysUserController extends BaseController
@PostMapping
public
AjaxResult
add
(
@Validated
@RequestBody
SysUser
user
)
{
deptService
.
checkDeptDataScope
(
user
.
getDeptId
());
roleService
.
checkRoleDataScope
(
user
.
getRoleIds
());
if
(!
userService
.
checkUserNameUnique
(
user
))
{
return
error
(
"新增用户'"
+
user
.
getUserName
()
+
"'失败,登录账号已存在"
);
...
...
@@ -151,6 +153,8 @@ public class SysUserController extends BaseController
{
userService
.
checkUserAllowed
(
user
);
userService
.
checkUserDataScope
(
user
.
getUserId
());
deptService
.
checkDeptDataScope
(
user
.
getDeptId
());
roleService
.
checkRoleDataScope
(
user
.
getRoleIds
());
if
(!
userService
.
checkUserNameUnique
(
user
))
{
return
error
(
"修改用户'"
+
user
.
getUserName
()
+
"'失败,登录账号已存在"
);
...
...
@@ -235,6 +239,7 @@ public class SysUserController extends BaseController
public
AjaxResult
insertAuthRole
(
Long
userId
,
Long
[]
roleIds
)
{
userService
.
checkUserDataScope
(
userId
);
roleService
.
checkRoleDataScope
(
roleIds
);
userService
.
insertUserAuth
(
userId
,
roleIds
);
return
success
();
}
...
...
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
View file @
f46b1bbe
...
...
@@ -22,7 +22,7 @@ public class SysUser extends BaseEntity
private
static
final
long
serialVersionUID
=
1L
;
/** 用户ID */
@Excel
(
name
=
"用户序号"
,
cellType
=
ColumnType
.
NUMERIC
,
prompt
=
"用户编号"
)
@Excel
(
name
=
"用户序号"
,
type
=
Type
.
EXPORT
,
cellType
=
ColumnType
.
NUMERIC
,
prompt
=
"用户编号"
)
private
Long
userId
;
/** 部门ID */
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java
View file @
f46b1bbe
...
...
@@ -85,9 +85,9 @@ public interface ISysRoleService
/**
* 校验角色是否有数据权限
*
* @param roleId 角色id
* @param roleId
s
角色id
*/
public
void
checkRoleDataScope
(
Long
roleId
);
public
void
checkRoleDataScope
(
Long
...
roleIds
);
/**
* 通过角色ID查询角色使用数量
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
View file @
f46b1bbe
...
...
@@ -190,7 +190,7 @@ public class SysDeptServiceImpl implements ISysDeptService
@Override
public
void
checkDeptDataScope
(
Long
deptId
)
{
if
(!
SysUser
.
isAdmin
(
SecurityUtils
.
getUserId
()))
if
(!
SysUser
.
isAdmin
(
SecurityUtils
.
getUserId
())
&&
StringUtils
.
isNotNull
(
deptId
)
)
{
SysDept
dept
=
new
SysDept
();
dept
.
setDeptId
(
deptId
);
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
View file @
f46b1bbe
...
...
@@ -192,19 +192,22 @@ public class SysRoleServiceImpl implements ISysRoleService
/**
* 校验角色是否有数据权限
*
* @param roleId 角色id
* @param roleId
s
角色id
*/
@Override
public
void
checkRoleDataScope
(
Long
roleId
)
public
void
checkRoleDataScope
(
Long
...
roleIds
)
{
if
(!
SysUser
.
isAdmin
(
SecurityUtils
.
getUserId
()))
{
SysRole
role
=
new
SysRole
();
role
.
setRoleId
(
roleId
);
List
<
SysRole
>
roles
=
SpringUtils
.
getAopProxy
(
this
).
selectRoleList
(
role
);
if
(
StringUtils
.
isEmpty
(
roles
))
for
(
Long
roleId
:
roleIds
)
{
throw
new
ServiceException
(
"没有权限访问角色数据!"
);
SysRole
role
=
new
SysRole
();
role
.
setRoleId
(
roleId
);
List
<
SysRole
>
roles
=
SpringUtils
.
getAopProxy
(
this
).
selectRoleList
(
role
);
if
(
StringUtils
.
isEmpty
(
roles
))
{
throw
new
ServiceException
(
"没有权限访问角色数据!"
);
}
}
}
}
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
View file @
f46b1bbe
...
...
@@ -28,6 +28,7 @@ import com.ruoyi.system.mapper.SysUserMapper;
import
com.ruoyi.system.mapper.SysUserPostMapper
;
import
com.ruoyi.system.mapper.SysUserRoleMapper
;
import
com.ruoyi.system.service.ISysConfigService
;
import
com.ruoyi.system.service.ISysDeptService
;
import
com.ruoyi.system.service.ISysUserService
;
/**
...
...
@@ -58,6 +59,9 @@ public class SysUserServiceImpl implements ISysUserService
@Autowired
private
ISysConfigService
configService
;
@Autowired
private
ISysDeptService
deptService
;
@Autowired
protected
Validator
validator
;
...
...
@@ -489,7 +493,6 @@ public class SysUserServiceImpl implements ISysUserService
int
failureNum
=
0
;
StringBuilder
successMsg
=
new
StringBuilder
();
StringBuilder
failureMsg
=
new
StringBuilder
();
String
password
=
configService
.
selectConfigByKey
(
"sys.user.initPassword"
);
for
(
SysUser
user
:
userList
)
{
try
...
...
@@ -499,6 +502,8 @@ public class SysUserServiceImpl implements ISysUserService
if
(
StringUtils
.
isNull
(
u
))
{
BeanValidators
.
validateWithException
(
validator
,
user
);
deptService
.
checkDeptDataScope
(
user
.
getDeptId
());
String
password
=
configService
.
selectConfigByKey
(
"sys.user.initPassword"
);
user
.
setPassword
(
SecurityUtils
.
encryptPassword
(
password
));
user
.
setCreateBy
(
operName
);
userMapper
.
insertUser
(
user
);
...
...
@@ -510,6 +515,7 @@ public class SysUserServiceImpl implements ISysUserService
BeanValidators
.
validateWithException
(
validator
,
user
);
checkUserAllowed
(
u
);
checkUserDataScope
(
u
.
getUserId
());
deptService
.
checkDeptDataScope
(
user
.
getDeptId
());
user
.
setUserId
(
u
.
getUserId
());
user
.
setUpdateBy
(
operName
);
userMapper
.
updateUser
(
user
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment