Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
O
on-site-service
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
external
on-site-service
Commits
f0a96d7d
Commit
f0a96d7d
authored
Jul 05, 2022
by
shangtx
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: web端登录
parent
b6f136eb
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
187 additions
and
7 deletions
+187
-7
LoginController.java
...m/onsiteservice/admin/controller/sys/LoginController.java
+5
-4
BizListTreeVO.java
.../onsiteservice/admin/controller/sys/vo/BizListTreeVO.java
+25
-0
BizTreeVO.java
.../com/onsiteservice/admin/controller/sys/vo/BizTreeVO.java
+22
-0
LoginInitVO.java
...om/onsiteservice/admin/controller/sys/vo/LoginInitVO.java
+5
-3
MenuTreeVO.java
...com/onsiteservice/admin/controller/sys/vo/MenuTreeVO.java
+31
-0
OperationVO.java
...om/onsiteservice/admin/controller/sys/vo/OperationVO.java
+17
-0
SysBusinessService.java
...m/onsiteservice/admin/service/sys/SysBusinessService.java
+82
-0
No files found.
admin/src/main/java/com/onsiteservice/admin/controller/sys/LoginController.java
View file @
f0a96d7d
...
@@ -2,6 +2,7 @@ package com.onsiteservice.admin.controller.sys;
...
@@ -2,6 +2,7 @@ package com.onsiteservice.admin.controller.sys;
import
com.onsiteservice.admin.controller.sys.vo.LoginInitVO
;
import
com.onsiteservice.admin.controller.sys.vo.LoginInitVO
;
import
com.onsiteservice.admin.security.pojo.AccountCredentials
;
import
com.onsiteservice.admin.security.pojo.AccountCredentials
;
import
com.onsiteservice.admin.service.sys.SysBusinessService
;
import
com.onsiteservice.common.annotation.user.CurrentUserId
;
import
com.onsiteservice.common.annotation.user.CurrentUserId
;
import
com.onsiteservice.core.result.Result
;
import
com.onsiteservice.core.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
...
@@ -25,8 +26,8 @@ import static com.onsiteservice.core.result.ResultGenerator.success;
...
@@ -25,8 +26,8 @@ import static com.onsiteservice.core.result.ResultGenerator.success;
@Validated
@Validated
public
class
LoginController
{
public
class
LoginController
{
//
@Resource
@Resource
// private BaseBusinessService base
BusinessService;
private
SysBusinessService
sys
BusinessService
;
@ApiOperation
(
value
=
"登录"
,
notes
=
"作者: 潘维吉。 Spring Security处理, 不配置浏览器会出现CORS跨域问题"
)
@ApiOperation
(
value
=
"登录"
,
notes
=
"作者: 潘维吉。 Spring Security处理, 不配置浏览器会出现CORS跨域问题"
)
@PostMapping
(
"login"
)
@PostMapping
(
"login"
)
...
@@ -35,9 +36,9 @@ public class LoginController {
...
@@ -35,9 +36,9 @@ public class LoginController {
}
}
@ApiOperation
(
value
=
"获取菜单、权限、用户"
,
notes
=
"作者: 潘维吉"
)
@ApiOperation
(
value
=
"获取菜单、权限、用户"
)
@GetMapping
(
"login/init"
)
@GetMapping
(
"login/init"
)
public
Result
<
LoginInitVO
>
init
(
@CurrentUserId
Long
userId
)
{
public
Result
<
LoginInitVO
>
init
(
@CurrentUserId
Long
userId
)
{
return
success
(
/*baseBusinessService.init(userId)*/
);
return
success
(
sysBusinessService
.
init
(
userId
)
);
}
}
}
}
admin/src/main/java/com/onsiteservice/admin/controller/sys/vo/BizListTreeVO.java
0 → 100644
View file @
f0a96d7d
package
com
.
onsiteservice
.
admin
.
controller
.
sys
.
vo
;
import
com.onsiteservice.entity.sys.SysBusiness
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.util.List
;
/**
* @author 商天翔
* @date 2020/5/25 14:41
* @email shangtX@126.com
* @description 业务管理列表VO
*/
@Getter
@Setter
@ToString
public
class
BizListTreeVO
extends
SysBusiness
{
private
Long
key
;
private
List
<
BizListTreeVO
>
children
;
private
Boolean
hasOperation
;
}
admin/src/main/java/com/onsiteservice/admin/controller/sys/vo/BizTreeVO.java
0 → 100644
View file @
f0a96d7d
package
com
.
onsiteservice
.
admin
.
controller
.
sys
.
vo
;
import
lombok.*
;
import
java.util.List
;
/**
* 业务树-业务VO
*/
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString
public
class
BizTreeVO
{
private
Long
key
;
private
String
title
;
private
String
code
;
private
String
parentCode
;
private
List
<
BizTreeVO
>
children
;
private
List
<
OperationVO
>
operations
;
// 业务操作
}
admin/src/main/java/com/onsiteservice/admin/controller/sys/vo/LoginInitVO.java
View file @
f0a96d7d
package
com
.
onsiteservice
.
admin
.
controller
.
sys
.
vo
;
package
com
.
onsiteservice
.
admin
.
controller
.
sys
.
vo
;
import
com.onsiteservice.entity.sys.SysBusinessOperate
;
import
com.onsiteservice.entity.sys.SysUser
;
import
com.onsiteservice.entity.sys.vo.MenuTreeVO
;
import
com.onsiteservice.entity.sys.vo.MenuTreeVO
;
import
lombok.Getter
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.Setter
;
...
@@ -15,11 +17,11 @@ import java.util.List;
...
@@ -15,11 +17,11 @@ import java.util.List;
@Getter
@Getter
@Setter
@Setter
@ToString
@ToString
public
class
LoginInitVO
<
T
,
E
>
{
public
class
LoginInitVO
{
/**
/**
* 当前登录用户
* 当前登录用户
*/
*/
private
T
userInfo
;
private
SysUser
userInfo
;
/**
/**
* 菜单树
* 菜单树
...
@@ -29,5 +31,5 @@ public class LoginInitVO<T, E> {
...
@@ -29,5 +31,5 @@ public class LoginInitVO<T, E> {
/**
/**
* 业务操作集合
* 业务操作集合
*/
*/
private
List
<
E
>
operateList
;
private
List
<
String
>
operateList
;
}
}
admin/src/main/java/com/onsiteservice/admin/controller/sys/vo/MenuTreeVO.java
0 → 100644
View file @
f0a96d7d
package
com
.
onsiteservice
.
admin
.
controller
.
sys
.
vo
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
lombok.*
;
import
java.util.List
;
/**
* @author 潘维吉
* @date 2020/3/7 14:42
* @email 406798106@qq.com
* @description 菜单树结构
*/
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString
public
class
MenuTreeVO
{
@JSONField
(
serialize
=
false
)
private
Long
id
;
private
String
code
;
@JSONField
(
serialize
=
false
)
private
String
parentCode
;
private
String
icon
;
private
String
name
;
private
String
path
;
private
String
treePath
;
// private Boolean hideInMenu = false;
private
List
<
MenuTreeVO
>
children
;
}
admin/src/main/java/com/onsiteservice/admin/controller/sys/vo/OperationVO.java
0 → 100644
View file @
f0a96d7d
package
com
.
onsiteservice
.
admin
.
controller
.
sys
.
vo
;
import
lombok.*
;
/**
* 业务树叶子节点的操作VO
*/
@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@ToString
public
class
OperationVO
{
private
Long
id
;
private
String
name
;
private
Long
businessId
;
}
admin/src/main/java/com/onsiteservice/admin/service/sys/SysBusinessService.java
0 → 100644
View file @
f0a96d7d
package
com
.
onsiteservice
.
admin
.
service
.
sys
;
import
com.onsiteservice.admin.controller.sys.vo.LoginInitVO
;
import
com.onsiteservice.dao.mapper.sys.SysBusinessMapper
;
import
com.onsiteservice.dao.mapper.sys.SysBusinessOperateMapper
;
import
com.onsiteservice.dao.mapper.sys.SysUserMapper
;
import
com.onsiteservice.entity.sys.SysBusinessOperate
;
import
com.onsiteservice.entity.sys.SysUser
;
import
com.onsiteservice.entity.sys.vo.MenuTreeVO
;
import
com.onsiteservice.util.tree.TreePathUtils
;
import
com.onsiteservice.util.tree.TreeUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
@Service
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
class
SysBusinessService
{
@Resource
private
SysUserMapper
sysUserMapper
;
@Resource
private
SysBusinessMapper
sysBusinessMapper
;
@Resource
private
SysBusinessOperateMapper
sysBusinessOperateMapper
;
/**
* 登录后初始化
* 菜单、权限、用户信息等
*/
public
LoginInitVO
init
(
Long
userId
)
{
LoginInitVO
loginInitVO
=
new
LoginInitVO
();
List
<
MenuTreeVO
>
businessList
;
SysUser
user
=
sysUserMapper
.
selectByPrimaryKey
(
userId
);
loginInitVO
.
setUserInfo
(
user
);
if
(
Objects
.
nonNull
(
user
))
{
if
(
user
.
getIsGod
())
{
businessList
=
getAllBusiness
();
loginInitVO
.
setOperateList
(
getAllOperations
().
stream
().
map
(
SysBusinessOperate:
:
getOperateKey
).
collect
(
Collectors
.
toList
()));
}
else
{
businessList
=
getUserBusiness
(
userId
);
loginInitVO
.
setOperateList
(
getUserOperations
(
userId
).
stream
().
map
(
SysBusinessOperate:
:
getOperateKey
).
collect
(
Collectors
.
toList
()));
}
}
else
{
businessList
=
List
.
of
();
}
// 动态生成TreePath 这是是最复杂的场景 其他场景可以根据规范简化参数
TreePathUtils
.
genPath
(
businessList
,
"code"
,
"parentCode"
,
"treePath"
,
"/"
,
"name"
);
loginInitVO
.
setMenuList
(
TreeUtils
.
getTree
(
businessList
,
MenuTreeVO:
:
getCode
,
MenuTreeVO:
:
getParentCode
,
MenuTreeVO:
:
setChildren
));
return
loginInitVO
;
}
public
List
<
MenuTreeVO
>
getAllBusiness
()
{
return
sysBusinessMapper
.
getAllBusiness
();
}
public
List
<
MenuTreeVO
>
getUserBusiness
(
Long
userId
)
{
return
sysBusinessMapper
.
getUserBusiness
(
userId
);
}
public
List
<
SysBusinessOperate
>
getUserOperations
(
Long
userId
)
{
return
sysBusinessOperateMapper
.
getOperateByUserId
(
userId
);
}
public
List
<
SysBusinessOperate
>
getAllOperations
()
{
return
sysBusinessOperateMapper
.
selectAll
();
}
}
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