Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
smileNicky
taoshop
提交
711051a5
T
taoshop
项目概览
smileNicky
/
taoshop
通知
4
Star
1
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
2
Wiki
1
Wiki
分析
仓库
DevOps
项目成员
Pages
T
taoshop
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
1
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
711051a5
编写于
10月 22, 2018
作者:
N
nicky
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/1.0.0' into dev
上级
9845f7f0
ec6fbc94
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
62 addition
and
13 deletion
+62
-13
src/taoshop-manager/taoshop-manager-api/src/main/java/com/muses/taoshop/manager/service/IMenuService.java
.../java/com/muses/taoshop/manager/service/IMenuService.java
+11
-0
src/taoshop-manager/taoshop-manager-service/src/main/java/com/muses/taoshop/manager/mapper/SysMenuMapper.java
.../java/com/muses/taoshop/manager/mapper/SysMenuMapper.java
+3
-0
src/taoshop-manager/taoshop-manager-service/src/main/java/com/muses/taoshop/manager/service/MenuServiceImpl.java
...va/com/muses/taoshop/manager/service/MenuServiceImpl.java
+17
-1
src/taoshop-manager/taoshop-manager-service/src/main/resources/mybatis/SysMenuMapper.xml
...ager-service/src/main/resources/mybatis/SysMenuMapper.xml
+23
-1
src/taoshop-manager/taoshop-manager-service/src/main/resources/mybatis/SysRoleMapper.xml
...ager-service/src/main/resources/mybatis/SysRoleMapper.xml
+0
-1
src/taoshop-manager/taoshop-manager-web/src/main/java/com/muses/taoshop/manager/web/controller/LoginController.java
...muses/taoshop/manager/web/controller/LoginController.java
+8
-10
未找到文件。
src/taoshop-manager/taoshop-manager-api/src/main/java/com/muses/taoshop/manager/service/IMenuService.java
浏览文件 @
711051a5
...
...
@@ -6,5 +6,16 @@ import com.muses.taoshop.manager.entity.Menu;
import
java.util.List
;
public
interface
IMenuService
{
/**
* 根据权限id获取菜单
* @param permissionId
* @return
*/
Menu
listMenu
(
int
permissionId
);
/**
* 权限菜单获取,即根据用户角色获取用户可以查看的菜单
* @return
*/
List
<
Menu
>
listPermissionMenu
(
int
userId
);
}
src/taoshop-manager/taoshop-manager-service/src/main/java/com/muses/taoshop/manager/mapper/SysMenuMapper.java
浏览文件 @
711051a5
...
...
@@ -20,5 +20,8 @@ import java.util.List;
*/
@MybatisRepository
public
interface
SysMenuMapper
{
Menu
listMenu
(
@Param
(
"permissionId"
)
int
permissionId
);
List
<
Menu
>
listPermissionMenu
(
@Param
(
"userId"
)
int
userId
);
}
src/taoshop-manager/taoshop-manager-service/src/main/java/com/muses/taoshop/manager/service/MenuServiceImpl.java
浏览文件 @
711051a5
...
...
@@ -5,6 +5,8 @@ import com.muses.taoshop.manager.mapper.SysMenuMapper;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* <pre>
* 菜单管理业务接口
...
...
@@ -22,9 +24,23 @@ public class MenuServiceImpl implements IMenuService{
@Autowired
SysMenuMapper
sysMenuMapper
;
/**
* 根据权限id获取菜单
* @param permissionId
* @return
*/
@Override
public
Menu
listMenu
(
int
permissionId
)
{
return
sysMenuMapper
.
listMenu
(
permissionId
);
}
/**
* 权限菜单获取,即根据用户角色获取用户可以查看的菜单
*
* @return
*/
@Override
public
List
<
Menu
>
listPermissionMenu
(
int
userId
)
{
return
sysMenuMapper
.
listPermissionMenu
(
userId
);
}
}
src/taoshop-manager/taoshop-manager-service/src/main/resources/mybatis/SysMenuMapper.xml
浏览文件 @
711051a5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.muses.taoshop.manager.mapper.SysMenuMapper"
>
<!-- 根据权限id获取菜单-->
<select
id=
"listMenu"
parameterType=
"Integer"
resultType=
"Menu"
>
SELECT
m.*
...
...
@@ -11,5 +11,27 @@
ON p.menuId = m.menuId
WHERE p.id = #{permissionId}
</select>
<!-- 获取权限菜单 -->
<select
id=
"listPermissionMenu"
parameterType=
"Integer"
resultType=
"Menu"
>
SELECT
m.*
FROM
sys_menu m
WHERE m.menuId IN
(SELECT
p.menuId
FROM
sys_permission p
LEFT JOIN sys_role_permission rp
ON rp.permissionId = p.id
WHERE rp.roleId IN
(SELECT
ur.roleId
FROM
sys_user_role ur
LEFT JOIN sys_role r
ON r.roleId = ur.roleId
WHERE ur.userId = #{userId}))
</select>
</mapper>
\ No newline at end of file
src/taoshop-manager/taoshop-manager-service/src/main/resources/mybatis/SysRoleMapper.xml
浏览文件 @
711051a5
...
...
@@ -9,7 +9,6 @@
<select
id=
"listUserRole"
parameterType=
"Integer"
resultType=
"SysRole"
>
SELECT
r.*,
ur.userId
FROM
sys_user_role ur
LEFT JOIN sys_role r
...
...
src/taoshop-manager/taoshop-manager-web/src/main/java/com/muses/taoshop/manager/web/controller/LoginController.java
浏览文件 @
711051a5
...
...
@@ -120,6 +120,7 @@ public class LoginController extends BaseController {
Subject
sub
=
SecurityUtils
.
getSubject
();
UsernamePasswordToken
token
=
new
UsernamePasswordToken
(
username
,
password
);
sub
.
login
(
token
);
log
.
info
(
"登录成功!"
);
}
}
else
{
//账号或者密码错误
...
...
@@ -145,12 +146,13 @@ public class LoginController extends BaseController {
*/
@RequestMapping
(
value
=
"/toIndex"
)
public
ModelAndView
toMain
()
throws
AuthenticationException
{
log
.
info
(
"跳转到系统主页=>"
);
ModelAndView
mv
=
this
.
getModelAndView
();
/*
获取Shiro管理的
Session */
/*
E1:获取Shiro管理的用户
Session */
Subject
subject
=
SecurityUtils
.
getSubject
();
Session
session
=
subject
.
getSession
();
SysUser
user
=
(
SysUser
)
session
.
getAttribute
(
Constants
.
SESSION_USER
);
/* E2:获取用户具有的角色权限 */
if
(
user
!=
null
){
Set
<
SysRole
>
roles
=
iSysRoleService
.
getUserRoles
(
user
.
getId
());
Set
<
Permission
>
permissions
=
new
HashSet
<
Permission
>();
...
...
@@ -167,17 +169,13 @@ public class LoginController extends BaseController {
Menu
menu
=
iMenuService
.
listMenu
(
p
.
getId
());
menuList
.
add
(
menu
);
}
/* E3:获取权限对应的菜单信息*/
//TODO 方法二: 直接通过SQL获取权限菜单
//menuList = iMenuService.listPermissionMenu(user.getId());
log
.
info
(
"用户可以查看的菜单个数:{}"
+
menuList
.
size
());
MenuTreeUtil
treeUtil
=
new
MenuTreeUtil
();
log
.
info
(
"用户可以查看的菜单列表:{}"
+
menuList
.
toArray
());
if
(!
CollectionUtils
.
isEmpty
(
menuList
))
{
List
<
Menu
>
treemenus
=
treeUtil
.
menuList
(
menuList
);
// String json = JSON.toJSONString(treemenus);
//
// json = json.replaceAll("menuId","id").replaceAll("parentId","pId").
// replaceAll("menuName","name").replaceAll("hasSubMenu","checked");
mv
.
addObject
(
"menus"
,
treemenus
);
mv
.
setViewName
(
"admin/frame/index"
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录