From 3e39c5ecb49d1b2b9da61372867cd42295238448 Mon Sep 17 00:00:00 2001 From: wulin Date: Mon, 23 Nov 2020 13:49:52 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=BD=AC=E4=BA=A4?= =?UTF-8?q?=E5=BE=85=E5=8A=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/lz/modules/job/business/DingtalkBusiness.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java index 2e017239..0fe23b9a 100644 --- a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java +++ b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java @@ -461,7 +461,7 @@ public class DingtalkBusiness { logger.info("转交待办任务处理"); FlowChange flowChange = flowChangeService.selectFlowChangeByFlowRecordIdAndType( fromStaff.getFlowRecordId(), - 0); + 1); if(flowChange != null){ ThirdMsgSendRecord thirdMsgSendRecord = thirdMsgSendRecordService.selectThirdMsgSendRecordByWorkIdAndStaffIdAndTypeAndStatus( From ef891ecac618fd90467140ada86cb4f6ce735dca Mon Sep 17 00:00:00 2001 From: wulin Date: Mon, 23 Nov 2020 14:26:13 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=A2=9E=E8=82=8C=E5=95=8A=E6=97=A5?= =?UTF-8?q?=E6=B2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lz/modules/job/business/DingtalkBusiness.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java index 0fe23b9a..7a09c566 100644 --- a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java +++ b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java @@ -494,7 +494,6 @@ public class DingtalkBusiness { logger.info("查询到可能需要更新待办任务数量{}", flowRecords.size()); if(flowRecords.size() > 0){ //或签 - logger.info("或签,需要更新该节点下所有人员的待办任务"); for (FlowRecord flowRecord:flowRecords ) { logger.info("更新非直接跳关人员的待办任务,人员id:{}, 姓名:{}", flowRecord.getApprovalStaffId(), @@ -510,11 +509,14 @@ public class DingtalkBusiness { } } } + //获取具体跳过的步骤 + FlowRecord flowRecord = flowRecordService.selectFlowRecordById(fromStaff.getFlowRecordId());// }else{ + logger.info("流程正常流转"); List flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(fromStaff.getResultRecord().getId(), 2); if(flowRecords.size() > 0){//给下一步骤需要处理的人发送待办任务 - if(flowRecords.get(0).getFlowProcess().intValue() != 2){//执行中的不发送待办 - logger.info("非执行中的节点发送待办任务{}", flowRecords.get(0).getFlowName()); + if(flowRecords.get(0).getFlowProcess().intValue() != 2){//执行中流程的不发送待办 + logger.info("非执行中的节点发送待办任务:{}", flowRecords.get(0).getFlowName()); List ids = flowRecords.stream().map(new Function() { @Override public Long apply(FlowRecord flowRecord) { @@ -533,12 +535,15 @@ public class DingtalkBusiness { } //取消上一步骤发送的待办任务 if(flowRecords.size() == 0){//任务结束了 + logger.info("任务结束了"); flowRecords = flowRecordService.selectLastFlowRecordsById(fromStaff.getResultRecord().getId()); }else{ if(workMsgTypeEnum.getType() == WorkMsgTypeEnum.REJECT.getType()){//被拒 + logger.info("任务驳回"); flowRecords = flowRecordService.selectLastFlowRecordsByIdAndFlowIndex(fromStaff.getResultRecord().getId() , flowRecords.get(0).getFlowIndex().intValue() + 1);//获取下一步的数据 }else{ + logger.info("任务流转下一步"); flowRecords = flowRecordService.selectLastFlowRecordsByIdAndFlowIndex(fromStaff.getResultRecord().getId() , flowRecords.get(0).getFlowIndex().intValue() - 1);//获取上一步的数据 }