From 543d02b88bf504c548bc9e24b39610ec04e7892d Mon Sep 17 00:00:00 2001 From: zhenggm Date: Sat, 20 Aug 2022 17:20:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=BC=95=E6=93=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/bpm/web/design/form/ModelFormHelper.java | 11 +++++++---- .../system/bpm/web/engine/flow/FlowInstance.java | 19 ++++++++----------- .../system/bpm/web/engine/flow/FlowListener.java | 12 ++++++++++++ .../system/bpm/web/sys/dev/EnumComboService.java | 2 +- .../bpm/src/main/resources/config/application.yaml | 8 ++++---- 5 files changed, 32 insertions(+), 20 deletions(-) create mode 100644 smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowListener.java diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/design/form/ModelFormHelper.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/design/form/ModelFormHelper.java index 34c06b0..75da461 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/design/form/ModelFormHelper.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/design/form/ModelFormHelper.java @@ -520,13 +520,16 @@ public class ModelFormHelper { col.put("editor", dtb != null ? dtb.editor: SwEnum.EditorType.INPUT.value); if (field.getLink() == 0L) return; - - Set set = ModelFormCache.getInstance().getListByTable(table.getId(), SwEnum.FormType.WIDGET.value); + + Set set = ModelFormCache.getInstance().getListByTable(field.getLink(), SwEnum.FormType.WIDGET.value); if (set == null || set.isEmpty()) return; ModelForm form = set.iterator().next(); if (form == null) return; - col.put("widget", form.getId()); - col.put("widgetText", form.getTitle()); + SwMap widget = new SwMap(); + col.put("widget", widget); + + widget.put("widgetId", form.getId()); + widget.put("widgetId_text", form.getTitle()); SwMap opts = form.getOpts(); if (opts != null) { col.put("editor", SwEnum.WidgetType.getEditor(opts.readString("widgetType"))); 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 ddf6a2b..bd26ecf 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 @@ -23,6 +23,7 @@ import cc.smtweb.system.bpm.web.sys.user.user.UserCache; import cc.smtweb.system.bpm.web.sys.user.userGroup.UserGroupHelper; import lombok.Data; import org.apache.commons.lang3.StringUtils; +import org.springframework.lang.NonNull; import java.util.*; @@ -52,8 +53,10 @@ public class FlowInstance { private List> tasks = new ArrayList<>(); //数据提供者 private FlowProvider provider = new FlowProvider(); + private FlowListener listener; - public FlowInstance(UserSession us) { + public FlowInstance(@NonNull FlowListener listener, UserSession us) { + this.listener = listener; this.us = us; } @@ -74,16 +77,10 @@ public class FlowInstance { */ public boolean execTrans(String expr) { if (StringUtils.isBlank(expr)) return true; - Map mapVar = new HashMap<>(); - /*mapVar.putAll(billEntity.getData()); - mapVar.put("party_code", PartyEntityBuffer.getInstance().getCodeById(billEntity.getPartyId())); - mapVar.put("party_name", PartyEntityBuffer.getInstance().getNameById(billEntity.getPartyId())); - mapVar.put("dept_code", DepartmentEntityBuffer.getInstance().getCodeById(billEntity.getDeptId())); - mapVar.put("dept_name", DepartmentEntityBuffer.getInstance().getNameById(billEntity.getDeptId())); - mapVar.put("bill_user_code", UserBaseEntityBuffer.getInstance().getCodeById(billEntity.getBillUser())); - mapVar.put("bill_user_name", UserBaseEntityBuffer.getInstance().getNameById(billEntity.getBillUser())); - localBuildExecTrans(mapVar);*/ - Object o = NumberUtil.calcExprMapObject(expr, mapVar); + SwMap params = new SwMap(); + params.putAll(procInst.getData()); + listener.setExprParam(params); + Object o = NumberUtil.calcExprMapObject(expr, params); return o != null && (Boolean) o; } diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowListener.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowListener.java new file mode 100644 index 0000000..cc11f34 --- /dev/null +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/engine/flow/FlowListener.java @@ -0,0 +1,12 @@ +package cc.smtweb.system.bpm.web.engine.flow; + +import cc.smtweb.framework.core.common.SwMap; + +/** + * Created by Akmm at 2022-08-20 16:12 + * 流程流转监听 + */ +public class FlowListener { + //设置条件计算参数 + public void setExprParam(SwMap param){} +} diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/sys/dev/EnumComboService.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/sys/dev/EnumComboService.java index 81b0ead..be5b509 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/sys/dev/EnumComboService.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/sys/dev/EnumComboService.java @@ -46,7 +46,7 @@ public class EnumComboService extends DynPageService { tempClass = Class.forName(cls); wantClass = tempClass; }catch (Exception e){ - e.printStackTrace(); +// e.printStackTrace(); // int lIndex = cls.lastIndexOf("."); if (lIndex > 0) { diff --git a/smtweb-framework/bpm/src/main/resources/config/application.yaml b/smtweb-framework/bpm/src/main/resources/config/application.yaml index 0021adf..f2f87e9 100644 --- a/smtweb-framework/bpm/src/main/resources/config/application.yaml +++ b/smtweb-framework/bpm/src/main/resources/config/application.yaml @@ -45,11 +45,11 @@ spring: password: datasource: driver-class-name: com.mysql.cj.jdbc.Driver -# url: jdbc:mysql://139.9.38.43:6032/smt?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false - url: jdbc:mysql://127.0.0.1:3306/smt?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false + url: jdbc:mysql://139.9.38.43:6032/smt?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false +# url: jdbc:mysql://127.0.0.1:3306/smt?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false username: root -# password: Ncmz@2022_jjkj - password: ssqsoft + password: Ncmz@2022_jjkj +# password: ssqsoft servlet: multipart: max-file-size: 104857600000