From 969ed256f34cb179644eb05f7d5c402e558bd308 Mon Sep 17 00:00:00 2001 From: "446052889@qq.com" <446052889@qq.com> Date: Mon, 9 Jun 2025 12:29:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=80=E4=B8=AA=E4=BF=AE=E5=A4=8D=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E8=8A=82=E7=82=B9=E5=B1=9E=E6=80=A7=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E7=9A=84addons=E5=B7=A5=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...aas.user.apps.coe.pal.attribute.update.jar | Bin 0 -> 4573 bytes .../manifest.xml | 29 ++++++ .../mobile/mobile-profile.xml | 15 +++ .../addons/ShapeAttributeUpdateAddons.java | 87 ++++++++++++++++++ .../pal/attribute/update/plugin/Plugins.java | 21 +++++ .../web/action.xml | 4 + 6 files changed, 156 insertions(+) create mode 100644 com.awspaas.user.apps.coe.pal.attribute.update/lib/com.awspaas.user.apps.coe.pal.attribute.update.jar create mode 100644 com.awspaas.user.apps.coe.pal.attribute.update/manifest.xml create mode 100644 com.awspaas.user.apps.coe.pal.attribute.update/mobile/mobile-profile.xml create mode 100644 com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/addons/ShapeAttributeUpdateAddons.java create mode 100644 com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/plugin/Plugins.java create mode 100644 com.awspaas.user.apps.coe.pal.attribute.update/web/action.xml diff --git a/com.awspaas.user.apps.coe.pal.attribute.update/lib/com.awspaas.user.apps.coe.pal.attribute.update.jar b/com.awspaas.user.apps.coe.pal.attribute.update/lib/com.awspaas.user.apps.coe.pal.attribute.update.jar new file mode 100644 index 0000000000000000000000000000000000000000..1a53c1d65bc8fe5895054cb9e733f52ceb8b1bc8 GIT binary patch literal 4573 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 + + + 模型图元属性修复 + 1.0 + 2 + AWSPaaS-EndUser + true + +
+ + com.awspaas.user.apps.coe.pal.attribute.update.plugin.Plugins + + + + + true + + + + + true + true + com.actionsoft.apps.coe.pal + + 2025-06-09 11:29:49 + + +
diff --git a/com.awspaas.user.apps.coe.pal.attribute.update/mobile/mobile-profile.xml b/com.awspaas.user.apps.coe.pal.attribute.update/mobile/mobile-profile.xml new file mode 100644 index 00000000..a93e3e64 --- /dev/null +++ b/com.awspaas.user.apps.coe.pal.attribute.update/mobile/mobile-profile.xml @@ -0,0 +1,15 @@ + + + + + universal + + 1.0 + common + + sid + false + true + false + + diff --git a/com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/addons/ShapeAttributeUpdateAddons.java b/com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/addons/ShapeAttributeUpdateAddons.java new file mode 100644 index 00000000..3fbc2cf4 --- /dev/null +++ b/com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/addons/ShapeAttributeUpdateAddons.java @@ -0,0 +1,87 @@ +package com.awspaas.user.apps.coe.pal.attribute.update.addons; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.Set; + +import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryCache; +import com.actionsoft.apps.coe.pal.pal.repository.designer.CoeDesignerShapeAPIManager; +import com.actionsoft.apps.coe.pal.pal.repository.designer.constant.CoeDesignerConstant; +import com.actionsoft.apps.coe.pal.pal.repository.designer.manage.CoeDesignerAPIManager; +import com.actionsoft.apps.coe.pal.pal.repository.designer.model.BPMNModel; +import com.actionsoft.apps.coe.pal.pal.repository.designer.model.BaseModel; +import com.actionsoft.apps.coe.pal.pal.repository.designer.util.CoeDesignerUtil; +import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel; +import com.actionsoft.bpms.commons.addons.AddOnsInterface; +import com.actionsoft.bpms.server.UserContext; +import com.actionsoft.sdk.local.SDK; +import com.alibaba.fastjson.JSONObject; + +public class ShapeAttributeUpdateAddons implements AddOnsInterface { + public String mainPage(UserContext context) { + + String uuid = SDK.getAppAPI().getProperty("com.awspaas.user.apps.coe.pal.attribute.update", "DEFAULT_REPOSITORY_ID"); + if (uuid == null || uuid.trim().length() == 0) { + return "请到应用参数配置模型ID"; + } + PALRepositoryModel plModel = PALRepositoryCache.getCache().get(uuid); + if (plModel == null) { + return "模型未找到"; + } + String define = ""; + if ("process.bpmn2".equals(plModel.getMethodId())) {// bpmn模型 + BPMNModel model = CoeDesignerAPIManager.getInstance().getDefinitionOfBpmn(uuid, 0); + if (model == null) { + define = CoeDesignerUtil.getTemplateOfDefine(uuid); + } else { + define = model.getDefinition(); + } + } else {// 其他模型 + BaseModel model = CoeDesignerAPIManager.getInstance().getDefinition(uuid, 0); + if (model == null) { + model = CoeDesignerUtil.createModel(uuid, 0); + define = model.getDefinition(); + } else { + define = model.getDefinition(); + } + } + JSONObject definition = JSONObject.parseObject(define); + JSONObject localAttribute = new JSONObject(); + if (localAttribute.isEmpty()) { + //处理流程节点属性配置 + CoeDesignerShapeAPIManager.getInstance().handlePlShapeAttrConfig(plModel.getWsId(), plModel.getMethodId(), localAttribute); + } + definition.put("localAttribute", localAttribute); + // 更新节点的属性内容 + CoeDesignerShapeAPIManager.getInstance().updateShapeDataAttributes(definition, localAttribute); + + define = definition.toString(); + //当前时间 + String now = new SimpleDateFormat(CoeDesignerConstant.DATE_TIME_STYLE_YYYY_MM_DD_HH_MM_SS).format(new Date()); + // 修改流程图 + if (plModel.getMethodId().equals("process.bpmn2")) { + BPMNModel defineModel = CoeDesignerAPIManager.getInstance().getDefinitionOfBpmn(uuid, 0); + if (defineModel == null) { + defineModel = CoeDesignerUtil.createBPMNModel(uuid, 0); + defineModel.setCreateHistory(false); + } + + defineModel.setUpdateTime(now); + defineModel.setDefinition(define); + CoeDesignerAPIManager.getInstance().storeDefinitionOfBpmn(defineModel);// 保存文件 + } else { + BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(uuid, 0); + if (defineModel == null) { + defineModel = CoeDesignerUtil.createModel(uuid, 0); + defineModel.setCreateHistory(false); + } + defineModel.setUpdateTime(now); + defineModel.setDefinition(define); + CoeDesignerAPIManager.getInstance().storeDefinition(defineModel);// 保存文件 + } + + + return "更新成功"; + } + +} diff --git a/com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/plugin/Plugins.java b/com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/plugin/Plugins.java new file mode 100644 index 00000000..14667728 --- /dev/null +++ b/com.awspaas.user.apps.coe.pal.attribute.update/src/com/awspaas/user/apps/coe/pal/attribute/update/plugin/Plugins.java @@ -0,0 +1,21 @@ +package com.awspaas.user.apps.coe.pal.attribute.update.plugin; + +import java.util.ArrayList; +import java.util.List; + +import com.actionsoft.apps.listener.PluginListener; +import com.actionsoft.apps.resource.AppContext; +import com.actionsoft.apps.resource.plugin.profile.AWSPluginProfile; +import com.actionsoft.apps.resource.plugin.profile.AddOnsPluginProfile; +import com.awspaas.user.apps.coe.pal.attribute.update.addons.ShapeAttributeUpdateAddons; + +public class Plugins implements PluginListener { + @Override + public List register(AppContext appContext) { + // 存放本应用的全部插件扩展点描述 + List list = new ArrayList<>(); + // 注册ADD-ONS + list.add(new AddOnsPluginProfile(ShapeAttributeUpdateAddons.class.getName())); + return list; + } +} diff --git a/com.awspaas.user.apps.coe.pal.attribute.update/web/action.xml b/com.awspaas.user.apps.coe.pal.attribute.update/web/action.xml new file mode 100644 index 00000000..231e165a --- /dev/null +++ b/com.awspaas.user.apps.coe.pal.attribute.update/web/action.xml @@ -0,0 +1,4 @@ + + + +