Commit 5410b72f876f575d67ba99630eead1ab448ff57a
1 parent
69a3e8e7
init: 系统管理相关
Showing
24 changed files
with
936 additions
and
55 deletions
src/main/java/com/order/erp/config/AdminMetaObjectHandler.java
1 | package com.order.erp.config; | 1 | package com.order.erp.config; |
2 | 2 | ||
3 | import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; | 3 | import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; |
4 | +import com.order.erp.common.constant.Constant; | ||
5 | +import com.order.erp.common.utils.SecurityUtils; | ||
4 | import lombok.extern.slf4j.Slf4j; | 6 | import lombok.extern.slf4j.Slf4j; |
5 | import org.apache.ibatis.reflection.MetaObject; | 7 | import org.apache.ibatis.reflection.MetaObject; |
8 | +import org.springframework.security.core.userdetails.UserDetails; | ||
6 | import org.springframework.stereotype.Component; | 9 | import org.springframework.stereotype.Component; |
7 | 10 | ||
8 | import java.time.LocalDateTime; | 11 | import java.time.LocalDateTime; |
@@ -26,27 +29,27 @@ public class AdminMetaObjectHandler implements MetaObjectHandler { | @@ -26,27 +29,27 @@ public class AdminMetaObjectHandler implements MetaObjectHandler { | ||
26 | LocalDateTime now = LocalDateTime.now(); | 29 | LocalDateTime now = LocalDateTime.now(); |
27 | this.strictInsertFill(metaObject, CREATE_TIME, LocalDateTime.class, now); | 30 | this.strictInsertFill(metaObject, CREATE_TIME, LocalDateTime.class, now); |
28 | this.strictInsertFill(metaObject, MODIFY_TIME, LocalDateTime.class, now); | 31 | this.strictInsertFill(metaObject, MODIFY_TIME, LocalDateTime.class, now); |
29 | -// this.strictInsertFill(metaObject, ENABLE_FLAG, Integer.class, Constant.ENABLE_TEN); | ||
30 | -// LoginUserDetail loginUser = UserUtils.getLoginUser(); | ||
31 | -// if (null == loginUser) { | ||
32 | -// return; | ||
33 | -// } | ||
34 | -// | ||
35 | -// this.strictInsertFill(metaObject, CREATE_BY, String.class, loginUser.getRealName()); | ||
36 | -// | ||
37 | -// this.strictInsertFill(metaObject, MODIFY_BY, String.class, loginUser.getRealName()); | 32 | + this.strictInsertFill(metaObject, ENABLE_FLAG, Integer.class, Constant.ENABLE_TEN); |
33 | + UserDetails loginUser = SecurityUtils.getUserDetails(); | ||
34 | + if (null == loginUser) { | ||
35 | + return; | ||
36 | + } | ||
37 | + | ||
38 | + this.strictInsertFill(metaObject, CREATE_BY, String.class, loginUser.getUsername()); | ||
39 | + | ||
40 | + this.strictInsertFill(metaObject, MODIFY_BY, String.class, loginUser.getUsername()); | ||
38 | 41 | ||
39 | } | 42 | } |
40 | 43 | ||
41 | @Override | 44 | @Override |
42 | public void updateFill(MetaObject metaObject) { | 45 | public void updateFill(MetaObject metaObject) { |
43 | 46 | ||
44 | - this.strictInsertFill(metaObject, MODIFY_TIME, LocalDateTime.class, LocalDateTime.now()); | 47 | + this.strictUpdateFill(metaObject, MODIFY_TIME, LocalDateTime.class, LocalDateTime.now()); |
45 | 48 | ||
46 | -// LoginUserDetail loginUser = UserUtils.getLoginUser(); | ||
47 | -// if (null == loginUser) { | ||
48 | -// return; | ||
49 | -// } | ||
50 | -// this.strictInsertFill(metaObject, MODIFY_BY, String.class, loginUser.getRealName()); | 49 | + UserDetails loginUser = SecurityUtils.getUserDetails(); |
50 | + if (null == loginUser) { | ||
51 | + return; | ||
52 | + } | ||
53 | + this.strictUpdateFill(metaObject, MODIFY_BY, String.class, loginUser.getUsername()); | ||
51 | } | 54 | } |
52 | } | 55 | } |
src/main/java/com/order/erp/controller/DeptController.java
0 → 100644
1 | +package com.order.erp.controller; | ||
2 | + | ||
3 | +import com.order.erp.common.constant.ServerResult; | ||
4 | +import com.order.erp.domain.vo.admin.AdminDeptQueryVO; | ||
5 | +import com.order.erp.domain.vo.admin.AdminDeptVO; | ||
6 | +import com.order.erp.log.Log; | ||
7 | +import com.order.erp.service.admin.AdminDeptService; | ||
8 | +import io.swagger.annotations.Api; | ||
9 | +import io.swagger.annotations.ApiOperation; | ||
10 | +import org.springframework.security.access.prepost.PreAuthorize; | ||
11 | +import org.springframework.validation.annotation.Validated; | ||
12 | +import org.springframework.web.bind.annotation.*; | ||
13 | + | ||
14 | +import javax.annotation.Resource; | ||
15 | + | ||
16 | +/** | ||
17 | + * @date 2019-03-25 | ||
18 | + */ | ||
19 | +@RestController | ||
20 | +@Api(tags = "系统:部门管理") | ||
21 | +@RequestMapping("/order/erp/depts") | ||
22 | +public class DeptController { | ||
23 | + | ||
24 | + @Resource | ||
25 | + private AdminDeptService deptService; | ||
26 | + | ||
27 | + | ||
28 | + @Log("查询部门") | ||
29 | + @ApiOperation("查询部门") | ||
30 | + @PostMapping(value = "/list_by_page") | ||
31 | + @PreAuthorize("@el.check('user:list','dept:list')") | ||
32 | + public ServerResult listByPage(@RequestBody @Validated AdminDeptQueryVO queryVO) { | ||
33 | + return deptService.list(queryVO); | ||
34 | + } | ||
35 | + | ||
36 | + @Log("新增部门") | ||
37 | + @ApiOperation("新增部门") | ||
38 | + @PostMapping("/add") | ||
39 | + @PreAuthorize("@el.check('dept:add')") | ||
40 | + public ServerResult add(@RequestBody @Validated AdminDeptVO deptVO) { | ||
41 | + return deptService.add(deptVO); | ||
42 | + } | ||
43 | + | ||
44 | + @Log("修改部门") | ||
45 | + @ApiOperation("修改部门") | ||
46 | + @PutMapping | ||
47 | + @PreAuthorize("@el.check('dept:edit')") | ||
48 | + public ServerResult edit(@RequestBody @Validated AdminDeptVO deptVO) { | ||
49 | + return deptService.edit(deptVO); | ||
50 | + } | ||
51 | + | ||
52 | + @Log("删除部门") | ||
53 | + @ApiOperation("删除部门") | ||
54 | + @DeleteMapping | ||
55 | + @PreAuthorize("@el.check('dept:del')") | ||
56 | + public ServerResult delete(@RequestBody @Validated AdminDeptQueryVO queryVO) { | ||
57 | + return ServerResult.success(deptService.deleteById(queryVO)); | ||
58 | + } | ||
59 | +} | ||
0 | \ No newline at end of file | 60 | \ No newline at end of file |
src/main/java/com/order/erp/controller/JobController.java
0 → 100644
1 | +package com.order.erp.controller; | ||
2 | + | ||
3 | +import com.order.erp.common.constant.ServerResult; | ||
4 | +import com.order.erp.domain.vo.admin.AdminJobQueryVO; | ||
5 | +import com.order.erp.domain.vo.admin.AdminJobVO; | ||
6 | +import com.order.erp.log.Log; | ||
7 | +import com.order.erp.service.admin.AdminJobService; | ||
8 | +import io.swagger.annotations.Api; | ||
9 | +import io.swagger.annotations.ApiOperation; | ||
10 | +import org.springframework.security.access.prepost.PreAuthorize; | ||
11 | +import org.springframework.validation.annotation.Validated; | ||
12 | +import org.springframework.web.bind.annotation.PostMapping; | ||
13 | +import org.springframework.web.bind.annotation.RequestBody; | ||
14 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
15 | +import org.springframework.web.bind.annotation.RestController; | ||
16 | + | ||
17 | +import javax.annotation.Resource; | ||
18 | + | ||
19 | +/** | ||
20 | + * @date 2019-03-29 | ||
21 | + */ | ||
22 | +@Api(tags = "系统:岗位管理") | ||
23 | +@RestController | ||
24 | +@RequestMapping("/order/erp/jobs") | ||
25 | +public class JobController { | ||
26 | + | ||
27 | + @Resource | ||
28 | + private AdminJobService jobService; | ||
29 | + | ||
30 | + @Log("查询岗位") | ||
31 | + @ApiOperation("查询岗位") | ||
32 | + @PostMapping(value = "/list_by_page") | ||
33 | + @PreAuthorize("@el.check('job:list','user:list')") | ||
34 | + public ServerResult listByPage(@RequestBody @Validated AdminJobQueryVO queryVO) { | ||
35 | + return jobService.list(queryVO); | ||
36 | + } | ||
37 | + | ||
38 | + @Log("新增岗位") | ||
39 | + @ApiOperation("新增岗位") | ||
40 | + @PostMapping(value = "/add") | ||
41 | + @PreAuthorize("@el.check('job:add')") | ||
42 | + public ServerResult add(@RequestBody @Validated AdminJobVO jobVO) { | ||
43 | + return jobService.add(jobVO); | ||
44 | + } | ||
45 | + | ||
46 | + @Log("修改岗位") | ||
47 | + @ApiOperation("修改岗位") | ||
48 | + @PostMapping(value = "/edit") | ||
49 | + @PreAuthorize("@el.check('job:edit')") | ||
50 | + public ServerResult edit(@RequestBody @Validated AdminJobVO jobVO) { | ||
51 | + return jobService.edit(jobVO); | ||
52 | + } | ||
53 | + | ||
54 | + @Log("删除岗位") | ||
55 | + @ApiOperation("删除岗位") | ||
56 | + @PostMapping(value = "/delete") | ||
57 | + @PreAuthorize("@el.check('job:del')") | ||
58 | + public ServerResult delete(@RequestBody @Validated AdminJobQueryVO queryVO) { | ||
59 | + return jobService.deleteById(queryVO); | ||
60 | + } | ||
61 | +} | ||
0 | \ No newline at end of file | 62 | \ No newline at end of file |
src/main/java/com/order/erp/controller/MenuController.java
0 → 100644
1 | +package com.order.erp.controller; | ||
2 | + | ||
3 | +import com.order.erp.common.constant.ServerResult; | ||
4 | +import com.order.erp.domain.vo.admin.AdminMenuQueryVO; | ||
5 | +import com.order.erp.domain.vo.admin.AdminMenuVO; | ||
6 | +import com.order.erp.log.Log; | ||
7 | +import com.order.erp.service.admin.AdminMenuService; | ||
8 | +import io.swagger.annotations.Api; | ||
9 | +import io.swagger.annotations.ApiOperation; | ||
10 | +import org.springframework.security.access.prepost.PreAuthorize; | ||
11 | +import org.springframework.validation.annotation.Validated; | ||
12 | +import org.springframework.web.bind.annotation.PostMapping; | ||
13 | +import org.springframework.web.bind.annotation.RequestBody; | ||
14 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
15 | +import org.springframework.web.bind.annotation.RestController; | ||
16 | + | ||
17 | +import javax.annotation.Resource; | ||
18 | + | ||
19 | +/** | ||
20 | + * @date 2018-12-03 | ||
21 | + */ | ||
22 | +@Api(tags = "系统:菜单管理") | ||
23 | +@RestController | ||
24 | +@RequestMapping("/order/erp/menus") | ||
25 | +@SuppressWarnings("unchecked") | ||
26 | +public class MenuController { | ||
27 | + | ||
28 | + @Resource | ||
29 | + private AdminMenuService menuService; | ||
30 | + | ||
31 | + @ApiOperation("获取前端所需菜单") | ||
32 | + @PostMapping(value = "/build") | ||
33 | + public ServerResult buildMenus() { | ||
34 | + return ServerResult.success(); | ||
35 | + } | ||
36 | + | ||
37 | + @ApiOperation("返回全部的菜单") | ||
38 | + @PostMapping(value = "/tree") | ||
39 | + @PreAuthorize("@el.check('menu:list','roles:list')") | ||
40 | + public ServerResult getMenuTree() { | ||
41 | + return ServerResult.success(); | ||
42 | + } | ||
43 | + | ||
44 | + @Log("查询菜单") | ||
45 | + @ApiOperation("查询菜单") | ||
46 | + @PostMapping(value = "/all") | ||
47 | + @PreAuthorize("@el.check('menu:list')") | ||
48 | + public ServerResult all(@RequestBody @Validated AdminMenuQueryVO queryVO) { | ||
49 | + return menuService.all(queryVO); | ||
50 | + } | ||
51 | + | ||
52 | + @Log("新增菜单") | ||
53 | + @ApiOperation("新增菜单") | ||
54 | + @PostMapping(value = "/add") | ||
55 | + @PreAuthorize("@el.check('menu:add')") | ||
56 | + public ServerResult add(@RequestBody @Validated AdminMenuVO menuVO) { | ||
57 | + return menuService.add(menuVO); | ||
58 | + } | ||
59 | + | ||
60 | + @Log("修改菜单") | ||
61 | + @ApiOperation("修改菜单") | ||
62 | + @PostMapping(value = "/edit") | ||
63 | + @PreAuthorize("@el.check('menu:edit')") | ||
64 | + public ServerResult edit(@RequestBody @Validated AdminMenuVO menuVO) { | ||
65 | + return menuService.edit(menuVO); | ||
66 | + } | ||
67 | + | ||
68 | + @Log("删除菜单") | ||
69 | + @ApiOperation("删除菜单") | ||
70 | + @PostMapping(value = "/delete") | ||
71 | + @PreAuthorize("@el.check('menu:del')") | ||
72 | + public ServerResult delete(@RequestBody @Validated AdminMenuQueryVO queryVO) { | ||
73 | + return menuService.deleteById(queryVO); | ||
74 | + } | ||
75 | +} |
src/main/java/com/order/erp/controller/RoleController.java
1 | package com.order.erp.controller; | 1 | package com.order.erp.controller; |
2 | 2 | ||
3 | import com.order.erp.common.constant.ServerResult; | 3 | import com.order.erp.common.constant.ServerResult; |
4 | +import com.order.erp.domain.vo.admin.AdminAuthRoleVO; | ||
4 | import com.order.erp.domain.vo.admin.AdminRoleQueryVO; | 5 | import com.order.erp.domain.vo.admin.AdminRoleQueryVO; |
5 | import com.order.erp.domain.vo.admin.AdminRoleVO; | 6 | import com.order.erp.domain.vo.admin.AdminRoleVO; |
6 | import com.order.erp.log.Log; | 7 | import com.order.erp.log.Log; |
@@ -61,7 +62,7 @@ public class RoleController { | @@ -61,7 +62,7 @@ public class RoleController { | ||
61 | @PostMapping(value = "/add") | 62 | @PostMapping(value = "/add") |
62 | @PreAuthorize("@el.check('roles:add')") | 63 | @PreAuthorize("@el.check('roles:add')") |
63 | public ServerResult add(@RequestBody @Validated AdminRoleVO roleVO) { | 64 | public ServerResult add(@RequestBody @Validated AdminRoleVO roleVO) { |
64 | - return ServerResult.success(); | 65 | + return roleService.add(roleVO); |
65 | } | 66 | } |
66 | 67 | ||
67 | @Log("修改角色") | 68 | @Log("修改角色") |
@@ -69,15 +70,15 @@ public class RoleController { | @@ -69,15 +70,15 @@ public class RoleController { | ||
69 | @PostMapping(value = "/edit") | 70 | @PostMapping(value = "/edit") |
70 | @PreAuthorize("@el.check('roles:edit')") | 71 | @PreAuthorize("@el.check('roles:edit')") |
71 | public ServerResult edit(@RequestBody @Validated AdminRoleVO roleVO) { | 72 | public ServerResult edit(@RequestBody @Validated AdminRoleVO roleVO) { |
72 | - return ServerResult.success(); | 73 | + return roleService.edit(roleVO); |
73 | } | 74 | } |
74 | 75 | ||
75 | - @Log("修改角色菜单") | ||
76 | - @ApiOperation("修改角色菜单") | ||
77 | - @PostMapping(value = "/edit_menu") | 76 | + @Log("授权角色菜单") |
77 | + @ApiOperation("授权角色菜单") | ||
78 | + @PostMapping(value = "/auth_menu") | ||
78 | @PreAuthorize("@el.check('roles:edit')") | 79 | @PreAuthorize("@el.check('roles:edit')") |
79 | - public ServerResult editMenu(@RequestBody @Validated AdminRoleVO roleVO) { | ||
80 | - return ServerResult.success(); | 80 | + public ServerResult authMenu(@RequestBody @Validated AdminAuthRoleVO roleVO) { |
81 | + return roleService.authMenu(roleVO); | ||
81 | } | 82 | } |
82 | 83 | ||
83 | @Log("删除角色") | 84 | @Log("删除角色") |
@@ -85,6 +86,6 @@ public class RoleController { | @@ -85,6 +86,6 @@ public class RoleController { | ||
85 | @PostMapping(value = "/delete") | 86 | @PostMapping(value = "/delete") |
86 | @PreAuthorize("@el.check('roles:del')") | 87 | @PreAuthorize("@el.check('roles:del')") |
87 | public ServerResult delete(@RequestBody @Validated AdminRoleQueryVO queryVO) { | 88 | public ServerResult delete(@RequestBody @Validated AdminRoleQueryVO queryVO) { |
88 | - return ServerResult.success(); | 89 | + return roleService.deleteById(queryVO); |
89 | } | 90 | } |
90 | } | 91 | } |
src/main/java/com/order/erp/controller/UserController.java
0 → 100644
1 | +package com.order.erp.controller; | ||
2 | + | ||
3 | +import com.order.erp.common.constant.ServerResult; | ||
4 | +import com.order.erp.config.DataScope; | ||
5 | +import com.order.erp.domain.vo.admin.AdminAuthUserVO; | ||
6 | +import com.order.erp.domain.vo.admin.AdminUserQueryVO; | ||
7 | +import com.order.erp.domain.vo.admin.AdminUserVO; | ||
8 | +import com.order.erp.log.Log; | ||
9 | +import com.order.erp.service.admin.AdminUserService; | ||
10 | +import io.swagger.annotations.Api; | ||
11 | +import io.swagger.annotations.ApiOperation; | ||
12 | +import org.springframework.beans.factory.annotation.Value; | ||
13 | +import org.springframework.security.access.prepost.PreAuthorize; | ||
14 | +import org.springframework.validation.annotation.Validated; | ||
15 | +import org.springframework.web.bind.annotation.*; | ||
16 | +import org.springframework.web.multipart.MultipartFile; | ||
17 | + | ||
18 | +import javax.annotation.Resource; | ||
19 | + | ||
20 | +/** | ||
21 | + * @date 2018-11-23 | ||
22 | + */ | ||
23 | +@Api(tags = "系统:用户管理") | ||
24 | +@RestController | ||
25 | +@RequestMapping("/order/erp/users") | ||
26 | +public class UserController { | ||
27 | + | ||
28 | + @Value("${rsa.private_key}") | ||
29 | + private String privateKey; | ||
30 | + | ||
31 | + @Resource | ||
32 | + private AdminUserService userService; | ||
33 | + | ||
34 | + @Resource | ||
35 | + private DataScope dataScope; | ||
36 | + | ||
37 | + @Log("查询用户") | ||
38 | + @ApiOperation("查询用户") | ||
39 | + @PostMapping(value = "list_by_page") | ||
40 | + @PreAuthorize("@el.check('user:list')") | ||
41 | + public ServerResult listByPage(@RequestBody @Validated AdminUserQueryVO queryVO) { | ||
42 | + return userService.list(queryVO); | ||
43 | + } | ||
44 | + | ||
45 | + @Log("授权角色") | ||
46 | + @ApiOperation("授权角色") | ||
47 | + @PostMapping(value = "/auth_role") | ||
48 | + @PreAuthorize("@el.check('user:add')") | ||
49 | + public ServerResult authRole(@RequestBody @Validated AdminAuthUserVO userVO) { | ||
50 | + return userService.authRole(userVO); | ||
51 | + } | ||
52 | + | ||
53 | + @Log("新增用户") | ||
54 | + @ApiOperation("新增用户") | ||
55 | + @PostMapping(value = "/add") | ||
56 | + @PreAuthorize("@el.check('user:add')") | ||
57 | + public ServerResult add(@RequestBody @Validated AdminUserVO userVO) { | ||
58 | + return userService.add(userVO); | ||
59 | + } | ||
60 | + | ||
61 | + @Log("修改用户") | ||
62 | + @ApiOperation("修改用户") | ||
63 | + @PostMapping(value = "/edit") | ||
64 | + @PreAuthorize("@el.check('user:edit')") | ||
65 | + public ServerResult edit(@RequestBody @Validated AdminUserVO userVO) { | ||
66 | + return userService.edit(userVO); | ||
67 | + } | ||
68 | + | ||
69 | + @Log("修改用户:个人中心") | ||
70 | + @ApiOperation("修改用户:个人中心") | ||
71 | + @PostMapping(value = "/center") | ||
72 | + public ServerResult center(@RequestBody @Validated AdminUserVO userVO) { | ||
73 | + return ServerResult.success(); | ||
74 | + } | ||
75 | + | ||
76 | + @Log("删除用户") | ||
77 | + @ApiOperation("删除用户") | ||
78 | + @PostMapping(value = "/delete") | ||
79 | + @PreAuthorize("@el.check('user:del')") | ||
80 | + public ServerResult delete(@RequestBody @Validated AdminUserQueryVO queryVO) { | ||
81 | + return userService.deleteById(queryVO); | ||
82 | + } | ||
83 | + | ||
84 | + @ApiOperation("修改密码") | ||
85 | + @PostMapping(value = "/updatePass") | ||
86 | + public ServerResult updatePass(@RequestBody @Validated AdminUserQueryVO queryVO) { | ||
87 | + return ServerResult.success(); | ||
88 | + } | ||
89 | + | ||
90 | + @ApiOperation("修改头像") | ||
91 | + @PostMapping(value = "/updateAvatar") | ||
92 | + public ServerResult updateAvatar(@RequestParam MultipartFile file) { | ||
93 | + return ServerResult.success(); | ||
94 | + } | ||
95 | + | ||
96 | + @Log("修改邮箱") | ||
97 | + @ApiOperation("修改邮箱") | ||
98 | + @PostMapping(value = "/updateEmail") | ||
99 | + public ServerResult updateEmail(@RequestBody @Validated AdminUserQueryVO queryVO) { | ||
100 | + return ServerResult.success(); | ||
101 | + } | ||
102 | +} |
src/main/java/com/order/erp/domain/dto/BaseDO.java
1 | package com.order.erp.domain.dto; | 1 | package com.order.erp.domain.dto; |
2 | 2 | ||
3 | -import cn.hutool.core.date.DatePattern; | ||
4 | -import com.fasterxml.jackson.annotation.JsonFormat; | 3 | +import com.baomidou.mybatisplus.annotation.FieldFill; |
4 | +import com.baomidou.mybatisplus.annotation.TableField; | ||
5 | +import com.baomidou.mybatisplus.annotation.TableLogic; | ||
5 | import lombok.AllArgsConstructor; | 6 | import lombok.AllArgsConstructor; |
6 | import lombok.Data; | 7 | import lombok.Data; |
7 | import lombok.NoArgsConstructor; | 8 | import lombok.NoArgsConstructor; |
8 | import lombok.experimental.SuperBuilder; | 9 | import lombok.experimental.SuperBuilder; |
10 | +import org.apache.ibatis.type.LocalDateTimeTypeHandler; | ||
9 | 11 | ||
10 | import java.io.Serializable; | 12 | import java.io.Serializable; |
11 | import java.time.LocalDateTime; | 13 | import java.time.LocalDateTime; |
@@ -20,28 +22,32 @@ public class BaseDO implements Serializable { | @@ -20,28 +22,32 @@ public class BaseDO implements Serializable { | ||
20 | /** | 22 | /** |
21 | * 创建时间 | 23 | * 创建时间 |
22 | */ | 24 | */ |
23 | - @JsonFormat(timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN) | 25 | + @TableField(fill = FieldFill.INSERT, typeHandler = LocalDateTimeTypeHandler.class) |
24 | private LocalDateTime createTime; | 26 | private LocalDateTime createTime; |
25 | 27 | ||
26 | /** | 28 | /** |
27 | * 创建人 | 29 | * 创建人 |
28 | */ | 30 | */ |
31 | + @TableField(fill = FieldFill.INSERT) | ||
29 | private String createBy; | 32 | private String createBy; |
30 | 33 | ||
31 | /** | 34 | /** |
32 | * 修改时间 | 35 | * 修改时间 |
33 | */ | 36 | */ |
34 | - @JsonFormat(timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN) | 37 | + @TableField(fill = FieldFill.INSERT_UPDATE, typeHandler = LocalDateTimeTypeHandler.class) |
35 | private LocalDateTime modifyTime; | 38 | private LocalDateTime modifyTime; |
36 | 39 | ||
37 | /** | 40 | /** |
38 | * 修改人 | 41 | * 修改人 |
39 | */ | 42 | */ |
43 | + @TableField(fill = FieldFill.INSERT_UPDATE) | ||
40 | private String modifyBy; | 44 | private String modifyBy; |
41 | 45 | ||
42 | /** | 46 | /** |
43 | * 是否可用 10-可用 20-删除 30-禁用 | 47 | * 是否可用 10-可用 20-删除 30-禁用 |
44 | */ | 48 | */ |
49 | + @TableLogic | ||
50 | + @TableField(fill = FieldFill.INSERT) | ||
45 | private Integer enableFlag; | 51 | private Integer enableFlag; |
46 | 52 | ||
47 | /** | 53 | /** |
src/main/java/com/order/erp/domain/vo/admin/AdminAuthRoleVO.java
0 → 100644
1 | +package com.order.erp.domain.vo.admin; | ||
2 | + | ||
3 | +import lombok.*; | ||
4 | +import lombok.experimental.SuperBuilder; | ||
5 | + | ||
6 | +import javax.validation.constraints.NotNull; | ||
7 | +import java.io.Serializable; | ||
8 | +import java.util.Set; | ||
9 | + | ||
10 | +/** | ||
11 | + * @author makejava | ||
12 | + * @since 2023-08-30 17:51:48 | ||
13 | + */ | ||
14 | +@Data | ||
15 | +@AllArgsConstructor | ||
16 | +@ToString | ||
17 | +@NoArgsConstructor | ||
18 | +@EqualsAndHashCode(callSuper = false) | ||
19 | +@SuperBuilder | ||
20 | +public class AdminAuthRoleVO implements Serializable { | ||
21 | + | ||
22 | + /** | ||
23 | + * 角色id | ||
24 | + */ | ||
25 | + @NotNull(message = "角色id不能为空") | ||
26 | + private Long roleId; | ||
27 | + | ||
28 | + /** | ||
29 | + * 菜单id | ||
30 | + */ | ||
31 | + @NotNull(message = "菜单ids不能为空") | ||
32 | + private Set<Long> menuIds; | ||
33 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminAuthUserVO.java
0 → 100644
1 | +package com.order.erp.domain.vo.admin; | ||
2 | + | ||
3 | +import lombok.*; | ||
4 | +import lombok.experimental.SuperBuilder; | ||
5 | + | ||
6 | +import javax.validation.constraints.NotNull; | ||
7 | +import java.io.Serializable; | ||
8 | +import java.util.Set; | ||
9 | + | ||
10 | +/** | ||
11 | + * @author makejava | ||
12 | + * @since 2023-08-30 17:51:48 | ||
13 | + */ | ||
14 | +@Data | ||
15 | +@AllArgsConstructor | ||
16 | +@ToString | ||
17 | +@NoArgsConstructor | ||
18 | +@EqualsAndHashCode(callSuper = false) | ||
19 | +@SuperBuilder | ||
20 | +public class AdminAuthUserVO implements Serializable { | ||
21 | + | ||
22 | + /** | ||
23 | + * 用户id | ||
24 | + */ | ||
25 | + @NotNull(message = "用户id不能为空") | ||
26 | + private Long userId; | ||
27 | + | ||
28 | + /** | ||
29 | + * 角色id | ||
30 | + */ | ||
31 | + @NotNull(message = "角色id不能为空") | ||
32 | + private Set<Long> roleIds; | ||
33 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminDeptResultVO.java
0 → 100644
1 | +package com.order.erp.domain.vo.admin; | ||
2 | + | ||
3 | +import cn.hutool.core.date.DatePattern; | ||
4 | +import com.fasterxml.jackson.annotation.JsonFormat; | ||
5 | +import lombok.*; | ||
6 | +import lombok.experimental.SuperBuilder; | ||
7 | + | ||
8 | +import java.io.Serializable; | ||
9 | +import java.time.LocalDateTime; | ||
10 | + | ||
11 | +/** | ||
12 | + * 角色表(AdminRole)实体类 | ||
13 | + * | ||
14 | + * @author makejava | ||
15 | + * @since 2023-08-30 17:51:48 | ||
16 | + */ | ||
17 | +@Data | ||
18 | +@AllArgsConstructor | ||
19 | +@ToString | ||
20 | +@NoArgsConstructor | ||
21 | +@EqualsAndHashCode(callSuper = false) | ||
22 | +@SuperBuilder | ||
23 | +public class AdminDeptResultVO implements Serializable { | ||
24 | + | ||
25 | + private Long id; | ||
26 | + | ||
27 | + /** | ||
28 | + * 岗位名称 | ||
29 | + */ | ||
30 | + private String name; | ||
31 | + | ||
32 | + /** | ||
33 | + * 上级部门 | ||
34 | + */ | ||
35 | + private Long pid; | ||
36 | + | ||
37 | + /** | ||
38 | + * 子部门数目 | ||
39 | + */ | ||
40 | + private Integer subCount; | ||
41 | + | ||
42 | + /** | ||
43 | + * 排序 | ||
44 | + */ | ||
45 | + private Integer deptSort; | ||
46 | + | ||
47 | + | ||
48 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminJobResultVO.java
0 → 100644
1 | +package com.order.erp.domain.vo.admin; | ||
2 | + | ||
3 | +import lombok.*; | ||
4 | +import lombok.experimental.SuperBuilder; | ||
5 | + | ||
6 | +import java.io.Serializable; | ||
7 | + | ||
8 | +/** | ||
9 | + * @author makejava | ||
10 | + * @since 2023-08-30 17:51:48 | ||
11 | + */ | ||
12 | +@Data | ||
13 | +@AllArgsConstructor | ||
14 | +@ToString | ||
15 | +@NoArgsConstructor | ||
16 | +@EqualsAndHashCode(callSuper = false) | ||
17 | +@SuperBuilder | ||
18 | +public class AdminJobResultVO implements Serializable { | ||
19 | + | ||
20 | + private Long id; | ||
21 | + | ||
22 | + /** | ||
23 | + * 岗位名称 | ||
24 | + */ | ||
25 | + private String name; | ||
26 | + | ||
27 | + /** | ||
28 | + * 排序 | ||
29 | + */ | ||
30 | + private Integer sort; | ||
31 | + | ||
32 | + | ||
33 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminMenuResult.java
0 → 100644
1 | +package com.order.erp.domain.vo.admin; | ||
2 | + | ||
3 | +import lombok.*; | ||
4 | +import lombok.experimental.SuperBuilder; | ||
5 | + | ||
6 | +import java.io.Serializable; | ||
7 | +import java.time.LocalDateTime; | ||
8 | +import java.util.List; | ||
9 | + | ||
10 | +/** | ||
11 | + * @author xms | ||
12 | + */ | ||
13 | +@Data | ||
14 | +@AllArgsConstructor | ||
15 | +@ToString | ||
16 | +@NoArgsConstructor | ||
17 | +@EqualsAndHashCode(callSuper = false) | ||
18 | +@SuperBuilder | ||
19 | +public class AdminMenuResult implements Serializable { | ||
20 | + | ||
21 | + private Long id; | ||
22 | + /** | ||
23 | + * 上级菜单ID | ||
24 | + */ | ||
25 | + private Long pid; | ||
26 | + | ||
27 | + /** | ||
28 | + * 子菜单数目 | ||
29 | + */ | ||
30 | + private Integer subCount; | ||
31 | + | ||
32 | + /** | ||
33 | + * 类型,目录、菜单、按钮 | ||
34 | + */ | ||
35 | + private Integer type; | ||
36 | + | ||
37 | + /** | ||
38 | + * 菜单标题 | ||
39 | + */ | ||
40 | + private String title; | ||
41 | + | ||
42 | + /** | ||
43 | + * 菜单名称 | ||
44 | + */ | ||
45 | + private String name; | ||
46 | + | ||
47 | + /** | ||
48 | + * 组件 | ||
49 | + */ | ||
50 | + private String component; | ||
51 | + | ||
52 | + /** | ||
53 | + * 排序 | ||
54 | + */ | ||
55 | + private Integer menuSort; | ||
56 | + | ||
57 | + /** | ||
58 | + * 图标 | ||
59 | + */ | ||
60 | + private String icon; | ||
61 | + | ||
62 | + /** | ||
63 | + * 路径 | ||
64 | + */ | ||
65 | + private String path; | ||
66 | + | ||
67 | + /** | ||
68 | + * 是否为外链 0:否,1:是 | ||
69 | + */ | ||
70 | + private Integer iFrame; | ||
71 | + | ||
72 | + /** | ||
73 | + * cache | ||
74 | + */ | ||
75 | + private Integer cache; | ||
76 | + | ||
77 | + /** | ||
78 | + * 权限 | ||
79 | + */ | ||
80 | + private String permission; | ||
81 | + | ||
82 | + /** | ||
83 | + * 是否隐藏 | ||
84 | + */ | ||
85 | + private Integer hidden; | ||
86 | + | ||
87 | + private List<AdminMenuResult> children; | ||
88 | + | ||
89 | + private LocalDateTime createTime; | ||
90 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminMenuVO.java
@@ -26,6 +26,10 @@ public class AdminMenuVO implements Serializable { | @@ -26,6 +26,10 @@ public class AdminMenuVO implements Serializable { | ||
26 | */ | 26 | */ |
27 | private Long pid; | 27 | private Long pid; |
28 | /** | 28 | /** |
29 | + * 菜单标题 | ||
30 | + */ | ||
31 | + private String title; | ||
32 | + /** | ||
29 | * 菜单名称 | 33 | * 菜单名称 |
30 | */ | 34 | */ |
31 | private String name; | 35 | private String name; |
src/main/java/com/order/erp/domain/vo/admin/AdminRoleVO.java
@@ -25,14 +25,11 @@ public class AdminRoleVO implements Serializable { | @@ -25,14 +25,11 @@ public class AdminRoleVO implements Serializable { | ||
25 | * 角色名称 | 25 | * 角色名称 |
26 | */ | 26 | */ |
27 | private String name; | 27 | private String name; |
28 | + | ||
28 | /** | 29 | /** |
29 | - * 备注 | ||
30 | - */ | ||
31 | - private String remark; | ||
32 | - /** | ||
33 | - * 权限 | 30 | + * 描述 |
34 | */ | 31 | */ |
35 | - private String permission; | 32 | + private String description; |
36 | /** | 33 | /** |
37 | * 数据权限类型 全部 、 本级 、 自定义 | 34 | * 数据权限类型 全部 、 本级 、 自定义 |
38 | */ | 35 | */ |
src/main/java/com/order/erp/domain/vo/admin/AdminUserResultVO.java
0 → 100644
1 | +package com.order.erp.domain.vo.admin; | ||
2 | + | ||
3 | +import lombok.*; | ||
4 | +import lombok.experimental.SuperBuilder; | ||
5 | + | ||
6 | +import java.io.Serializable; | ||
7 | +import java.time.LocalDateTime; | ||
8 | + | ||
9 | +/** | ||
10 | + * 角色表(AdminRole)实体类 | ||
11 | + * | ||
12 | + * @author makejava | ||
13 | + * @since 2023-08-30 17:51:48 | ||
14 | + */ | ||
15 | +@Data | ||
16 | +@AllArgsConstructor | ||
17 | +@ToString | ||
18 | +@NoArgsConstructor | ||
19 | +@EqualsAndHashCode(callSuper = false) | ||
20 | +@SuperBuilder | ||
21 | +public class AdminUserResultVO implements Serializable { | ||
22 | + | ||
23 | + private Long id; | ||
24 | + | ||
25 | + /** | ||
26 | + * 部门id | ||
27 | + */ | ||
28 | + private Long deptId; | ||
29 | + | ||
30 | + /** | ||
31 | + * 用户名称 | ||
32 | + */ | ||
33 | + private String userName; | ||
34 | + | ||
35 | + /** | ||
36 | + * 用户昵称 | ||
37 | + */ | ||
38 | + private String nickName; | ||
39 | + | ||
40 | + /** | ||
41 | + * 性别 | ||
42 | + */ | ||
43 | + private String gender; | ||
44 | + | ||
45 | + /** | ||
46 | + * 手机号码 | ||
47 | + */ | ||
48 | + private String phone; | ||
49 | + | ||
50 | + /** | ||
51 | + * 邮箱 | ||
52 | + */ | ||
53 | + private String email; | ||
54 | + | ||
55 | + /** | ||
56 | + * 头像地址 | ||
57 | + */ | ||
58 | + private String avatarName; | ||
59 | + | ||
60 | + /** | ||
61 | + * 头像真实路径 | ||
62 | + */ | ||
63 | + private String avatarPath; | ||
64 | + | ||
65 | + /** | ||
66 | + * 密码 | ||
67 | + */ | ||
68 | + private String password; | ||
69 | + | ||
70 | + /** | ||
71 | + * 是否为admin账号 | ||
72 | + */ | ||
73 | + private Boolean isAdmin; | ||
74 | + | ||
75 | + /** | ||
76 | + * 修改密码的时间 | ||
77 | + */ | ||
78 | + private LocalDateTime pwdResetTime; | ||
79 | + | ||
80 | + | ||
81 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminUserVO.java
@@ -4,6 +4,7 @@ import lombok.*; | @@ -4,6 +4,7 @@ import lombok.*; | ||
4 | import lombok.experimental.SuperBuilder; | 4 | import lombok.experimental.SuperBuilder; |
5 | 5 | ||
6 | import java.io.Serializable; | 6 | import java.io.Serializable; |
7 | +import java.time.LocalDateTime; | ||
7 | 8 | ||
8 | /** | 9 | /** |
9 | * 用户表(AdminUser)实体类 | 10 | * 用户表(AdminUser)实体类 |
@@ -21,34 +22,61 @@ public class AdminUserVO implements Serializable { | @@ -21,34 +22,61 @@ public class AdminUserVO implements Serializable { | ||
21 | private static final long serialVersionUID = 840682837180084937L; | 22 | private static final long serialVersionUID = 840682837180084937L; |
22 | 23 | ||
23 | private Long id; | 24 | private Long id; |
25 | + | ||
26 | + /** | ||
27 | + * 部门id | ||
28 | + */ | ||
29 | + private Long deptId; | ||
30 | + | ||
24 | /** | 31 | /** |
25 | * 用户名称 | 32 | * 用户名称 |
26 | */ | 33 | */ |
27 | private String userName; | 34 | private String userName; |
35 | + | ||
28 | /** | 36 | /** |
29 | * 用户昵称 | 37 | * 用户昵称 |
30 | */ | 38 | */ |
31 | private String nickName; | 39 | private String nickName; |
40 | + | ||
32 | /** | 41 | /** |
33 | * 性别 | 42 | * 性别 |
34 | */ | 43 | */ |
35 | - private String sex; | 44 | + private String gender; |
45 | + | ||
36 | /** | 46 | /** |
37 | - * 工作性质 | 47 | + * 手机号码 |
38 | */ | 48 | */ |
39 | - private String workerType; | 49 | + private String phone; |
50 | + | ||
40 | /** | 51 | /** |
41 | * 邮箱 | 52 | * 邮箱 |
42 | */ | 53 | */ |
43 | private String email; | 54 | private String email; |
55 | + | ||
44 | /** | 56 | /** |
45 | - * 手机号 | 57 | + * 头像地址 |
46 | */ | 58 | */ |
47 | - private String phone; | 59 | + private String avatarName; |
60 | + | ||
61 | + /** | ||
62 | + * 头像真实路径 | ||
63 | + */ | ||
64 | + private String avatarPath; | ||
65 | + | ||
48 | /** | 66 | /** |
49 | * 密码 | 67 | * 密码 |
50 | */ | 68 | */ |
51 | private String password; | 69 | private String password; |
52 | 70 | ||
71 | + /** | ||
72 | + * 是否为admin账号 | ||
73 | + */ | ||
74 | + private Boolean isAdmin; | ||
75 | + | ||
76 | + /** | ||
77 | + * 修改密码的时间 | ||
78 | + */ | ||
79 | + private LocalDateTime pwdResetTime; | ||
80 | + | ||
53 | 81 | ||
54 | } | 82 | } |
src/main/java/com/order/erp/service/admin/AdminMenuService.java
@@ -31,6 +31,13 @@ public interface AdminMenuService extends IService<AdminMenuDO> { | @@ -31,6 +31,13 @@ public interface AdminMenuService extends IService<AdminMenuDO> { | ||
31 | ServerResult list(AdminMenuQueryVO adminMenuQueryVO); | 31 | ServerResult list(AdminMenuQueryVO adminMenuQueryVO); |
32 | 32 | ||
33 | /** | 33 | /** |
34 | + * | ||
35 | + * @param adminMenuQueryVO | ||
36 | + * @return | ||
37 | + */ | ||
38 | + ServerResult all(AdminMenuQueryVO adminMenuQueryVO); | ||
39 | + | ||
40 | + /** | ||
34 | * 新增数据 | 41 | * 新增数据 |
35 | * | 42 | * |
36 | * @param adminMenuVO 数据VO | 43 | * @param adminMenuVO 数据VO |
src/main/java/com/order/erp/service/admin/AdminRoleService.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; | @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; | ||
4 | import com.order.erp.common.constant.ServerResult; | 4 | import com.order.erp.common.constant.ServerResult; |
5 | import com.order.erp.domain.dto.admin.AdminRoleDO; | 5 | import com.order.erp.domain.dto.admin.AdminRoleDO; |
6 | import com.order.erp.domain.vo.UserVO; | 6 | import com.order.erp.domain.vo.UserVO; |
7 | +import com.order.erp.domain.vo.admin.AdminAuthRoleVO; | ||
7 | import com.order.erp.domain.vo.admin.AdminRoleQueryVO; | 8 | import com.order.erp.domain.vo.admin.AdminRoleQueryVO; |
8 | import com.order.erp.domain.vo.admin.AdminRoleVO; | 9 | import com.order.erp.domain.vo.admin.AdminRoleVO; |
9 | import org.springframework.security.core.GrantedAuthority; | 10 | import org.springframework.security.core.GrantedAuthority; |
@@ -63,6 +64,14 @@ public interface AdminRoleService extends IService<AdminRoleDO> { | @@ -63,6 +64,14 @@ public interface AdminRoleService extends IService<AdminRoleDO> { | ||
63 | ServerResult edit(AdminRoleVO adminRoleVO); | 64 | ServerResult edit(AdminRoleVO adminRoleVO); |
64 | 65 | ||
65 | /** | 66 | /** |
67 | + * 角色-菜单-授权 | ||
68 | + * | ||
69 | + * @param adminAuthRoleVO | ||
70 | + * @return | ||
71 | + */ | ||
72 | + ServerResult authMenu(AdminAuthRoleVO adminAuthRoleVO); | ||
73 | + | ||
74 | + /** | ||
66 | * 通过主键删除数据 | 75 | * 通过主键删除数据 |
67 | * | 76 | * |
68 | * @param adminRoleQueryVO 筛选条件 | 77 | * @param adminRoleQueryVO 筛选条件 |
src/main/java/com/order/erp/service/admin/AdminUserService.java
@@ -39,6 +39,13 @@ public interface AdminUserService extends IService<AdminUserDO> { | @@ -39,6 +39,13 @@ public interface AdminUserService extends IService<AdminUserDO> { | ||
39 | ServerResult add(AdminUserVO adminUserVO); | 39 | ServerResult add(AdminUserVO adminUserVO); |
40 | 40 | ||
41 | /** | 41 | /** |
42 | + * | ||
43 | + * @param adminUserVO | ||
44 | + * @return | ||
45 | + */ | ||
46 | + ServerResult authRole(AdminAuthUserVO adminUserVO); | ||
47 | + | ||
48 | + /** | ||
42 | * 修改数据 | 49 | * 修改数据 |
43 | * | 50 | * |
44 | * @param adminUserVO 数据VO | 51 | * @param adminUserVO 数据VO |
src/main/java/com/order/erp/service/admin/impl/AdminDeptServiceImpl.java
@@ -2,20 +2,29 @@ package com.order.erp.service.admin.impl; | @@ -2,20 +2,29 @@ package com.order.erp.service.admin.impl; | ||
2 | 2 | ||
3 | import cn.hutool.core.bean.BeanUtil; | 3 | import cn.hutool.core.bean.BeanUtil; |
4 | import cn.hutool.core.collection.CollUtil; | 4 | import cn.hutool.core.collection.CollUtil; |
5 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||
5 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | 6 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
7 | +import com.baomidou.mybatisplus.core.metadata.IPage; | ||
8 | +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | ||
9 | +import com.baomidou.mybatisplus.core.toolkit.StringUtils; | ||
10 | +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
7 | import com.order.erp.common.constant.Constant; | 12 | import com.order.erp.common.constant.Constant; |
8 | import com.order.erp.common.constant.ServerResult; | 13 | import com.order.erp.common.constant.ServerResult; |
14 | +import com.order.erp.domain.dto.BaseDO; | ||
9 | import com.order.erp.domain.dto.admin.AdminDeptDO; | 15 | import com.order.erp.domain.dto.admin.AdminDeptDO; |
10 | import com.order.erp.domain.vo.admin.AdminDeptQueryVO; | 16 | import com.order.erp.domain.vo.admin.AdminDeptQueryVO; |
17 | +import com.order.erp.domain.vo.admin.AdminDeptResultVO; | ||
11 | import com.order.erp.domain.vo.admin.AdminDeptVO; | 18 | import com.order.erp.domain.vo.admin.AdminDeptVO; |
12 | import com.order.erp.mapper.admin.AdminDeptMapper; | 19 | import com.order.erp.mapper.admin.AdminDeptMapper; |
13 | import com.order.erp.service.admin.AdminDeptService; | 20 | import com.order.erp.service.admin.AdminDeptService; |
14 | import lombok.extern.slf4j.Slf4j; | 21 | import lombok.extern.slf4j.Slf4j; |
22 | +import org.springframework.beans.BeanUtils; | ||
15 | import org.springframework.stereotype.Service; | 23 | import org.springframework.stereotype.Service; |
16 | 24 | ||
17 | import java.util.List; | 25 | import java.util.List; |
18 | import java.util.Objects; | 26 | import java.util.Objects; |
27 | +import java.util.stream.Collectors; | ||
19 | 28 | ||
20 | /** | 29 | /** |
21 | * 部门表(AdminDept)表服务实现类 | 30 | * 部门表(AdminDept)表服务实现类 |
@@ -50,13 +59,38 @@ public class AdminDeptServiceImpl extends ServiceImpl<AdminDeptMapper, AdminDept | @@ -50,13 +59,38 @@ public class AdminDeptServiceImpl extends ServiceImpl<AdminDeptMapper, AdminDept | ||
50 | /** | 59 | /** |
51 | * 分页查询 | 60 | * 分页查询 |
52 | * | 61 | * |
53 | - * @param adminDeptQueryVO 筛选条件 | 62 | + * @param queryVO 筛选条件 |
54 | * @return 查询结果 | 63 | * @return 查询结果 |
55 | */ | 64 | */ |
56 | @Override | 65 | @Override |
57 | - public ServerResult list(AdminDeptQueryVO adminDeptQueryVO) { | 66 | + public ServerResult list(AdminDeptQueryVO queryVO) { |
67 | + | ||
68 | + LambdaQueryWrapper<AdminDeptDO> queryWrapper = buildQueryByParam(queryVO); | ||
69 | + Page page = new Page<>(queryVO.getPageNo(), queryVO.getPageSize()); | ||
70 | + IPage<AdminDeptDO> iPage = page(page, queryWrapper); | ||
58 | 71 | ||
59 | - return null; | 72 | + Page<AdminDeptResultVO> webVOPage = new Page<>(); |
73 | + List<AdminDeptDO> adminDeptDOS = iPage.getRecords(); | ||
74 | + if (CollectionUtils.isNotEmpty(adminDeptDOS)) { | ||
75 | + List<AdminDeptResultVO> queryVos = adminDeptDOS.stream().map(x -> { | ||
76 | + AdminDeptResultVO resultVO = new AdminDeptResultVO(); | ||
77 | + BeanUtils.copyProperties(x, resultVO); | ||
78 | + return resultVO; | ||
79 | + }).collect(Collectors.toList()); | ||
80 | + webVOPage.setRecords(queryVos); | ||
81 | + } | ||
82 | + BeanUtils.copyProperties(page, webVOPage, "records"); | ||
83 | + return ServerResult.success(webVOPage); | ||
84 | + } | ||
85 | + | ||
86 | + /** | ||
87 | + * @param queryVO | ||
88 | + * @return | ||
89 | + */ | ||
90 | + private LambdaQueryWrapper<AdminDeptDO> buildQueryByParam(AdminDeptQueryVO queryVO) { | ||
91 | + return new LambdaQueryWrapper<AdminDeptDO>() | ||
92 | + .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | ||
93 | + .eq(StringUtils.isNotBlank(queryVO.getName()), AdminDeptDO::getName, queryVO.getName()); | ||
60 | } | 94 | } |
61 | 95 | ||
62 | /** | 96 | /** |
src/main/java/com/order/erp/service/admin/impl/AdminJobServiceImpl.java
@@ -2,20 +2,29 @@ package com.order.erp.service.admin.impl; | @@ -2,20 +2,29 @@ package com.order.erp.service.admin.impl; | ||
2 | 2 | ||
3 | import cn.hutool.core.bean.BeanUtil; | 3 | import cn.hutool.core.bean.BeanUtil; |
4 | import cn.hutool.core.collection.CollUtil; | 4 | import cn.hutool.core.collection.CollUtil; |
5 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||
5 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | 6 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
7 | +import com.baomidou.mybatisplus.core.metadata.IPage; | ||
8 | +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | ||
9 | +import com.baomidou.mybatisplus.core.toolkit.StringUtils; | ||
10 | +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
7 | import com.order.erp.common.constant.Constant; | 12 | import com.order.erp.common.constant.Constant; |
8 | import com.order.erp.common.constant.ServerResult; | 13 | import com.order.erp.common.constant.ServerResult; |
14 | +import com.order.erp.domain.dto.BaseDO; | ||
9 | import com.order.erp.domain.dto.admin.AdminJobDO; | 15 | import com.order.erp.domain.dto.admin.AdminJobDO; |
10 | import com.order.erp.domain.vo.admin.AdminJobQueryVO; | 16 | import com.order.erp.domain.vo.admin.AdminJobQueryVO; |
17 | +import com.order.erp.domain.vo.admin.AdminJobResultVO; | ||
11 | import com.order.erp.domain.vo.admin.AdminJobVO; | 18 | import com.order.erp.domain.vo.admin.AdminJobVO; |
12 | import com.order.erp.mapper.admin.AdminJobMapper; | 19 | import com.order.erp.mapper.admin.AdminJobMapper; |
13 | import com.order.erp.service.admin.AdminJobService; | 20 | import com.order.erp.service.admin.AdminJobService; |
14 | import lombok.extern.slf4j.Slf4j; | 21 | import lombok.extern.slf4j.Slf4j; |
22 | +import org.springframework.beans.BeanUtils; | ||
15 | import org.springframework.stereotype.Service; | 23 | import org.springframework.stereotype.Service; |
16 | 24 | ||
17 | import java.util.List; | 25 | import java.util.List; |
18 | import java.util.Objects; | 26 | import java.util.Objects; |
27 | +import java.util.stream.Collectors; | ||
19 | 28 | ||
20 | /** | 29 | /** |
21 | * 岗位表(AdminJob)表服务实现类 | 30 | * 岗位表(AdminJob)表服务实现类 |
@@ -50,13 +59,39 @@ public class AdminJobServiceImpl extends ServiceImpl<AdminJobMapper, AdminJobDO> | @@ -50,13 +59,39 @@ public class AdminJobServiceImpl extends ServiceImpl<AdminJobMapper, AdminJobDO> | ||
50 | /** | 59 | /** |
51 | * 分页查询 | 60 | * 分页查询 |
52 | * | 61 | * |
53 | - * @param adminJobQueryVO 筛选条件 | 62 | + * @param queryVO 筛选条件 |
54 | * @return 查询结果 | 63 | * @return 查询结果 |
55 | */ | 64 | */ |
56 | @Override | 65 | @Override |
57 | - public ServerResult list(AdminJobQueryVO adminJobQueryVO) { | 66 | + public ServerResult list(AdminJobQueryVO queryVO) { |
67 | + | ||
68 | + LambdaQueryWrapper<AdminJobDO> queryWrapper = buildQueryByParam(queryVO); | ||
69 | + Page page = new Page<>(queryVO.getPageNo(), queryVO.getPageSize()); | ||
70 | + IPage<AdminJobDO> iPage = page(page, queryWrapper); | ||
71 | + | ||
72 | + Page<AdminJobResultVO> webVOPage = new Page<>(); | ||
73 | + List<AdminJobDO> adminJobDOList = iPage.getRecords(); | ||
74 | + if (CollectionUtils.isNotEmpty(adminJobDOList)) { | ||
75 | + List<AdminJobResultVO> queryVos = adminJobDOList.stream().map(x -> { | ||
76 | + AdminJobResultVO resultVO = new AdminJobResultVO(); | ||
77 | + BeanUtils.copyProperties(x, resultVO); | ||
78 | + return resultVO; | ||
79 | + }).collect(Collectors.toList()); | ||
80 | + webVOPage.setRecords(queryVos); | ||
81 | + } | ||
82 | + BeanUtils.copyProperties(page, webVOPage, "records"); | ||
83 | + return ServerResult.success(webVOPage); | ||
84 | + } | ||
85 | + | ||
58 | 86 | ||
59 | - return null; | 87 | + /** |
88 | + * @param queryVO | ||
89 | + * @return | ||
90 | + */ | ||
91 | + private LambdaQueryWrapper<AdminJobDO> buildQueryByParam(AdminJobQueryVO queryVO) { | ||
92 | + return new LambdaQueryWrapper<AdminJobDO>() | ||
93 | + .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | ||
94 | + .eq(StringUtils.isNotBlank(queryVO.getName()), AdminJobDO::getName, queryVO.getName()); | ||
60 | } | 95 | } |
61 | 96 | ||
62 | /** | 97 | /** |
src/main/java/com/order/erp/service/admin/impl/AdminMenuServiceImpl.java
@@ -2,20 +2,25 @@ package com.order.erp.service.admin.impl; | @@ -2,20 +2,25 @@ package com.order.erp.service.admin.impl; | ||
2 | 2 | ||
3 | import cn.hutool.core.bean.BeanUtil; | 3 | import cn.hutool.core.bean.BeanUtil; |
4 | import cn.hutool.core.collection.CollUtil; | 4 | import cn.hutool.core.collection.CollUtil; |
5 | +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||
5 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | 6 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
7 | +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | ||
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 8 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
7 | import com.order.erp.common.constant.Constant; | 9 | import com.order.erp.common.constant.Constant; |
8 | import com.order.erp.common.constant.ServerResult; | 10 | import com.order.erp.common.constant.ServerResult; |
11 | +import com.order.erp.domain.dto.BaseDO; | ||
9 | import com.order.erp.domain.dto.admin.AdminMenuDO; | 12 | import com.order.erp.domain.dto.admin.AdminMenuDO; |
10 | import com.order.erp.domain.vo.admin.AdminMenuQueryVO; | 13 | import com.order.erp.domain.vo.admin.AdminMenuQueryVO; |
14 | +import com.order.erp.domain.vo.admin.AdminMenuResult; | ||
11 | import com.order.erp.domain.vo.admin.AdminMenuVO; | 15 | import com.order.erp.domain.vo.admin.AdminMenuVO; |
12 | import com.order.erp.mapper.admin.AdminMenuMapper; | 16 | import com.order.erp.mapper.admin.AdminMenuMapper; |
13 | import com.order.erp.service.admin.AdminMenuService; | 17 | import com.order.erp.service.admin.AdminMenuService; |
14 | import lombok.extern.slf4j.Slf4j; | 18 | import lombok.extern.slf4j.Slf4j; |
19 | +import org.springframework.beans.BeanUtils; | ||
15 | import org.springframework.stereotype.Service; | 20 | import org.springframework.stereotype.Service; |
16 | 21 | ||
17 | -import java.util.List; | ||
18 | -import java.util.Objects; | 22 | +import java.util.*; |
23 | +import java.util.stream.Collectors; | ||
19 | 24 | ||
20 | /** | 25 | /** |
21 | * 角色表(AdminMenu)表服务实现类 | 26 | * 角色表(AdminMenu)表服务实现类 |
@@ -59,6 +64,50 @@ public class AdminMenuServiceImpl extends ServiceImpl<AdminMenuMapper, AdminMenu | @@ -59,6 +64,50 @@ public class AdminMenuServiceImpl extends ServiceImpl<AdminMenuMapper, AdminMenu | ||
59 | return null; | 64 | return null; |
60 | } | 65 | } |
61 | 66 | ||
67 | + @Override | ||
68 | + public ServerResult all(AdminMenuQueryVO adminMenuQueryVO) { | ||
69 | + List<AdminMenuDO> menuDOList = list(new LambdaQueryWrapper<AdminMenuDO>().eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)); | ||
70 | + | ||
71 | + if (CollectionUtils.isEmpty(menuDOList)) { | ||
72 | + return ServerResult.success(); | ||
73 | + } | ||
74 | + | ||
75 | + return ServerResult.success(buildTree(menuDOList)); | ||
76 | + } | ||
77 | + | ||
78 | + /** | ||
79 | + * @param menuDOList | ||
80 | + * @return | ||
81 | + */ | ||
82 | + private List<AdminMenuResult> buildTree(List<AdminMenuDO> menuDOList) { | ||
83 | + List<AdminMenuResult> menuDtos = menuDOList.stream().map(x -> { | ||
84 | + AdminMenuResult result = new AdminMenuResult(); | ||
85 | + BeanUtils.copyProperties(x, result); | ||
86 | + return result; | ||
87 | + }).collect(Collectors.toList()); | ||
88 | + | ||
89 | + List<AdminMenuResult> trees = new ArrayList<>(); | ||
90 | + Set<Long> ids = new HashSet<>(); | ||
91 | + for (AdminMenuResult menuDTO : menuDtos) { | ||
92 | + if (Objects.nonNull(menuDTO.getPid())) { | ||
93 | + trees.add(menuDTO); | ||
94 | + } | ||
95 | + for (AdminMenuResult it : menuDtos) { | ||
96 | + if (Objects.nonNull(it.getPid()) && it.getPid().equals(menuDTO.getId())) { | ||
97 | + if (menuDTO.getChildren() == null) { | ||
98 | + menuDTO.setChildren(new ArrayList<>()); | ||
99 | + } | ||
100 | + menuDTO.getChildren().add(it); | ||
101 | + ids.add(it.getId()); | ||
102 | + } | ||
103 | + } | ||
104 | + } | ||
105 | + if (trees.size() == 0) { | ||
106 | + trees = menuDtos.stream().filter(s -> !ids.contains(s.getId())).collect(Collectors.toList()); | ||
107 | + } | ||
108 | + return trees; | ||
109 | + } | ||
110 | + | ||
62 | /** | 111 | /** |
63 | * 新增数据 | 112 | * 新增数据 |
64 | * | 113 | * |
src/main/java/com/order/erp/service/admin/impl/AdminRoleServiceImpl.java
@@ -11,15 +11,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | @@ -11,15 +11,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||
11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
12 | import com.order.erp.common.constant.Constant; | 12 | import com.order.erp.common.constant.Constant; |
13 | import com.order.erp.common.constant.ServerResult; | 13 | import com.order.erp.common.constant.ServerResult; |
14 | +import com.order.erp.common.utils.TransactionHelper; | ||
14 | import com.order.erp.domain.dto.BaseDO; | 15 | import com.order.erp.domain.dto.BaseDO; |
15 | import com.order.erp.domain.dto.admin.AdminMenuDO; | 16 | import com.order.erp.domain.dto.admin.AdminMenuDO; |
16 | import com.order.erp.domain.dto.admin.AdminRoleDO; | 17 | import com.order.erp.domain.dto.admin.AdminRoleDO; |
17 | import com.order.erp.domain.dto.admin.AdminRoleMenuDO; | 18 | import com.order.erp.domain.dto.admin.AdminRoleMenuDO; |
18 | import com.order.erp.domain.vo.UserVO; | 19 | import com.order.erp.domain.vo.UserVO; |
19 | -import com.order.erp.domain.vo.admin.AdminRoleQueryVO; | ||
20 | -import com.order.erp.domain.vo.admin.AdminRoleResultVO; | ||
21 | -import com.order.erp.domain.vo.admin.AdminRoleVO; | ||
22 | -import com.order.erp.domain.vo.admin.RoleSmallVO; | 20 | +import com.order.erp.domain.vo.admin.*; |
23 | import com.order.erp.mapper.admin.AdminRoleMapper; | 21 | import com.order.erp.mapper.admin.AdminRoleMapper; |
24 | import com.order.erp.service.admin.AdminMenuService; | 22 | import com.order.erp.service.admin.AdminMenuService; |
25 | import com.order.erp.service.admin.AdminRoleMenuService; | 23 | import com.order.erp.service.admin.AdminRoleMenuService; |
@@ -55,6 +53,9 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole | @@ -55,6 +53,9 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole | ||
55 | @Resource | 53 | @Resource |
56 | private AdminMenuService menuService; | 54 | private AdminMenuService menuService; |
57 | 55 | ||
56 | + @Resource | ||
57 | + private TransactionHelper transactionHelper; | ||
58 | + | ||
58 | 59 | ||
59 | /** | 60 | /** |
60 | * 通过ID查询单条数据 | 61 | * 通过ID查询单条数据 |
@@ -134,7 +135,6 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole | @@ -134,7 +135,6 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole | ||
134 | */ | 135 | */ |
135 | @Override | 136 | @Override |
136 | public ServerResult add(AdminRoleVO adminRoleVO) { | 137 | public ServerResult add(AdminRoleVO adminRoleVO) { |
137 | - //todo 校验 | ||
138 | if (Objects.nonNull(adminRoleVO.getId())) { | 138 | if (Objects.nonNull(adminRoleVO.getId())) { |
139 | adminRoleVO.setId(null); | 139 | adminRoleVO.setId(null); |
140 | } | 140 | } |
@@ -164,6 +164,30 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole | @@ -164,6 +164,30 @@ public class AdminRoleServiceImpl extends ServiceImpl<AdminRoleMapper, AdminRole | ||
164 | return ServerResult.success(); | 164 | return ServerResult.success(); |
165 | } | 165 | } |
166 | 166 | ||
167 | + @Override | ||
168 | + public ServerResult authMenu(AdminAuthRoleVO adminAuthRoleVO) { | ||
169 | + AdminRoleDO roleDO = getById(adminAuthRoleVO.getRoleId()); | ||
170 | + if (Objects.isNull(roleDO)) { | ||
171 | + return ServerResult.fail("角色不存在"); | ||
172 | + } | ||
173 | + List<AdminRoleMenuDO> list = adminAuthRoleVO.getMenuIds().stream().map(x -> { | ||
174 | + return AdminRoleMenuDO.builder().roleId(adminAuthRoleVO.getRoleId()).menuId(x).build(); | ||
175 | + }).collect(Collectors.toList()); | ||
176 | + if (CollectionUtils.isEmpty(list)) { | ||
177 | + return ServerResult.success(); | ||
178 | + } | ||
179 | + try { | ||
180 | + transactionHelper.run(() -> { | ||
181 | + roleMenuService.remove(new LambdaQueryWrapper<AdminRoleMenuDO>().eq(AdminRoleMenuDO::getRoleId, adminAuthRoleVO.getRoleId())); | ||
182 | + roleMenuService.saveBatch(list); | ||
183 | + }); | ||
184 | + } catch (Exception e) { | ||
185 | + log.error("授权异常:e:{}", e.getMessage()); | ||
186 | + } | ||
187 | + | ||
188 | + return ServerResult.success(); | ||
189 | + } | ||
190 | + | ||
167 | /** | 191 | /** |
168 | * 通过主键删除数据 | 192 | * 通过主键删除数据 |
169 | * | 193 | * |
src/main/java/com/order/erp/service/admin/impl/AdminUserServiceImpl.java
@@ -4,7 +4,10 @@ import cn.hutool.core.bean.BeanUtil; | @@ -4,7 +4,10 @@ import cn.hutool.core.bean.BeanUtil; | ||
4 | import cn.hutool.core.collection.CollUtil; | 4 | import cn.hutool.core.collection.CollUtil; |
5 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 5 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
6 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | 6 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
7 | +import com.baomidou.mybatisplus.core.metadata.IPage; | ||
7 | import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | 8 | import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; |
9 | +import com.baomidou.mybatisplus.core.toolkit.StringUtils; | ||
10 | +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||
8 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
9 | import com.canrd.shop.common.constant.ServerResultCode; | 12 | import com.canrd.shop.common.constant.ServerResultCode; |
10 | import com.order.erp.common.constant.Constant; | 13 | import com.order.erp.common.constant.Constant; |
@@ -12,6 +15,7 @@ import com.order.erp.common.constant.ServerResult; | @@ -12,6 +15,7 @@ import com.order.erp.common.constant.ServerResult; | ||
12 | import com.order.erp.common.exception.BusinessException; | 15 | import com.order.erp.common.exception.BusinessException; |
13 | import com.order.erp.common.utils.ImgCaptchaUtils; | 16 | import com.order.erp.common.utils.ImgCaptchaUtils; |
14 | import com.order.erp.common.utils.RedisUtil; | 17 | import com.order.erp.common.utils.RedisUtil; |
18 | +import com.order.erp.common.utils.TransactionHelper; | ||
15 | import com.order.erp.domain.dto.BaseDO; | 19 | import com.order.erp.domain.dto.BaseDO; |
16 | import com.order.erp.domain.dto.admin.*; | 20 | import com.order.erp.domain.dto.admin.*; |
17 | import com.order.erp.domain.vo.UserVO; | 21 | import com.order.erp.domain.vo.UserVO; |
@@ -28,6 +32,7 @@ import org.springframework.security.authentication.AuthenticationManager; | @@ -28,6 +32,7 @@ import org.springframework.security.authentication.AuthenticationManager; | ||
28 | import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; | 32 | import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; |
29 | import org.springframework.security.core.Authentication; | 33 | import org.springframework.security.core.Authentication; |
30 | import org.springframework.security.core.context.SecurityContextHolder; | 34 | import org.springframework.security.core.context.SecurityContextHolder; |
35 | +import org.springframework.security.crypto.password.PasswordEncoder; | ||
31 | import org.springframework.stereotype.Service; | 36 | import org.springframework.stereotype.Service; |
32 | 37 | ||
33 | import javax.annotation.Resource; | 38 | import javax.annotation.Resource; |
@@ -78,6 +83,12 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | @@ -78,6 +83,12 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | ||
78 | @Resource | 83 | @Resource |
79 | private AdminRoleService roleService; | 84 | private AdminRoleService roleService; |
80 | 85 | ||
86 | + @Resource | ||
87 | + private PasswordEncoder passwordEncoder; | ||
88 | + | ||
89 | + @Resource | ||
90 | + private TransactionHelper transactionHelper; | ||
91 | + | ||
81 | /** | 92 | /** |
82 | * 通过ID查询单条数据 | 93 | * 通过ID查询单条数据 |
83 | * <p> | 94 | * <p> |
@@ -100,13 +111,40 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | @@ -100,13 +111,40 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | ||
100 | /** | 111 | /** |
101 | * 分页查询 | 112 | * 分页查询 |
102 | * | 113 | * |
103 | - * @param adminUserQueryVO 筛选条件 | 114 | + * @param queryVO 筛选条件 |
104 | * @return 查询结果 | 115 | * @return 查询结果 |
105 | */ | 116 | */ |
106 | @Override | 117 | @Override |
107 | - public ServerResult list(AdminUserQueryVO adminUserQueryVO) { | 118 | + public ServerResult list(AdminUserQueryVO queryVO) { |
119 | + | ||
120 | + LambdaQueryWrapper<AdminUserDO> queryWrapper = buildQueryByParam(queryVO); | ||
121 | + Page page = new Page<>(queryVO.getPageNo(), queryVO.getPageSize()); | ||
122 | + IPage<AdminUserDO> iPage = page(page, queryWrapper); | ||
123 | + | ||
124 | + Page<AdminUserResultVO> webVOPage = new Page<>(); | ||
125 | + List<AdminUserDO> adminDeptDOS = iPage.getRecords(); | ||
126 | + if (CollectionUtils.isNotEmpty(adminDeptDOS)) { | ||
127 | + List<AdminUserResultVO> queryVos = adminDeptDOS.stream().map(x -> { | ||
128 | + AdminUserResultVO resultVO = new AdminUserResultVO(); | ||
129 | + BeanUtils.copyProperties(x, resultVO); | ||
130 | + return resultVO; | ||
131 | + }).collect(Collectors.toList()); | ||
132 | + webVOPage.setRecords(queryVos); | ||
133 | + } | ||
134 | + BeanUtils.copyProperties(page, webVOPage, "records"); | ||
135 | + return ServerResult.success(webVOPage); | ||
136 | + } | ||
108 | 137 | ||
109 | - return ServerResult.success(); | 138 | + /** |
139 | + * @param queryVO | ||
140 | + * @return | ||
141 | + */ | ||
142 | + private LambdaQueryWrapper<AdminUserDO> buildQueryByParam(AdminUserQueryVO queryVO) { | ||
143 | + return new LambdaQueryWrapper<AdminUserDO>() | ||
144 | + .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | ||
145 | + .eq(StringUtils.isNotBlank(queryVO.getUserName()), AdminUserDO::getUserName, queryVO.getUserName()) | ||
146 | + .eq(StringUtils.isNotBlank(queryVO.getPhone()), AdminUserDO::getPhone, queryVO.getPhone()) | ||
147 | + .eq(StringUtils.isNotBlank(queryVO.getEmail()), AdminUserDO::getEmail, queryVO.getEmail()); | ||
110 | } | 148 | } |
111 | 149 | ||
112 | /** | 150 | /** |
@@ -122,12 +160,36 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | @@ -122,12 +160,36 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | ||
122 | adminUserVO.setId(null); | 160 | adminUserVO.setId(null); |
123 | } | 161 | } |
124 | AdminUserDO adminUserDo = BeanUtil.copyProperties(adminUserVO, AdminUserDO.class); | 162 | AdminUserDO adminUserDo = BeanUtil.copyProperties(adminUserVO, AdminUserDO.class); |
125 | - | 163 | + adminUserDo.setPassword(passwordEncoder.encode("123456")); |
126 | save(adminUserDo); | 164 | save(adminUserDo); |
127 | 165 | ||
128 | return ServerResult.success(); | 166 | return ServerResult.success(); |
129 | } | 167 | } |
130 | 168 | ||
169 | + @Override | ||
170 | + public ServerResult authRole(AdminAuthUserVO adminUserVO) { | ||
171 | + AdminUserDO userDO = getById(adminUserVO.getUserId()); | ||
172 | + if (Objects.isNull(userDO)) { | ||
173 | + return ServerResult.fail("用户不存在"); | ||
174 | + } | ||
175 | + List<AdminUserRoleDO> list = adminUserVO.getRoleIds().stream().map(x -> { | ||
176 | + return AdminUserRoleDO.builder().userId(adminUserVO.getUserId()).roleId(x).build(); | ||
177 | + }).collect(Collectors.toList()); | ||
178 | + if (CollectionUtils.isEmpty(list)) { | ||
179 | + return ServerResult.success(); | ||
180 | + } | ||
181 | + try { | ||
182 | + transactionHelper.run(() -> { | ||
183 | + userRoleService.remove(new LambdaQueryWrapper<AdminUserRoleDO>().eq(AdminUserRoleDO::getUserId, adminUserVO.getUserId())); | ||
184 | + userRoleService.saveBatch(list); | ||
185 | + }); | ||
186 | + } catch (Exception e) { | ||
187 | + log.error("授权异常:e:{}", e.getMessage()); | ||
188 | + } | ||
189 | + | ||
190 | + return ServerResult.success(); | ||
191 | + } | ||
192 | + | ||
131 | /** | 193 | /** |
132 | * 修改数据 | 194 | * 修改数据 |
133 | * | 195 | * |