Parcourir la source

触发重新归档

huanglc il y a 4 semaines
Parent
commit
93b4649de4

+ 14 - 2
bpm-core/src/main/java/com/srm/bpm/logic/service/impl/BillBpmnLogicImpl.java

@@ -2,6 +2,7 @@
2 2
 
3 3
 package com.srm.bpm.logic.service.impl;
4 4
 
5
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
5 6
 import com.google.common.base.MoreObjects;
6 7
 import com.google.common.base.Optional;
7 8
 import com.google.common.base.Strings;
@@ -629,8 +630,19 @@ public class BillBpmnLogicImpl implements BillBpmnLogic {
629 630
 
630 631
             final BillTaskEntity lastTask = billTasks.get(0);
631 632
 
633
+            //再查询最后一个节点的所有审批人
634
+            List<BillTaskEntity> list = billTaskService.list(
635
+                    Wrappers.lambdaQuery(BillTaskEntity.class)
636
+                            .eq(BillTaskEntity::getSort, lastTask.getSort())
637
+                            .eq(BillTaskEntity::getIsDeleted, 0)
638
+            );
639
+
640
+            //如果全部为2(同意)则触发回调
641
+            boolean allMatch = list.stream().allMatch(f -> f.getNodeStatus().equals(BillTaskStatus.AGREE.getStatus()));
642
+            if(!allMatch)return;
643
+
632 644
             // 检查最后一个节点的审批状态是否为 2(已同意)
633
-            if (lastTask.getNodeStatus() == BillTaskStatus.AGREE.getStatus()) {
645
+            //if (lastTask.getNodeStatus() == BillTaskStatus.AGREE.getStatus()) {
634 646
                 // 检查最后一个任务是否是归档节点
635 647
                 final Long processId = latestBill.getProcessId();
636 648
                 if (processId != null && !Strings.isNullOrEmpty(lastTask.getTaskNodeKey())) {
@@ -649,7 +661,7 @@ public class BillBpmnLogicImpl implements BillBpmnLogic {
649 661
                         }
650 662
                     }
651 663
                 }
652
-            }
664
+            //}
653 665
         } catch (Exception e) {
654 666
             log.error("检查归档条件并触发回调时发生异常。billId: {}, taskId: {}, 错误: {}",
655 667
                     bill != null ? bill.getId() : null, taskId, e.getMessage(), e);