Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
smart_gov_platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
smart_gov_platform
Commits
2597d9c3
Commit
2597d9c3
authored
Jul 13, 2022
by
廖旭伟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
角色分配权限接口调整
parent
5cbffd83
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
306 additions
and
145 deletions
+306
-145
portal-manager/doc/api.md
portal-manager/doc/api.md
+201
-135
portal-manager/src/main/java/com/mortals/xhx/module/menu/web/MenuController.java
.../java/com/mortals/xhx/module/menu/web/MenuController.java
+22
-6
portal-manager/src/main/java/com/mortals/xhx/module/role/service/RoleAuthService.java
.../com/mortals/xhx/module/role/service/RoleAuthService.java
+10
-0
portal-manager/src/main/java/com/mortals/xhx/module/role/service/RoleModelService.java
...com/mortals/xhx/module/role/service/RoleModelService.java
+12
-0
portal-manager/src/main/java/com/mortals/xhx/module/role/service/impl/RoleAuthServiceImpl.java
...als/xhx/module/role/service/impl/RoleAuthServiceImpl.java
+33
-4
portal-manager/src/main/java/com/mortals/xhx/module/role/service/impl/RoleModelServiceImpl.java
...ls/xhx/module/role/service/impl/RoleModelServiceImpl.java
+28
-0
No files found.
portal-manager/doc/api.md
View file @
2597d9c3
...
...
@@ -692,6 +692,19 @@ data|object|数据对象
**简要描述:**
查询数据管理
**请求参数:**
参数名称|类型|必填|描述
:---|:---|:---|:-------
roleId|Long|是|角色id
**请求样例:**
```
{
"roleId":2
}
```
**响应参数:**
...
...
@@ -700,145 +713,198 @@ data|object|数据对象
code|Integer|结果码(-1.失败,1.成功)
msg|String|消息
data|object|数据对象
 
menu|Arrays|所有菜单
 
sjgl|Arrays|当前用户已分配的数据管理权限
 
zdbp|Arrays|当前用户已分配的站点编排权限
 
sjjs|Arrays|当前用户已分配的数据精算权限
 
