Commit 7835e7684f3d35a2bdf6a46cb3b1d9116f7f922f
1 parent
580848c0
fix: 审批管理/待审批/已审批列表查询接口
Showing
7 changed files
with
109 additions
and
4 deletions
src/main/java/com/order/erp/controller/AuditController.java
@@ -2,6 +2,7 @@ package com.order.erp.controller; | @@ -2,6 +2,7 @@ package com.order.erp.controller; | ||
2 | 2 | ||
3 | import com.order.erp.common.annotation.AnonymousAccess; | 3 | import com.order.erp.common.annotation.AnonymousAccess; |
4 | import com.order.erp.common.constant.ServerResult; | 4 | import com.order.erp.common.constant.ServerResult; |
5 | +import com.order.erp.domain.AuditStatusEnum; | ||
5 | import com.order.erp.domain.vo.order.AuditVO; | 6 | import com.order.erp.domain.vo.order.AuditVO; |
6 | import com.order.erp.domain.vo.order.OrderFieldLockApplyQueryVO; | 7 | import com.order.erp.domain.vo.order.OrderFieldLockApplyQueryVO; |
7 | import com.order.erp.service.order.OrderFieldLockApplyService; | 8 | import com.order.erp.service.order.OrderFieldLockApplyService; |
@@ -41,6 +42,32 @@ public class AuditController { | @@ -41,6 +42,32 @@ public class AuditController { | ||
41 | } | 42 | } |
42 | 43 | ||
43 | /** | 44 | /** |
45 | + * 待审批列表 | ||
46 | + * | ||
47 | + * @param queryVO 查询条件 | ||
48 | + * @return 查询结果 | ||
49 | + */ | ||
50 | + @PostMapping("/wait_audit_list") | ||
51 | + @AnonymousAccess | ||
52 | + public ServerResult waitAuditList(@RequestBody @Validated OrderFieldLockApplyQueryVO queryVO) { | ||
53 | + queryVO.setStatus(AuditStatusEnum.WAIT_AUDIT.getStatus()); | ||
54 | + return applyService.listByPage(queryVO); | ||
55 | + } | ||
56 | + | ||
57 | + /** | ||
58 | + * 已审批列表 | ||
59 | + * | ||
60 | + * @param queryVO 查询条件 | ||
61 | + * @return 查询结果 | ||
62 | + */ | ||
63 | + @PostMapping("/audit_list") | ||
64 | + @AnonymousAccess | ||
65 | + public ServerResult auditList(@RequestBody @Validated OrderFieldLockApplyQueryVO queryVO) { | ||
66 | + queryVO.setStatusList(AuditStatusEnum.auditList); | ||
67 | + return applyService.listByPage(queryVO); | ||
68 | + } | ||
69 | + | ||
70 | + /** | ||
44 | * 审核 | 71 | * 审核 |
45 | * | 72 | * |
46 | * @param auditVO 查询条件 | 73 | * @param auditVO 查询条件 |
src/main/java/com/order/erp/domain/AuditStatusEnum.java
0 → 100644
1 | +package com.order.erp.domain; | ||
2 | + | ||
3 | +import cn.hutool.core.collection.CollUtil; | ||
4 | +import lombok.AllArgsConstructor; | ||
5 | +import lombok.Getter; | ||
6 | + | ||
7 | +import java.util.List; | ||
8 | + | ||
9 | +/** | ||
10 | + * @author: xms | ||
11 | + * @description: TODO | ||
12 | + * @date: 2023/9/13 18:05 | ||
13 | + * @version: 1.0 | ||
14 | + */ | ||
15 | +@Getter | ||
16 | +@AllArgsConstructor | ||
17 | +public enum AuditStatusEnum { | ||
18 | + | ||
19 | + WAIT_AUDIT(0, "待审批"), | ||
20 | + | ||
21 | + AUDIT_PASS(10, "已通过"), | ||
22 | + | ||
23 | + AUDIT_REFUSE(20, "已驳回"), | ||
24 | + ; | ||
25 | + private Integer status; | ||
26 | + | ||
27 | + private String desc; | ||
28 | + | ||
29 | + public static List<Integer> auditList = CollUtil.newArrayList(AUDIT_PASS.status, AUDIT_REFUSE.status); | ||
30 | + | ||
31 | + public static List<Integer> waitAuditList = CollUtil.newArrayList(WAIT_AUDIT.status); | ||
32 | +} |
src/main/java/com/order/erp/domain/vo/admin/AdminUserResultVO.java
@@ -77,5 +77,19 @@ public class AdminUserResultVO implements Serializable { | @@ -77,5 +77,19 @@ public class AdminUserResultVO implements Serializable { | ||
77 | */ | 77 | */ |
78 | private LocalDateTime pwdResetTime; | 78 | private LocalDateTime pwdResetTime; |
79 | 79 | ||
80 | + /** | ||
81 | + * 角色id | ||
82 | + */ | ||
83 | + private Long roleId; | ||
84 | + | ||
85 | + /** | ||
86 | + * 角色code | ||
87 | + */ | ||
88 | + private String roleCode; | ||
89 | + | ||
90 | + /** | ||
91 | + * 角色名称 | ||
92 | + */ | ||
93 | + private String roleName; | ||
80 | 94 | ||
81 | } | 95 | } |
src/main/java/com/order/erp/domain/vo/admin/AdminUserVO.java
src/main/java/com/order/erp/domain/vo/order/OrderFieldLockApplyQueryVO.java
@@ -43,10 +43,15 @@ public class OrderFieldLockApplyQueryVO extends BasePageVO implements Serializab | @@ -43,10 +43,15 @@ public class OrderFieldLockApplyQueryVO extends BasePageVO implements Serializab | ||
43 | */ | 43 | */ |
44 | private String fields; | 44 | private String fields; |
45 | /** | 45 | /** |
46 | - * 状态:0 待审批,1 通过,2 拒绝 | 46 | + * 状态:0 待审批,10 通过,20 拒绝 |
47 | */ | 47 | */ |
48 | private Integer status; | 48 | private Integer status; |
49 | 49 | ||
50 | + /** | ||
51 | + * | ||
52 | + */ | ||
53 | + private List<Integer> statusList; | ||
54 | + | ||
50 | 55 | ||
51 | } | 56 | } |
52 | 57 |
src/main/java/com/order/erp/service/admin/impl/AdminUserServiceImpl.java
@@ -9,13 +9,14 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | @@ -9,13 +9,14 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | ||
9 | import com.baomidou.mybatisplus.core.toolkit.StringUtils; | 9 | import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
10 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 10 | 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.ServerResultCode; | ||
13 | import com.order.erp.common.constant.Constant; | 12 | import com.order.erp.common.constant.Constant; |
14 | import com.order.erp.common.constant.ServerResult; | 13 | import com.order.erp.common.constant.ServerResult; |
14 | +import com.order.erp.common.constant.ServerResultCode; | ||
15 | import com.order.erp.common.exception.BusinessException; | 15 | import com.order.erp.common.exception.BusinessException; |
16 | import com.order.erp.common.utils.ImgCaptchaUtils; | 16 | import com.order.erp.common.utils.ImgCaptchaUtils; |
17 | import com.order.erp.common.utils.RedisUtil; | 17 | import com.order.erp.common.utils.RedisUtil; |
18 | import com.order.erp.common.utils.TransactionHelper; | 18 | import com.order.erp.common.utils.TransactionHelper; |
19 | +import com.order.erp.domain.RoleEnum; | ||
19 | import com.order.erp.domain.dto.BaseDO; | 20 | import com.order.erp.domain.dto.BaseDO; |
20 | import com.order.erp.domain.dto.admin.*; | 21 | import com.order.erp.domain.dto.admin.*; |
21 | import com.order.erp.domain.vo.UserVO; | 22 | import com.order.erp.domain.vo.UserVO; |
@@ -38,6 +39,7 @@ import org.springframework.stereotype.Service; | @@ -38,6 +39,7 @@ import org.springframework.stereotype.Service; | ||
38 | import javax.annotation.Resource; | 39 | import javax.annotation.Resource; |
39 | import java.time.LocalDateTime; | 40 | import java.time.LocalDateTime; |
40 | import java.util.*; | 41 | import java.util.*; |
42 | +import java.util.function.Function; | ||
41 | import java.util.stream.Collectors; | 43 | import java.util.stream.Collectors; |
42 | 44 | ||
43 | /** | 45 | /** |
@@ -124,10 +126,24 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | @@ -124,10 +126,24 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | ||
124 | 126 | ||
125 | Page<AdminUserResultVO> webVOPage = new Page<>(); | 127 | Page<AdminUserResultVO> webVOPage = new Page<>(); |
126 | List<AdminUserDO> adminDeptDOS = iPage.getRecords(); | 128 | List<AdminUserDO> adminDeptDOS = iPage.getRecords(); |
129 | + Map<Long, AdminUserRoleDO> userRoleDOMap = new HashMap<>(); | ||
127 | if (CollectionUtils.isNotEmpty(adminDeptDOS)) { | 130 | if (CollectionUtils.isNotEmpty(adminDeptDOS)) { |
131 | + Set<Long> userIds = adminDeptDOS.stream().map(AdminUserDO::getId).collect(Collectors.toSet()); | ||
132 | + List<AdminUserRoleDO> userRoleDOList = userRoleService.list(new LambdaQueryWrapper<AdminUserRoleDO>() | ||
133 | + .in(AdminUserRoleDO::getUserId, userIds)); | ||
134 | + if (CollectionUtils.isNotEmpty(userRoleDOList)) { | ||
135 | + userRoleDOMap = userRoleDOList.stream().collect(Collectors.toMap(AdminUserRoleDO::getUserId, Function.identity())); | ||
136 | + } | ||
137 | + Map<Long, AdminUserRoleDO> finalUserRoleDOMap = userRoleDOMap; | ||
128 | List<AdminUserResultVO> queryVos = adminDeptDOS.stream().map(x -> { | 138 | List<AdminUserResultVO> queryVos = adminDeptDOS.stream().map(x -> { |
129 | AdminUserResultVO resultVO = new AdminUserResultVO(); | 139 | AdminUserResultVO resultVO = new AdminUserResultVO(); |
130 | BeanUtils.copyProperties(x, resultVO); | 140 | BeanUtils.copyProperties(x, resultVO); |
141 | + if (finalUserRoleDOMap.containsKey(x.getId())) { | ||
142 | + AdminUserRoleDO userRoleDO = finalUserRoleDOMap.get(x.getId()); | ||
143 | + resultVO.setRoleId(userRoleDO.getRoleId()); | ||
144 | + resultVO.setRoleCode(RoleEnum.getCodeById(userRoleDO.getRoleId())); | ||
145 | + resultVO.setRoleName(RoleEnum.getNameById(userRoleDO.getRoleId())); | ||
146 | + } | ||
131 | return resultVO; | 147 | return resultVO; |
132 | }).collect(Collectors.toList()); | 148 | }).collect(Collectors.toList()); |
133 | webVOPage.setRecords(queryVos); | 149 | webVOPage.setRecords(queryVos); |
@@ -164,9 +180,15 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | @@ -164,9 +180,15 @@ public class AdminUserServiceImpl extends ServiceImpl<AdminUserMapper, AdminUser | ||
164 | if (Objects.isNull(adminUserDo.getDeptId())) { | 180 | if (Objects.isNull(adminUserDo.getDeptId())) { |
165 | adminUserDo.setDeptId(1L); | 181 | adminUserDo.setDeptId(1L); |
166 | } | 182 | } |
183 | + adminUserDo.setIsAdmin(false); | ||
167 | adminUserDo.setPassword(passwordEncoder.encode("123456")); | 184 | adminUserDo.setPassword(passwordEncoder.encode("123456")); |
168 | save(adminUserDo); | 185 | save(adminUserDo); |
169 | 186 | ||
187 | + if (Objects.nonNull(adminUserVO.getRoleId())) { | ||
188 | + Set<Long> roleIds = new HashSet<>(); | ||
189 | + roleIds.add(adminUserVO.getRoleId()); | ||
190 | + authRole(AdminAuthUserVO.builder().userId(adminUserDo.getId()).roleIds(roleIds).build()); | ||
191 | + } | ||
170 | return ServerResult.success(); | 192 | return ServerResult.success(); |
171 | } | 193 | } |
172 | 194 |
src/main/java/com/order/erp/service/order/impl/OrderFieldLockApplyServiceImpl.java
@@ -10,9 +10,9 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | @@ -10,9 +10,9 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | ||
10 | import com.baomidou.mybatisplus.core.toolkit.StringUtils; | 10 | import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
11 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 11 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
12 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 12 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
13 | -import com.order.erp.common.constant.ServerResultCode; | ||
14 | import com.order.erp.common.constant.Constant; | 13 | import com.order.erp.common.constant.Constant; |
15 | import com.order.erp.common.constant.ServerResult; | 14 | import com.order.erp.common.constant.ServerResult; |
15 | +import com.order.erp.common.constant.ServerResultCode; | ||
16 | import com.order.erp.common.exception.BusinessException; | 16 | import com.order.erp.common.exception.BusinessException; |
17 | import com.order.erp.config.DataScope; | 17 | import com.order.erp.config.DataScope; |
18 | import com.order.erp.domain.ApplyStatusEnum; | 18 | import com.order.erp.domain.ApplyStatusEnum; |
@@ -122,7 +122,8 @@ public class OrderFieldLockApplyServiceImpl extends ServiceImpl<OrderFieldLockAp | @@ -122,7 +122,8 @@ public class OrderFieldLockApplyServiceImpl extends ServiceImpl<OrderFieldLockAp | ||
122 | return new LambdaQueryWrapper<OrderFieldLockApplyDO>() | 122 | return new LambdaQueryWrapper<OrderFieldLockApplyDO>() |
123 | .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) | 123 | .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN) |
124 | .eq(Objects.nonNull(queryVO.getApplyUserId()), OrderFieldLockApplyDO::getApplyUserId, queryVO.getApplyUserId()) | 124 | .eq(Objects.nonNull(queryVO.getApplyUserId()), OrderFieldLockApplyDO::getApplyUserId, queryVO.getApplyUserId()) |
125 | - .eq(Objects.nonNull(queryVO.getStatus()), OrderFieldLockApplyDO::getStatus, queryVO.getStatus()); | 125 | + .eq(Objects.nonNull(queryVO.getStatus()), OrderFieldLockApplyDO::getStatus, queryVO.getStatus()) |
126 | + .in(CollectionUtils.isNotEmpty(queryVO.getStatusList()), OrderFieldLockApplyDO::getStatus, queryVO.getStatusList()); | ||
126 | } | 127 | } |
127 | 128 | ||
128 | /** | 129 | /** |