From 01d0ac677e4a310b3397ec0555ea46286d8c2c1f Mon Sep 17 00:00:00 2001 From: luozukai Date: Tue, 18 Jun 2019 17:50:00 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=AE=A1=E6=89=B9][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=9A=E5=BE=84=E5=90=88=E5=90=8C]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WxFlowServiceImpl.java | 28 ++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java index 679359453..fba23c87d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java @@ -607,14 +607,34 @@ public class WxFlowServiceImpl implements WxFlowService { } // 设置最后一个发起节点 if(CollectionUtils.isNotEmpty(resultList)){ - for (WxFlowRecord wxFlowRecord:resultList) { - if(wxFlowRecord.getStatus() == 1){ - wxFlowRecord.setIsLastStart(1); + for (int i = 0; i < resultList.size() ; i++) { + if(resultList.get(i).getStatus() == 1){ + resultList.get(i).setIsLastStart(1); + resultList = resultList.subList(0,i+1); break; } } } - return new ResultData(resultList); + + // 合并会签节点展 + Map map = new LinkedHashMap<>(); + for (WxFlowRecord r:resultList) { + if(r.getTaskKey() == null){ + r.setTaskKey(r.getTaskName()); + } + WxFlowRecord mapR = map.get(r.getTaskKey()); + if(mapR != null) + mapR.setUserName(mapR.getUserName()+","+r.getUserName()); + else + map.put(r.getTaskKey(),r); + } + + List flowRecordList = new ArrayList<>(); + for (String key:map.keySet()) { + flowRecordList.add(map.get(key)); + } + + return new ResultData(flowRecordList); } @Override