Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
普蓝开源社区
盘古开发框架
提交
3ab7fd04
盘古开发框架
项目概览
普蓝开源社区
/
盘古开发框架
通知
25
Star
3
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
1
Wiki
分析
仓库
DevOps
项目成员
Pages
盘古开发框架
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
1
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
3ab7fd04
编写于
6月 25, 2019
作者:
X
xiongchun
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
(1)完善了直接访问静态html页面时的权限控制逻辑。
(2)在LayUI前端框架下实现了根据权限数据动态生成主页左侧导航菜单。
上级
5a6af60e
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
32 addition
and
76 deletion
+32
-76
myclouds-base/src/main/java/com/gitee/myclouds/base/helper/treebuiler/TreeNodeVO.java
...com/gitee/myclouds/base/helper/treebuiler/TreeNodeVO.java
+6
-0
myclouds-gateway/src/main/java/com/gitee/myclouds/gateway/limiter/KeyResolverBox.java
...va/com/gitee/myclouds/gateway/limiter/KeyResolverBox.java
+1
-1
myclouds-system-service/src/main/java/com/gitee/myclouds/system/common/vo/.keep
...e/src/main/java/com/gitee/myclouds/system/common/vo/.keep
+0
-0
myclouds-system-service/src/main/java/com/gitee/myclouds/system/common/vo/MenuVO.java
...main/java/com/gitee/myclouds/system/common/vo/MenuVO.java
+0
-41
myclouds-system-service/src/main/java/com/gitee/myclouds/system/module/home/HomeController.java
...com/gitee/myclouds/system/module/home/HomeController.java
+8
-7
myclouds-system-service/src/main/java/com/gitee/myclouds/system/module/home/HomeMapper.xml
...java/com/gitee/myclouds/system/module/home/HomeMapper.xml
+4
-4
myclouds-system-service/src/main/java/com/gitee/myclouds/system/module/home/HomeService.java
...va/com/gitee/myclouds/system/module/home/HomeService.java
+13
-23
未找到文件。
myclouds-base/src/main/java/com/gitee/myclouds/base/helper/treebuiler/TreeNodeVO.java
浏览文件 @
3ab7fd04
...
...
@@ -30,6 +30,12 @@ public class TreeNodeVO implements Serializable {
// 节点复选框选中状态
private
Boolean
checked
;
//节点图标样式类
private
String
icon
;
//URL链接
private
String
url
;
// 子孙节点集合
private
List
<
TreeNodeVO
>
children
;
...
...
myclouds-gateway/src/main/java/com/gitee/myclouds/gateway/limiter/KeyResolverBox.java
浏览文件 @
3ab7fd04
...
...
@@ -8,7 +8,7 @@ import reactor.core.publisher.Mono;
/**
* 限流KEY字段生成
* <p> 返回的字符串将作为限流器在Redis中键名
称
的一部分
* <p> 返回的字符串将作为限流器在Redis中键名的一部分
*
* @author xiongchun
*
...
...
myclouds-system-service/src/main/java/com/gitee/myclouds/system/common/vo/.keep
0 → 100644
浏览文件 @
3ab7fd04
myclouds-system-service/src/main/java/com/gitee/myclouds/system/common/vo/MenuVO.java
已删除
100644 → 0
浏览文件 @
5a6af60e
package
com.gitee.myclouds.system.common.vo
;
import
java.io.Serializable
;
import
java.util.List
;
import
lombok.Data
;
import
lombok.ToString
;
import
lombok.experimental.Accessors
;
/**
* 功能菜单简单值对象(配合前端使用的数据结构)
*
* @author xiongchun
*
*/
@Data
@ToString
@Accessors
(
chain
=
true
)
public
class
MenuVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
//菜单ID
private
Integer
id
;
//父节点ID
private
Integer
parent_id
;
//菜单名称
private
String
name
;
//菜单访问路径
private
String
url
;
//菜单图标
private
String
icon
;
//子菜单
private
List
<
MenuVO
>
subMenus
;
}
myclouds-system-service/src/main/java/com/gitee/myclouds/system/module/home/HomeController.java
浏览文件 @
3ab7fd04
package
com.gitee.myclouds.system.module.home
;
import
java.util.List
;
import
java.util.Map
;
import
javax.servlet.http.HttpSession
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.gitee.myclouds.base.vo.OutVO
;
import
com.gitee.myclouds.common.wrapper.Dtos
;
import
com.gitee.myclouds.system.common.vo.MenuVO
;
import
cn.hutool.core.map.MapUtil
;
/**
* 首页 服务发布
...
...
@@ -28,14 +29,14 @@ public class HomeController {
private
HomeService
homeService
;
/**
*
查询用户功能菜单列表
*
初始化首页框架
*
* @param inMap
* @return
*/
@PostMapping
(
value
=
"
listMenus
"
,
produces
=
"application/json"
)
public
List
<
MenuVO
>
listMenus
(
@RequestParam
Map
<
String
,
Object
>
inMap
){
return
homeService
.
listMenus
(
Dtos
.
newDto
(
inMap
));
@PostMapping
(
value
=
"
init
"
,
produces
=
"application/json"
)
public
OutVO
init
(
@RequestBody
Map
<
String
,
Object
>
inMap
){
return
homeService
.
init
(
MapUtil
.
getInt
(
inMap
,
"userId"
));
}
/**
...
...
myclouds-system-service/src/main/java/com/gitee/myclouds/system/module/home/HomeMapper.xml
浏览文件 @
3ab7fd04
...
...
@@ -5,15 +5,15 @@
<!-- 首页模块SQL映射 -->
<mapper
namespace=
"sql.home"
>
<!-- 查询导航
用的模块实体对象
-->
<select
id=
"listMenus"
parameterType=
"
Dto"
resultType=
"Menu
VO"
>
SELECT id, parent_id
, name
, url, icon FROM my_module t1
<!-- 查询导航
菜单
-->
<select
id=
"listMenus"
parameterType=
"
Integer"
resultType=
"TreeNode
VO"
>
SELECT id, parent_id
AS pId, name AS label
, url, icon FROM my_module t1
WHERE t1.is_enable = '1' AND t1.type = '1'
AND t1.id IN (
SELECT DISTINCT module_id FROM my_role_module WHERE role_id IN (
SELECT role_id FROM my_user_role WHERE user_id = #{user_id}
) )
ORDER BY t1.sort_no
ORDER BY t1.sort_no
, t1.id
</select>
</mapper>
\ No newline at end of file
myclouds-system-service/src/main/java/com/gitee/myclouds/system/module/home/HomeService.java
浏览文件 @
3ab7fd04
...
...
@@ -8,13 +8,13 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
com.gitee.myclouds.base.exception.BizException
;
import
com.gitee.myclouds.base.helper.treebuiler.TreeBuilder
;
import
com.gitee.myclouds.base.helper.treebuiler.TreeNodeVO
;
import
com.gitee.myclouds.base.vo.OutVO
;
import
com.gitee.myclouds.common.util.MyCons
;
import
com.gitee.myclouds.common.util.MyListUtil
;
import
com.gitee.myclouds.common.util.MyUtil
;
import
com.gitee.myclouds.common.wrapper.Dto
;
import
com.gitee.myclouds.common.wrapper.Dtos
;
import
com.gitee.myclouds.system.common.vo.MenuVO
;
import
com.gitee.myclouds.system.domain.myuser.MyUserEntity
;
import
com.gitee.myclouds.system.domain.myuser.MyUserMapper
;
...
...
@@ -31,32 +31,22 @@ public class HomeService {
private
SqlSession
sqlSession
;
@Autowired
private
MyUserMapper
myUserMapper
;
/**
*
查询用户功能菜单列表
*
首页框架初始化数据
*
* @param inDto
* @return
*/
public
List
<
MenuVO
>
listMenus
(
Dto
inDto
)
{
List
<
MenuVO
>
menuVOs
=
sqlSession
.
selectList
(
"sql.home.listMenus"
,
inDto
);
String
ctxPath
=
inDto
.
getString
(
"ctxPath"
);
for
(
MenuVO
menuVO
:
menuVOs
)
{
String
url
=
menuVO
.
getUrl
();
if
(
MyUtil
.
isNotEmpty
(
url
))
{
menuVO
.
setUrl
(
ctxPath
+
(
StringUtils
.
startsWith
(
url
,
"/"
)
?
url
:
"/"
+
url
));
}
}
String
jql
=
"SELECT * FROM :MyList WHERE parent_id = :parent_id"
;
List
<
MenuVO
>
level1Menus
=
MyListUtil
.
list
(
menuVOs
,
MenuVO
.
class
,
jql
,
Dtos
.
newDto
(
"parent_id"
,
1
));
for
(
MenuVO
menuVO
:
level1Menus
)
{
List
<
MenuVO
>
level2Menus
=
MyListUtil
.
list
(
menuVOs
,
MenuVO
.
class
,
jql
,
Dtos
.
newDto
(
"parent_id"
,
menuVO
.
getId
()));
if
(
MyUtil
.
isNotEmpty
(
level2Menus
))
{
menuVO
.
setSubMenus
(
level2Menus
);
}
}
return
level1Menus
;
public
OutVO
init
(
Integer
userId
)
{
OutVO
outVO
=
new
OutVO
(
0
);
Dto
dataDto
=
Dtos
.
newDto
();
List
<
TreeNodeVO
>
leftNavMenus
=
sqlSession
.
selectList
(
"sql.home.listMenus"
,
userId
);
leftNavMenus
=
new
TreeBuilder
(
leftNavMenus
).
buildTree
();
dataDto
.
put
(
"leftNavMenus"
,
leftNavMenus
);
//dataDto.put(); maybe other data else
outVO
.
setData
(
dataDto
);
return
outVO
;
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录