ptsz|Arrays|当前用户已分配的平台设置权限
**响应消息样例:**
```
{
"code": 1,
"data": [
{
"childList": [
{
"nodeId": 1,
"nodeName": "测试",
"parentId": 1
},
{
"nodeId": 2,
"nodeName": "测试zzz",
"parentId": 1
}
],
"nodeId": 1,
"nodeName": "数据管理",
"parentId": -1
},
{
"childList": [
{
"nodeId": 23,
"nodeName": "基础设置平台",
"parentId": 2
},
{
"nodeId": 26,
"nodeName": "排号系统",
"parentId": 2
},
{
"nodeId": 27,
"nodeName": "易政秀",
"parentId": 2
}
],
"nodeId": 2,
"nodeName": "站点编排",
"parentId": -1
},
{
"childList": [
{
"nodeId": 5,
"nodeName": "业务数据分析",
"parentId": 3
},
{
"nodeId": 6,
"nodeName": "用户画像图谱",
"parentId": 3
},
{
"nodeId": 7,
"nodeName": "企业画像图谱",
"parentId": 3
},
{
"nodeId": 8,
"nodeName": "使用行为分析",
"parentId": 3
},
{
"nodeId": 9,
"nodeName": "数据汇聚一张图",
"parentId": 3
},
{
"nodeId": 10,
"nodeName": "数据预处理",
"parentId": 3
},
{
"nodeId": 11,
"nodeName": "数据仓库",
"parentId": 3
},
{
"nodeId": 12,
"nodeName": "数据开放门户",
"parentId": 3
}
],
"nodeId": 3,
"nodeName": "数据精算",
"parentId": -1
},
{
"childList": [
{
"nodeId": 13,
"nodeName": "RBAC用户-权限模型",
"parentId": 4
},
{
"nodeId": 14,
"nodeName": "API服务",
"parentId": 4
},
{
"nodeId": 15,
"nodeName": "应用服务",
"parentId": 4
},
{
"nodeId": 16,
"nodeName": "产品管理",
"parentId": 4
},
{
"nodeId": 17,
"nodeName": "菜单管理",
"parentId": 4
},
{
"nodeId": 18,
"nodeName": "消息服务",
"parentId": 4
},
{
"nodeId": 19,
"nodeName": "字典管理",
"parentId": 4
},
{
"nodeId": 20,
"nodeName": "日志服务",
"parentId": 4
}
],
"nodeId": 4,
"nodeName": "平台设置",
"parentId": -1
}
]
"data": {
"zdbp": [
23,
26,
27
],
"sjjs": [
6
],
"sjgl": [
1,
2
],
"menu": [
{
"childList": [
{
"nodeId": 1,
"nodeName": "测试",
"nodeType": 1,
"parentId": 1
},
{
"nodeId": 2,
"nodeName": "测试zzz",
"nodeType": 1,
"parentId": 1
}
],
"nodeId": 1,
"nodeName": "数据管理",
"nodeType": 3,
"parentId": -1
},
{
"childList": [
{
"nodeId": 23,
"nodeName": "基础设置平台",
"nodeType": 2,
"parentId": 2
},
{
"nodeId": 26,
"nodeName": "排号系统",
"nodeType": 2,
"parentId": 2
},
{
"nodeId": 27,
"nodeName": "易政秀",
"nodeType": 2,
"parentId": 2
},
{
"nodeId": 28,
"nodeName": "设备管理系统",
"nodeType": 2,
"parentId": 2
}
],
"nodeId": 2,
"nodeName": "站点编排",
"nodeType": 3,
"parentId": -1
},
{
"childList": [
{
"nodeId": 5,
"nodeName": "业务数据分析",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 6,
"nodeName": "用户画像图谱",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 7,
"nodeName": "企业画像图谱",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 8,
"nodeName": "使用行为分析",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 9,
"nodeName": "数据汇聚一张图",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 10,
"nodeName": "数据预处理",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 11,
"nodeName": "数据仓库",
"nodeType": 3,
"parentId": 3
},
{
"nodeId": 12,
"nodeName": "数据开放门户",
"nodeType": 3,
"parentId": 3
}
],
"nodeId": 3,
"nodeName": "数据精算",
"nodeType": 3,
"parentId": -1
},
{
"childList": [
{
"nodeId": 13,
"nodeName": "RBAC用户-权限模型",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 14,
"nodeName": "API服务",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 15,
"nodeName": "应用服务",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 16,
"nodeName": "产品管理",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 17,
"nodeName": "菜单管理",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 18,
"nodeName": "消息服务",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 19,
"nodeName": "字典管理",
"nodeType": 3,
"parentId": 4
},
{
"nodeId": 20,
"nodeName": "日志服务",
"nodeType": 3,
"parentId": 4
}
],
"nodeId": 4,
"nodeName": "平台设置",
"nodeType": 3,
"parentId": -1
}
],
"ptsz": [
15
]
}
}
```
...
...
portal-manager/src/main/java/com/mortals/xhx/module/menu/web/MenuController.java
View file @
2597d9c3
...
...
@@ -10,11 +10,12 @@ import com.mortals.xhx.module.menu.model.MenuEntity;
import
com.mortals.xhx.module.menu.model.vo.MenuNodeVO
;
import
com.mortals.xhx.module.menu.service.MenuService
;
import
com.mortals.xhx.module.param.service.ParamService
;
import
com.mortals.xhx.module.role.model.RoleAuthEntity
;
import
com.mortals.xhx.module.role.model.RoleAuthQuery
;
import
com.mortals.xhx.module.role.service.RoleAuthService
;
import
com.mortals.xhx.module.role.service.RoleModelService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
...
...
@@ -33,6 +34,10 @@ public class MenuController extends BaseCRUDJsonBodyMappingController<MenuServic
@Autowired
private
ParamService
paramService
;
@Autowired
private
RoleAuthService
roleAuthService
;
@Autowired
private
RoleModelService
roleModelService
;
public
MenuController
()
{
super
.
setModuleDesc
(
"菜单信息业务"
);
...
...
@@ -134,12 +139,23 @@ public class MenuController extends BaseCRUDJsonBodyMappingController<MenuServic
* 查询所有可用菜单(树)
*/
@PostMapping
(
value
=
"list/tree"
)
public
String
getMenuList
()
{
public
String
getMenuList
(
@RequestBody
RoleAuthEntity
roleAuthEntity
)
{
JSONObject
ret
=
new
JSONObject
();
ret
.
put
(
KEY_RESULT_CODE
,
VALUE_RESULT_SUCCESS
);
try
{
if
(
roleAuthEntity
.
getRoleId
()==
null
){
throw
new
AppException
(
"角色Id不能为空"
);
}
List
<
MenuNodeVO
>
menuEntityList
=
this
.
service
.
getMenuList
();
ret
.
put
(
KEY_RESULT_DATA
,
menuEntityList
);
Map
<
String
,
Object
>
data
=
new
HashMap
<>();
data
.
put
(
"menu"
,
menuEntityList
);
Map
<
String
,
List
<
Long
>>
models
=
roleModelService
.
getRoleModelByRole
(
roleAuthEntity
.
getRoleId
());
data
.
put
(
"zdbp"
,
models
.
get
(
"modelIds"
));
data
.
put
(
"sjgl"
,
models
.
get
(
"censusIds"
));
Map
<
Long
,
List
<
Long
>>
menus
=
roleAuthService
.
getMenuIdByRole
(
roleAuthEntity
.
getRoleId
());
data
.
put
(
"sjjs"
,
menus
.
get
(
3
l
));
data
.
put
(
"ptsz"
,
menus
.
get
(
4
l
));
ret
.
put
(
KEY_RESULT_DATA
,
data
);
}
catch
(
Exception
e
)
{
log
.
error
(
"更新错误"
,
e
);
ret
.
put
(
KEY_RESULT_CODE
,
VALUE_RESULT_FAILURE
);
...
...
portal-manager/src/main/java/com/mortals/xhx/module/role/service/RoleAuthService.java
View file @
2597d9c3
...
...
@@ -4,6 +4,9 @@ import com.mortals.framework.service.ICRUDService;
import
com.mortals.xhx.module.role.model.RoleAuthEntity
;
import
com.mortals.xhx.module.role.model.RoleAuthQuery
;
import
java.util.List
;
import
java.util.Map
;
/**
* RoleAuthService
* <p>
...
...
@@ -18,4 +21,11 @@ public interface RoleAuthService extends ICRUDService<RoleAuthEntity, Long> {
* 角色分配菜单资源
*/
void
assignMenu
(
RoleAuthQuery
query
);
/**
* 用户拥有的模块
* @param userId
* @return
*/
Map
<
Long
,
List
<
Long
>>
getMenuIdByRole
(
Long
userId
);
}
\ No newline at end of file
portal-manager/src/main/java/com/mortals/xhx/module/role/service/RoleModelService.java
View file @
2597d9c3
...
...
@@ -2,6 +2,7 @@ package com.mortals.xhx.module.role.service;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.module.role.model.RoleModelEntity
;
import
java.util.List
;
import
java.util.Map
;
/**
...
...
@@ -26,4 +27,15 @@ public interface RoleModelService extends ICRUDService<RoleModelEntity,Long>{
* @return
*/
Map
<
Long
,
Long
>
getModelCensusByUserId
(
Long
userId
);
/**
* 获取角色拥有的模块权限
* @param roleId
* @return
*/
Map
<
String
,
List
<
Long
>>
getRoleModelByRole
(
Long
roleId
);
int
deleteByRoleId
(
Long
roleId
);
}
\ No newline at end of file
portal-manager/src/main/java/com/mortals/xhx/module/role/service/impl/RoleAuthServiceImpl.java
View file @
2597d9c3
...
...
@@ -7,11 +7,11 @@ import com.mortals.xhx.module.menu.model.MenuEntity;
import
com.mortals.xhx.module.menu.model.MenuQuery
;
import
com.mortals.xhx.module.menu.service.MenuService
;
import
com.mortals.xhx.module.role.dao.RoleAuthDao
;
import
com.mortals.xhx.module.role.model.RoleAuthEntity
;
import
com.mortals.xhx.module.role.model.RoleAuthQuery
;
import
com.mortals.xhx.module.role.model.RoleModelEntity
;
import
com.mortals.xhx.module.role.model.*
;
import
com.mortals.xhx.module.role.service.RoleAuthService
;
import
com.mortals.xhx.module.role.service.RoleModelService
;
import
com.mortals.xhx.module.role.service.RoleUserService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
...
...
@@ -26,6 +26,8 @@ public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl<RoleAuthDao, Ro
private
MenuService
menuService
;
@Autowired
private
RoleModelService
roleModelService
;
@Autowired
private
RoleUserService
roleUserService
;
@Override
public
void
assignMenu
(
RoleAuthQuery
query
)
{
...
...
@@ -48,9 +50,9 @@ public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl<RoleAuthDao, Ro
}).
collect
(
Collectors
.
toList
());
this
.
save
(
list
);
roleModelService
.
deleteByRoleId
(
roleId
);
RoleModelEntity
update
=
new
RoleModelEntity
();
update
.
setRoleId
(
roleId
);
roleModelService
.
remove
(
update
,
null
);
update
.
setModelIds
(
query
.
getModelIds
());
update
.
setCensusIds
(
query
.
getCensusIds
());
roleModelService
.
save
(
update
);
...
...
@@ -67,4 +69,31 @@ public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl<RoleAuthDao, Ro
}
}
@Override
public
Map
<
Long
,
List
<
Long
>>
getMenuIdByRole
(
Long
roleId
)
{
RoleAuthQuery
condition
=
new
RoleAuthQuery
();
condition
.
setRoleId
(
roleId
);
List
<
RoleAuthEntity
>
roleModelEntities
=
this
.
find
(
condition
);
if
(
CollectionUtils
.
isNotEmpty
(
roleModelEntities
))
{
List
<
Long
>
menuIds
=
roleModelEntities
.
stream
().
map
(
RoleAuthEntity:
:
getMenuId
).
collect
(
Collectors
.
toList
());
MenuQuery
query1
=
new
MenuQuery
();
query1
.
setIdList
(
menuIds
);
List
<
MenuEntity
>
menuEntities
=
menuService
.
find
(
query1
);
Map
<
Long
,
List
<
Long
>>
map
=
new
HashMap
<>();
menuEntities
.
forEach
(
m
->{
if
(
map
.
containsKey
(
m
.
getParentId
())){
map
.
get
(
m
.
getParentId
()).
add
(
m
.
getId
());
}
else
{
List
<
Long
>
menuIdList
=
new
ArrayList
<>();
menuIdList
.
add
(
m
.
getId
());
map
.
put
(
m
.
getParentId
(),
menuIdList
);
}
});
return
map
;
}
else
{
return
Collections
.
emptyMap
();
}
}
}
\ No newline at end of file
portal-manager/src/main/java/com/mortals/xhx/module/role/service/impl/RoleModelServiceImpl.java
View file @
2597d9c3
...
...
@@ -6,6 +6,7 @@ import com.mortals.xhx.module.role.model.RoleUserEntity;
import
com.mortals.xhx.module.role.service.RoleUserService
;
import
com.mortals.xhx.module.user.model.UserEntity
;
import
com.mortals.xhx.module.user.service.UserService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
...
...
@@ -57,6 +58,26 @@ public class RoleModelServiceImpl extends AbstractCRUDServiceImpl<RoleModelDao,
return
map
;
}
@Override
public
Map
<
String
,
List
<
Long
>>
getRoleModelByRole
(
Long
roleId
)
{
RoleModelQuery
condition
=
new
RoleModelQuery
();
condition
.
setRoleId
(
roleId
);
List
<
RoleModelEntity
>
roleModelEntities
=
this
.
find
(
condition
);
Map
<
String
,
List
<
Long
>>
map
=
new
HashMap
<>();
if
(
CollectionUtils
.
isNotEmpty
(
roleModelEntities
)){
List
<
String
>
censusIds
=
StringUtils
.
converStr2List
(
roleModelEntities
.
get
(
0
).
getCensusIds
());
List
<
Long
>
ids
=
censusIds
.
stream
().
map
(
s
->
DataUtil
.
converStr2Long
(
s
.
trim
(),
0
)).
collect
(
Collectors
.
toList
());
List
<
String
>
modelIds
=
StringUtils
.
converStr2List
(
roleModelEntities
.
get
(
0
).
getModelIds
());
List
<
Long
>
idsm
=
modelIds
.
stream
().
map
(
s
->
DataUtil
.
converStr2Long
(
s
.
trim
(),
0
)).
collect
(
Collectors
.
toList
());
map
.
put
(
"censusIds"
,
ids
);
map
.
put
(
"modelIds"
,
idsm
);
}
else
{
map
.
put
(
"censusIds"
,
Collections
.
emptyList
());
map
.
put
(
"modelIds"
,
Collections
.
emptyList
());
}
return
map
;
}
private
List
<
RoleModelEntity
>
getListByUser
(
Long
userId
){
RoleUserEntity
query
=
new
RoleUserEntity
();
query
.
setUserId
(
userId
);
...
...
@@ -70,4 +91,11 @@ public class RoleModelServiceImpl extends AbstractCRUDServiceImpl<RoleModelDao,
List
<
RoleModelEntity
>
roleModelEntities
=
this
.
find
(
condition
);
return
roleModelEntities
;
}
@Override
public
int
deleteByRoleId
(
Long
roleId
)
{
Map
<
String
,
Object
>
condition
=
new
HashMap
<>();
condition
.
put
(
"roleId"
,
roleId
);
return
this
.
dao
.
delete
(
condition
);
}
}
\ No newline at end of file
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