浏览代码

fix: 退回不能选创建节点

JieZ 2 年之前
父节点
当前提交
3718c10c61

+ 1 - 1
bpm-core/src/main/java/com/srm/bpm/infra/dao/BillTaskDao.java

@@ -66,6 +66,6 @@ public interface BillTaskDao extends BaseDao<BillTaskEntity> {
66
      * @param billid 审批单id
66
      * @param billid 审批单id
67
      * @return 审批节点
67
      * @return 审批节点
68
      */
68
      */
69
-    List<BillTaskDTO> selectHistoryTasks(@Param("billId")Long billid);
69
+    List<BillTaskDTO> selectHistoryTasks(@Param("billId")Long billid,@Param("createTask") String createTask);
70
 
70
 
71
 }
71
 }

+ 57 - 29
bpm-core/src/main/java/com/srm/bpm/infra/service/impl/BillTaskServiceImpl.java

@@ -53,7 +53,8 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
53
      */
53
      */
54
     @Override
54
     @Override
55
     public List<BillTaskEntity> findTaskByBillAndUserCode(long billId, String userCode) {
55
     public List<BillTaskEntity> findTaskByBillAndUserCode(long billId, String userCode) {
56
-        final List<BillTaskEntity> billTask = this.baseMapper.selectTaskByBillAndUserCode(billId, userCode);
56
+        final List<BillTaskEntity> billTask =
57
+                this.baseMapper.selectTaskByBillAndUserCode(billId, userCode);
57
         return billTask;
58
         return billTask;
58
     }
59
     }
59
 
60
 
@@ -68,9 +69,11 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
68
         if (billId <= 0) {
69
         if (billId <= 0) {
69
             return Collections.emptyMap();
70
             return Collections.emptyMap();
70
         }
71
         }
71
-        final List<BillTaskEntity> billTasks = list(Wrappers.lambdaQuery(BillTaskEntity.class).eq(BillTaskEntity::getBillId, billId));
72
+        final List<BillTaskEntity> billTasks = list(Wrappers.lambdaQuery(BillTaskEntity.class)
73
+                .eq(BillTaskEntity::getBillId, billId));
72
         if (CollectionUtil.isNotEmpty(billTasks)) {
74
         if (CollectionUtil.isNotEmpty(billTasks)) {
73
-            final Map<String, List<BillTaskEntity>> collect = billTasks.stream().collect(Collectors.groupingBy(BillTaskEntity::getNodeName));
75
+            final Map<String, List<BillTaskEntity>> collect =
76
+                    billTasks.stream().collect(Collectors.groupingBy(BillTaskEntity::getNodeName));
74
             return collect;
77
             return collect;
75
         }
78
         }
76
         return Collections.emptyMap();
79
         return Collections.emptyMap();
@@ -98,9 +101,15 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
98
      * @return 审批任务
101
      * @return 审批任务
99
      */
102
      */
100
     @Override
103
     @Override
