Merge remote-tracking branch 'origin/guoshengxiong' into guoshengxiong

This commit is contained in:
guoshengxiong 2024-07-02 14:19:52 +08:00
commit 16c9a9e4c7

View File

@ -197,14 +197,12 @@ public class XzFlowController {
total.put("running", processInstanceVos.stream().filter(l -> l.getFinishTime() == null).count()); total.put("running", processInstanceVos.stream().filter(l -> l.getFinishTime() == null).count());
total.put("complete", processInstanceVos.stream().filter(l -> l.getFinishTime() != null).count()); total.put("complete", processInstanceVos.stream().filter(l -> l.getFinishTime() != null).count());
resultMap.put("total", total); resultMap.put("total", total);
List<String> formIds = wflowModels.stream().map(p -> p.getFormId()).collect(Collectors.toList());
List<Map<String, Object>> resultList = new ArrayList<>(); List<Map<String, Object>> resultList = new ArrayList<>();
for (String formId : formIds) { for (WflowModels wflowModel : wflowModels) {
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
List<WflowModelHistorys> collect = wflowModelHistorys.stream().filter(w -> w.getFormId().equals(formId)).collect(Collectors.toList()); map.put("name", wflowModel.getFormName());
map.put("name", collect.get(collect.size() - 1).getFormName()); List<ProcessInstanceVo> typeList = processInstanceVos.stream().filter(p -> p.getFormId().equals(wflowModel.getFormId())).collect(Collectors.toList());
List<ProcessInstanceVo> typeList = processInstanceVos.stream().filter(p -> p.getFormId().equals(formId)).collect(Collectors.toList()); long count = processInstanceVos.stream().filter(p -> p.getFormId().equals(wflowModel.getFormId())).count();
long count = processInstanceVos.stream().filter(p -> p.getFormId().equals(formId)).count();
int number = (int) count; int number = (int) count;
map.put("num", number); map.put("num", number);
map.put("ratio", processInstanceVos.size() == 0 ? 0 : new BigDecimal(number).divide(new BigDecimal(processInstanceVos.size()), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100))); map.put("ratio", processInstanceVos.size() == 0 ? 0 : new BigDecimal(number).divide(new BigDecimal(processInstanceVos.size()), 2, BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)));