From f634fff6ae914413b724d51a59d51c67110cbfe4 Mon Sep 17 00:00:00 2001 From: zhenggm Date: Fri, 2 Sep 2022 19:19:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=BC=95=E6=93=8E=EF=BC=9Aex?= =?UTF-8?q?tra=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../smtweb/system/bpm/web/engine/flow/FlowInstance.java | 15 ++++++++------- .../model/flow/listcard/single/FlowSingleLoadHandler.java | 3 ++- .../model/flow/listcard/single/FlowSingleSaveHandler.java | 1 + .../model/flow/listcard/single/FlowTransHandler.java | 1 + 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowInstance.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowInstance.java index 1e55a02..667db30 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowInstance.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowInstance.java @@ -46,8 +46,6 @@ public class FlowInstance { //流程执行变量 // public Map variables = new HashMap<>(); - //当前任务 - private List> tasks = new ArrayList<>(); //数据提供者 private FlowProvider provider = new FlowProvider(); @@ -342,24 +340,27 @@ public class FlowInstance { /** * 返回页面前的设置 */ - public void resetPage() { + public void setPageRetExtra(SwMap ret) { + SwMap extra = ret.computeMapIfAbsent("extra", k->new SwMap()); + List listTask = adjustTasks(); //可选步骤 - tasks.clear(); + List tasks = new ArrayList<>(); String next_text = procDef.getProcInfo().getActNameById(actInst.getActId()); int index = 0; for (Task act : listTask) { - Map row = new HashMap<>(); + SwMap row = new SwMap(); tasks.add(row); - row.put("id", String.valueOf(act.getId())); + row.put("id", act.getId()); if (act.getId() == actInst.getId() && listTask.size() > 1 && index != 0) { next_text = "待" + next_text; } else { next_text = procDef.getProcInfo().getActNameById(act.getActId()); } - row.put("text", next_text); + row.put("label", next_text); index++; } + extra.put("tasks", tasks); resetButtons(); } diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleLoadHandler.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleLoadHandler.java index 182769e..8d10cf5 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleLoadHandler.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleLoadHandler.java @@ -39,6 +39,7 @@ public class FlowSingleLoadHandler extends LCSingleLoad ret.put(cardDataset.name, DynRetBean.createBean(bean)); ret.put(FlowHelper.DATASET_NAME_FLOW, DynRetBean.createBean(flowInstance.getProcInst())); ret.put(FlowHelper.DATASET_NAME_COMMENT, DynRetBean.createList(SwListData.EMPTY)); + flowInstance.setPageRetExtra(ret); } @Override @@ -57,7 +58,7 @@ public class FlowSingleLoadHandler extends LCSingleLoad ret.put(FlowHelper.DATASET_NAME_FLOW, DynRetBean.createBean(flowInstance.getProcInst())); ret.put(FlowHelper.DATASET_NAME_COMMENT, DynRetBean.createList(SwListData.create(flowInstance.loadComment(), 0))); - + flowInstance.setPageRetExtra(ret); afterLoad(ret, bean); return R.success(ret); } diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleSaveHandler.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleSaveHandler.java index 32cc323..9f0ab5a 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleSaveHandler.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowSingleSaveHandler.java @@ -58,6 +58,7 @@ public class FlowSingleSaveHandler extends LCSingleSave super.afterSave(ret, bean); ret.put(FlowHelper.DATASET_NAME_FLOW, DynRetBean.createBean(flowInstance.getProcInst())); ret.put(FlowHelper.DATASET_NAME_COMMENT, DynRetBean.createList(SwListData.EMPTY)); + flowInstance.setPageRetExtra(ret); } //单据编号,新增保存时调用 diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowTransHandler.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowTransHandler.java index 119a521..044bfc7 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowTransHandler.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/model/flow/listcard/single/FlowTransHandler.java @@ -33,6 +33,7 @@ public class FlowTransHandler extends AbstractDynPageHa ret.put(LCSingleHelper.DATASET_NAME_CARD, DynRetBean.createBean(bean)); ret.put(FlowHelper.DATASET_NAME_FLOW, DynRetBean.createBean(flowInstance.getProcInst())); ret.put(FlowHelper.DATASET_NAME_COMMENT, DynRetBean.createList(SwListData.EMPTY)); + flowInstance.setPageRetExtra(ret); return ret; }