101
-    public Optional<BillTaskEntity> findByBillAndEmployeeAndTaskId(long billId, String taskId, String userCode) {
102
-        final LambdaQueryWrapper<BillTaskEntity> queryWrapper = Wrappers.lambdaQuery(BillTaskEntity.class).eq(BillTaskEntity::getBillId, billId)
103
-                .eq(BillTaskEntity::getTaskId, taskId).eq(BillTaskEntity::getUserCode, userCode).orderByDesc(BillTaskEntity::getSort);
104
+    public Optional<BillTaskEntity> findByBillAndEmployeeAndTaskId(
105
+            long billId, String taskId, String userCode
106
+    ) {
107
+        final LambdaQueryWrapper<BillTaskEntity> queryWrapper =
108
+                Wrappers.lambdaQuery(BillTaskEntity.class)
109
+                        .eq(BillTaskEntity::getBillId, billId)
110
+                        .eq(BillTaskEntity::getTaskId, taskId)
111
+                        .eq(BillTaskEntity::getUserCode, userCode)
112
+                        .orderByDesc(BillTaskEntity::getSort);
104
         final java.util.Optional<BillTaskEntity> optional = unique(queryWrapper);
113
         final java.util.Optional<BillTaskEntity> optional = unique(queryWrapper);
105
         if (!optional.isPresent()) {
114
         if (!optional.isPresent()) {
106
             return Optional.absent();
115
             return Optional.absent();
@@ -118,7 +127,8 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
118
      */
127
      */
119
     @Override
128
     @Override
120
     public int findActiveExcludeSelf(Long billId, String taskId, Long id) {
129
     public int findActiveExcludeSelf(Long billId, String taskId, Long id) {
121
-        return baseMapper.selectActiveExcludeSelf(billId, taskId, id, BillTaskStatus.AGREE.getStatus());
130
+        return baseMapper.selectActiveExcludeSelf(billId, taskId, id,
131
+                BillTaskStatus.AGREE.getStatus());
122
     }
132
     }
123
 
133
 
124
     /**
134
     /**
@@ -129,8 +139,8 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
129
      * @return 数量
139
      * @return 数量
130
      */
140
      */
131
     @Override
141
     @Override
132
-    public int findTotalCount(Long billId, String taskId,int type) {
133
-        return baseMapper.selectTotalCount(billId, taskId,type);
142
+    public int findTotalCount(Long billId, String taskId, int type) {
143
+        return baseMapper.selectTotalCount(billId, taskId, type);
134
     }
144
     }
135
 
145
 
136
     /**
146
     /**
@@ -150,9 +160,11 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
150
         task.setDateline(dateline);
160
         task.setDateline(dateline);
151
         task.setAction(BillAction.agree.name());
161
         task.setAction(BillAction.agree.name());
152
         task.setId(null);
162
         task.setId(null);
153
-        final LambdaUpdateWrapper<BillTaskEntity> billTaskEntityLambdaUpdateWrapper = Wrappers.lambdaUpdate();
163
+        final LambdaUpdateWrapper<BillTaskEntity> billTaskEntityLambdaUpdateWrapper =
164
+                Wrappers.lambdaUpdate();
154
         billTaskEntityLambdaUpdateWrapper.eq(BillTaskEntity::getBillId, actionParam.getBillId())
165
         billTaskEntityLambdaUpdateWrapper.eq(BillTaskEntity::getBillId, actionParam.getBillId())
155
-                .eq(BillTaskEntity::getUserCode, userCode).eq(BillTaskEntity::getTaskId, actionParam.getTaskId())
166
+                .eq(BillTaskEntity::getUserCode, userCode)
167
+                .eq(BillTaskEntity::getTaskId, actionParam.getTaskId())
156
                 .eq(BillTaskEntity::getNodeStatus, BillTaskStatus.APPROVAL.getStatus());
168
                 .eq(BillTaskEntity::getNodeStatus, BillTaskStatus.APPROVAL.getStatus());
157
         this.update(task, billTaskEntityLambdaUpdateWrapper);
169
         this.update(task, billTaskEntityLambdaUpdateWrapper);
158
 
170
 
@@ -167,8 +179,11 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
167
      */
179
      */
168
     @Override
180
     @Override
169
     public void deleteApproval(Long billId, String taskId, int status) {
181
     public void deleteApproval(Long billId, String taskId, int status) {
170
-        final LambdaQueryWrapper<BillTaskEntity> queryWrapper = Wrappers.lambdaQuery(BillTaskEntity.class).eq(BillTaskEntity::getBillId, billId)
171
-                .eq(BillTaskEntity::getTaskId, taskId).eq(BillTaskEntity::getNodeStatus, status);
182
+        final LambdaQueryWrapper<BillTaskEntity> queryWrapper =
183
+                Wrappers.lambdaQuery(BillTaskEntity.class)
184
+                        .eq(BillTaskEntity::getBillId, billId)
185
+                        .eq(BillTaskEntity::getTaskId, taskId)
186
+                        .eq(BillTaskEntity::getNodeStatus, status);
172
         remove(queryWrapper);
187
         remove(queryWrapper);
173
     }
188
     }
174
 
189
 
@@ -195,7 +210,8 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
195
      */
210
      */
196
     @Override
211
     @Override
197
     public List<BillTaskEntity> findByBillId(long billId) {
212
     public List<BillTaskEntity> findByBillId(long billId) {
198
-        return list(Wrappers.lambdaQuery(BillTaskEntity.class).eq(BillTaskEntity::getBillId, billId));
213
+        return list(
214
+                Wrappers.lambdaQuery(BillTaskEntity.class).eq(BillTaskEntity::getBillId, billId));
199
     }
215
     }
200
 
216
 
201
     /**
217
     /**
@@ -207,9 +223,12 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
207
      */
223
      */
208
     @Override
224
     @Override
209
     public List<BillTaskEntity> findApprovingByBillAndTaskId(long billId, String taskId) {
225
     public List<BillTaskEntity> findApprovingByBillAndTaskId(long billId, String taskId) {
210
-        final LambdaQueryWrapper<BillTaskEntity> queryWrapper = Wrappers.lambdaQuery(BillTaskEntity.class)
211
-                .eq(BillTaskEntity::getBillId, billId).eq(BillTaskEntity::getTaskType, BillTaskType.DEFAULT.getValue());
212
-        queryWrapper.eq(BillTaskEntity::getNodeStatus, BillTaskStatus.APPROVAL.getStatus()).eq(BillTaskEntity::getTaskId, taskId);
226
+        final LambdaQueryWrapper<BillTaskEntity> queryWrapper =
227
+                Wrappers.lambdaQuery(BillTaskEntity.class)
228
+                        .eq(BillTaskEntity::getBillId, billId)
229
+                        .eq(BillTaskEntity::getTaskType, BillTaskType.DEFAULT.getValue());
230
+        queryWrapper.eq(BillTaskEntity::getNodeStatus, BillTaskStatus.APPROVAL.getStatus())
231
+                .eq(BillTaskEntity::getTaskId, taskId);
213
         return this.list(queryWrapper);
232
         return this.list(queryWrapper);
214
     }
233
     }
215
 
234
 
@@ -222,8 +241,11 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
222
      * @return 任务列表
241
      * @return 任务列表
223
      */
242
      */
224
     @Override
243
     @Override
225
-    public List<BillTaskEntity> findEndorseByUserAndTaskId(long billId, String taskId, String userCode) {
226
-        final LambdaQueryWrapper<BillTaskEntity> queryWrapper = Wrappers.lambdaQuery(BillTaskEntity.class);
244
+    public List<BillTaskEntity> findEndorseByUserAndTaskId(
245
+            long billId, String taskId, String userCode
246
+    ) {
247
+        final LambdaQueryWrapper<BillTaskEntity> queryWrapper =
248
+                Wrappers.lambdaQuery(BillTaskEntity.class);
227
         queryWrapper.eq(BillTaskEntity::getBillId, billId);
249
         queryWrapper.eq(BillTaskEntity::getBillId, billId);
228
         queryWrapper.eq(BillTaskEntity::getTaskId, taskId);
250
         queryWrapper.eq(BillTaskEntity::getTaskId, taskId);
229
         queryWrapper.eq(BillTaskEntity::getUserCode, userCode);
251
         queryWrapper.eq(BillTaskEntity::getUserCode, userCode);
@@ -247,7 +269,10 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
247
      * 保存跳过的节点任务
269
      * 保存跳过的节点任务
248
      */
270
      */
249
     @Override
271
     @Override
250
-    public void saveSkipTask(String taskNodeId, Long billId, String taskId, String taskName, String lastTaskNodeId, String lastTaskId) {
272
+    public void saveSkipTask(
273
+            String taskNodeId, Long billId, String taskId, String taskName, String lastTaskNodeId,
274
+            String lastTaskId
275
+    ) {
251
         BillTaskEntity billTask = new BillTaskEntity();
276
         BillTaskEntity billTask = new BillTaskEntity();
252
         billTask.setAction(BillAction.none.name());
277
         billTask.setAction(BillAction.none.name());
253
         billTask.setSort(System.currentTimeMillis());
278
         billTask.setSort(System.currentTimeMillis());
@@ -273,10 +298,11 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
273
      */
298
      */
274
     @Override
299
     @Override
275
     public List<BillTaskEntity> findApprovingByBillAndUser(long billId, String user) {
300
     public List<BillTaskEntity> findApprovingByBillAndUser(long billId, String user) {
276
-        final LambdaQueryWrapper<BillTaskEntity> queryWrapper = Wrappers.lambdaQuery(BillTaskEntity.class)
277
-                .eq(BillTaskEntity::getBillId, billId)
278
-                .eq(BillTaskEntity::getNodeStatus, BillTaskStatus.APPROVAL)
279
-                .eq(BillTaskEntity::getUserCode, user);
301
+        final LambdaQueryWrapper<BillTaskEntity> queryWrapper =
302
+                Wrappers.lambdaQuery(BillTaskEntity.class)
303
+                        .eq(BillTaskEntity::getBillId, billId)
304
+                        .eq(BillTaskEntity::getNodeStatus, BillTaskStatus.APPROVAL)
305
+                        .eq(BillTaskEntity::getUserCode, user);
280
         return list(queryWrapper);
306
         return list(queryWrapper);
281
     }
307
     }
282
 
308
 
@@ -288,15 +314,17 @@ public class BillTaskServiceImpl extends BaseServiceImpl<BillTaskDao, BillTaskEn
288
      */
314
      */
289
     @Override
315
     @Override
290
     public List<BillTaskDTO> getHistoryTasks(Long billid) {
316
     public List<BillTaskDTO> getHistoryTasks(Long billid) {
291
-        return this.baseMapper.selectHistoryTasks(billid);
317
+        return this.baseMapper.selectHistoryTasks(billid, NodeLinkType.create.name());
292
     }
318
     }
293
 
319
 
294
     @Override
320
     @Override
295
     public List<BillTaskEntity> findApprovedByBillAndUser(long billId, String user) {
321
     public List<BillTaskEntity> findApprovedByBillAndUser(long billId, String user) {
296
-        final LambdaQueryWrapper<BillTaskEntity> queryWrapper = Wrappers.lambdaQuery(BillTaskEntity.class)
297
-                .eq(BillTaskEntity::getBillId, billId)
298
-                .in(BillTaskEntity::getNodeStatus, BillTaskStatus.AGREE,BillTaskStatus.REFUSE,BillTaskStatus.REPULSE)
299
-                .eq(BillTaskEntity::getUserCode, user);
322
+        final LambdaQueryWrapper<BillTaskEntity> queryWrapper =
323
+                Wrappers.lambdaQuery(BillTaskEntity.class)
324
+                        .eq(BillTaskEntity::getBillId, billId)
325
+                        .in(BillTaskEntity::getNodeStatus, BillTaskStatus.AGREE,
326
+                                BillTaskStatus.REFUSE, BillTaskStatus.REPULSE)
327
+                        .eq(BillTaskEntity::getUserCode, user);
300
         return list(queryWrapper);
328
         return list(queryWrapper);
301
     }
329
     }
302
 }
330
 }

+ 1 - 1
bpm-core/src/main/resources/mapper/bpm/infra/BillTaskDao.xml

@@ -128,7 +128,7 @@
128
         WHERE pne.is_deleted = 0
128
         WHERE pne.is_deleted = 0
129
           and bt.is_deleted = 0
129
           and bt.is_deleted = 0
130
           AND bt.node_status IN (2, 3, 8, 9)
130
           AND bt.node_status IN (2, 3, 8, 9)
131
-          and bt.bill_id = #{billId}
131
+          and bt.bill_id = #{billId} AND pne.link_type!=#{createTask}
132
         GROUP BY pne.id
132
         GROUP BY pne.id
133
     </select>
133
     </select>
134
 
134