From 28bf8b910b197e828f1deb0cdb6f4ae651baf185 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Mon, 3 Jul 2023 15:52:36 +0800 Subject: [PATCH 01/41] =?UTF-8?q?=E5=91=BD=E4=BB=A4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=A7=A3=E6=9E=90=E8=8E=B7=E5=8F=96=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FrmJsonFileGenerator.java | 14 +++++++------- .../edp/web/jitengine/JITEngineManager.java | 11 ++++++----- .../metadataanalysis/CommandsAnalysis.java | 19 ++++++++----------- .../metadataanalysis/CommandsAnalysis.java | 10 +++++----- .../metadataanalysis/EapiAnalysis.java | 4 ++-- .../metadataanalysis/FormAnalysis.java | 6 +++--- .../StateMachineAnalysis.java | 4 ++-- .../metadatamanager/BaseMetaDataManager.java | 5 +++-- .../CommandsMetadataManager.java | 11 +++++------ .../ComponentMetadataManager.java | 9 ++++----- .../metadatamanager/EapiMetadataManager.java | 9 ++++----- .../metadatamanager/FormMetadataManager.java | 6 ++++-- .../StateMachineMetadataManager.java | 10 +++++----- .../app/AppMetadataManager.java | 5 +++-- .../operation/EapiMetadataOperation.java | 2 +- .../FormMetadataContentOperation.java | 4 ++-- .../StateMachineMetadataOperation.java | 4 ++-- 17 files changed, 66 insertions(+), 67 deletions(-) diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java index f1f3b30d..6d298d16 100644 --- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java +++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java @@ -84,7 +84,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen } HashMap projectWebCmd = new HashMap<>(); - this.executeExternalComponent(visualDom, basePath, basePath + "/services", basePath, basePath, projectWebCmd, expressionManifest); + this.executeExternalComponent(visualDom, basePath, basePath + "/services", basePath, basePath, null, projectWebCmd, expressionManifest); // 写入表单表达式json文件 ExpressionManifestManager.writeExpressionJson(expressionManifest, basePath, false); @@ -210,7 +210,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen * 处理扩展组件 */ private void executeExternalComponent(FormDOM json, String targetStorageBasePath, String formServicePath, String projectPath, - String webdevpath, HashMap projectCmpList, ExpressionManifest expressionManifest) { + String webdevpath, String relativePath, HashMap projectCmpList, ExpressionManifest expressionManifest) { if (json != null && json.getModule() != null && json.getModule().getExternalComponents() != null && json.getModule().getExternalComponents().size() > 0) { for (HashMap item : json.getModule().getExternalComponents()) { @@ -219,7 +219,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen AnalysisExternalComponentResult externalVisualDom; try { - externalVisualDom = formAnalysis.analysisExternalComponent(targetStorageBasePath, json.getModule().getCode().toLowerCase(), item, webdevpath); + externalVisualDom = formAnalysis.analysisExternalComponent(targetStorageBasePath, json.getModule().getCode().toLowerCase(), relativePath, item, webdevpath); } catch (Exception e) { WebLogger.Instance.error(e); return; @@ -293,15 +293,15 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen String formMetadataName = formMetadata.getHeader().getFileName(); // 临时注释,方便调试 // Step 2: Resolve StateMachine, and Save StateMachine - StateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, webDevPath, projectPath, this.getExecuteEnvironment(), this.isUpdradeTool()); + StateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, webDevPath, projectPath, this.getExecuteEnvironment(), relativePath, this.isUpdradeTool()); // // // Step 3: Resolve Command CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); - commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formMetadata,formDom), formMetadataName, targetStorageBasePath, projectCmpList, webDevPath, null); + commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formMetadata, formDom), formMetadataName, targetStorageBasePath, projectCmpList, webDevPath, null); // // // Step 4: Resolve eapi EapiAnalysis eapiAnalysis = new EapiAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); - eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, projectPath, webDevPath, formMetadata.getHeader().getNameSpace()); + eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, projectPath, webDevPath, formMetadata.getHeader().getNameSpace(), relativePath); // // // Step 5: Resolve command service CommandServiceAnalysis.resolveCommandService(formDom, relativePath, formServiceBasePath, webDevPath, this.getExecuteEnvironment(), this.isUpdradeTool()); @@ -312,7 +312,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen // 递归解析 如果存在子组件 那么需要递归执行子组件 executeExternalComponent(formDom, targetStorageBasePath, formServiceBasePath, projectPath, - webDevPath, projectCmpList, expressionManifest); + webDevPath, relativePath, projectCmpList, expressionManifest); } diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index 904ec5bc..069f2afe 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -341,7 +341,7 @@ public class JITEngineManager { // WebLogger.Instance.info(rollupBuildResult, CommandServiceAnalysis.class.getName()); // } - String sourceBuildPath = FileUtility.combine(htmlTemplatePath, "dist-rollup","web-page-templates"); + String sourceBuildPath = FileUtility.combine(htmlTemplatePath, "dist-rollup", "web-page-templates"); if (FileUtility.exists(sourceBuildPath)) { String htmlTemplateFileDeployToFormFolder = FileUtility.combine(targetStorageBasePath, "htmltemplate"); if (FileUtility.exists(htmlTemplateFileDeployToFormFolder)) { @@ -387,7 +387,7 @@ public class JITEngineManager { FormComponentParser.getInstance().ExtractComponent(formDom, formMetadataName, targetStorageBasePath, webDevPath); // Resolve StateMachine - StateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, webDevPath, projectPath, ExecuteEnvironment.Design, false); + StateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, webDevPath, projectPath, ExecuteEnvironment.Design, relativePath, false); } // Resolve Command @@ -399,7 +399,7 @@ public class JITEngineManager { // Resolve Eapi EapiAnalysis eapiAnalysis = new EapiAnalysis(ExecuteEnvironment.Design, false); String formNameSpace = resolveFormMetadataItem.getGspMetadata() == null ? "" : resolveFormMetadataItem.getGspMetadata().getHeader().getNameSpace(); - eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, projectPath, webDevPath, formNameSpace); + eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, projectPath, webDevPath, formNameSpace, relativePath); } // Resolve Command Service @@ -425,7 +425,7 @@ public class JITEngineManager { // 递归解析 如果存在子组件 那么需要递归执行子组件 executeExternalComponent(formDom, baseFormPath, targetStorageBasePath, formServiceBasePath, projectPath, projectCmpList, webDevPath, - i18nResourceList, zhI18nResourceList, zhCHTI18nResourceList, expressionManifest, i18nResourceKeyPrefix, executeEnvironment, isUpdradeTool); + i18nResourceList, zhI18nResourceList, zhCHTI18nResourceList, relativePath, expressionManifest, i18nResourceKeyPrefix, executeEnvironment, isUpdradeTool); } } @@ -435,6 +435,7 @@ public class JITEngineManager { private static void executeExternalComponent(FormDOM json, String baseFormPath, String targetStorageBasePath, String formServicePath, String projectPath, HashMap projectCmpList, String webdevpath, GeneratedI18nResourceList i18nResourceList, GeneratedI18nResourceList zhI18nResourceList, GeneratedI18nResourceList zhCHTI18nResourceList, + String relativePath, ExpressionManifest expressionManifest, String i18nResourceKeyPrefix, ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { if (json != null && json.getModule() != null && json.getModule().getExternalComponents() != null && json.getModule().getExternalComponents().size() > 0) { @@ -449,7 +450,7 @@ public class JITEngineManager { externalVisualDom = null; // 如果是弹窗URL 那么不解析对应元数据 } else { - externalVisualDom = formAnalysis.analysisExternalComponent(targetStorageBasePath, json.getModule().getCode(), item, webdevpath); + externalVisualDom = formAnalysis.analysisExternalComponent(targetStorageBasePath, json.getModule().getCode(), relativePath, item, webdevpath); } diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java index 88fe5183..1ff1ca7d 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java @@ -57,10 +57,10 @@ public class CommandsAnalysis { public void resolveCommand(FormDOM json, String formMetadataName, String targetStoragePath, HashMap projectCmpList, - String webDevPath, String fileName) { + String webDevPath, String relativePath, String fileName) { HashMap cmpList = new HashMap<>(8); - CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, this.isUpdradeTool); - ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool); + CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, relativePath, this.isUpdradeTool); + ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, relativePath); StringBuilder sbCommands = new StringBuilder(); sbCommands.append("{"); if (json.getModule() != null && json.getModule().getWebcmds() != null && json.getModule().getWebcmds().size() > 0) { @@ -78,7 +78,7 @@ public class CommandsAnalysis { analysisComponentMetadata(metadata, cmpList, null, componentMetadataManager, projectCmpList); try { - analysisServiceRef(json, cmpList); + analysisServiceRef(json, cmpList, relativePath); } catch (Exception e) { WebLogger.Instance.error(e); return; @@ -150,9 +150,6 @@ public class CommandsAnalysis { private void analysisComponentCommandItemList(List commandItemList, HashMap cmpList, ComponentMetadataManager cmpManager, HashMap projectCmpList) throws Exception { if (commandItemList != null && commandItemList.size() > 0) { - if (cmpManager == null) { - cmpManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool); - } WebComponentMetadata cmpMetadata = null; for (CommandItem item : commandItemList) { switch (item.getItemType()) { @@ -188,7 +185,7 @@ public class CommandsAnalysis { } } - private void analysisServiceRef(FormDOM json, HashMap cmpList) throws Exception { + private void analysisServiceRef(FormDOM json, HashMap cmpList, String relativePath) throws Exception { if (cmpList != null && cmpList.size() > 0) { Iterator iter = cmpList.entrySet().iterator(); @@ -206,7 +203,7 @@ public class CommandsAnalysis { serviceRef.put("name", component.getClassName()); String path = component.getSource(); if (path == null || path.isEmpty()) { - path = getTSFileName(component.getId()); + path = getTSFileName(component.getId(), relativePath); component.setSource(path); } serviceRef.put("path", path); @@ -245,14 +242,14 @@ public class CommandsAnalysis { /** * 获取ts文件路径和名称 */ - private String getTSFileName(String cmpId) throws Exception { + private String getTSFileName(String cmpId, String relativePath) throws Exception { // 最理想的方式:路径来自webcmp构件路径,名称来自path(即元数据的Source属性) // 先用webcmp的文件名构造,后续可以考虑调整 if (cmpId == null || cmpId.isEmpty()) { throw new Exception("获取ts文件名出错,对应的web构件id不能为空。"); } - CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, this.isUpdradeTool); + CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, relativePath, this.isUpdradeTool); GspMetadata metadata = manager.getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); getterMetadataInfo.setId(cmpId); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java index 89bbff84..9fce765e 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java @@ -102,7 +102,7 @@ public class CommandsAnalysis { String webDevPath, String fileName) { HashMap cmpList = new HashMap<>(8); String strFormRelativePath = parameter.getFormMetadata() == null ? null : parameter.getFormMetadata().getRelativePath(); - CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, this.isUpdradeTool, strFormRelativePath); + CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, strFormRelativePath, this.isUpdradeTool); ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, strFormRelativePath); StringBuilder sbCommands = new StringBuilder(); sbCommands.append("{"); @@ -189,7 +189,7 @@ public class CommandsAnalysis { List> completableFutureList, Map formRelateMetadataInDesignResultDtoConcurrentHashMap ) { - CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, this.isUpdradeTool, parameter.getFormMetadata().getRelativePath()); + CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, parameter.getFormMetadata().getRelativePath(), this.isUpdradeTool); ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, parameter.getFormMetadata().getRelativePath()); @@ -202,7 +202,7 @@ public class CommandsAnalysis { Map webCommandsMetadataAndExtraMap = new ConcurrentHashMap<>(); String cmdId = c.get("id").toString(); - GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), ""), StringUtility.getOrDefault(c.get("name"), ""), StringUtility.getOrDefault(c.get("nameSpace"),"")); + GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), ""), StringUtility.getOrDefault(c.get("name"), ""), StringUtility.getOrDefault(c.get("nameSpace"), "")); WebCommandsMetadata metadata = (WebCommandsMetadata) commandMetadata.getContent(); // 写入web 命令元数据 webCommandsMetadataAndExtraMap.put(commandMetadata.getHeader().getId(), WebCommandsMetadataAndExtra.init(metadata, commandMetadata.getHeader().getId(), commandMetadata.getHeader().getName(), commandMetadata.getHeader().getFileName(), commandMetadata.getRelativePath())); @@ -275,7 +275,7 @@ public class CommandsAnalysis { ComponentMetadataManager cmpManager, Map projectCmpList) throws Exception { if (commandItemList != null && commandItemList.size() > 0) { if (cmpManager == null) { - cmpManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool); + cmpManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, null); } WebComponentMetadata cmpMetadata = null; for (CommandItem item : commandItemList) { @@ -404,7 +404,7 @@ public class CommandsAnalysis { throw new WebCustomException("获取ts文件名出错,对应的web构件id不能为空。"); } - CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, this.isUpdradeTool); + CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, null, this.isUpdradeTool); GspMetadata metadata = manager.getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); getterMetadataInfo.setId(cmpId); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java index a5987300..696c9993 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java @@ -52,7 +52,7 @@ public class EapiAnalysis { * @param webDevPath webdev目录所在路径 */ public void resolveEapi(FormDOM json, String formMetadataName, String targetStoragePath, String projectPath, - String webDevPath, String nameSpace) { + String webDevPath, String nameSpace, String relativePath) { if (json == null || json.getModule() == null || json.getModule().getCode() == null || StringUtility.isNullOrEmpty(targetStoragePath) || json.getModule().getSchemas() == null || json.getModule().getSchemas().size() == 0) { @@ -63,7 +63,7 @@ public class EapiAnalysis { int index = 0; // VO-EAPI(vo和eapi是一对一的关系) List> schemas = json.getModule().getSchemas(); - EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(this.executeEnvironment, this.isUpdradeTool); + EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(this.executeEnvironment, this.isUpdradeTool, relativePath); for (HashMap item : schemas) { if (index > 0) { eapis.append(","); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java index 31300eeb..93c62a68 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java @@ -49,7 +49,7 @@ public class FormAnalysis { */ public ResolveFormResult resolveForm(String formMetadataFileName, String formMetadataFilePath, String destStoragePath, String projectPath) { // Get Visual Dom - FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, this.isUpdradeTool); + FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, null, this.isUpdradeTool); String formDom = formMetadataManager.getVisualDom(formMetadataFileName, formMetadataFilePath); // 反序列化表单元数据 @@ -91,7 +91,7 @@ public class FormAnalysis { /// /// public AnalysisExternalComponentResult analysisExternalComponent(String frmJsonSavePath, - String parentModuleCode, + String parentModuleCode, String relativePath, HashMap externalComponent, String webDevPath) { FormDOM json = null; Object objUri = null; @@ -101,7 +101,7 @@ public class FormAnalysis { Object objExternalComponentContainerId = null; String externalComponentContainerId = ""; String externalComponentPath = ""; - FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, this.isUpdradeTool); + FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, relativePath, this.isUpdradeTool); //TODO: 验证TryGetValue在java中语义实现 objUri = externalComponent.get("uri"); externalComponentUri = objUri != null ? objUri.toString() : ""; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java index e99b4527..ae33bc88 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java @@ -32,11 +32,11 @@ public class StateMachineAnalysis { * 解析状态机元数据 */ public static void resolveStateMachine(FormDOM json, String metaDataFileName, String targetStoragePath, String webDevPath, - String projectPath, ExecuteEnvironment executeEnvironment, + String projectPath, ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpdradeTool) { // Get StateMachine Metadata, and Save StateMachine if (json.getModule() != null && json.getModule().getStateMachines() != null && json.getModule().getStateMachines().size() > 0) { - StateMachineMetadataManager smManager = new StateMachineMetadataManager(executeEnvironment, isUpdradeTool); + StateMachineMetadataManager smManager = new StateMachineMetadataManager(executeEnvironment, isUpdradeTool, relativePath); StringBuilder stateMachines = new StringBuilder(); stateMachines.append("{"); int index = 0; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java index f13da568..42ef2905 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java @@ -41,9 +41,10 @@ public abstract class BaseMetaDataManager { * * @param executeEnvironment */ - public BaseMetaDataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { + public BaseMetaDataManager(ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpdradeTool) { this.setExecuteEnvironment(executeEnvironment); this.isUpdradeTool = isUpdradeTool; + this.relativePath = relativePath; } private boolean isUpdradeTool = false; @@ -71,7 +72,7 @@ public abstract class BaseMetaDataManager { return this.relativePath; } - public void setRelativePath(String relativePath) { + protected void setRelativePath(String relativePath) { this.relativePath = relativePath; } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java index b9cccc10..d4b08d1d 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java @@ -28,13 +28,12 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; * @author noah */ public class CommandsMetadataManager extends BaseMetaDataManager { - public CommandsMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, isUpdradeTool); - } +// public CommandsMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { +// super(executeEnvironment, isUpdradeTool); +// } - public CommandsMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { - super(executeEnvironment, isUpdradeTool); - this.setRelativePath(relativePath); + public CommandsMetadataManager(ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpdradeTool) { + super(executeEnvironment, relativePath, isUpdradeTool); } public GspMetadata getWebCommands(String id, String code, String name, String nameSpace) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java index 6d892e67..1df46921 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java @@ -29,13 +29,12 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; */ public class ComponentMetadataManager extends BaseMetaDataManager { - public ComponentMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, isUpdradeTool); - } +// public ComponentMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { +// super(executeEnvironment, isUpdradeTool); +// } public ComponentMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { - super(executeEnvironment, isUpdradeTool); - this.setRelativePath(relativePath); + super(executeEnvironment, relativePath, isUpdradeTool); } public WebComponentMetadata getComponentMetadata(String id, String code, String name, String nameSpace) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java index ca798bce..c98fedf5 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java @@ -28,13 +28,12 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; * @author noah */ public class EapiMetadataManager extends BaseMetaDataManager { - public EapiMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, isUpdradeTool); - } +// public EapiMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { +// super(executeEnvironment, isUpdradeTool); +// } public EapiMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { - super(executeEnvironment, isUpdradeTool); - this.setRelativePath(relativePath); + super(executeEnvironment, relativePath, isUpdradeTool); } /** diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java index 9027ef0a..d2c7b0d4 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java @@ -28,8 +28,8 @@ import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; * @author guozhiqi */ public class FormMetadataManager extends BaseMetaDataManager { - public FormMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, isUpdradeTool); + public FormMetadataManager(ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpdradeTool) { + super(executeEnvironment, relativePath, isUpdradeTool); } /** @@ -37,6 +37,7 @@ public class FormMetadataManager extends BaseMetaDataManager { */ public String getVisualDom(String metaDataFileName, String metaDataFilePath) { GspMetadata metadata = getMetadata(metaDataFileName, metaDataFilePath); + this.setRelativePath(metadata.getRelativePath()); return ((FormMetadataContent) metadata.getContent()).getContents().toString(); } @@ -68,6 +69,7 @@ public class FormMetadataManager extends BaseMetaDataManager { */ public String getVisualDom(String metadataID, String code, String name, String nameSpace) { GspMetadata metadata = this.getFormMetaData(metadataID, code, name, nameSpace); + this.setRelativePath(metadata.getRelativePath()); return ((FormMetadataContent) metadata.getContent()).getContents().toString(); } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java index ad070225..414ef16e 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java @@ -24,16 +24,16 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; /** * 状态机元数据读取 + * * @author guozhiqi */ public class StateMachineMetadataManager extends BaseMetaDataManager { - public StateMachineMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, isUpdradeTool); - } +// public StateMachineMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { +// super(executeEnvironment, isUpdradeTool); +// } public StateMachineMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { - super(executeEnvironment, isUpdradeTool); - this.setRelativePath(relativePath); + super(executeEnvironment, relativePath, isUpdradeTool); } public GspMetadata getStateMachine(String id, String code, String name, String nameSpace) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java index 9ad1c583..319c4fed 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java @@ -21,7 +21,8 @@ import com.inspur.edp.web.formmetadata.metadatamanager.BaseMetaDataManager; /** * appmetadataManager - * @author noah + * + * @author noah */ public class AppMetadataManager extends BaseMetaDataManager { @@ -32,6 +33,6 @@ public class AppMetadataManager extends BaseMetaDataManager { * @param isUpdradeTool */ public AppMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, isUpdradeTool); + super(executeEnvironment, null, isUpdradeTool); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java index cefd117c..79f8395a 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java @@ -39,7 +39,7 @@ class EapiMetadataOperation { int index = 0; // VO-EAPI(vo和eapi是一对一的关系) List> schemas = json.getModule().getSchemas(); - EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(ExecuteEnvironment.Design, false); + EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(ExecuteEnvironment.Design, false, null); for (HashMap item : schemas) { if (index > 0) { eapis.append(","); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java index 801fced1..a3ada909 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java @@ -88,7 +88,7 @@ class FormMetadataContentOperation { adaptedPage.setId(configId); String formCode = formDOM.getModule().getCode(); String pageCode = formCode + "_" + configId.substring(0, 8); - String pageName = formDOM.getModule().getName()+"_" + configId.substring(0, 8); + String pageName = formDOM.getModule().getName() + "_" + configId.substring(0, 8); adaptedPage.setCode(pageCode); adaptedPage.setName(pageName); adaptedPage.setRouteUri(pageCode); @@ -121,7 +121,7 @@ class FormMetadataContentOperation { * @param content */ private void save(String webDevPath, String formMetaDataFileName, String content) { - FormMetadataManager formMetadataManager = new FormMetadataManager(ExecuteEnvironment.Design, false); + FormMetadataManager formMetadataManager = new FormMetadataManager(ExecuteEnvironment.Design, null, false); formMetadataManager.saveMetadataFile(webDevPath, formMetaDataFileName.toLowerCase() + ".json", content); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java index dcffa3cb..c4b6d119 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java @@ -32,9 +32,9 @@ public class StateMachineMetadataOperation { * * @param formParameter */ - public void save(FormDOM json, ZeroCodeFormParameter formParameter,String wevDevPath,String formMetadataFileName) { + public void save(FormDOM json, ZeroCodeFormParameter formParameter, String wevDevPath, String formMetadataFileName) { if (json.getModule() != null && json.getModule().getStateMachines() != null && json.getModule().getStateMachines().size() > 0) { - StateMachineMetadataManager smManager = new StateMachineMetadataManager(ExecuteEnvironment.Design, false); + StateMachineMetadataManager smManager = new StateMachineMetadataManager(ExecuteEnvironment.Design, false, null); StringBuilder stateMachines = new StringBuilder(); stateMachines.append("{"); int index = 0; -- Gitee From 6c1eb27ace6f20f6c90cee2cf131ed5497cbee2c Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Mon, 3 Jul 2023 19:44:02 +0800 Subject: [PATCH 02/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20webdev=20js?= =?UTF-8?q?on=20=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zerocode/ZeroCodeParameter.java | 3 +- .../zerocode/ZeroCodeConstants.java | 6 ++- ...java => ZeroCodeParameterInitializer.java} | 7 ++- .../zerocode/ZeroCodeServiceImpl.java | 6 ++- .../operation/CommandMetadataOperation.java | 4 -- .../FormMetadataContentOperation.java | 10 +++-- .../operation/MetaDataOperationManager.java | 2 +- .../AbstractWebDevJsonOperation.java | 44 ++++++++++++++++--- .../webdevjson/WebDevJsonManager.java | 5 +++ .../webdevjson/WebDevJsonPathGenerator.java | 2 +- .../webdevjson/WebDevMobileJsonOperation.java | 19 +++++--- .../webdevjson/WebDevPCJsonOperation.java | 16 +++---- 12 files changed, 86 insertions(+), 38 deletions(-) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/{ZeroCodeParameterInitialization.java => ZeroCodeParameterInitializer.java} (90%) diff --git a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java index e2ea7b56..f9ecf346 100644 --- a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java +++ b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java @@ -137,8 +137,7 @@ public class ZeroCodeParameter { */ public boolean hasFormParameter(TerminalType terminalType) { boolean isMobile = terminalType == TerminalType.MOBILE; - List filterFormParameterList = this.getFormParameters().stream().filter(t -> t.isMobile() == isMobile).collect(Collectors.toList()); - return filterFormParameterList != null && filterFormParameterList.size() > 0; + return this.getFormParameters().stream().anyMatch(t -> t.isMobile() == isMobile); } public String getOriginalServiceUnitPath() { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeConstants.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeConstants.java index 57684707..f64865da 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeConstants.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeConstants.java @@ -23,11 +23,13 @@ package com.inspur.edp.web.frontendproject.zerocode; */ public class ZeroCodeConstants { /** - * 零代码配置界面 + * 零代码-代码部署路径--根路径 */ public static String ZeroCodePath = "zerocode"; + /** + * 零代码部署路径 相对于 server 的路径 + */ public static String ZeroCodeRelativePath="web/runtime/projects"; - public static String ZeroCodeRtcRelativePath="web/runtime/projects"; } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameterInitialization.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameterInitializer.java similarity index 90% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameterInitialization.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameterInitializer.java index bca1c7b9..9247b503 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameterInitialization.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameterInitializer.java @@ -19,7 +19,10 @@ package com.inspur.edp.web.frontendproject.zerocode; import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.utility.StringUtility; -public class ZeroCodeParameterInitialization { +/*** + * 零代码 入参 参数初始化 + */ +public class ZeroCodeParameterInitializer { public static void initialize(ZeroCodeParameter zeroCodeParameter) { if (zeroCodeParameter == null) { return; @@ -54,7 +57,7 @@ public class ZeroCodeParameterInitialization { if (StringUtility.isNullOrEmpty(zeroCodeParameter.getAbsoluteBasePath())) { // 设置 - String absolutePath = FileUtility.combineOptional(currentServerPath, ZeroCodeConstants.ZeroCodeRtcRelativePath, ZeroCodeConstants.ZeroCodePath, zeroCodeParameter.getOriginalServiceUnitPath(), zeroCodeParameter.getProjectName().toLowerCase()); + String absolutePath = FileUtility.combineOptional(currentServerPath, ZeroCodeConstants.ZeroCodeRelativePath, ZeroCodeConstants.ZeroCodePath, zeroCodeParameter.getOriginalServiceUnitPath(), zeroCodeParameter.getProjectName().toLowerCase()); zeroCodeParameter.setAbsoluteBasePath(absolutePath); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java index 24c92bed..ebb36218 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java @@ -18,6 +18,10 @@ package com.inspur.edp.web.frontendproject.zerocode; import com.inspur.edp.web.frontendproject.zerocode.operation.ZeroCodeManager; +/** + * 零代码生成、编译 + * @author noah + */ public class ZeroCodeServiceImpl implements ZeroCodeService { @@ -77,7 +81,7 @@ public class ZeroCodeServiceImpl implements ZeroCodeService { * @param zeroCodeParameter */ private void prepareOperate(ZeroCodeParameter zeroCodeParameter){ - ZeroCodeParameterInitialization.initialize(zeroCodeParameter); + ZeroCodeParameterInitializer.initialize(zeroCodeParameter); // 入参验证 ZeroCodeParameterValidator.validate(zeroCodeParameter); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java index 4f49b2ad..90bb6f5b 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java @@ -32,8 +32,4 @@ class CommandMetadataOperation { commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formParameter.getMetadata(), json), formMetadataName, webDevPath, cmpCacheList, null, null); } - public void saveCommandSourceCode(FormDOM json, String webDevPath) { - String servicesSourceDir = ServicePathGenerator.getServicesSourceDir(webDevPath); - CommandServiceAnalysis.resolveCommandService(json, null, servicesSourceDir, webDevPath, ExecuteEnvironment.Runtime, false); - } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java index a3ada909..cf2fc2a5 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java @@ -29,6 +29,8 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; /** * 表单元数据保存 + * + * @author noah */ class FormMetadataContentOperation { @@ -38,11 +40,11 @@ class FormMetadataContentOperation { * @param webDevPath * @param formParameter */ - public void save(String webDevPath, ZeroCodeFormParameter formParameter, AdaptedPage adaptedPage) { + public void saveFormMetadataInJson(String webDevPath, ZeroCodeFormParameter formParameter, AdaptedPage adaptedPage) { String strFormDom = ((FormMetadataContent) formParameter.getMetadata().getContent()).getContents().toString(); String formMetadataFileName = formParameter.getMetadata().getHeader().getFileName(); // 保存表单元数据到webdev - save(webDevPath, formMetadataFileName, strFormDom); + saveFormMetadataInJson(webDevPath, formMetadataFileName, strFormDom); FormDOM formDOM = SerializeUtility.getInstance().deserialize(strFormDom, FormDOM.class); @@ -80,7 +82,7 @@ class FormMetadataContentOperation { String strFormDom = ((FormMetadataContent) formFormatParameter.getMetadataContent()).getContents().toString(); String formMetadataFileName = formParameter.getMetadata().getHeader().getFileName(); // 保存表单元数据到webdev/form-format/{configId} - save(jsonFilePath, formMetadataFileName, strFormDom); + saveFormMetadataInJson(jsonFilePath, formMetadataFileName, strFormDom); FormDOM formDOM = SerializeUtility.getInstance().deserialize(strFormDom, FormDOM.class); @@ -120,7 +122,7 @@ class FormMetadataContentOperation { * @param formMetaDataFileName * @param content */ - private void save(String webDevPath, String formMetaDataFileName, String content) { + private void saveFormMetadataInJson(String webDevPath, String formMetaDataFileName, String content) { FormMetadataManager formMetadataManager = new FormMetadataManager(ExecuteEnvironment.Design, null, false); formMetadataManager.saveMetadataFile(webDevPath, formMetaDataFileName.toLowerCase() + ".json", content); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java index 10045b36..5ae3e99c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java @@ -25,7 +25,7 @@ public class MetaDataOperationManager { // 保存表单元数据 FormMetadataContentOperation formMetadataContentOperation = new FormMetadataContentOperation(); - formMetadataContentOperation.save(webDevPath, formParameter,adaptedPage); + formMetadataContentOperation.saveFormMetadataInJson(webDevPath, formParameter,adaptedPage); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java index 53b0d261..62c4801a 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java @@ -16,7 +16,11 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.logger.WebLogger; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; import com.inspur.edp.web.frontendproject.zerocode.operation.MetaDataOperationManager; import com.inspur.edp.web.frontendproject.zerocode.operation.PageFlowMetadataOperation; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; @@ -27,23 +31,51 @@ import java.util.ArrayList; import java.util.List; /** + * webdev json 文件生成 基类 + * * @author guozhiqi */ public abstract class AbstractWebDevJsonOperation implements IWevDevJsonOperation { + private TerminalType terminalType; + + public AbstractWebDevJsonOperation(TerminalType terminalType) { + this.terminalType = terminalType; + } + + protected TerminalType getTerminalType() { + return this.terminalType; + } + + /** + * 获取对应的 webdev 路径 + * + * @return + */ + private String getWebdevPath(ZeroCodeParameter zeroCodeParameter) { + return WebDevJsonPathGenerator.generate(zeroCodeParameter, this.terminalType); + } + /** * 保存json文件到指定目录 + * * @param formParameterList - * @param webDevPath - * @param projectName + * @param zeroCodeParameter */ - protected void saveJson(ListformParameterList, String webDevPath,String projectName) { - AdaptedPageFlowMetadataEntity pageFlowMetadataEntity = new AdaptedPageFlowMetadataEntity(); + protected void saveJson(List formParameterList, ZeroCodeParameter zeroCodeParameter) { + if (ListUtility.isEmpty(formParameterList)) { + WebLogger.Instance.info("零代码 webdev json 文件生成," + this.terminalType.getMetadataType() + "类型表单为空"); + return; + } + Project pageFlowProject = new Project(); - pageFlowProject.setName(projectName); + pageFlowProject.setName(zeroCodeParameter.getProjectName()); + + AdaptedPageFlowMetadataEntity pageFlowMetadataEntity = new AdaptedPageFlowMetadataEntity(); pageFlowMetadataEntity.setProject(pageFlowProject); pageFlowMetadataEntity.setPages(new ArrayList<>()); + String webDevPath = this.getWebdevPath(zeroCodeParameter); formParameterList.forEach(t -> { List pageList = pageFlowMetadataEntity.getPages(); @@ -62,6 +94,6 @@ public abstract class AbstractWebDevJsonOperation implements IWevDevJsonOperatio // 保存页面流元数据 PageFlowMetadataOperation pageFlowMetadataOperation = new PageFlowMetadataOperation(); - pageFlowMetadataOperation.save(webDevPath, pageFlowMetadataEntity, projectName); + pageFlowMetadataOperation.save(webDevPath, pageFlowMetadataEntity, zeroCodeParameter.getProjectName()); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java index d199328c..18649c29 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java @@ -19,6 +19,11 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +/** + * 零代码 webdev 目录下 json 文件构造 + * + * @author noah + */ public class WebDevJsonManager { public static void saveWebDevJson(ZeroCodeParameter zeroCodeParameter) { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java index 2e0dafc1..23404591 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java @@ -23,7 +23,7 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; /** * webdev json文件路径生成 */ -public class WebDevJsonPathGenerator { +class WebDevJsonPathGenerator { public static String generate(ZeroCodeParameter zeroCodeParameter, TerminalType terminalType) { if (terminalType == TerminalType.MOBILE) { return getMobileWebDevPath(zeroCodeParameter.getAbsoluteBasePath()); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java index cebf97b2..9a049077 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java @@ -17,22 +17,27 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; import java.util.List; import java.util.stream.Collectors; -public class WebDevMobileJsonOperation extends AbstractWebDevJsonOperation implements IWevDevJsonOperation { +/** + * 零代码 移动表单 json 文件 + * + * @author noah + */ +class WebDevMobileJsonOperation extends AbstractWebDevJsonOperation implements IWevDevJsonOperation { + WebDevMobileJsonOperation() { + super(TerminalType.MOBILE); + } + @Override public void save(ZeroCodeParameter zeroCodeParameter) { - String webDevPath = WebDevJsonPathGenerator.generate(zeroCodeParameter, TerminalType.MOBILE); - List zeroCodeFormParameterList = zeroCodeParameter.getFormParameters().stream().filter(ZeroCodeFormParameter::isMobile).collect(Collectors.toList()); - // 保存PC 表单元数据 - if (zeroCodeFormParameterList != null && zeroCodeFormParameterList.size() > 0) { - this.saveJson(zeroCodeFormParameterList, webDevPath, zeroCodeParameter.getProjectName()); - } + this.saveJson(zeroCodeFormParameterList, zeroCodeParameter); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java index 8872cc22..1a00218f 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java @@ -17,23 +17,23 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; import java.util.List; import java.util.stream.Collectors; -public class WebDevPCJsonOperation extends AbstractWebDevJsonOperation implements IWevDevJsonOperation { +class WebDevPCJsonOperation extends AbstractWebDevJsonOperation implements IWevDevJsonOperation { + + WebDevPCJsonOperation() { + super(TerminalType.PC); + } + @Override public void save(ZeroCodeParameter zeroCodeParameter) { - String webDevPath = WebDevJsonPathGenerator.generate(zeroCodeParameter, TerminalType.PC); - List zeroCodeFormParameterList = zeroCodeParameter.getFormParameters().stream().filter(t -> !t.isMobile()).collect(Collectors.toList()); - // 保存PC 表单元数据 - if (zeroCodeFormParameterList != null && zeroCodeFormParameterList.size() > 0) { - this.saveJson(zeroCodeFormParameterList, webDevPath, zeroCodeParameter.getProjectName()); - } - + this.saveJson(zeroCodeFormParameterList, zeroCodeParameter); } } -- Gitee From 43d77e537f3788daba774d195f67aad39347d11a Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Mon, 3 Jul 2023 19:58:12 +0800 Subject: [PATCH 03/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20webdev=20js?= =?UTF-8?q?on=20=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AbstractSourceCodeOperation.java | 61 ++++++++++++++++++- .../sourcegenerate/SourceCodeManager.java | 3 - .../SourceCodeMobileOperation.java | 24 ++++---- .../sourcegenerate/SourceCodePCOperation.java | 36 +++-------- 4 files changed, 80 insertions(+), 44 deletions(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java index f668a132..130048c7 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java @@ -16,11 +16,68 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJsonManager; +import com.inspur.edp.web.jitengine.ProjectCompileContext; -public abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { +abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { - String getLowerCaseProjectName(ZeroCodeParameter parameter) { + private TerminalType terminalType; + + /** + * 获取 webdev 路径 + * + * @param zeroCodeParameter + * @return + */ + protected String getWebDevPath(ZeroCodeParameter zeroCodeParameter) { + return WebDevJsonManager.getWebDevPath(zeroCodeParameter, this.terminalType); + } + + /** + * 获取生成源代码路径 + * + * @param zeroCodeParameter + * @return + */ + protected String getSourceAppPath(ZeroCodeParameter zeroCodeParameter) { + return SourceCodePathGenerator.generate(zeroCodeParameter, this.terminalType); + } + + AbstractSourceCodeOperation(TerminalType terminalType) { + this.terminalType = terminalType; + } + + + /** + * 构造生成上下文参数 + * @param zeroCodeParameter + * @param formType + * @param frameworkType + * @return + */ + protected ProjectCompileContext generateCompileContext(ZeroCodeParameter zeroCodeParameter, String formType, String frameworkType) { + String lowerCaseProjectName = this.getLowerCaseProjectName(zeroCodeParameter); + String webDevPath = this.getWebDevPath(zeroCodeParameter); + String sourceAppPath = this.getSourceAppPath(zeroCodeParameter); + ProjectCompileContext projectCompileContext = new ProjectCompileContext(lowerCaseProjectName, + zeroCodeParameter.getRelyNodeModulesPath(), + "pc", "angular", + webDevPath, + sourceAppPath, null, zeroCodeParameter.getServiceUnitPath(), ExecuteEnvironment.Runtime); + if (terminalType == TerminalType.PC) { + projectCompileContext.setGenerateViewModel(true); + // 是否使用解析模式 + projectCompileContext.setJieXiForm(zeroCodeParameter.isUseJieXiMode()); + } + // 零代码不再保留源代码 每次生成前都进行删除 + projectCompileContext.setDeleteSourceCodeBeforeGenerate(true); + return projectCompileContext; + } + + protected String getLowerCaseProjectName(ZeroCodeParameter parameter) { return parameter.getProjectName().toLowerCase(); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java index a5b7279f..00250ee6 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java @@ -33,7 +33,4 @@ public class SourceCodeManager { } } - public static String getSourcePath(ZeroCodeParameter zeroCodeParameter, TerminalType terminalType) { - return SourceCodePathGenerator.generate(zeroCodeParameter, terminalType); - } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java index d1b1f6c6..e8e6fe78 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java @@ -24,23 +24,23 @@ import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJs import com.inspur.edp.web.jitengine.JITEngineManager; import com.inspur.edp.web.jitengine.ProjectCompileContext; -public class SourceCodeMobileOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { +/** + * mobile 源代码生成 + * + * @author noah + */ +class SourceCodeMobileOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { + SourceCodeMobileOperation() { + super(TerminalType.MOBILE); + } + @Override public void generate(ZeroCodeParameter zeroCodeParameter) { - String webDevPath = WebDevJsonManager.getWebDevPath(zeroCodeParameter, TerminalType.MOBILE); - String sourceAppPath = SourceCodePathGenerator.generate(zeroCodeParameter, TerminalType.MOBILE); + String webDevPath = this.getWebDevPath(zeroCodeParameter); if (!FileUtility.exists(webDevPath)) { return; } - String lowerCaseProjectName = getLowerCaseProjectName(zeroCodeParameter); - // 根据webdev json文件 - ProjectCompileContext projectCompileContext = new ProjectCompileContext(lowerCaseProjectName, - zeroCodeParameter.getRelyNodeModulesPath(), - "mobile", "vue", - webDevPath, - sourceAppPath, null, zeroCodeParameter.getServiceUnitPath(), ExecuteEnvironment.Runtime); - - projectCompileContext.setDeleteSourceCodeBeforeGenerate(true); + ProjectCompileContext projectCompileContext = this.generateCompileContext(zeroCodeParameter, "mobile", "vue"); JITEngineManager.compileProject(projectCompileContext); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java index 8b7f2df0..8563efbb 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java @@ -24,39 +24,21 @@ import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJs import com.inspur.edp.web.jitengine.JITEngineManager; import com.inspur.edp.web.jitengine.ProjectCompileContext; -public class SourceCodePCOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { +class SourceCodePCOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { + + SourceCodePCOperation() { + super(TerminalType.PC); + } + @Override public void generate(ZeroCodeParameter zeroCodeParameter) { - String webDevPath = WebDevJsonManager.getWebDevPath(zeroCodeParameter, TerminalType.PC); - String sourceAppPath = SourceCodePathGenerator.generate(zeroCodeParameter, TerminalType.PC); + String webDevPath = this.getWebDevPath(zeroCodeParameter); if (!FileUtility.exists(webDevPath)) { return; } - String lowerCaseProjectName = this.getLowerCaseProjectName(zeroCodeParameter); + // 根据webdev json文件 - ProjectCompileContext projectCompileContext = this.generateCompileContext(lowerCaseProjectName, webDevPath, sourceAppPath, zeroCodeParameter); + ProjectCompileContext projectCompileContext = this.generateCompileContext(zeroCodeParameter, "pc", "angular"); JITEngineManager.compileProject(projectCompileContext); } - - /** - * 构造生成上下文参数 - * @param lowerCaseProjectName 小写形式的工程名称 - * @param webDevPath - * @param sourceAppPath - * @param zeroCodeParameter - * @return - */ - private ProjectCompileContext generateCompileContext(String lowerCaseProjectName, String webDevPath, String sourceAppPath, ZeroCodeParameter zeroCodeParameter) { - ProjectCompileContext projectCompileContext = new ProjectCompileContext(lowerCaseProjectName, - zeroCodeParameter.getRelyNodeModulesPath(), - "pc", "angular", - webDevPath, - sourceAppPath, null, zeroCodeParameter.getServiceUnitPath(), ExecuteEnvironment.Runtime); - projectCompileContext.setGenerateViewModel(true); - // 是否使用解析模式 - projectCompileContext.setJieXiForm(zeroCodeParameter.isUseJieXiMode()); - // 零代码不再保留源代码 每次生成前都进行删除 - projectCompileContext.setDeleteSourceCodeBeforeGenerate(true); - return projectCompileContext; - } } -- Gitee From 75a1541e0db4393fc82f7a0f87c7e85c68303794 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 11:30:04 +0800 Subject: [PATCH 04/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20webdev=20js?= =?UTF-8?q?on=20=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AbstractSourceCodeOperation.java | 45 ++++++++++++++++++- .../sourcegenerate/ISourceCodeOperation.java | 8 ++++ .../SourceCodeMobileOperation.java | 12 +---- .../sourcegenerate/SourceCodePCOperation.java | 14 +----- 4 files changed, 53 insertions(+), 26 deletions(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java index 130048c7..0c7fd44a 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java @@ -18,14 +18,32 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.environment.ExecuteEnvironment; +import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJsonManager; +import com.inspur.edp.web.jitengine.JITEngineManager; import com.inspur.edp.web.jitengine.ProjectCompileContext; +/** + * 零代码 源代码生成调整 + */ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { + /** + * 定义的表单类型 + */ private TerminalType terminalType; + /** + * 对应的表单类型对应 pc、mobile + */ + private String formType; + + /** + * 使用的框架类型,对应 angular、mobile + */ + private String frameworkType; + /** * 获取 webdev 路径 * @@ -36,6 +54,16 @@ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { return WebDevJsonManager.getWebDevPath(zeroCodeParameter, this.terminalType); } + /** + * 判断 webdev json 路径是否存在 + * + * @param zeroCodeParameter + * @return + */ + protected boolean checkWebDevPathExist(ZeroCodeParameter zeroCodeParameter) { + return FileUtility.exists(this.getWebDevPath(zeroCodeParameter)); + } + /** * 获取生成源代码路径 * @@ -46,13 +74,16 @@ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { return SourceCodePathGenerator.generate(zeroCodeParameter, this.terminalType); } - AbstractSourceCodeOperation(TerminalType terminalType) { + AbstractSourceCodeOperation(TerminalType terminalType, String formType, String frameworkType) { this.terminalType = terminalType; + this.formType = formType; + this.frameworkType = frameworkType; } /** * 构造生成上下文参数 + * * @param zeroCodeParameter * @param formType * @param frameworkType @@ -64,7 +95,7 @@ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { String sourceAppPath = this.getSourceAppPath(zeroCodeParameter); ProjectCompileContext projectCompileContext = new ProjectCompileContext(lowerCaseProjectName, zeroCodeParameter.getRelyNodeModulesPath(), - "pc", "angular", + formType, frameworkType, webDevPath, sourceAppPath, null, zeroCodeParameter.getServiceUnitPath(), ExecuteEnvironment.Runtime); if (terminalType == TerminalType.PC) { @@ -77,6 +108,16 @@ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { return projectCompileContext; } + @Override + public void generate(ZeroCodeParameter zeroCodeParameter) { + if (!this.checkWebDevPathExist(zeroCodeParameter)) { + return; + } + ProjectCompileContext projectCompileContext = this.generateCompileContext(zeroCodeParameter, this.formType, this.frameworkType); + JITEngineManager.compileProject(projectCompileContext); + } + + protected String getLowerCaseProjectName(ZeroCodeParameter parameter) { return parameter.getProjectName().toLowerCase(); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java index cba23372..b0eccc11 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java @@ -18,6 +18,14 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +/** + * 源代码生成操作 + * @author noah + */ public interface ISourceCodeOperation { + /** + * 源代码生成 + * @param zeroCodeParameter + */ void generate(ZeroCodeParameter zeroCodeParameter); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java index e8e6fe78..6c642a6f 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java @@ -31,16 +31,6 @@ import com.inspur.edp.web.jitengine.ProjectCompileContext; */ class SourceCodeMobileOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { SourceCodeMobileOperation() { - super(TerminalType.MOBILE); - } - - @Override - public void generate(ZeroCodeParameter zeroCodeParameter) { - String webDevPath = this.getWebDevPath(zeroCodeParameter); - if (!FileUtility.exists(webDevPath)) { - return; - } - ProjectCompileContext projectCompileContext = this.generateCompileContext(zeroCodeParameter, "mobile", "vue"); - JITEngineManager.compileProject(projectCompileContext); + super(TerminalType.MOBILE, "mobile", "vue"); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java index 8563efbb..9a4d9256 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java @@ -27,18 +27,6 @@ import com.inspur.edp.web.jitengine.ProjectCompileContext; class SourceCodePCOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { SourceCodePCOperation() { - super(TerminalType.PC); - } - - @Override - public void generate(ZeroCodeParameter zeroCodeParameter) { - String webDevPath = this.getWebDevPath(zeroCodeParameter); - if (!FileUtility.exists(webDevPath)) { - return; - } - - // 根据webdev json文件 - ProjectCompileContext projectCompileContext = this.generateCompileContext(zeroCodeParameter, "pc", "angular"); - JITEngineManager.compileProject(projectCompileContext); + super(TerminalType.PC,"pc","angular"); } } -- Gitee From 684be1e75a91c451c59658b21d8e1d003cc950c1 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 13:39:30 +0800 Subject: [PATCH 05/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20webdev=20js?= =?UTF-8?q?on=20=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edp/web/common/entity/TerminalType.java | 44 +++++++++++++++++++ .../event/FormMetadataSaveEventListener.java | 3 +- .../sourcegenerate/SourceCodeManager.java | 27 ++++++++---- .../sourcegenerate/SourceCodePCOperation.java | 4 ++ .../SourceCodePathGenerator.java | 11 ----- 5 files changed, 68 insertions(+), 21 deletions(-) diff --git a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java index f824778d..f81a9b4e 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java @@ -22,6 +22,7 @@ import lombok.Data; import java.util.ArrayList; import java.util.List; +import java.util.function.Consumer; /** * 表单类型 @@ -247,6 +248,49 @@ public enum TerminalType { */ public abstract String getFrameworkType(); + /** + * 是否 PC + * @param metadataType + * @return + */ + public static boolean isPC(String metadataType) { + return TerminalType.PC.getMetadataType().equals(metadataType); + } + + /** + * 是否 Mobile + * @param metadataType + * @return + */ + public static boolean isMobile(String metadataType) { + return TerminalType.MOBILE.getMetadataType().equals(metadataType); + } + + /** + * 是否 PC 或 Mobile + * @param metadataType + * @return + */ + public static boolean isPCOrMobile(String metadataType) { + return isPC(metadataType) || isMobile(metadataType); + } + + + /** + * 针对 pc、mobile 循环执行其参数 + * 不会捕获异常 + * + * @param consumer + */ + public static void rescure(Consumer consumer) { + if (consumer == null) { + return; + } + + consumer.accept(TerminalType.PC); + consumer.accept(TerminalType.MOBILE); + } + /** * 获取表单相对路径,相对于metadata目录 * 获取PC 相对于metadata的目录路径,类似于 src/webdev/services 或 src/mobiledev/services diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java index 3672f9ac..fb0451b3 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java @@ -173,8 +173,7 @@ public class FormMetadataSaveEventListener implements MetadataEventListener { * @return */ private boolean isPcOrMobileForm(MetadataEventArgs metadataEventArgs) { - return TerminalType.PC.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType()) || - TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType()); + return TerminalType.isPCOrMobile(metadataEventArgs.getMetadata().getHeader().getType()); } /** diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java index 00250ee6..f8c1e780 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java @@ -19,18 +19,29 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +import java.util.Arrays; + public class SourceCodeManager { public static void generateSourceCode(ZeroCodeParameter zeroCodeParameter) { + TerminalType.rescure(t -> { + if (zeroCodeParameter.hasFormParameter(t)) { + ISourceCodeOperation sourceCodeOperation = getSourceCodeOperation(t); + sourceCodeOperation.generate(zeroCodeParameter); + } + }); + } - if (zeroCodeParameter.hasFormParameter(TerminalType.PC)) { - ISourceCodeOperation sourceCodePCOperation = new SourceCodePCOperation(); - sourceCodePCOperation.generate(zeroCodeParameter); - } - - if (zeroCodeParameter.hasFormParameter(TerminalType.MOBILE)) { - ISourceCodeOperation sourceCodeMobileOperation = new SourceCodeMobileOperation(); - sourceCodeMobileOperation.generate(zeroCodeParameter); + /** + * 依据 terminalType 获取对应的操作实例 + * + * @param terminalType + * @return + */ + private static ISourceCodeOperation getSourceCodeOperation(TerminalType terminalType) { + if (terminalType == TerminalType.PC) { + return new SourceCodePCOperation(); } + return new SourceCodeMobileOperation(); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java index 9a4d9256..d7ab22b4 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java @@ -24,6 +24,10 @@ import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJs import com.inspur.edp.web.jitengine.JITEngineManager; import com.inspur.edp.web.jitengine.ProjectCompileContext; +/** + * 源代码 pc 生成 + * @author noah + */ class SourceCodePCOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { SourceCodePCOperation() { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java index 1cd38194..4425c087 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java @@ -29,17 +29,6 @@ public class SourceCodePathGenerator { return getAppPath(zeroCodeParameter.getAbsoluteBasePath()); } - public static String generateFormFormatSourcePath( - ZeroCodeParameter zeroCodeParameter, - ZeroCodeFormFormatParameter formFormatParameter, - TerminalType terminalType) { - String basePath = FileUtility.combine(zeroCodeParameter.getAbsoluteBasePath(), "form-format", formFormatParameter.getFormFormatConfigId()); - if (terminalType == TerminalType.MOBILE) { - return getMobileAppPath(basePath); - } - return getAppPath(basePath); - } - /** * 获取生成文件代码的路径 * -- Gitee From ac9e08657e100bb1c59bc377a386f3403cc8d988 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 13:44:21 +0800 Subject: [PATCH 06/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20webdev=20js?= =?UTF-8?q?on=20=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operation/CommandMetadataOperation.java | 2 -- .../services/ServicePathGenerator.java | 29 ------------------- .../webdevjson/WebDevJsonManager.java | 22 +++++--------- .../operation/webdevjson/WebDevPCJson.java | 20 ------------- 4 files changed, 8 insertions(+), 65 deletions(-) delete mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/services/ServicePathGenerator.java delete mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJson.java diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java index 90bb6f5b..e418b863 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java @@ -18,9 +18,7 @@ package com.inspur.edp.web.frontendproject.zerocode.operation; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; -import com.inspur.edp.web.formmetadata.metadataanalysis.CommandServiceAnalysis; import com.inspur.edp.web.formmetadata.metadataanalysis.CommandsAnalysis; -import com.inspur.edp.web.frontendproject.zerocode.operation.services.ServicePathGenerator; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import java.util.HashMap; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/services/ServicePathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/services/ServicePathGenerator.java deleted file mode 100644 index 172c846f..00000000 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/services/ServicePathGenerator.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.frontendproject.zerocode.operation.services; - -import com.inspur.edp.web.common.io.FileUtility; - -/** - * @author liyz - * @date 2021/12/14 - */ -public class ServicePathGenerator { - public static String getServicesSourceDir(String webDevPath) { - return FileUtility.getPlatformIndependentPath(FileUtility.combine(webDevPath, "services")); - } -} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java index 18649c29..4cf9422e 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonManager.java @@ -27,15 +27,12 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; public class WebDevJsonManager { public static void saveWebDevJson(ZeroCodeParameter zeroCodeParameter) { - if (zeroCodeParameter.hasFormParameter(TerminalType.PC)) { - IWevDevJsonOperation pcWebDevJsonOperation = getWebDevJsonOperationInstance(TerminalType.PC); - pcWebDevJsonOperation.save(zeroCodeParameter); - } - - if (zeroCodeParameter.hasFormParameter(TerminalType.MOBILE)) { - IWevDevJsonOperation mobileWebDevJsonOperation = getWebDevJsonOperationInstance(TerminalType.MOBILE); - mobileWebDevJsonOperation.save(zeroCodeParameter); - } + TerminalType.rescure((t) -> { + if (zeroCodeParameter.hasFormParameter(t)) { + IWevDevJsonOperation webDevJsonOperationInstance = getWebDevJsonOperationInstance(t); + webDevJsonOperationInstance.save(zeroCodeParameter); + } + }); } public static String getWebDevPath(ZeroCodeParameter zeroCodeParameter, TerminalType terminalType) { @@ -44,12 +41,9 @@ public class WebDevJsonManager { private static IWevDevJsonOperation getWebDevJsonOperationInstance(TerminalType terminalType) { - IWevDevJsonOperation wevDevJsonOperationInstance; if (terminalType == TerminalType.MOBILE) { - wevDevJsonOperationInstance = new WebDevMobileJsonOperation(); - } else { - wevDevJsonOperationInstance = new WebDevPCJsonOperation(); + return new WebDevMobileJsonOperation(); } - return wevDevJsonOperationInstance; + return new WebDevPCJsonOperation(); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJson.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJson.java deleted file mode 100644 index 016a0878..00000000 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJson.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; - -public class WebDevPCJson { -} -- Gitee From f69fcc20357bc2f567341461de324e16cc666736 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 13:52:42 +0800 Subject: [PATCH 07/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20webdev=20js?= =?UTF-8?q?on=20=E7=94=9F=E6=88=90=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edp/web/common/entity/TerminalType.java | 21 +++++++++++++++++++ .../operation/FormExpressionOperation.java | 2 +- .../zerocode/operation/ZeroCodeManager.java | 2 -- .../sourcegenerate/ISourceCodeOperation.java | 2 +- .../sourcegenerate/SourceCodePCOperation.java | 6 +++--- .../SourceCodePathGenerator.java | 6 +++--- .../AbstractWebDevJsonOperation.java | 2 +- .../webdevjson/IWevDevJsonOperation.java | 2 +- 8 files changed, 31 insertions(+), 12 deletions(-) diff --git a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java index f81a9b4e..1095c724 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java @@ -250,6 +250,7 @@ public enum TerminalType { /** * 是否 PC + * * @param metadataType * @return */ @@ -257,8 +258,27 @@ public enum TerminalType { return TerminalType.PC.getMetadataType().equals(metadataType); } + /** + * 是否 PC + * @param terminalType + * @return + */ + public static boolean isPC(TerminalType terminalType) { + return TerminalType.PC == terminalType; + } + + /** + * 是否 mobile + * @param terminalType + * @return + */ + public static boolean isMobile(TerminalType terminalType) { + return TerminalType.MOBILE == terminalType; + } + /** * 是否 Mobile + * * @param metadataType * @return */ @@ -268,6 +288,7 @@ public enum TerminalType { /** * 是否 PC 或 Mobile + * * @param metadataType * @return */ diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java index 1232ba72..eb8e20a5 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java @@ -40,7 +40,7 @@ public class FormExpressionOperation { expressionManifest.getExpressions().add(moduleFormExpressions); } // 写入表单表达式json文件 仅在PC下构造表达式 - if (terminalType == TerminalType.PC) { + if (TerminalType.isPC(terminalType)) { ExpressionManifestManager.writeExpressionJson(expressionManifest, webDevPath, false); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java index cb1da1c4..4a3bb481 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java @@ -47,7 +47,6 @@ public class ZeroCodeManager { * @param zeroCodeParameter */ public void saveZeroCodeParameterMetadataIntoJson(ZeroCodeParameter zeroCodeParameter) { - // 保存webdevjson文件 WebDevJsonManager.saveWebDevJson(zeroCodeParameter); } @@ -67,7 +66,6 @@ public class ZeroCodeManager { public void generateSource(ZeroCodeParameter zeroCodeParameter) { SourceCodeManager.generateSourceCode(zeroCodeParameter); - } public void deploy(ZeroCodeParameter zeroCodeParameter) { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java index b0eccc11..b074ccc6 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/ISourceCodeOperation.java @@ -22,7 +22,7 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; * 源代码生成操作 * @author noah */ -public interface ISourceCodeOperation { + interface ISourceCodeOperation { /** * 源代码生成 * @param zeroCodeParameter diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java index d7ab22b4..425058b1 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java @@ -26,11 +26,11 @@ import com.inspur.edp.web.jitengine.ProjectCompileContext; /** * 源代码 pc 生成 - * @author noah + * + * @author noah */ class SourceCodePCOperation extends AbstractSourceCodeOperation implements ISourceCodeOperation { - SourceCodePCOperation() { - super(TerminalType.PC,"pc","angular"); + super(TerminalType.PC, "pc", "angular"); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java index 4425c087..d7ef7780 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java @@ -21,12 +21,12 @@ import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormFormatParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -public class SourceCodePathGenerator { +class SourceCodePathGenerator { public static String generate(ZeroCodeParameter zeroCodeParameter, TerminalType terminalType) { - if (terminalType == TerminalType.MOBILE) { + if (TerminalType.isMobile(terminalType)) { return getMobileAppPath(zeroCodeParameter.getAbsoluteBasePath()); } - return getAppPath(zeroCodeParameter.getAbsoluteBasePath()); + return getAppPath(zeroCodeParameter.getAbsoluteBasePath()); } /** diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java index 62c4801a..cef1c9b6 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java @@ -35,7 +35,7 @@ import java.util.List; * * @author guozhiqi */ -public abstract class AbstractWebDevJsonOperation implements IWevDevJsonOperation { + abstract class AbstractWebDevJsonOperation implements IWevDevJsonOperation { private TerminalType terminalType; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/IWevDevJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/IWevDevJsonOperation.java index cc73c6fc..ae7aaf0a 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/IWevDevJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/IWevDevJsonOperation.java @@ -21,7 +21,7 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; /** * webdev json文件操作 */ -public interface IWevDevJsonOperation { + interface IWevDevJsonOperation { void save(ZeroCodeParameter zeroCodeParameter); } -- Gitee From fc5a2e617d837f90e6eaa6ad38087f6323dd0f10 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 14:32:21 +0800 Subject: [PATCH 08/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E9=83=A8=E7=BD=B2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zerocode/ZeroCodeServiceImpl.java | 3 + .../zerocode/operation/ZeroCodeManager.java | 140 +----------------- .../deploy/AbstractDeployOperation.java | 53 +++++++ .../operation/deploy/IDeployOperation.java | 10 ++ .../deploy/MobileDeployOperation.java | 56 +++++++ .../operation/deploy/PCDeployOperation.java | 58 ++++++++ .../deploy/SourceCodeDeployManager.java | 32 ++++ .../sourcegenerate/SourceCodeManager.java | 2 +- 8 files changed, 221 insertions(+), 133 deletions(-) create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/AbstractDeployOperation.java create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/IDeployOperation.java create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/SourceCodeDeployManager.java diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java index ebb36218..26c8fe8c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeServiceImpl.java @@ -71,8 +71,11 @@ public class ZeroCodeServiceImpl implements ZeroCodeService { prepareOperate(zeroCodeParameter); ZeroCodeManager.getInstance().saveZeroCodeParameterMetadataIntoJson(zeroCodeParameter); + // 生成源代码 ZeroCodeManager.getInstance().generateSource(zeroCodeParameter); + // 编译源代码 ZeroCodeManager.getInstance().build(zeroCodeParameter); + // 部署源代码 ZeroCodeManager.getInstance().deploy(zeroCodeParameter); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java index 4a3bb481..dfa3199c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/ZeroCodeManager.java @@ -18,23 +18,17 @@ package com.inspur.edp.web.frontendproject.zerocode.operation; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.environment.ExecuteEnvironment; -import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +import com.inspur.edp.web.frontendproject.zerocode.operation.deploy.SourceCodeDeployManager; import com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate.SourceCodeManager; import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJsonManager; import com.inspur.edp.web.jitengine.JITEngineManager; -import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.PublishScriptRequest; -import com.inspur.edp.web.jitruntimebuild.scriptcache.api.service.ScriptCacheService; -import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPathGenerator; -import io.iec.edp.caf.commons.utils.SpringBeanUtils; public class ZeroCodeManager { - ScriptCacheService scriptCacheServiceInstance; private ZeroCodeManager() { - this.scriptCacheServiceInstance = SpringBeanUtils.getBean(ScriptCacheService.class); + } public static ZeroCodeManager getInstance() { @@ -52,16 +46,11 @@ public class ZeroCodeManager { } public void build(ZeroCodeParameter zeroCodeParameter) { - // 如果存在pc表单 - if (zeroCodeParameter.hasFormParameter(TerminalType.PC)) { - // 执行 npm run build - JITEngineManager.buildFrontendProject(zeroCodeParameter.getAbsoluteBasePath(), ExecuteEnvironment.Runtime, TerminalType.PC); - } - - // 如果存在移动表单 - if (zeroCodeParameter.hasFormParameter(TerminalType.MOBILE)) { - JITEngineManager.buildFrontendProject(zeroCodeParameter.getAbsoluteBasePath(), ExecuteEnvironment.Runtime, TerminalType.MOBILE); - } + TerminalType.rescure((t) -> { + if (zeroCodeParameter.hasFormParameter(t)) { + JITEngineManager.buildFrontendProject(zeroCodeParameter.getAbsoluteBasePath(), ExecuteEnvironment.Runtime, t); + } + }); } public void generateSource(ZeroCodeParameter zeroCodeParameter) { @@ -69,119 +58,6 @@ public class ZeroCodeManager { } public void deploy(ZeroCodeParameter zeroCodeParameter) { - // pc 表单 - if (zeroCodeParameter.hasFormParameter(TerminalType.PC)) { - // 编译后的目标目录 - String distRollupPath = getAppDistRollupPath(zeroCodeParameter.getAbsoluteBasePath()); - - String deployPath = FileUtility.combineOptional(zeroCodeParameter.getServerPath(), "web", zeroCodeParameter.getServiceUnitPath().toLowerCase(), "web"); - FileUtility.copyFolder(distRollupPath, deployPath); - if (FileUtility.exists(deployPath)) { - - //version.json - publishWithSingleFile(deployPath, zeroCodeParameter, "version.json"); - //index.html - publishWithSingleFile(deployPath, zeroCodeParameter, "index.html"); - //polyfills.js - publishWithSingleFile(deployPath, zeroCodeParameter, "polyfills.js"); - //main.js - publishWithSingleFile(deployPath, zeroCodeParameter, "main.js"); - - zeroCodeParameter.getFormParameters().stream().filter(t -> !t.isMobile()).forEach(t -> { - String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); - PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); - publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); - // 为了和设计时传参保持一致 将参数调整为小写形式 - publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); - publishScriptRequest.setFormCode(t.getCode()); - - String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); - String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); - publishScriptRequest.setProjectRelativePath(strRelativePath); - // 无需更新元数据版本 - //publishScriptRequest.setUpdateMetadataVersion(false); - // 由于零代码不存在对应的元数据 因此设置元数据为工程名称 作为一个临时参数值 - publishScriptRequest.setMetaDataId(t.getMetadata().getHeader().getId()); - this.scriptCacheServiceInstance.publishScriptWithSingleFileName(publishScriptRequest, t.getCode().toLowerCase(), null); - }); - - - } - } - // 移动表单 - if (zeroCodeParameter.hasFormParameter(TerminalType.MOBILE)) { - // 编译后的目标目录 - String distRollupPath = getMobileAppDistRollupPath(zeroCodeParameter.getAbsoluteBasePath()); - - String deployPath = FileUtility.combineOptional(zeroCodeParameter.getServerPath(), "web", zeroCodeParameter.getServiceUnitPath().toLowerCase(), "mob"); - FileUtility.copyFolder(distRollupPath, deployPath); - - if (FileUtility.exists(deployPath)) { - - zeroCodeParameter.getFormParameters().stream().filter(ZeroCodeFormParameter::isMobile).forEach((zeroCodeFormParameter)->{ - String metaDataId = zeroCodeParameter.getProjectName().toLowerCase(); - if (zeroCodeFormParameter != null) { - metaDataId = zeroCodeFormParameter.getMetadata().getHeader().getId(); - } - - - String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); - PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); - publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); - // 为了和设计时传参保持一致 将参数调整为小写形式 - publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); - - String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); - String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); - publishScriptRequest.setProjectRelativePath(strRelativePath); - publishScriptRequest.setMetaDataId(metaDataId); - publishScriptRequest.setFormCode(zeroCodeFormParameter.getCode()); - publishScriptRequest.setZeroCodeMobileForm(true); - // 无需更新元数据版本 - //publishScriptRequest.setUpdateMetadataVersion(false); - this.scriptCacheServiceInstance.publishScriptWithDirectory(publishScriptRequest); - }); - - } - } - - } - - private void publishWithSingleFile(String deployPath, ZeroCodeParameter zeroCodeParameter, String fileName) { - String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); - PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); - publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); - // 为了和设计时传参保持一致 将参数调整为小写形式 - publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); - - String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); - String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); - publishScriptRequest.setProjectRelativePath(strRelativePath); - // 无需更新元数据版本 - //publishScriptRequest.setUpdateMetadataVersion(false); - // 由于零代码不存在对应的元数据 因此设置元数据为工程名称 作为一个临时参数值 - publishScriptRequest.setMetaDataId(zeroCodeParameter.getProjectName().toLowerCase()); - this.scriptCacheServiceInstance.publishScriptWithSingleFileName(publishScriptRequest, "", fileName); - } - - - /** - * 获取生成文件代码的路径 - * - * @param absolutePath - * @return - */ - private String getAppDistRollupPath(String absolutePath) { - return FileUtility.getPlatformIndependentPath(FileUtility.combineOptional(absolutePath, "src", "app", "dist-rollup")); - } - - /** - * 获取生成文件代码的路径 - * - * @param absolutePath - * @return - */ - private String getMobileAppDistRollupPath(String absolutePath) { - return FileUtility.getPlatformIndependentPath(FileUtility.combineOptional(absolutePath, "src", "mobileapp", "dist-rollup")); + SourceCodeDeployManager.deploy(zeroCodeParameter); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/AbstractDeployOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/AbstractDeployOperation.java new file mode 100644 index 00000000..87be16c2 --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/AbstractDeployOperation.java @@ -0,0 +1,53 @@ +package com.inspur.edp.web.frontendproject.zerocode.operation.deploy; + +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.PublishScriptRequest; +import com.inspur.edp.web.jitruntimebuild.scriptcache.api.service.ScriptCacheService; +import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPathGenerator; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; + + abstract class AbstractDeployOperation implements IDeployOperation { + private TerminalType terminalType; + private ScriptCacheService scriptCacheServiceInstance; + + public AbstractDeployOperation(TerminalType terminalType) { + this.terminalType = terminalType; + this.scriptCacheServiceInstance = SpringBeanUtils.getBean(ScriptCacheService.class); + } + + protected ScriptCacheService getScriptCacheServiceInstance() { + return this.scriptCacheServiceInstance; + } + + /** + * 获取生成文件代码的路径 + * + * @param absolutePath + * @return + */ + protected String getAppDistRollupPath(String absolutePath) { + if (TerminalType.isPC(terminalType)) { + return FileUtility.getPlatformIndependentPath(FileUtility.combineOptional(absolutePath, "src", "app", "dist-rollup")); + } + return FileUtility.getPlatformIndependentPath(FileUtility.combineOptional(absolutePath, "src", "mobileapp", "dist-rollup")); + } + + protected void publishWithSingleFile(String deployPath, ZeroCodeParameter zeroCodeParameter, String fileName) { + String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); + PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); + publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); + // 为了和设计时传参保持一致 将参数调整为小写形式 + publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); + + String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); + String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); + publishScriptRequest.setProjectRelativePath(strRelativePath); + // 无需更新元数据版本 + //publishScriptRequest.setUpdateMetadataVersion(false); + // 由于零代码不存在对应的元数据 因此设置元数据为工程名称 作为一个临时参数值 + publishScriptRequest.setMetaDataId(zeroCodeParameter.getProjectName().toLowerCase()); + this.scriptCacheServiceInstance.publishScriptWithSingleFileName(publishScriptRequest, "", fileName); + } +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/IDeployOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/IDeployOperation.java new file mode 100644 index 00000000..06b4daaf --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/IDeployOperation.java @@ -0,0 +1,10 @@ +package com.inspur.edp.web.frontendproject.zerocode.operation.deploy; + +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; + +/** + * 零代码 脚本部署 + */ + interface IDeployOperation { + void deploy(ZeroCodeParameter zeroCodeParameter); +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java new file mode 100644 index 00000000..e13571b7 --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java @@ -0,0 +1,56 @@ +package com.inspur.edp.web.frontendproject.zerocode.operation.deploy; + +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.PublishScriptRequest; +import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPathGenerator; + +/** + * 移动表单 脚本部署 + * @author noah + */ + class MobileDeployOperation extends AbstractDeployOperation implements IDeployOperation { + public MobileDeployOperation() { + super(TerminalType.MOBILE); + } + + @Override + public void deploy(ZeroCodeParameter zeroCodeParameter) { + if (zeroCodeParameter.hasFormParameter(TerminalType.MOBILE)) { + // 编译后的目标目录 + String distRollupPath = getAppDistRollupPath(zeroCodeParameter.getAbsoluteBasePath()); + + String deployPath = FileUtility.combineOptional(zeroCodeParameter.getServerPath(), "web", zeroCodeParameter.getServiceUnitPath().toLowerCase(), "mob"); + FileUtility.copyFolder(distRollupPath, deployPath); + + if (FileUtility.exists(deployPath)) { + + zeroCodeParameter.getFormParameters().stream().filter(ZeroCodeFormParameter::isMobile).forEach((zeroCodeFormParameter) -> { + String metaDataId = zeroCodeParameter.getProjectName().toLowerCase(); + if (zeroCodeFormParameter != null) { + metaDataId = zeroCodeFormParameter.getMetadata().getHeader().getId(); + } + + String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); + PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); + publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); + // 为了和设计时传参保持一致 将参数调整为小写形式 + publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); + + String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); + String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); + publishScriptRequest.setProjectRelativePath(strRelativePath); + publishScriptRequest.setMetaDataId(metaDataId); + publishScriptRequest.setFormCode(zeroCodeFormParameter.getCode()); + publishScriptRequest.setZeroCodeMobileForm(true); + // 无需更新元数据版本 + //publishScriptRequest.setUpdateMetadataVersion(false); + this.getScriptCacheServiceInstance().publishScriptWithDirectory(publishScriptRequest); + }); + + } + } + } +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java new file mode 100644 index 00000000..1c42f5bf --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java @@ -0,0 +1,58 @@ +package com.inspur.edp.web.frontendproject.zerocode.operation.deploy; + +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; +import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.PublishScriptRequest; +import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPathGenerator; + +/** + * PC 表单 脚本部署 + * + * @author noah + */ + class PCDeployOperation extends AbstractDeployOperation implements IDeployOperation { + public PCDeployOperation() { + super(TerminalType.PC); + } + + @Override + public void deploy(ZeroCodeParameter zeroCodeParameter) { + if (zeroCodeParameter.hasFormParameter(TerminalType.PC)) { + // 编译后的目标目录 + String distRollupPath = getAppDistRollupPath(zeroCodeParameter.getAbsoluteBasePath()); + + String deployPath = FileUtility.combineOptional(zeroCodeParameter.getServerPath(), "web", zeroCodeParameter.getServiceUnitPath().toLowerCase(), "web"); + FileUtility.copyFolder(distRollupPath, deployPath); + if (FileUtility.exists(deployPath)) { + + //version.json + publishWithSingleFile(deployPath, zeroCodeParameter, "version.json"); + //index.html + publishWithSingleFile(deployPath, zeroCodeParameter, "index.html"); + //polyfills.js + publishWithSingleFile(deployPath, zeroCodeParameter, "polyfills.js"); + //main.js + publishWithSingleFile(deployPath, zeroCodeParameter, "main.js"); + + zeroCodeParameter.getFormParameters().stream().filter(t -> !t.isMobile()).forEach(t -> { + String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); + PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); + publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); + // 为了和设计时传参保持一致 将参数调整为小写形式 + publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); + publishScriptRequest.setFormCode(t.getCode()); + + String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); + String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); + publishScriptRequest.setProjectRelativePath(strRelativePath); + // 无需更新元数据版本 + //publishScriptRequest.setUpdateMetadataVersion(false); + // 由于零代码不存在对应的元数据 因此设置元数据为工程名称 作为一个临时参数值 + publishScriptRequest.setMetaDataId(t.getMetadata().getHeader().getId()); + this.getScriptCacheServiceInstance().publishScriptWithSingleFileName(publishScriptRequest, t.getCode().toLowerCase(), null); + }); + } + } + } +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/SourceCodeDeployManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/SourceCodeDeployManager.java new file mode 100644 index 00000000..0ce2330a --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/SourceCodeDeployManager.java @@ -0,0 +1,32 @@ +package com.inspur.edp.web.frontendproject.zerocode.operation.deploy; + +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; + +/** + * @Author noah + * @create 2023/7/4 14:29 + */ +public class SourceCodeDeployManager { + public static void deploy(ZeroCodeParameter zeroCodeParameter) { + TerminalType.rescure(t -> { + if (zeroCodeParameter.hasFormParameter(t)) { + IDeployOperation sourceCodeOperation = getSourceCodeOperation(t); + sourceCodeOperation.deploy(zeroCodeParameter); + } + }); + } + + /** + * 依据 terminalType 获取对应的操作实例 + * + * @param terminalType + * @return + */ + private static IDeployOperation getSourceCodeOperation(TerminalType terminalType) { + if (TerminalType.isPC(terminalType)) { + return new PCDeployOperation(); + } + return new MobileDeployOperation(); + } +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java index f8c1e780..f423e5f3 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java @@ -38,7 +38,7 @@ public class SourceCodeManager { * @return */ private static ISourceCodeOperation getSourceCodeOperation(TerminalType terminalType) { - if (terminalType == TerminalType.PC) { + if (TerminalType.isPC(terminalType)) { return new SourceCodePCOperation(); } return new SourceCodeMobileOperation(); -- Gitee From 03039e2e555ebcbd33f65a4f115cac99536d2b26 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 14:39:21 +0800 Subject: [PATCH 09/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E9=83=A8=E7=BD=B2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zerocode/operation/deploy/MobileDeployOperation.java | 9 +++++---- .../zerocode/operation/deploy/PCDeployOperation.java | 8 ++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java index e13571b7..956a9383 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/MobileDeployOperation.java @@ -26,6 +26,8 @@ import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPat FileUtility.copyFolder(distRollupPath, deployPath); if (FileUtility.exists(deployPath)) { + String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); + String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); zeroCodeParameter.getFormParameters().stream().filter(ZeroCodeFormParameter::isMobile).forEach((zeroCodeFormParameter) -> { String metaDataId = zeroCodeParameter.getProjectName().toLowerCase(); @@ -33,20 +35,19 @@ import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPat metaDataId = zeroCodeFormParameter.getMetadata().getHeader().getId(); } - String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); + PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); // 为了和设计时传参保持一致 将参数调整为小写形式 publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); - String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); + String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); publishScriptRequest.setProjectRelativePath(strRelativePath); publishScriptRequest.setMetaDataId(metaDataId); publishScriptRequest.setFormCode(zeroCodeFormParameter.getCode()); publishScriptRequest.setZeroCodeMobileForm(true); - // 无需更新元数据版本 - //publishScriptRequest.setUpdateMetadataVersion(false); + this.getScriptCacheServiceInstance().publishScriptWithDirectory(publishScriptRequest); }); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java index 1c42f5bf..296390d2 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/deploy/PCDeployOperation.java @@ -35,19 +35,19 @@ import com.inspur.edp.web.jitruntimebuild.scriptcache.localserver.LocalServerPat //main.js publishWithSingleFile(deployPath, zeroCodeParameter, "main.js"); + String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); + String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); zeroCodeParameter.getFormParameters().stream().filter(t -> !t.isMobile()).forEach(t -> { - String strDeployPathWithProject = FileUtility.combine(deployPath, zeroCodeParameter.getProjectName().toLowerCase()); + PublishScriptRequest publishScriptRequest = new PublishScriptRequest(); publishScriptRequest.setAbsoluteBaseDirectory(strDeployPathWithProject); // 为了和设计时传参保持一致 将参数调整为小写形式 publishScriptRequest.setProjectName(zeroCodeParameter.getProjectName().toLowerCase()); publishScriptRequest.setFormCode(t.getCode()); - String strLocalServerPath = LocalServerPathGenerator.getNewInstance(false).getLocalServerWebPath(); String strRelativePath = FileUtility.getRelativePath(strLocalServerPath, strDeployPathWithProject, true); publishScriptRequest.setProjectRelativePath(strRelativePath); - // 无需更新元数据版本 - //publishScriptRequest.setUpdateMetadataVersion(false); + // 由于零代码不存在对应的元数据 因此设置元数据为工程名称 作为一个临时参数值 publishScriptRequest.setMetaDataId(t.getMetadata().getHeader().getId()); this.getScriptCacheServiceInstance().publishScriptWithSingleFileName(publishScriptRequest, t.getCode().toLowerCase(), null); -- Gitee From 94fc3147fe29a36dcdeed67ba8a2c3e666b8ab25 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 14:45:32 +0800 Subject: [PATCH 10/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E9=83=A8=E7=BD=B2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operation/webdevjson/AbstractWebDevJsonOperation.java | 4 ++-- .../{ => webdevjson/specific}/CommandMetadataOperation.java | 2 +- .../{ => webdevjson/specific}/EapiMetadataOperation.java | 2 +- .../{ => webdevjson/specific}/FormExpressionOperation.java | 2 +- .../specific}/FormMetadataContentOperation.java | 2 +- .../{ => webdevjson/specific}/MetaDataOperationManager.java | 3 ++- .../{ => webdevjson/specific}/PageFlowMetadataOperation.java | 2 +- .../specific}/StateMachineMetadataOperation.java | 2 +- 8 files changed, 10 insertions(+), 9 deletions(-) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/CommandMetadataOperation.java (94%) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/EapiMetadataOperation.java (97%) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/FormExpressionOperation.java (96%) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/FormMetadataContentOperation.java (98%) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/MetaDataOperationManager.java (89%) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/PageFlowMetadataOperation.java (93%) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/StateMachineMetadataOperation.java (97%) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java index cef1c9b6..73e10cc8 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java @@ -21,8 +21,8 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -import com.inspur.edp.web.frontendproject.zerocode.operation.MetaDataOperationManager; -import com.inspur.edp.web.frontendproject.zerocode.operation.PageFlowMetadataOperation; +import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.MetaDataOperationManager; +import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.PageFlowMetadataOperation; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPageFlowMetadataEntity; import com.inspur.edp.web.pageflow.metadata.entity.Project; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java similarity index 94% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java index e418b863..75777e98 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/CommandMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java similarity index 97% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java index 79f8395a..4a70ed73 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/EapiMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.fasterxml.jackson.databind.PropertyNamingStrategy; import com.inspur.edp.lcm.metadata.api.IMetadataContent; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java similarity index 96% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java index eb8e20a5..b3eb05ac 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormExpressionOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormMetadataContentOperation.java similarity index 98% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormMetadataContentOperation.java index cf2fc2a5..888cf67f 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/FormMetadataContentOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormMetadataContentOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.environment.ExecuteEnvironment; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java similarity index 89% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java index 5ae3e99c..261b1157 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java @@ -14,9 +14,10 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormFormatParameter; +import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.FormMetadataContentOperation; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/PageFlowMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java similarity index 93% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/PageFlowMetadataOperation.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java index 5fe2b43c..c37445b2 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/PageFlowMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.common.JITEngineConstants; import com.inspur.edp.web.common.io.FileUtility; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java similarity index 97% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java index c4b6d119..8ac09383 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/StateMachineMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.lcm.metadata.api.IMetadataContent; import com.inspur.edp.web.common.environment.ExecuteEnvironment; -- Gitee From b6ea4c76d5153c037c297b9debcb2caaed5fe744 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 19:20:14 +0800 Subject: [PATCH 11/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E9=83=A8=E7=BD=B2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/frontendproject/zerocode/ZeroCodeFormParameter.java | 3 --- .../{webdevjson/specific => }/MetaDataOperationManager.java | 2 +- .../operation/webdevjson/AbstractWebDevJsonOperation.java | 2 +- .../webdevjson/specific/CommandMetadataOperation.java | 3 ++- 4 files changed, 4 insertions(+), 6 deletions(-) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{webdevjson/specific => }/MetaDataOperationManager.java (95%) diff --git a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeFormParameter.java b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeFormParameter.java index a3252ead..b7615260 100644 --- a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeFormParameter.java +++ b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeFormParameter.java @@ -116,9 +116,6 @@ public class ZeroCodeFormParameter { formRefMetadataParameter.set(t); } }); - if (formRefMetadataParameter == null) { - return null; - } return formRefMetadataParameter.get(); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java similarity index 95% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java index 261b1157..94b6b804 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; +package com.inspur.edp.web.frontendproject.zerocode.operation; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormFormatParameter; import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.FormMetadataContentOperation; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java index 73e10cc8..df372af1 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java @@ -21,7 +21,7 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.MetaDataOperationManager; +import com.inspur.edp.web.frontendproject.zerocode.operation.MetaDataOperationManager; import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.PageFlowMetadataOperation; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPageFlowMetadataEntity; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java index 75777e98..7f1fa7b9 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java @@ -27,7 +27,8 @@ class CommandMetadataOperation { public void save(FormDOM json, ZeroCodeFormParameter formParameter, String webDevPath, String formMetadataName) { CommandsAnalysis commandsAnalysis = new CommandsAnalysis(ExecuteEnvironment.Runtime, false); HashMap cmpCacheList = new HashMap<>(); - commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formParameter.getMetadata(), json), formMetadataName, webDevPath, cmpCacheList, null, null); + CommandsAnalysis.ResolveCommandParameter resolveCommandParameter = CommandsAnalysis.ResolveCommandParameter.init(formParameter.getMetadata(), json); + commandsAnalysis.resolveCommand(resolveCommandParameter, formMetadataName, webDevPath, cmpCacheList, null, null); } } -- Gitee From d02d008dcdd74265531e81c0f5679c59df02c79a Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Tue, 4 Jul 2023 19:21:38 +0800 Subject: [PATCH 12/41] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=20=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E9=83=A8=E7=BD=B2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operation/webdevjson/AbstractWebDevJsonOperation.java | 2 +- .../{ => webdevjson/specific}/MetaDataOperationManager.java | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/{ => webdevjson/specific}/MetaDataOperationManager.java (90%) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java index df372af1..73e10cc8 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/AbstractWebDevJsonOperation.java @@ -21,7 +21,7 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -import com.inspur.edp.web.frontendproject.zerocode.operation.MetaDataOperationManager; +import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.MetaDataOperationManager; import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.PageFlowMetadataOperation; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPageFlowMetadataEntity; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java similarity index 90% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java index 94b6b804..1c1b5e5b 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/MetaDataOperationManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/MetaDataOperationManager.java @@ -14,12 +14,11 @@ * limitations under the License. */ -package com.inspur.edp.web.frontendproject.zerocode.operation; +package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormFormatParameter; -import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific.FormMetadataContentOperation; -import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; +import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPage; public class MetaDataOperationManager { public static void save(ZeroCodeFormParameter formParameter, String webDevPath, AdaptedPage adaptedPage) { -- Gitee From af0b4a16ed5ed2470e931dcf3d7b47a5f019a87a Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Fri, 7 Jul 2023 14:21:11 +0800 Subject: [PATCH 13/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inspur/edp/web/jitengine/JITEngineManager.java | 2 -- .../metadataanalysis/CommandsAnalysis.java | 3 ++- .../web/frontendproject/FrontendProjectExtractor.java | 11 +++++------ .../generate/FrontendProjectGenerate.java | 11 +++++------ 4 files changed, 12 insertions(+), 15 deletions(-) diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index 069f2afe..f06de581 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -315,8 +315,6 @@ public class JITEngineManager { WebLogger.Instance.info("delete html template folder failed, the path is " + htmlTemplatePath + ", the trace is " + ex.getMessage() + ex.getStackTrace()); } - List htmlTemplateEntityList = HtmlTemplateManager.generate(htmlTemplatePath, json); - // 如果包含模板文件 那么执行编译 NodeJsCommandResult tscCommandResult = NodejsFunctionUtility.getTscCommandInServer(false); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java index 9fce765e..81849ff1 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java @@ -117,7 +117,8 @@ public class CommandsAnalysis { } cmdId = c.get("id").toString(); - GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), ""), StringUtility.getOrDefault(c.get("name"), ""), StringUtility.getOrDefault(c.get("nameSpace"), "")); + GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), ""), StringUtility.getOrDefault(c.get("name"), ""), + StringUtility.getOrDefault(c.get("nameSpace"), "")); metadata = (WebCommandsMetadata) commandMetadata.getContent(); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java index 34a340de..cea45a46 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java @@ -21,9 +21,9 @@ import com.inspur.edp.lcm.metadata.spi.ExtractAction; import com.inspur.edp.web.common.constant.FrontendProjectConstant; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.utility.StringUtility; -import lombok.extern.slf4j.Slf4j; import java.util.Arrays; import java.util.List; @@ -33,7 +33,6 @@ import java.util.stream.Collectors; /** * 前端工程提取器 */ -@Slf4j public class FrontendProjectExtractor implements ExtractAction { /** @@ -49,8 +48,9 @@ public class FrontendProjectExtractor implements ExtractAction { // 目录A->(拷贝)->目录B String projectName = GspProjectUtility.getProjectName(context.getProjectPath()); - extract(context, projectName, TerminalType.PC); - extract(context, projectName, TerminalType.MOBILE); + TerminalType.rescure(terminalType -> { + extract(context, projectName, terminalType); + }); } /** @@ -150,8 +150,7 @@ public class FrontendProjectExtractor implements ExtractAction { * 拷贝前端工程提取物到部署目录 */ private void copyFrontendProjectExtract(String projectName, String sourceExtractPath, String targetExtractBasePath, TerminalType terminalType) { - log.debug(String.format("Debug_CopyFrontendProjectExtract: projectName: %1$s, sourcePath: %2$s, destinationBasePath: %3$s", projectName, sourceExtractPath, targetExtractBasePath)); - + WebLogger.Instance.debug(String.format("Debug_CopyFrontendProjectExtract: projectName: %1$s, sourcePath: %2$s, destinationBasePath: %3$s", projectName, sourceExtractPath, targetExtractBasePath)); if (StringUtility.isNullOrEmpty(projectName) || StringUtility.isNullOrEmpty(sourceExtractPath) || StringUtility.isNullOrEmpty(targetExtractBasePath)) { return; } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java index 65f1e667..ad611b05 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java @@ -55,13 +55,12 @@ public class FrontendProjectGenerate { try { - if (FormMetadataManager.checkFormMetadataExists(projectPath, TerminalType.PC, generateParameter.getBuildFormList(), generateParameter.isForceUseJieXi(), true)) { - generateFrontendProject(generateParameter, TerminalType.PC); - } + TerminalType.rescure(terminalType -> { + if (FormMetadataManager.checkFormMetadataExists(projectPath, terminalType, generateParameter.getBuildFormList(), generateParameter.isForceUseJieXi(), true)) { + generateFrontendProject(generateParameter, terminalType); + } + }); - if (FormMetadataManager.checkFormMetadataExists(projectPath, TerminalType.MOBILE, generateParameter.getBuildFormList(), generateParameter.isForceUseJieXi(), true)) { - generateFrontendProject(generateParameter, TerminalType.MOBILE); - } } catch (EnvironmentException ex) { throw new WebCustomException(ex.getMessage(), ex); } catch (RuntimeException exception) { -- Gitee From f5cad85c9a240beb203b8fee1eed0f1515fbd7a0 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Fri, 7 Jul 2023 14:30:20 +0800 Subject: [PATCH 14/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E6=95=88=E5=BC=95=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/entity/FormScriptCacheContent.java | 1 - .../domain/entity/FormScriptCacheContentEntity.java | 1 - .../repository/FormProjectCacheRepositoryTest.java | 2 -- .../localserver/LocalServerPathGeneratorTest.java | 4 ---- .../web/appconfig/api/entity/GspAppConfigTest.java | 2 -- .../web/common/environment/ExecuteEnvironment.java | 2 -- .../com/inspur/edp/web/common/logger/WebLogger.java | 1 - .../web/common/metadata/MetadataGetterParameter.java | 1 - .../edp/web/common/metadata/MetadataUtility.java | 1 - .../edp/web/common/metadata/WebMetadataUri.java | 2 -- .../inspur/edp/web/common/utility/CommonUtility.java | 1 - .../inspur/edp/web/common/utility/DateUtility.java | 1 - .../inspur/edp/web/common/utility/StringUtility.java | 1 - .../checker/ExecuteEnvironmentCheckerTest.java | 1 - .../com/inspur/edp/web/common/io/FileUtilityTest.java | 5 ----- .../inspur/edp/web/common/logger/WebLoggerTest.java | 3 --- .../edp/web/designschema/generator/FieldBuilder.java | 2 -- .../designschema/generator/TypeBuildingContext.java | 2 -- .../NocodeDesignSchemaChangeListener.java | 1 - .../webservice/DesignSchemaWebServiceImpl.java | 2 -- .../dynamicform/core/api/entity/FormMetadataInfo.java | 4 ---- .../core/api/webservice/DynamicFormWebService.java | 1 - .../core/api/entity/FormTableInfoTest.java | 2 -- .../core/components/GridFieldComponentMetadata.java | 1 - .../core/webservice/DynamicFormWebServiceImpl.java | 1 - .../components/GridFieldComponentMetadataTest.java | 2 -- .../DynamicCreateFormMetadataServiceImplTest.java | 2 -- .../DynamicCreateFormMetadataServiceImplTest.java | 2 -- .../inspur/edp/web/jitengine/JITEngineManager.java | 6 ------ .../AppComponentTsFileContentGenerator.java | 1 - .../dynamicform/AppModuleTsFileContentGenerator.java | 1 - .../dynamicform/htmltemplate/HtmlTemplateManager.java | 1 - .../AbstractHtmlTemplateExtractor.java | 2 +- .../HtmlTemplateExtractorMap.java | 1 - .../edp/web/jitengine/JITEngineManagerTest.java | 2 -- .../jitengine/metadataanalysis/EapiAnalysisTest.java | 2 -- .../core/webservice/NpmPacakgeWebServiceImplTest.java | 2 -- .../event/FormMetadataSaveEventListener.java | 2 -- .../formmetadata/i18n/FormMetadataI18nService.java | 1 - .../metadataanalysis/CommandsAnalysis.java | 1 - .../metadatamanager/CommandsMetadataManager.java | 1 - .../metadatamanager/StateMachineMetadataManager.java | 1 - .../replication/MetadataHeaderCloneManager.java | 2 -- .../adjust/FormMetadataCloneAdjustStrategy.java | 1 - .../service/FormRelateMetadataService.java | 1 - .../webservice/FormMetadataWebServiceImpl.java | 11 ----------- .../HtmlTemplateI18nResourceStrategyTest.java | 4 ---- .../replication/FormMetadataCmdManagerTest.java | 2 -- .../replication/FormMetadataReplicatorTest.java | 2 -- .../replication/MetadataCloneManagerTest.java | 2 -- .../serializer/FormMetadataContentSerializerTest.java | 1 - .../edp/web/formconfig/api/dto/FormConfigItem.java | 1 - .../frontendproject/zerocode/ZeroCodeParameter.java | 1 - .../web/frontendproject/FrontendProjectDeployer.java | 1 - .../debuguri/AbstractFormMetadataDebugUri.java | 1 - .../resolver/FormMetadataResolver.java | 1 - .../operation/sourcegenerate/SourceCodeManager.java | 2 -- .../sourcegenerate/SourceCodeMobileOperation.java | 6 ------ .../sourcegenerate/SourceCodePCOperation.java | 6 ------ .../sourcegenerate/SourceCodePathGenerator.java | 1 - .../webdevjson/WebDevMobileJsonOperation.java | 1 - .../operation/webdevjson/WebDevPCJsonOperation.java | 1 - .../inspur/edp/ide/config/webapi/common/FileUtil.java | 1 - .../metadata/entity/PageFlowMetadataEntityTest.java | 4 ---- .../listener/SourceCodeMetadataEventListener.java | 1 - .../metadata/StateMachineMetadataContentTest.java | 2 -- .../web/tsfile/core/service/TsFileService4WebApi.java | 2 -- 67 files changed, 1 insertion(+), 132 deletions(-) diff --git a/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/FormScriptCacheContent.java b/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/FormScriptCacheContent.java index cfbd2d56..33725ed0 100644 --- a/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/FormScriptCacheContent.java +++ b/runtime-scriptcache-api/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/api/entity/FormScriptCacheContent.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity; -import com.inspur.edp.web.common.converter.WebEntityConverter; import com.inspur.edp.web.common.utility.StringUtility; import java.util.Date; diff --git a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/entity/FormScriptCacheContentEntity.java b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/entity/FormScriptCacheContentEntity.java index d002316a..72b5fd1f 100644 --- a/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/entity/FormScriptCacheContentEntity.java +++ b/runtime-scriptcache/src/main/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/entity/FormScriptCacheContentEntity.java @@ -19,7 +19,6 @@ package com.inspur.edp.web.jitruntimebuild.scriptcache.domain.entity; import com.inspur.edp.web.common.converter.WebEntityConverter; import com.inspur.edp.web.common.encrypt.EncryptUtility; import com.inspur.edp.web.common.utility.CommonUtility; -import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.FormScriptCache; import com.inspur.edp.web.jitruntimebuild.scriptcache.api.entity.FormScriptCacheContent; import lombok.Data; diff --git a/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/repository/FormProjectCacheRepositoryTest.java b/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/repository/FormProjectCacheRepositoryTest.java index be839ba7..63592c0c 100644 --- a/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/repository/FormProjectCacheRepositoryTest.java +++ b/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/domain/repository/FormProjectCacheRepositoryTest.java @@ -2,8 +2,6 @@ package com.inspur.edp.web.jitruntimebuild.scriptcache.domain.repository; import org.junit.Test; -import static org.junit.Assert.*; - public class FormProjectCacheRepositoryTest { @Test diff --git a/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGeneratorTest.java b/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGeneratorTest.java index b7b14b9a..ae0c2764 100644 --- a/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGeneratorTest.java +++ b/runtime-scriptcache/src/test/java/com/inspur/edp/web/jitruntimebuild/scriptcache/localserver/LocalServerPathGeneratorTest.java @@ -3,10 +3,6 @@ package com.inspur.edp.web.jitruntimebuild.scriptcache.localserver; import com.inspur.edp.web.common.io.FileUtility; import org.junit.Test; -import java.io.File; - -import static org.junit.Assert.*; - public class LocalServerPathGeneratorTest { @Test diff --git a/web-appconfig-core/src/test/java/com/inspur/edp/web/appconfig/api/entity/GspAppConfigTest.java b/web-appconfig-core/src/test/java/com/inspur/edp/web/appconfig/api/entity/GspAppConfigTest.java index f254c735..983144b1 100644 --- a/web-appconfig-core/src/test/java/com/inspur/edp/web/appconfig/api/entity/GspAppConfigTest.java +++ b/web-appconfig-core/src/test/java/com/inspur/edp/web/appconfig/api/entity/GspAppConfigTest.java @@ -2,8 +2,6 @@ package com.inspur.edp.web.appconfig.api.entity; import org.junit.Test; -import static org.junit.Assert.*; - public class GspAppConfigTest { @Test diff --git a/web-common/src/main/java/com/inspur/edp/web/common/environment/ExecuteEnvironment.java b/web-common/src/main/java/com/inspur/edp/web/common/environment/ExecuteEnvironment.java index 105085fb..d18f205c 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/environment/ExecuteEnvironment.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/environment/ExecuteEnvironment.java @@ -16,8 +16,6 @@ package com.inspur.edp.web.common.environment; -import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; - /** * 运行环境 位置 分为设计时及运行时、元数据部署工具 * diff --git a/web-common/src/main/java/com/inspur/edp/web/common/logger/WebLogger.java b/web-common/src/main/java/com/inspur/edp/web/common/logger/WebLogger.java index ab9d629b..0bb8d8b3 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/logger/WebLogger.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/logger/WebLogger.java @@ -21,7 +21,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.Arrays; -import java.util.function.Function; /** * @Title: WebLogger diff --git a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataGetterParameter.java b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataGetterParameter.java index b56eab18..fa3b5a0a 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataGetterParameter.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataGetterParameter.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.common.metadata; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.customexception.WebCustomException; -import com.inspur.edp.web.common.utility.StringUtility; import lombok.Data; import lombok.Getter; import lombok.Setter; diff --git a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java index 3d62acf6..8e6333bc 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java @@ -20,7 +20,6 @@ package com.inspur.edp.web.common.metadata; import com.inspur.edp.cdp.web.component.metadata.define.WebComponentMetadata; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.lcm.metadata.api.entity.MetadataProject; -import com.inspur.edp.lcm.metadata.api.entity.uri.MetadataURI; import com.inspur.edp.lcm.metadata.devcommon.ManagerUtils; import com.inspur.edp.web.command.component.metadata.*; import com.inspur.edp.web.common.customexception.WebCustomException; diff --git a/web-common/src/main/java/com/inspur/edp/web/common/metadata/WebMetadataUri.java b/web-common/src/main/java/com/inspur/edp/web/common/metadata/WebMetadataUri.java index 0190c8ad..baf932fc 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/metadata/WebMetadataUri.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/metadata/WebMetadataUri.java @@ -17,9 +17,7 @@ package com.inspur.edp.web.common.metadata; import com.inspur.edp.lcm.metadata.api.entity.uri.MetadataURI; -import com.inspur.edp.web.common.utility.StringUtility; import lombok.Data; -import org.springframework.util.StringUtils; /** * 继承 MetadataUri 主要目的是重写其中的输出方法 diff --git a/web-common/src/main/java/com/inspur/edp/web/common/utility/CommonUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/utility/CommonUtility.java index 681ec703..b0c8157f 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/utility/CommonUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/utility/CommonUtility.java @@ -19,7 +19,6 @@ package com.inspur.edp.web.common.utility; import java.lang.management.ManagementFactory; import java.text.SimpleDateFormat; import java.util.Date; -import java.util.UUID; /** * description: diff --git a/web-common/src/main/java/com/inspur/edp/web/common/utility/DateUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/utility/DateUtility.java index 5354d003..e5fec94b 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/utility/DateUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/utility/DateUtility.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.common.utility; -import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.time.ZoneId; import java.time.format.DateTimeFormatter; diff --git a/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java index 357bb3ee..685b6b48 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.common.utility; import org.apache.commons.lang3.StringUtils; -import java.util.Arrays; import java.util.List; import java.util.function.Consumer; import java.util.function.Predicate; diff --git a/web-common/src/test/java/com/inspur/edp/web/common/environment/checker/ExecuteEnvironmentCheckerTest.java b/web-common/src/test/java/com/inspur/edp/web/common/environment/checker/ExecuteEnvironmentCheckerTest.java index 27d95f05..c566a205 100644 --- a/web-common/src/test/java/com/inspur/edp/web/common/environment/checker/ExecuteEnvironmentCheckerTest.java +++ b/web-common/src/test/java/com/inspur/edp/web/common/environment/checker/ExecuteEnvironmentCheckerTest.java @@ -1,6 +1,5 @@ package com.inspur.edp.web.common.environment.checker; -import org.junit.Assert; import org.junit.Test; import static org.junit.Assert.*; diff --git a/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java b/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java index 7c3bc9ea..df5c77ab 100644 --- a/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java +++ b/web-common/src/test/java/com/inspur/edp/web/common/io/FileUtilityTest.java @@ -1,15 +1,10 @@ package com.inspur.edp.web.common.io; -import junit.framework.TestCase; import org.junit.Assert; import org.junit.Test; import java.io.File; -import java.io.IOException; -import java.net.URI; import java.nio.file.*; -import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; import java.util.stream.IntStream; diff --git a/web-common/src/test/java/com/inspur/edp/web/common/logger/WebLoggerTest.java b/web-common/src/test/java/com/inspur/edp/web/common/logger/WebLoggerTest.java index b65cd9f4..8e526a58 100644 --- a/web-common/src/test/java/com/inspur/edp/web/common/logger/WebLoggerTest.java +++ b/web-common/src/test/java/com/inspur/edp/web/common/logger/WebLoggerTest.java @@ -1,13 +1,10 @@ package com.inspur.edp.web.common.logger; -import net.bytebuddy.utility.RandomString; import org.junit.Before; import org.junit.jupiter.api.Test; import java.util.Random; -import static org.junit.jupiter.api.Assertions.*; - /** * @Title: WebLoggerTest * @Description: com.inspur.edp.web.common.logger diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/FieldBuilder.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/FieldBuilder.java index 93b76a56..a4927d50 100644 --- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/FieldBuilder.java +++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/FieldBuilder.java @@ -21,7 +21,6 @@ import com.inspur.edp.bef.bizentity.GspBizEntityObject; import com.inspur.edp.bef.bizentity.GspBusinessEntity; import com.inspur.edp.cef.api.RefObject; import com.inspur.edp.cef.designtime.api.IGspCommonField; -import com.inspur.edp.cef.designtime.api.collection.GspAssociationCollection; import com.inspur.edp.cef.designtime.api.element.GspAssociation; import com.inspur.edp.cef.designtime.api.element.GspElementObjectType; import com.inspur.edp.formserver.viewmodel.GspViewModelElement; @@ -43,7 +42,6 @@ import com.inspur.edp.web.designschema.elements.type.FieldType; import com.inspur.edp.web.designschema.elements.type.ObjectType; import com.inspur.edp.web.designschema.udtextensiondef.FormUdtExtension; import io.iec.edp.caf.commons.exception.CAFRuntimeException; -import io.iec.edp.caf.commons.utils.SpringBeanUtils; import org.springframework.util.StringUtils; import java.util.*; diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/TypeBuildingContext.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/TypeBuildingContext.java index a1ffef4f..0d344ade 100644 --- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/TypeBuildingContext.java +++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/generator/TypeBuildingContext.java @@ -34,10 +34,8 @@ import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; -import com.inspur.edp.web.designschema.udtextensiondef.FormUdtExtension; import io.iec.edp.caf.commons.utils.SpringBeanUtils; import org.apache.commons.lang3.ObjectUtils; -import org.apache.commons.lang3.StringUtils; import java.util.HashMap; diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/NocodeDesignSchemaChangeListener.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/NocodeDesignSchemaChangeListener.java index 2aec3d28..2d43c21e 100644 --- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/NocodeDesignSchemaChangeListener.java +++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/synchronization/NocodeDesignSchemaChangeListener.java @@ -24,7 +24,6 @@ import com.inspur.edp.lcm.metadata.spi.event.nodecode.NoCodeAfterSaveArgs; import com.inspur.edp.lcm.metadata.spi.event.nodecode.NoCodeBeforeDeleteArgs; import com.inspur.edp.lcm.metadata.spi.event.nodecode.NoCodeBeforeSaveArgs; import com.inspur.edp.metadata.rtcustomization.api.CustomizationService; -import com.inspur.edp.web.designschema.synchronization.helplinkconfig.VoMetadataHelpLinkConfigModifierBeforeSaving; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; import io.iec.edp.caf.commons.utils.SpringBeanUtils; diff --git a/web-designschema/src/main/java/com/inspur/edp/web/designschema/webservice/DesignSchemaWebServiceImpl.java b/web-designschema/src/main/java/com/inspur/edp/web/designschema/webservice/DesignSchemaWebServiceImpl.java index 18362e50..dd0eb404 100644 --- a/web-designschema/src/main/java/com/inspur/edp/web/designschema/webservice/DesignSchemaWebServiceImpl.java +++ b/web-designschema/src/main/java/com/inspur/edp/web/designschema/webservice/DesignSchemaWebServiceImpl.java @@ -25,8 +25,6 @@ import com.inspur.edp.web.designschema.api.webservice.DesignSchemaWebService; import com.inspur.edp.web.designschema.elements.Schema; import com.inspur.edp.web.designschema.generator.SchemaBuilder; -import java.util.Arrays; - /** * description: * diff --git a/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/entity/FormMetadataInfo.java b/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/entity/FormMetadataInfo.java index 030793be..1c250310 100644 --- a/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/entity/FormMetadataInfo.java +++ b/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/entity/FormMetadataInfo.java @@ -17,10 +17,6 @@ package com.inspur.edp.web.dynamicform.core.api.entity; import com.inspur.edp.web.common.utility.StringUtility; -import lombok.Data; - -import java.util.ArrayList; -import java.util.List; /** * 关联的表单元数据信息 diff --git a/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/webservice/DynamicFormWebService.java b/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/webservice/DynamicFormWebService.java index 74c6b2cb..27d74aa1 100644 --- a/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/webservice/DynamicFormWebService.java +++ b/web-dynamic-form-api/src/main/java/com/inspur/edp/web/dynamicform/core/api/webservice/DynamicFormWebService.java @@ -21,7 +21,6 @@ import com.inspur.edp.web.dynamicform.core.api.entity.DynamicFormCreateEntity; import org.springframework.web.bind.annotation.RequestBody; import javax.ws.rs.Consumes; -import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.core.MediaType; diff --git a/web-dynamic-form-api/src/test/java/com/inspur/edp/web/dynamicform/core/api/entity/FormTableInfoTest.java b/web-dynamic-form-api/src/test/java/com/inspur/edp/web/dynamicform/core/api/entity/FormTableInfoTest.java index 8d1da1e1..71e642ba 100644 --- a/web-dynamic-form-api/src/test/java/com/inspur/edp/web/dynamicform/core/api/entity/FormTableInfoTest.java +++ b/web-dynamic-form-api/src/test/java/com/inspur/edp/web/dynamicform/core/api/entity/FormTableInfoTest.java @@ -21,8 +21,6 @@ package com.inspur.edp.web.dynamicform.core.api.entity; import org.junit.Assert; import org.junit.Test; -import static org.junit.Assert.*; - public class FormTableInfoTest { @Test diff --git a/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadata.java b/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadata.java index 8422d212..2000a73d 100644 --- a/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadata.java +++ b/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadata.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.dynamicform.core.components; -import com.fasterxml.jackson.databind.JsonNode; import com.inspur.edp.web.common.serialize.SerializeUtility; import java.util.HashMap; diff --git a/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/webservice/DynamicFormWebServiceImpl.java b/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/webservice/DynamicFormWebServiceImpl.java index 0120e97f..e987ba38 100644 --- a/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/webservice/DynamicFormWebServiceImpl.java +++ b/web-dynamic-form-core/src/main/java/com/inspur/edp/web/dynamicform/core/webservice/DynamicFormWebServiceImpl.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.dynamicform.core.webservice; import com.inspur.edp.web.common.entity.ResultCode; import com.inspur.edp.web.common.entity.ResultMessage; -import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.dynamicform.core.api.entity.DynamicCreateFormMetadataParameter; import com.inspur.edp.web.dynamicform.core.api.entity.DynamicFormCreateEntity; import com.inspur.edp.web.dynamicform.core.api.entity.FormMetadataInfo; diff --git a/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadataTest.java b/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadataTest.java index 0eefea1b..b8931e20 100644 --- a/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadataTest.java +++ b/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/components/GridFieldComponentMetadataTest.java @@ -20,8 +20,6 @@ import org.junit.Test; import java.util.HashMap; -import static org.junit.Assert.*; - public class GridFieldComponentMetadataTest { @Test diff --git a/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/service/DynamicCreateFormMetadataServiceImplTest.java b/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/service/DynamicCreateFormMetadataServiceImplTest.java index 0b7c7bd5..5b819322 100644 --- a/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/service/DynamicCreateFormMetadataServiceImplTest.java +++ b/web-dynamic-form-core/src/test/java/com/inspur/edp/web/dynamicform/core/service/DynamicCreateFormMetadataServiceImplTest.java @@ -20,8 +20,6 @@ import com.inspur.edp.web.dynamicform.core.api.service.DynamicCreateFormMetadata import io.iec.edp.caf.commons.utils.SpringBeanUtils; import org.junit.Test; -import static org.junit.Assert.*; - public class DynamicCreateFormMetadataServiceImplTest { @Test diff --git a/web-dynamic-form-core/src/test/java/service/DynamicCreateFormMetadataServiceImplTest.java b/web-dynamic-form-core/src/test/java/service/DynamicCreateFormMetadataServiceImplTest.java index 047fca07..c077ea75 100644 --- a/web-dynamic-form-core/src/test/java/service/DynamicCreateFormMetadataServiceImplTest.java +++ b/web-dynamic-form-core/src/test/java/service/DynamicCreateFormMetadataServiceImplTest.java @@ -26,8 +26,6 @@ import java.io.File; import java.io.FileReader; import java.io.IOException; -import static org.junit.Assert.*; - public class DynamicCreateFormMetadataServiceImplTest { @Test diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index f06de581..ed396c8d 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -41,10 +41,6 @@ import com.inspur.edp.web.formmetadata.resolver.ResolveFormMetadataItem; import com.inspur.edp.web.formmetadata.service.FormMetataService; import com.inspur.edp.web.frontendproject.entity.FrontendProjectGenerateParameter; import com.inspur.edp.web.jitengine.babelgrnerate.GenerateForBabel; -import com.inspur.edp.web.jitengine.dynamicform.DynamicFormModuleOperation; -import com.inspur.edp.web.jitengine.dynamicform.htmltemplate.HtmlTemplateEntity; -import com.inspur.edp.web.jitengine.dynamicform.htmltemplate.HtmlTemplateGenerator; -import com.inspur.edp.web.jitengine.dynamicform.htmltemplate.HtmlTemplateManager; import com.inspur.edp.web.jitengine.expressions.ExpressionFormGenerator; import com.inspur.edp.web.jitengine.expressions.ExpressionManifest; import com.inspur.edp.web.jitengine.expressions.ModuleFormExpressions; @@ -58,14 +54,12 @@ import com.inspur.edp.web.npmpackage.core.npminstall.NodeModulesPathGenerator; import com.inspur.edp.web.npmpackage.core.npminstall.NpmInstallManager; import com.inspur.edp.web.npmpackage.core.npminstall.PackageJsonPathGenerator; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingManager; -import org.apache.commons.io.FilenameUtils; import org.apache.commons.lang3.SystemUtils; import java.io.File; import java.util.Arrays; import java.util.HashMap; import java.util.List; -import java.util.Map; /** * JIT Engine 管理 diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppComponentTsFileContentGenerator.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppComponentTsFileContentGenerator.java index 6894e8b0..3654f0a4 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppComponentTsFileContentGenerator.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppComponentTsFileContentGenerator.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.jitengine.dynamicform; -import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.jitengine.dynamicform.htmltemplate.HtmlTemplateEntity; diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppModuleTsFileContentGenerator.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppModuleTsFileContentGenerator.java index e34c4347..a480186f 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppModuleTsFileContentGenerator.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/AppModuleTsFileContentGenerator.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.jitengine.dynamicform; -import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.jitengine.dynamicform.htmltemplate.HtmlTemplateEntity; import java.util.ArrayList; diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/HtmlTemplateManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/HtmlTemplateManager.java index 3d241c75..828c3b59 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/HtmlTemplateManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/HtmlTemplateManager.java @@ -26,7 +26,6 @@ import com.inspur.edp.web.jitengine.dynamicform.AppComponentTsFileContentGenerat import com.inspur.edp.web.jitengine.dynamicform.AppModuleTsFileContentGenerator; import com.inspur.edp.web.jitengine.dynamicform.TsConfigAppJsonFileGenerator; -import java.util.ArrayList; import java.util.List; public class HtmlTemplateManager { diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/AbstractHtmlTemplateExtractor.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/AbstractHtmlTemplateExtractor.java index 8cc4e653..ee11dd83 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/AbstractHtmlTemplateExtractor.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/AbstractHtmlTemplateExtractor.java @@ -100,7 +100,7 @@ public abstract class AbstractHtmlTemplateExtractor implements IHtmlTemplateExtr * 提取对应的html模板 * 子类覆盖该行为 进行html模板的提取 * - * @param currentComponent + * @param htmlTemplateEntityList * @return */ public abstract void extractHtmlTemplate(List htmlTemplateEntityList); diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/HtmlTemplateExtractorMap.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/HtmlTemplateExtractorMap.java index 387369c5..f98b6409 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/HtmlTemplateExtractorMap.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/dynamicform/htmltemplate/htmltemplateextractor/HtmlTemplateExtractorMap.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.jitengine.dynamicform.htmltemplate.htmltemplateextractor; -import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.formmetadata.i18n.constant.ComponentType; import java.util.HashMap; diff --git a/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/JITEngineManagerTest.java b/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/JITEngineManagerTest.java index d1a68231..90ee78c2 100644 --- a/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/JITEngineManagerTest.java +++ b/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/JITEngineManagerTest.java @@ -5,8 +5,6 @@ import org.junit.Test; import java.util.Arrays; import java.util.List; -import static org.junit.Assert.*; - public class JITEngineManagerTest { @Test diff --git a/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/metadataanalysis/EapiAnalysisTest.java b/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/metadataanalysis/EapiAnalysisTest.java index 3f373579..59dcf05c 100644 --- a/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/metadataanalysis/EapiAnalysisTest.java +++ b/web-form-jitengine/src/test/java/com/inspur/edp/web/jitengine/metadataanalysis/EapiAnalysisTest.java @@ -20,8 +20,6 @@ import org.junit.Test; import java.util.HashMap; -import static org.junit.Assert.*; - public class EapiAnalysisTest { @Test public void testHashMap() { diff --git a/web-form-jitengine/src/test/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImplTest.java b/web-form-jitengine/src/test/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImplTest.java index a48f483b..cf78c9f8 100644 --- a/web-form-jitengine/src/test/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImplTest.java +++ b/web-form-jitengine/src/test/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImplTest.java @@ -2,8 +2,6 @@ package com.inspur.edp.web.npmpackage.core.webservice; import org.junit.jupiter.api.Test; -import static org.junit.jupiter.api.Assertions.*; - class NpmPacakgeWebServiceImplTest { @Test diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java index fb0451b3..309ee7ec 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java @@ -42,8 +42,6 @@ import java.util.function.Consumer; import java.util.function.Function; import java.util.function.Predicate; -import static com.inspur.edp.web.common.entity.TerminalType.MOBILE; - /** * @author guozhiqi */ diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/FormMetadataI18nService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/FormMetadataI18nService.java index 5c77a42b..711274ff 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/FormMetadataI18nService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/FormMetadataI18nService.java @@ -25,7 +25,6 @@ import com.inspur.edp.lcm.metadata.api.entity.ResourceType; import com.inspur.edp.lcm.metadata.spi.MetadataI18nService; import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.common.utility.StringUtility; -import com.inspur.edp.web.formmetadata.i18n.component.strategy.i18nresourcestrategy.AppointmentCalendarResourceStrategy; import com.inspur.edp.web.formmetadata.i18n.component.strategy.i18nresourcestrategy.ModelToolbarI18nResourceStrategy; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java index 81849ff1..d85bd83c 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java @@ -33,7 +33,6 @@ import com.inspur.edp.web.formmetadata.metadatamanager.CommandsMetadataManager; import com.inspur.edp.web.formmetadata.metadatamanager.ComponentMetadataManager; import io.iec.edp.caf.boot.context.CAFContext; import io.iec.edp.caf.core.session.CafSession; -import lombok.Data; import lombok.Getter; import java.util.HashMap; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java index d4b08d1d..d6b0c4b5 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java @@ -17,7 +17,6 @@ package com.inspur.edp.web.formmetadata.metadatamanager; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; -import com.inspur.edp.web.command.component.metadata.WebCommandsMetadata; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java index 414ef16e..4b5e394a 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.formmetadata.metadatamanager; -import com.inspur.edp.lcm.metadata.api.IMetadataContent; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/MetadataHeaderCloneManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/MetadataHeaderCloneManager.java index d6c2a957..acca29b5 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/MetadataHeaderCloneManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/MetadataHeaderCloneManager.java @@ -22,8 +22,6 @@ import com.inspur.edp.lcm.metadata.api.entity.MetadataHeader; import com.inspur.edp.web.common.utility.RandomUtility; import com.inspur.edp.web.common.utility.StringUtility; -import java.util.UUID; - /** * 元数据header deepClone * diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/adjust/FormMetadataCloneAdjustStrategy.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/adjust/FormMetadataCloneAdjustStrategy.java index 2f98c4b7..5b8285f4 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/adjust/FormMetadataCloneAdjustStrategy.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/replication/adjust/FormMetadataCloneAdjustStrategy.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.formmetadata.replication.adjust; -import com.inspur.edp.formserver.viewmodel.GspViewModel; import com.inspur.edp.lcm.metadata.api.IMetadataContent; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.utility.CommonUtility; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java index 62f33a23..0d95cd51 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java @@ -18,7 +18,6 @@ import com.inspur.edp.web.formmetadata.metadatamanager.StateMachineMetadataManag import io.iec.edp.caf.boot.context.CAFContext; import io.iec.edp.caf.commons.utils.SpringBeanUtils; import io.iec.edp.caf.core.session.CafSession; -import org.apache.commons.lang3.time.StopWatch; import java.util.*; import java.util.concurrent.*; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java index 2f49b1c6..c6cd2fca 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java @@ -16,33 +16,22 @@ package com.inspur.edp.web.formmetadata.webservice; -import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.customexception.WebCustomException; -import com.inspur.edp.web.common.entity.ResultCode; import com.inspur.edp.web.common.entity.ResultMessage; import com.inspur.edp.web.common.environment.ExecuteEnvironment; -import com.inspur.edp.web.common.metadata.MetadataGetterParameter; -import com.inspur.edp.web.common.metadata.MetadataTypeEnum; -import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.api.FormMetadataCommonService; import com.inspur.edp.web.formmetadata.api.FormMetadataWebService; import com.inspur.edp.web.formmetadata.api.dto.FormRelateMetadataInDesignParameterDto; import com.inspur.edp.web.formmetadata.api.dto.FormRelateMetadataInDesignResultDto; -import com.inspur.edp.web.formmetadata.api.dto.RelateMetadataTypeEnum; import com.inspur.edp.web.formmetadata.api.entity.FormSuInfoEntity; import com.inspur.edp.web.formmetadata.api.entity.ReplicateFormRequestBody; import com.inspur.edp.web.formmetadata.api.entity.SuInfoWithBizobjIdEntity; import com.inspur.edp.web.formmetadata.manager.FormMetadataManager; -import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; -import com.inspur.edp.web.formmetadata.metadata.FormMetadataContentService; -import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.service.FormRelateMetadataService; import io.iec.edp.caf.commons.utils.SpringBeanUtils; import io.iec.edp.caf.i18n.framework.api.language.EcpLanguage; -import java.util.ArrayList; -import java.util.HashMap; import java.util.List; /** diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/HtmlTemplateI18nResourceStrategyTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/HtmlTemplateI18nResourceStrategyTest.java index de64bd96..d620cc25 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/HtmlTemplateI18nResourceStrategyTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/HtmlTemplateI18nResourceStrategyTest.java @@ -1,14 +1,10 @@ package com.inspur.edp.web.formmetadata.i18n.component.strategy.i18nresourcestrategy; -import com.inspur.edp.lcm.metadata.api.entity.I18nResourceItem; -import com.inspur.edp.web.formmetadata.i18n.I18nResourceItemManager; import org.junit.Test; import java.util.regex.Matcher; import java.util.regex.Pattern; -import static org.junit.Assert.*; - public class HtmlTemplateI18nResourceStrategyTest { private Pattern extractPattern = null; diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataCmdManagerTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataCmdManagerTest.java index dbbcf32f..1b075596 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataCmdManagerTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataCmdManagerTest.java @@ -5,8 +5,6 @@ import org.junit.Test; import java.io.File; -import static org.junit.Assert.*; - public class FormMetadataCmdManagerTest { @Test public void test() { diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataReplicatorTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataReplicatorTest.java index 80757619..2edc6e62 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataReplicatorTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/FormMetadataReplicatorTest.java @@ -7,8 +7,6 @@ import org.junit.Test; import java.io.File; import java.util.Arrays; -import static org.junit.Assert.*; - public class FormMetadataReplicatorTest { private String source = "noah"; diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/MetadataCloneManagerTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/MetadataCloneManagerTest.java index 8f465c7f..c11a36d0 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/MetadataCloneManagerTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/replication/MetadataCloneManagerTest.java @@ -5,8 +5,6 @@ import org.junit.Test; import java.util.Optional; -import static org.junit.Assert.*; - public class MetadataCloneManagerTest { @Test diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/serializer/FormMetadataContentSerializerTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/serializer/FormMetadataContentSerializerTest.java index 8a8b41b3..2e3b48af 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/serializer/FormMetadataContentSerializerTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/serializer/FormMetadataContentSerializerTest.java @@ -4,7 +4,6 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.PropertyNamingStrategy; import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; -import org.junit.jupiter.api.Test; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; diff --git a/web-formconfig-api/src/main/java/com/inspur/edp/web/formconfig/api/dto/FormConfigItem.java b/web-formconfig-api/src/main/java/com/inspur/edp/web/formconfig/api/dto/FormConfigItem.java index 499dc1b1..3c7be91d 100644 --- a/web-formconfig-api/src/main/java/com/inspur/edp/web/formconfig/api/dto/FormConfigItem.java +++ b/web-formconfig-api/src/main/java/com/inspur/edp/web/formconfig/api/dto/FormConfigItem.java @@ -19,7 +19,6 @@ package com.inspur.edp.web.formconfig.api.dto; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.inspur.edp.web.common.utility.StringUtility; import lombok.Data; @Data diff --git a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java index f9ecf346..9d6c14e3 100644 --- a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java +++ b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/zerocode/ZeroCodeParameter.java @@ -22,7 +22,6 @@ import com.inspur.edp.web.common.utility.StringUtility; import java.util.ArrayList; import java.util.List; -import java.util.stream.Collectors; /** * 零代码参数 diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java index 18eba489..747e83bd 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java @@ -29,7 +29,6 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.webservice.FormDynamicParameter; -import com.inspur.edp.web.jitengine.dynamicform.DynamicFormMetaFileNameGenerator; import io.iec.edp.caf.commons.utils.SpringBeanUtils; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java index 87b4f4a6..9b1345b0 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java @@ -21,7 +21,6 @@ import com.inspur.edp.web.appconfig.api.entity.GspAppConfig; import com.inspur.edp.web.appconfig.core.service.GspAppConfigService; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.metadata.MetadataProjectUtility; -import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.FrontendProjectUtility; import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntity; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java index 8305a85e..a1362325 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.frontendproject.resolver; -import com.inspur.edp.cdp.web.component.metadata.define.WebComponentMetadata; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.io.FileUtility; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java index f423e5f3..731fe21b 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeManager.java @@ -19,8 +19,6 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -import java.util.Arrays; - public class SourceCodeManager { public static void generateSourceCode(ZeroCodeParameter zeroCodeParameter) { TerminalType.rescure(t -> { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java index 6c642a6f..b16764ba 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodeMobileOperation.java @@ -17,12 +17,6 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.common.entity.TerminalType; -import com.inspur.edp.web.common.environment.ExecuteEnvironment; -import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJsonManager; -import com.inspur.edp.web.jitengine.JITEngineManager; -import com.inspur.edp.web.jitengine.ProjectCompileContext; /** * mobile 源代码生成 diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java index 425058b1..5822315e 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePCOperation.java @@ -17,12 +17,6 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.common.entity.TerminalType; -import com.inspur.edp.web.common.environment.ExecuteEnvironment; -import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; -import com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.WebDevJsonManager; -import com.inspur.edp.web.jitengine.JITEngineManager; -import com.inspur.edp.web.jitengine.ProjectCompileContext; /** * 源代码 pc 生成 diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java index d7ef7780..f2de34d1 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.sourcegenerate; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormFormatParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; class SourceCodePathGenerator { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java index 9a049077..9ef30a7c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevMobileJsonOperation.java @@ -17,7 +17,6 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; import com.inspur.edp.web.common.entity.TerminalType; -import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java index 1a00218f..fc44282d 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevPCJsonOperation.java @@ -17,7 +17,6 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson; import com.inspur.edp.web.common.entity.TerminalType; -import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; diff --git a/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/common/FileUtil.java b/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/common/FileUtil.java index 05fe1dc6..c5152c6f 100644 --- a/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/common/FileUtil.java +++ b/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/common/FileUtil.java @@ -17,7 +17,6 @@ package com.inspur.edp.ide.config.webapi.common; import com.inspur.edp.web.common.logger.WebLogger; -import lombok.extern.slf4j.Slf4j; import java.io.File; import java.io.FileInputStream; diff --git a/web-pageflow-metadata/src/test/java/com/inspur/edp/web/pageflow/metadata/entity/PageFlowMetadataEntityTest.java b/web-pageflow-metadata/src/test/java/com/inspur/edp/web/pageflow/metadata/entity/PageFlowMetadataEntityTest.java index cffe9543..008de8f3 100644 --- a/web-pageflow-metadata/src/test/java/com/inspur/edp/web/pageflow/metadata/entity/PageFlowMetadataEntityTest.java +++ b/web-pageflow-metadata/src/test/java/com/inspur/edp/web/pageflow/metadata/entity/PageFlowMetadataEntityTest.java @@ -19,10 +19,6 @@ package com.inspur.edp.web.pageflow.metadata.entity; import com.inspur.edp.web.common.utility.RandomUtility; import org.junit.Test; -import java.util.Random; - -import static org.junit.Assert.*; - public class PageFlowMetadataEntityTest { @Test diff --git a/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/listener/SourceCodeMetadataEventListener.java b/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/listener/SourceCodeMetadataEventListener.java index 22dc6bea..fcb192a6 100644 --- a/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/listener/SourceCodeMetadataEventListener.java +++ b/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/listener/SourceCodeMetadataEventListener.java @@ -22,7 +22,6 @@ import com.inspur.edp.lcm.metadata.spi.event.MetadataEventListener; import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.sourcecode.metadata.entity.SourceCodeMetadataEntity; import com.inspur.edp.web.sourcecode.metadata.utility.SourceCodeMetadataUtility; -import io.iec.edp.caf.commons.exception.CAFRuntimeException; /** * 自定义web构建事件监听 diff --git a/web-statemachine/src/test/java/com/inspur/edp/web/statemachine/metadata/StateMachineMetadataContentTest.java b/web-statemachine/src/test/java/com/inspur/edp/web/statemachine/metadata/StateMachineMetadataContentTest.java index 2dec898c..9638d6f8 100644 --- a/web-statemachine/src/test/java/com/inspur/edp/web/statemachine/metadata/StateMachineMetadataContentTest.java +++ b/web-statemachine/src/test/java/com/inspur/edp/web/statemachine/metadata/StateMachineMetadataContentTest.java @@ -19,8 +19,6 @@ package com.inspur.edp.web.statemachine.metadata; import com.inspur.edp.web.common.serialize.SerializeUtility; import org.junit.Test; -import static org.junit.Assert.*; - public class StateMachineMetadataContentTest { @Test public void testSerialize() { diff --git a/web-tsfile-core/src/main/java/com/inspur/edp/web/tsfile/core/service/TsFileService4WebApi.java b/web-tsfile-core/src/main/java/com/inspur/edp/web/tsfile/core/service/TsFileService4WebApi.java index 71439467..af2295f8 100644 --- a/web-tsfile-core/src/main/java/com/inspur/edp/web/tsfile/core/service/TsFileService4WebApi.java +++ b/web-tsfile-core/src/main/java/com/inspur/edp/web/tsfile/core/service/TsFileService4WebApi.java @@ -18,8 +18,6 @@ package com.inspur.edp.web.tsfile.core.service; import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.tsfile.api.service.TsFileService; -import com.inspur.edp.web.tsfile.core.util.NameUtil; -import org.apache.commons.io.FilenameUtils; import java.util.ArrayList; -- Gitee From f478f437e927a2c78bcf64bf51d07850718e87e9 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Fri, 7 Jul 2023 14:42:17 +0800 Subject: [PATCH 15/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E6=95=88=E5=BC=95=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../frontendproject/FrontendProjectManager.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java index b208f0de..38bdbfe4 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java @@ -29,17 +29,21 @@ import com.inspur.edp.web.frontendproject.generate.FrontendProjectGenerate; import com.inspur.edp.web.frontendproject.webservice.FormDynamicParameter; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; +/** + * 前端工程 + * @author noah + */ public class FrontendProjectManager { private FrontendProjectManager() { } - private static class FrontendProjectManagerInstance { - public static final FrontendProjectManager frontendProjectManager = new FrontendProjectManager(); - } - + /** + * 该工程的调用频率极低 无需单例来占用启动及内存空间,及时释放才是王道 + * @return + */ public static FrontendProjectManager getInstance() { - return FrontendProjectManagerInstance.frontendProjectManager; + return new FrontendProjectManager(); } -- Gitee From b53c000620992e5eb5cd4e715b0a9239fc64f4e5 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Fri, 7 Jul 2023 15:04:44 +0800 Subject: [PATCH 16/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E6=95=88=E5=BC=95=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edp/web/frontendproject/FrontendProjectService.java | 5 +++++ .../edp/web/frontendproject/FrontendProjectUtility.java | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java index 46f04009..485c8b25 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java @@ -38,6 +38,11 @@ public class FrontendProjectService { return FrontendProjectServiceInstance.frontendProjectService; } + /** + * 当前工程是否为前端工程 + * @param projectPath + * @return + */ public final boolean isFrontendProject(String projectPath) { String projectType = getProjectType(projectPath); return projectType.equals(FrontendProjectConstant.FRONTEND_PROJECT_TYPE); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java index a43f93b1..74b8a681 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java @@ -22,6 +22,7 @@ import com.inspur.edp.web.common.constant.FrontendProjectConstant; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.metadata.MetadataUtility; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.common.utility.StringUtility; import io.iec.edp.caf.commons.utils.SpringBeanUtils; @@ -37,6 +38,7 @@ public class FrontendProjectUtility { /** * 获取工程类型:前端工程和非前端工程 + * 判断是否是前端工程 */ public static String getProjectType(String projectPath) { if (StringUtility.isNullOrEmpty(projectPath)) { @@ -46,7 +48,7 @@ public class FrontendProjectUtility { // TODO: 更新算法,提供基于文件后缀的查找方法 // 历史原因,只能根据当前是否包含表单来区分前端工程和非前端工程 List formMetataList = getAllTypeFormMetadata(projectPath); - if (formMetataList != null && !formMetataList.isEmpty()) { + if (ListUtility.isNotEmpty(formMetataList)) { return FrontendProjectConstant.FRONTEND_PROJECT_TYPE; } else { return FrontendProjectConstant.NON_FRONTEND_PROJECT_TYPE; -- Gitee From 7fd946140d223c61058513e1d622b737086ab9d6 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 11:22:35 +0800 Subject: [PATCH 17/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E6=95=88=E5=BC=95=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/i18n/GeneratedI18nResourceList.java | 51 ---------------- .../core/i18n/GeneratedI8nResource.java | 54 ----------------- .../edp/web/jitengine/JITEngineManager.java | 8 +-- .../web/jitengine/constant/JitConstant.java | 27 --------- .../web/jitengine/utility/PathUtility.java | 59 ------------------- .../FrontendProjectExtractor.java | 7 --- .../FrontendProjectService.java | 6 +- .../webservice/ZeroCodeWebServiceImpl.java | 13 ++-- 8 files changed, 9 insertions(+), 216 deletions(-) delete mode 100644 runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI18nResourceList.java delete mode 100644 runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI8nResource.java delete mode 100644 web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/constant/JitConstant.java delete mode 100644 web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/utility/PathUtility.java diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI18nResourceList.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI18nResourceList.java deleted file mode 100644 index a1e07210..00000000 --- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI18nResourceList.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.jitruntimebuild.core.i18n; - -import com.inspur.edp.web.jitengine.i18nresource.GeneratedI8nResource; - -import java.util.ArrayList; -import java.util.List; - -/** - * description: - * - * @author Noah Guo - * @date 2020/06/03 - */ -public class GeneratedI18nResourceList { - - /// - /// 生成的资源项列表集合 - /// - public List ResourceList = new ArrayList<>(); - - - - /// - /// 增加资源项 - /// - /// - /// - public void Add(String key, String value) - { - GeneratedI8nResource generatedI8nResource=new GeneratedI8nResource(); - generatedI8nResource.setKey(key); - generatedI8nResource.setValue(value); - this.ResourceList.add(generatedI8nResource); - } -} diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI8nResource.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI8nResource.java deleted file mode 100644 index 80a78078..00000000 --- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/i18n/GeneratedI8nResource.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.jitruntimebuild.core.i18n; - -/** - * description: - * - * @author Noah Guo - * @date 2020/06/03 - */ -public class GeneratedI8nResource { - /// - /// 生成资源项key - /// - private String key; - - /// - /// 生成资源项value - /// - private String value; - - public String getKey() { - return this.key; - } - - public void setKey(String value) { - this.key = value; - } - - - public String getValue() { - return this.value; - } - - public void setValue(String value) { - this.value = value; - } - - -} diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index ed396c8d..6e3454a9 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -141,12 +141,6 @@ public class JITEngineManager { } - public static void generateFrontendProject(String projectPath, String refNodeModulesBasePath, TerminalType terminalType) { - FrontendProjectGenerateParameter generateParameter = new FrontendProjectGenerateParameter(); - generateParameter.setProjectPath(projectPath); - generateFrontendProject(generateParameter, refNodeModulesBasePath, terminalType); - } - /** * 生成前端工程,目前仅支持生成 Angular 工程 */ @@ -155,7 +149,7 @@ public class JITEngineManager { return; } - boolean isJieXiForm = generateParameter != null && generateParameter.isForceUseJieXi(); + boolean isJieXiForm = generateParameter.isForceUseJieXi(); String currentProjectPath = generateParameter.getProjectPath(); String currentProjectName = GspProjectUtility.getProjectName(currentProjectPath); diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/constant/JitConstant.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/constant/JitConstant.java deleted file mode 100644 index f6db408f..00000000 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/constant/JitConstant.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.jitengine.constant; - -/** - * description: - * - * @author Noah Guo - * @date 2021/01/14 - */ -public class JitConstant { - -} diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/utility/PathUtility.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/utility/PathUtility.java deleted file mode 100644 index 5bcecddf..00000000 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/utility/PathUtility.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.jitengine.utility; - - -import com.inspur.edp.web.common.io.FileUtility; - -/** - * TODO n转j - */ -public class PathUtility -{ - public static String DIRECTORY_SEPARATOR_CHAR = FileUtility.DIRECTORY_SEPARATOR_CHAR; - - //public static String DOM_FILE_PATH = java.nio.file.Paths.get(GspServiceUnitPathService.GetPath("main")).resolve("web/webdev/").toString().Replace("/", DIRECTORY_SEPARATOR_CHAR).replace("\\", DIRECTORY_SEPARATOR_CHAR); - public static String DOM_FILE_PATH = ""; - //public static String WEB_COMPILE_SERVER = java.nio.file.Paths.get(GspServiceUnitPathService.GetPath("main")).resolve("web/webidedebug/").toString().Replace("/", DIRECTORY_SEPARATOR_CHAR).replace("\\", DIRECTORY_SEPARATOR_CHAR); - public static String WEB_COMPILE_SERVER = ""; - //public static String WEB_DEGUG_SERVER_ROUTE_CONFIG = java.nio.file.Paths.get(GspServiceUnitPathService.GetPath("main")).resolve("web/webidedebug/src/assets/").toString().Replace("/", DIRECTORY_SEPARATOR_CHAR).replace("\\", DIRECTORY_SEPARATOR_CHAR); - public static String WEB_DEGUG_SERVER_ROUTE_CONFIG =""; - - @Deprecated - public static String getProjectTemplatePath() - { - return ""; - } - - public static String getAppDebugPath(String projectName) - { - return ""; - //return java.nio.file.Paths.get(GspServiceUnitPathService.GetPath("main")).resolve("web/webidedebug/package/" + projectName).toString().Replace("/", DIRECTORY_SEPARATOR_CHAR).replace("\\", DIRECTORY_SEPARATOR_CHAR); - } - - public static String getPublishPath(String projectName) - { - return ""; - //return FileUtility.combine(GspServiceUnitPathService.GetPath("main"), "web/webidedebug/package", projectName, "src/app/modules/", projectName).Replace("/", DIRECTORY_SEPARATOR_CHAR).Replace("\\", DIRECTORY_SEPARATOR_CHAR); - } - - public static String getModuleCompileInfo(String projectName) - { - return ""; - //return FileUtility.combine(GspServiceUnitPathService.GetPath("main"), "web/webidedebug/package", projectName, "src/assets").replace("/", DIRECTORY_SEPARATOR_CHAR).replace("\\", DIRECTORY_SEPARATOR_CHAR); - } -} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java index cea45a46..efdd00d9 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java @@ -60,14 +60,7 @@ public class FrontendProjectExtractor implements ExtractAction { * @param terminalType 类型 分为PC和移动 */ private void extract(ExtractContext context, String projectName, TerminalType terminalType) { - String projectPath = context.getProjectPath(); - // TODO: 规范工程类型后,开放这部分代码 - // string projectType = FrontendProjectUtility.GetProjectType(projectPath); - // if (projectType != "frontend") // 非前端工程,直接返回 - // { - // return; - // } // 表单元数据打包后目录 String sourceExtractPath = getSourceExtractPath(projectPath, projectName, terminalType, false); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java index 485c8b25..94bee70d 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java @@ -30,12 +30,8 @@ public class FrontendProjectService { } - private static class FrontendProjectServiceInstance { - public static FrontendProjectService frontendProjectService = new FrontendProjectService(); - } - public static FrontendProjectService getInstance() { - return FrontendProjectServiceInstance.frontendProjectService; + return new FrontendProjectService(); } /** diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/ZeroCodeWebServiceImpl.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/ZeroCodeWebServiceImpl.java index f022bdc1..7baea069 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/ZeroCodeWebServiceImpl.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/ZeroCodeWebServiceImpl.java @@ -16,6 +16,7 @@ package com.inspur.edp.web.frontendproject.webservice; +import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.entity.ResultCode; import com.inspur.edp.web.common.entity.ResultMessage; import com.inspur.edp.web.common.io.FileUtility; @@ -38,22 +39,22 @@ import java.io.IOException; public class ZeroCodeWebServiceImpl implements ZeroCodeWebService { @Override - public ResultMessage beforeNavigateLoadFile(String indexHtmlUrl, String routeUri, String options) { + public ResultMessage beforeNavigateLoadFile(String indexHtmlUrl, String routeUri, String options) { if (StringUtility.isNullOrEmpty(indexHtmlUrl)) { - throw new RuntimeException("请设置默认首页参数"); + throw new WebCustomException("请设置默认首页参数"); } if (StringUtility.isNullOrEmpty(routeUri)) { - throw new RuntimeException("请设置路由参数"); + throw new WebCustomException("请设置路由参数"); } // 调整成为/ 形式 String indexHtmlPath = FileUtility.getPlatformIndependentPath(indexHtmlUrl); String indexHtmlName = "index.html"; if (!StringUtils.endsWith(indexHtmlPath, indexHtmlName)) { - throw new RuntimeException("默认首页参数必须以index.html作为后缀,请修正!"); + throw new WebCustomException("默认首页参数必须以index.html作为后缀,请修正!"); } String projectPath = indexHtmlPath.substring(0, indexHtmlPath.length() - indexHtmlName.length()); if (StringUtility.isNullOrEmpty(projectPath) || projectPath.equals("/")) { - throw new RuntimeException("请设置正确的路径参数,例如:apps/scm/sd/sales/index.html"); + throw new WebCustomException("请设置正确的路径参数,例如:apps/scm/sd/sales/index.html"); } String[] arrProjectPathSplit = projectPath.split("/"); @@ -68,7 +69,7 @@ public class ZeroCodeWebServiceImpl implements ZeroCodeWebService { } ScriptCacheResponse scriptCacheResponse = LocalServerVersionManager.getSingleInstance().checkVersionWithProjectNameAndRelativePath(projectName, projectPath); if (!scriptCacheResponse.isSuccess()) { - throw new RuntimeException(scriptCacheResponse.getErrorMessage()); + throw new WebCustomException(scriptCacheResponse.getErrorMessage()); } // 执行路由跳转 -- Gitee From a97ca183a58532cfcdef0737d80d17dae8dae64a Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 14:03:17 +0800 Subject: [PATCH 18/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E6=8F=90=E5=8F=96=E5=89=8D?= =?UTF-8?q?=E7=AB=AF=E5=85=83=E6=95=B0=E6=8D=AE=E9=83=A8=E7=BD=B2=E6=93=8D?= =?UTF-8?q?=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FormJsonFileManager.java | 3 +- .../FrontendProjectDeployer.java | 35 ++++++------------- .../FrontendProjectExtractor.java | 14 +------- .../deploy/FrontMetadataDeployer.java | 32 +++++++++++++++++ 4 files changed, 45 insertions(+), 39 deletions(-) create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontMetadataDeployer.java diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java index ecb276f8..ae3d161f 100644 --- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java +++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FormJsonFileManager.java @@ -18,6 +18,7 @@ package com.inspur.edp.web.jitruntimebuild.core.formjsonfilegenerator; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.logger.WebLogger; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.jitruntimebuild.api.entity.JitBuildParameter; import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum; @@ -39,7 +40,7 @@ public class FormJsonFileManager { */ public static void generateSpecificJsonFile(JitBuildParameter buildParameter, ExecuteEnvironment executeEnvironment) { String webDevPath = buildParameter.getBuildWebDevPath(); - if (buildParameter.getBuildRefMetadataList() != null && buildParameter.getBuildRefMetadataList().size() > 0) { + if (ListUtility.isNotEmpty(buildParameter.getBuildRefMetadataList())) { buildParameter.getBuildRefMetadataList().forEach(jitBuildRefMetadata -> { if (!StringUtility.isNullOrEmpty(jitBuildRefMetadata.getContent())) { JitMetadataTypeEnum metadataTypeEnum = jitBuildRefMetadata.getMetadataType(); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java index 747e83bd..4f56111c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java @@ -20,14 +20,13 @@ import com.inspur.edp.ide.setting.api.entity.Deployment; import com.inspur.edp.lcm.debugger.api.service.DebuggerService; import com.inspur.edp.lcm.metadata.api.entity.ExtractContext; import com.inspur.edp.lcm.metadata.api.entity.GspProject; -import com.inspur.edp.lcm.metadata.api.service.PackageGenerateService; -import com.inspur.edp.lcm.metadata.api.service.ProjectExtendService; import com.inspur.edp.web.common.constant.FrontendProjectConstant; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.utility.StringUtility; +import com.inspur.edp.web.frontendproject.deploy.FrontMetadataDeployer; import com.inspur.edp.web.frontendproject.webservice.FormDynamicParameter; import io.iec.edp.caf.commons.utils.SpringBeanUtils; @@ -48,10 +47,12 @@ public class FrontendProjectDeployer { return; } String projectName = GspProjectUtility.getProjectName(projectPath); - // 部署PC - deploy(projectPath, projectName, TerminalType.PC, false); - //部署mobile - deploy(projectPath, projectName, TerminalType.MOBILE, false); + + + TerminalType.rescure(terminalType -> { + // 部署PC及Mobile + deploy(projectPath, projectName, terminalType, false); + }); // 部署前端交付物至目标publish目录 deployToPublish(projectPath); @@ -126,7 +127,7 @@ public class FrontendProjectDeployer { } // 部署前端元数据 - DeployFrontMetadata(projectPath); + FrontMetadataDeployer.deploy(projectPath); } } @@ -172,7 +173,7 @@ public class FrontendProjectDeployer { FrontendProjectExtractor projectExtractor = new FrontendProjectExtractor(); projectExtractor.extract(extractContext); } catch (Exception ex) { - WebLogger.Instance.info("部署前端脚本至publish目录失败" + ex, this.getClass().getName()); + WebLogger.Instance.error("部署前端脚本至publish目录失败" + ex, this.getClass().getName()); } } @@ -243,11 +244,7 @@ public class FrontendProjectDeployer { copyI18nResource(projectPath, targetBaseDeployPath, projectName, TerminalType.PC, true); // 调用元数据的部署,把元数据也部署过去。 - long beforeDT = System.currentTimeMillis(); - DeployFrontMetadata(projectPath); - long afterDt = System.currentTimeMillis(); - long ts = afterDt - beforeDT; - WebLogger.Instance.info("部署前端元数据所需的时间为" + ts + "ms", FrontendProjectDeployer.class.getName()); + FrontMetadataDeployer.deploy(projectPath); } /** @@ -311,17 +308,5 @@ public class FrontendProjectDeployer { FileUtility.copyFolder(sourcePath, destinationPath); } - private void DeployFrontMetadata(String projectPath) { - - PackageGenerateService packageGenerateService = SpringBeanUtils.getBean(PackageGenerateService.class); - packageGenerateService.generatePackage(projectPath); - ProjectExtendService projectExtendService = SpringBeanUtils.getBean(ProjectExtendService.class); - ExtractContext extractContext = new ExtractContext(); - extractContext.setProjectPath(projectPath); - - projectExtendService.extract(projectPath); - - projectExtendService.migration(projectPath); - } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java index efdd00d9..cb30db7d 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectExtractor.java @@ -31,7 +31,7 @@ import java.util.stream.Collectors; /** - * 前端工程提取器 + * 前端工程提取器 元数据回调 */ public class FrontendProjectExtractor implements ExtractAction { @@ -73,18 +73,6 @@ public class FrontendProjectExtractor implements ExtractAction { copyFrontendProjectExtract(projectName, sourceExtractPath, targetExtractBasePath, terminalType); - // 表单发布 不提取解析表单 -// if (terminalType == TerminalType.PC) { -// // 提取解析脚本到publish目录 -// projectPath = FileUtility.combine(projectPath, "metadata"); -// String sourceDynamicFormJs = TerminalType.PC.getResolveBasePath(projectPath, true); -// if (FileUtility.exists(sourceDynamicFormJs)) { -// String formPublishPath = terminalType.getPublishPathName(); -// String targetExtractPath = FileUtility.combine(targetExtractBasePath, formPublishPath, projectName); -// FileUtility.copyFolder(sourceDynamicFormJs, targetExtractPath); -// } -// } - copyI18nResource(projectPath, targetExtractBasePath, projectName, terminalType); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontMetadataDeployer.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontMetadataDeployer.java new file mode 100644 index 00000000..edb38885 --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontMetadataDeployer.java @@ -0,0 +1,32 @@ +package com.inspur.edp.web.frontendproject.deploy; + +import com.inspur.edp.lcm.metadata.api.entity.ExtractContext; +import com.inspur.edp.lcm.metadata.api.service.PackageGenerateService; +import com.inspur.edp.lcm.metadata.api.service.ProjectExtendService; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; + + +/** + * 前端元数据部署 + * + * @author noah + */ +public class FrontMetadataDeployer { + /** + * 元数据部署 + * @param projectPath + */ + public static void deploy(String projectPath) { + + PackageGenerateService packageGenerateService = SpringBeanUtils.getBean(PackageGenerateService.class); + packageGenerateService.generatePackage(projectPath); + + ProjectExtendService projectExtendService = SpringBeanUtils.getBean(ProjectExtendService.class); + ExtractContext extractContext = new ExtractContext(); + extractContext.setProjectPath(projectPath); + + projectExtendService.extract(projectPath); + + projectExtendService.migration(projectPath); + } +} -- Gitee From f36ab66155e4cd79857afae9435bd82a882d9a55 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 14:14:53 +0800 Subject: [PATCH 19/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E6=8F=90=E5=8F=96=E5=89=8D?= =?UTF-8?q?babel=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FrontendProjectManager.java | 3 +- .../FrontendProjectUtility.java | 8 ++-- .../generate/FrontendProjectGenerate.java | 26 +---------- .../FrontendProjectGenerateForBabel.java | 44 +++++++++++++++++++ 4 files changed, 50 insertions(+), 31 deletions(-) create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerateForBabel.java diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java index 38bdbfe4..9394ed13 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java @@ -26,6 +26,7 @@ import com.inspur.edp.web.frontendproject.formdynamic.FormDynamicMetadataResolve import com.inspur.edp.web.frontendproject.formdynamic.FormDynamicParameterValidator; import com.inspur.edp.web.frontendproject.formdynamic.FormDynamicSourceCodeGenerate; import com.inspur.edp.web.frontendproject.generate.FrontendProjectGenerate; +import com.inspur.edp.web.frontendproject.generate.FrontendProjectGenerateForBabel; import com.inspur.edp.web.frontendproject.webservice.FormDynamicParameter; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; @@ -93,7 +94,7 @@ public class FrontendProjectManager { public final void babelBuildAndDeploy(String projectPath, ChosenFormList buildFormList) { FrontendProjectService service = FrontendProjectService.getInstance(); service.resolveFormMetadatas(projectPath, buildFormList); - FrontendProjectGenerate.generateFrontendProjectForBabel(projectPath); + FrontendProjectGenerateForBabel.generate(projectPath); FrontendProjectBuild.buildFrontendProjectForBabel(projectPath); FrontendProjectDeploy.deployFrontendProjectForBabel(projectPath); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java index 74b8a681..020b86e0 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectUtility.java @@ -91,16 +91,14 @@ public class FrontendProjectUtility { */ public static String getProjectPathWithDevRootPath(String projectPath) { String projectPathWithDevRootPath = projectPath; - - if (!checkIfStartsWithDevRoot(projectPath)) { - String devRootPath = MetadataUtility.getInstance().getDevRootPath(); + String devRootPath = MetadataUtility.getInstance().getDevRootPath(); + if (!checkIfStartsWithDevRoot(projectPath, devRootPath)) { projectPathWithDevRootPath = java.nio.file.Paths.get(devRootPath).resolve(projectPath).toString(); } return projectPathWithDevRootPath; } - private static boolean checkIfStartsWithDevRoot(String projectPath) { - String devRootPath = MetadataUtility.getInstance().getDevRootPath(); + private static boolean checkIfStartsWithDevRoot(String projectPath, String devRootPath) { return StringUtility.startWith(FileUtility.getPlatformIndependentPath(projectPath), FileUtility.getPlatformIndependentPath(devRootPath)); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java index ad611b05..6817814b 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java @@ -79,13 +79,13 @@ public class FrontendProjectGenerate { * 基于解析后的表单代码生成前端工程 */ private static void generateFrontendProject(FrontendProjectGenerateParameter generateParameter, TerminalType terminalType) { - // TODO refNodeMOdules 设置为了null 需调整 boolean isJieXiForm = generateParameter != null && generateParameter.isForceUseJieXi(); String devRootPath = MetadataUtility.getInstance().getDevRootPath(); if (!FileUtility.isAbsolute(devRootPath)) { devRootPath = FileUtility.getAbsolutePathHead(devRootPath) + devRootPath; } JITEngineManager.generateFrontendProject(generateParameter, devRootPath, terminalType); + String targetServiceProductPath = SourceServicePathGenerator.getTargetServiceProductPath(generateParameter.getProjectPath(), terminalType, isJieXiForm); String sourceServiceProductPath = SourceServicePathGenerator.getSourceServiceProductPath(generateParameter.getProjectPath(), terminalType, generateParameter.isForceUseJieXi()); @@ -95,29 +95,5 @@ public class FrontendProjectGenerate { } } - public static void generateFrontendProjectForBabel(String projectPath) { - projectPath = FrontendProjectUtility.getProjectPathWithDevRootPath(projectPath); - - if (StringUtility.isNullOrEmpty(projectPath)) { - throw new WebCustomException("Current Project Path is Null or Empty", null, ExceptionLevel.Warning); - } - - try { - JITEngineManager.generateFrontendProjectForBabel(projectPath); - - // 生成后动作 - String babelProjectName = GspProjectUtility.getProjectName(projectPath) + "forbabel"; - String targetServiceProductPath = projectPath + "/src" + "/" + FrontendProjectConstant.PROJECT_GENERATE_PATH_FOR_BABEL + "/projects" + "/" + babelProjectName + "/src/app"; - String sourceServiceProductPath = java.nio.file.Paths.get(projectPath).resolve(TerminalType.PC.getServiceRelativePath()).toString(); - boolean isPathExists = FileUtility.exists(sourceServiceProductPath); - if (isPathExists) { - FileUtility.copyFolder(sourceServiceProductPath, targetServiceProductPath); - } - } catch (EnvironmentException ex) { - throw new WebCustomException(ex.getMessage(), ex); - } catch (RuntimeException exception) { - throw new WebCustomException(String.format("Error When Generating a Frontend Project. Current Project Path is: %1$s。 %2$s", projectPath, exception.getMessage()), exception); - } - } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerateForBabel.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerateForBabel.java new file mode 100644 index 00000000..5274a1ad --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerateForBabel.java @@ -0,0 +1,44 @@ +package com.inspur.edp.web.frontendproject.generate; + +import com.inspur.edp.web.common.constant.FrontendProjectConstant; +import com.inspur.edp.web.common.customexception.WebCustomException; +import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.environment.EnvironmentException; +import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.common.metadata.GspProjectUtility; +import com.inspur.edp.web.common.utility.StringUtility; +import com.inspur.edp.web.frontendproject.FrontendProjectUtility; +import com.inspur.edp.web.jitengine.JITEngineManager; +import io.iec.edp.caf.commons.exception.ExceptionLevel; + +/** + * 前端工程执行babel 生成 + * @author noah + */ +public class FrontendProjectGenerateForBabel { + public static void generate(String projectPath) { + projectPath = FrontendProjectUtility.getProjectPathWithDevRootPath(projectPath); + + if (StringUtility.isNullOrEmpty(projectPath)) { + throw new WebCustomException("Current Project Path is Null or Empty", null, ExceptionLevel.Warning); + } + + try { + + JITEngineManager.generateFrontendProjectForBabel(projectPath); + + // 生成后动作 + String babelProjectName = GspProjectUtility.getProjectName(projectPath) + "forbabel"; + String targetServiceProductPath = projectPath + "/src" + "/" + FrontendProjectConstant.PROJECT_GENERATE_PATH_FOR_BABEL + "/projects" + "/" + babelProjectName + "/src/app"; + String sourceServiceProductPath = java.nio.file.Paths.get(projectPath).resolve(TerminalType.PC.getServiceRelativePath()).toString(); + boolean isPathExists = FileUtility.exists(sourceServiceProductPath); + if (isPathExists) { + FileUtility.copyFolder(sourceServiceProductPath, targetServiceProductPath); + } + } catch (EnvironmentException ex) { + throw new WebCustomException(ex.getMessage(), ex); + } catch (RuntimeException exception) { + throw new WebCustomException(String.format("Error When Generating a Frontend Project. Current Project Path is: %1$s。 %2$s", projectPath, exception.getMessage()), exception); + } + } +} -- Gitee From ae661e911f7f41d82d612acef33c6db8823675e9 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 14:59:24 +0800 Subject: [PATCH 20/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E6=8F=90=E5=8F=96projectIn?= =?UTF-8?q?foManager?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resolver/ResolveFormMetadataList.java | 6 +-- .../entity/ChosenFormList.java | 9 ++-- .../FrontendProjectService.java | 25 ----------- .../config/FrontendProjectConfiguration.java | 7 ++++ .../generate/FrontendProjectGenerate.java | 4 -- .../projectinfo/ProjectInfoManager.java | 41 +++++++++++++++++++ .../FrontendProjectWebServiceImpl.java | 5 ++- 7 files changed, 59 insertions(+), 38 deletions(-) create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/projectinfo/ProjectInfoManager.java diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/resolver/ResolveFormMetadataList.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/resolver/ResolveFormMetadataList.java index bc38c40f..a4ca9bf1 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/resolver/ResolveFormMetadataList.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/resolver/ResolveFormMetadataList.java @@ -23,11 +23,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Title: ResolveFormMetadataList - * @Description: com.inspur.edp.web.frontendproject.resolver - * @Author: Noah - * @Version: V1.0 - * @Create: 2022/5/14 16:34 + * 待生成json的元数据列表信息 */ public class ResolveFormMetadataList { diff --git a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/entity/ChosenFormList.java b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/entity/ChosenFormList.java index 66c10d5e..41dd4167 100644 --- a/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/entity/ChosenFormList.java +++ b/web-frontendproject-api/src/main/java/com/inspur/edp/web/frontendproject/entity/ChosenFormList.java @@ -93,6 +93,7 @@ public class ChosenFormList { /** * 包含的列表项不为空 + * * @return */ public boolean isNotEmpty() { @@ -117,8 +118,9 @@ public class ChosenFormList { * * @param formCode */ - public void add(String formCode) { + public ChosenFormList add(String formCode) { this.addOrUpdate(formCode, false); + return this; } /** @@ -126,8 +128,9 @@ public class ChosenFormList { * * @param formCode */ - public void add(String formCode, boolean isForceDynamicForm) { + public ChosenFormList add(String formCode, boolean isForceDynamicForm) { this.addOrUpdate(formCode, isForceDynamicForm); + return this; } /** @@ -136,7 +139,7 @@ public class ChosenFormList { * @param formCode * @param isForceDynamicForm */ - public void addOrUpdate(String formCode, boolean isForceDynamicForm) { + private void addOrUpdate(String formCode, boolean isForceDynamicForm) { if (StringUtility.isNullOrEmpty(formCode)) { return; } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java index 94bee70d..06386a26 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java @@ -34,31 +34,6 @@ public class FrontendProjectService { return new FrontendProjectService(); } - /** - * 当前工程是否为前端工程 - * @param projectPath - * @return - */ - public final boolean isFrontendProject(String projectPath) { - String projectType = getProjectType(projectPath); - return projectType.equals(FrontendProjectConstant.FRONTEND_PROJECT_TYPE); - } - - private String getProjectType(String projectPath) { - if (StringUtility.isNullOrEmpty(projectPath)) { - throw new WebCustomException("Current Project Path is Null or Empty", null, ExceptionLevel.Warning); - } - - projectPath = FrontendProjectUtility.getProjectPathWithDevRootPath(projectPath); - - try { - // 提供基于全路径的接口 - return FrontendProjectUtility.getProjectType(projectPath); - } catch (RuntimeException exception) { - throw new WebCustomException(String.format("Error When Getting Project Type. Current Project Path is: %1$s", projectPath), exception); - } - } - /** * 解析表单元数据 * 生成对应的json文件 diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FrontendProjectConfiguration.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FrontendProjectConfiguration.java index 58411bf7..5e695c33 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FrontendProjectConfiguration.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FrontendProjectConfiguration.java @@ -16,6 +16,8 @@ package com.inspur.edp.web.frontendproject.config; +import com.inspur.edp.web.frontendproject.FrontendProjectManager; +import com.inspur.edp.web.frontendproject.projectinfo.ProjectInfoManager; import com.inspur.edp.web.frontendproject.webservice.FrontendProjectWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; import org.springframework.context.annotation.Bean; @@ -34,4 +36,9 @@ public class FrontendProjectConfiguration { public RESTEndpoint frontendProjectWebServiceEndPoint() { return new RESTEndpoint("/dev/main/v1.0/frontend-project", new FrontendProjectWebServiceImpl()); } + + @Bean + public ProjectInfoManager projectInfoManager() { + return new ProjectInfoManager(); + } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java index 6817814b..f70b7975 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/generate/FrontendProjectGenerate.java @@ -16,12 +16,10 @@ package com.inspur.edp.web.frontendproject.generate; -import com.inspur.edp.web.common.constant.FrontendProjectConstant; import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.environment.EnvironmentException; import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.FrontendProjectUtility; @@ -94,6 +92,4 @@ public class FrontendProjectGenerate { FileUtility.copyFolder(sourceServiceProductPath, targetServiceProductPath); } } - - } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/projectinfo/ProjectInfoManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/projectinfo/ProjectInfoManager.java new file mode 100644 index 00000000..461f2486 --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/projectinfo/ProjectInfoManager.java @@ -0,0 +1,41 @@ +package com.inspur.edp.web.frontendproject.projectinfo; + +import com.inspur.edp.web.common.constant.FrontendProjectConstant; +import com.inspur.edp.web.common.customexception.WebCustomException; +import com.inspur.edp.web.common.utility.StringUtility; +import com.inspur.edp.web.frontendproject.FrontendProjectUtility; +import io.iec.edp.caf.commons.exception.ExceptionLevel; + +/** + * 工程信息 + * @author noah + * + * 2023/7/8 14:53 + */ +public class ProjectInfoManager { + /** + * 当前工程是否为前端工程 + * + * @param projectPath + * @return + */ + public final boolean isFrontendProject(String projectPath) { + String projectType = getProjectType(projectPath); + return projectType.equals(FrontendProjectConstant.FRONTEND_PROJECT_TYPE); + } + + private String getProjectType(String projectPath) { + if (StringUtility.isNullOrEmpty(projectPath)) { + throw new WebCustomException("Current Project Path is Null or Empty", null, ExceptionLevel.Warning); + } + + projectPath = FrontendProjectUtility.getProjectPathWithDevRootPath(projectPath); + + try { + // 提供基于全路径的接口 + return FrontendProjectUtility.getProjectType(projectPath); + } catch (RuntimeException exception) { + throw new WebCustomException(String.format("Error When Getting Project Type. Current Project Path is: %1$s", projectPath), exception); + } + } +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java index 053c6913..ba9f3e06 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java @@ -30,6 +30,8 @@ import com.inspur.edp.web.frontendproject.deploy.FrontendProjectDeploy; import com.inspur.edp.web.frontendproject.entity.ChosenFormList; import com.inspur.edp.web.frontendproject.entity.IdeConfigEntity; import com.inspur.edp.web.frontendproject.generate.FrontendProjectGenerate; +import com.inspur.edp.web.frontendproject.projectinfo.ProjectInfoManager; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; import java.util.Arrays; @@ -43,7 +45,8 @@ public class FrontendProjectWebServiceImpl implements FrontendProjectWebService @Override public boolean isFrontendProject(String projectPath) { - return FrontendProjectService.getInstance().isFrontendProject(projectPath); + ProjectInfoManager projectInfoManager= SpringBeanUtils.getBean(ProjectInfoManager.class); + return projectInfoManager.isFrontendProject(projectPath); } @Override -- Gitee From 7d669d4025b571dc7310722a003b2fa85ec84c28 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 15:07:32 +0800 Subject: [PATCH 21/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E6=8F=90=E5=8F=96=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E8=87=B3publish=E5=85=AC=E5=85=B1=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FrontendProjectDeployer.java | 32 ++-------------- .../FrontendProjectManager.java | 6 +-- ...ploy.java => FrontendProjectDeployer.java} | 9 ++--- .../deploy/ProjectDeployerForBabel.java | 8 ++++ .../deploy/ProjectDeployerToPublish.java | 37 +++++++++++++++++++ .../FrontendProjectWebServiceImpl.java | 7 ++-- 6 files changed, 58 insertions(+), 41 deletions(-) rename web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/{FrontendProjectDeploy.java => FrontendProjectDeployer.java} (85%) create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerForBabel.java create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerToPublish.java diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java index 4f56111c..a6183d18 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectDeployer.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.frontendproject; import com.inspur.edp.ide.setting.api.entity.Deployment; import com.inspur.edp.lcm.debugger.api.service.DebuggerService; -import com.inspur.edp.lcm.metadata.api.entity.ExtractContext; import com.inspur.edp.lcm.metadata.api.entity.GspProject; import com.inspur.edp.web.common.constant.FrontendProjectConstant; import com.inspur.edp.web.common.entity.TerminalType; @@ -27,6 +26,7 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.deploy.FrontMetadataDeployer; +import com.inspur.edp.web.frontendproject.deploy.ProjectDeployerToPublish; import com.inspur.edp.web.frontendproject.webservice.FormDynamicParameter; import io.iec.edp.caf.commons.utils.SpringBeanUtils; @@ -55,7 +55,7 @@ public class FrontendProjectDeployer { }); // 部署前端交付物至目标publish目录 - deployToPublish(projectPath); + ProjectDeployerToPublish.deploy(projectPath); } /** @@ -76,7 +76,7 @@ public class FrontendProjectDeployer { deploy(projectPath, projectName, TerminalType.PC, isUseSingleForm); //部署mobile //deploy(projectPath, projectName, TerminalType.MOBILE, isJieXiForm); - deployToPublish(projectPath); + ProjectDeployerToPublish.deploy(projectPath); } else { // 仅拷贝metadata.js 及其对应的service编译后的脚本 String targetDeployBasePath = getTargetDeployBasePath(projectPath, TerminalType.PC); @@ -110,11 +110,6 @@ public class FrontendProjectDeployer { } } - // 执行metadata.js 文件拷贝 -// String dynamicFormMetadataJsFilenmae = DynamicFormMetaFileNameGenerator.generateMetaFileName(jieXiParameter.getFormCode()); -// String dynamicFormMetadataJs = FileUtility.combine(strFormPath, dynamicFormMetadataJsFilenmae); -// String targetMetadataJsFilePath = FileUtility.combine(targetFormMetadataPath, dynamicFormMetadataJsFilenmae); -// FileUtility.copyFile(dynamicFormMetadataJs, targetMetadataJsFilePath, true); //复制 String strFormServicePath = FileUtility.combineOptional(projectPath, "src", FrontendProjectConstant.PROJECT_GENERATE_PATH_FOR_Dynamic, "services", jieXiParameter.getFormCode().toLowerCase()); @@ -155,27 +150,6 @@ public class FrontendProjectDeployer { } } - /** - * 部署前端交付物至publish目录 - * - * @param projectPath - */ - private void deployToPublish(String projectPath) { - try { - GspProject projectInfo = GspProjectUtility.getProjectInformation(projectPath); - String projectName = projectInfo.getMetadataProjectName(); - // 移除工程名后的路径 - projectPath = projectPath.substring(0, projectPath.toLowerCase().lastIndexOf(projectName.toLowerCase()) + projectName.length()); - - ExtractContext extractContext = new ExtractContext(); - extractContext.setProjectPath(projectPath); - extractContext.setDeployPath(projectInfo.getSuDeploymentPath()); - FrontendProjectExtractor projectExtractor = new FrontendProjectExtractor(); - projectExtractor.extract(extractContext); - } catch (Exception ex) { - WebLogger.Instance.error("部署前端脚本至publish目录失败" + ex, this.getClass().getName()); - } - } private String getTargetDeployBasePath(String projectPath, TerminalType terminalType) { String targetDeployBasePath = ""; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java index 9394ed13..5707cbe1 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectManager.java @@ -20,7 +20,7 @@ import com.inspur.edp.web.common.entity.ResultCode; import com.inspur.edp.web.common.entity.ResultMessage; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.frontendproject.build.FrontendProjectBuild; -import com.inspur.edp.web.frontendproject.deploy.FrontendProjectDeploy; +import com.inspur.edp.web.frontendproject.deploy.FrontendProjectDeployer; import com.inspur.edp.web.frontendproject.entity.ChosenFormList; import com.inspur.edp.web.frontendproject.formdynamic.FormDynamicMetadataResolver; import com.inspur.edp.web.frontendproject.formdynamic.FormDynamicParameterValidator; @@ -96,7 +96,7 @@ public class FrontendProjectManager { service.resolveFormMetadatas(projectPath, buildFormList); FrontendProjectGenerateForBabel.generate(projectPath); FrontendProjectBuild.buildFrontendProjectForBabel(projectPath); - FrontendProjectDeploy.deployFrontendProjectForBabel(projectPath); + FrontendProjectDeployer.deployFrontendProjectForBabel(projectPath); } /** @@ -136,7 +136,7 @@ public class FrontendProjectManager { // 执行代码部署 // 单个表单的解析 整体工程的解析 - FrontendProjectDeploy.deployFrontendProjectForJieXi(dynamicParameter); + FrontendProjectDeployer.deployFrontendProjectForJieXi(dynamicParameter); return ResultCode.success(); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontendProjectDeploy.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontendProjectDeployer.java similarity index 85% rename from web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontendProjectDeploy.java rename to web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontendProjectDeployer.java index 2f8bf0c7..62f81741 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontendProjectDeploy.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/FrontendProjectDeployer.java @@ -18,7 +18,6 @@ package com.inspur.edp.web.frontendproject.deploy; import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.utility.StringUtility; -import com.inspur.edp.web.frontendproject.FrontendProjectDeployer; import com.inspur.edp.web.frontendproject.FrontendProjectUtility; import com.inspur.edp.web.frontendproject.webservice.FormDynamicParameter; import io.iec.edp.caf.commons.exception.ExceptionLevel; @@ -28,7 +27,7 @@ import io.iec.edp.caf.commons.exception.ExceptionLevel; * * @author guozhiqi */ -public class FrontendProjectDeploy { +public class FrontendProjectDeployer { public static void deployFrontendProject(String projectPath) { projectPath = FrontendProjectUtility.getProjectPathWithDevRootPath(projectPath); @@ -37,7 +36,7 @@ public class FrontendProjectDeploy { } try { - FrontendProjectDeployer frontendProjectDeployer = new FrontendProjectDeployer(); + com.inspur.edp.web.frontendproject.FrontendProjectDeployer frontendProjectDeployer = new com.inspur.edp.web.frontendproject.FrontendProjectDeployer(); frontendProjectDeployer.deploy(projectPath); } catch (RuntimeException exception) { throw new WebCustomException(String.format("Error When Deploying a Frontend. Current Project Path is: %1$s", projectPath), exception); @@ -57,7 +56,7 @@ public class FrontendProjectDeploy { } try { - FrontendProjectDeployer frontendProjectDeployer = new FrontendProjectDeployer(); + com.inspur.edp.web.frontendproject.FrontendProjectDeployer frontendProjectDeployer = new com.inspur.edp.web.frontendproject.FrontendProjectDeployer(); frontendProjectDeployer.deployForJieXi(projectPath, dynamicParameter); } catch (RuntimeException exception) { throw new WebCustomException(String.format("Error When Deploying a Frontend. Current Project Path is: %1$s", projectPath), exception); @@ -77,7 +76,7 @@ public class FrontendProjectDeploy { } try { - FrontendProjectDeployer frontendProjectDeployer = new FrontendProjectDeployer(); + com.inspur.edp.web.frontendproject.FrontendProjectDeployer frontendProjectDeployer = new com.inspur.edp.web.frontendproject.FrontendProjectDeployer(); frontendProjectDeployer.deployForBabel(projectPath); } catch (RuntimeException exception) { throw new WebCustomException(String.format("Error When Deploying a Frontend. Current Project Path is: %1$s", projectPath), exception); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerForBabel.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerForBabel.java new file mode 100644 index 00000000..a709ffda --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerForBabel.java @@ -0,0 +1,8 @@ +package com.inspur.edp.web.frontendproject.deploy; + +/** + * @author noah + * 2023/7/8 15:00 + */ +public class ProjectDeployerForBabel { +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerToPublish.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerToPublish.java new file mode 100644 index 00000000..016df357 --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/deploy/ProjectDeployerToPublish.java @@ -0,0 +1,37 @@ +package com.inspur.edp.web.frontendproject.deploy; + +import com.inspur.edp.lcm.metadata.api.entity.ExtractContext; +import com.inspur.edp.lcm.metadata.api.entity.GspProject; +import com.inspur.edp.web.common.logger.WebLogger; +import com.inspur.edp.web.common.metadata.GspProjectUtility; +import com.inspur.edp.web.frontendproject.FrontendProjectExtractor; + +/** + * 部署交付物到publish目录 + * + * @author noah + * 2023/7/8 15:04 + */ +public class ProjectDeployerToPublish { + /** + * 部署前端交付物至publish目录 + * + * @param projectPath + */ + public static void deploy(String projectPath) { + try { + GspProject projectInfo = GspProjectUtility.getProjectInformation(projectPath); + String projectName = projectInfo.getMetadataProjectName(); + // 移除工程名后的路径 + projectPath = projectPath.substring(0, projectPath.toLowerCase().lastIndexOf(projectName.toLowerCase()) + projectName.length()); + + ExtractContext extractContext = new ExtractContext(); + extractContext.setProjectPath(projectPath); + extractContext.setDeployPath(projectInfo.getSuDeploymentPath()); + FrontendProjectExtractor projectExtractor = new FrontendProjectExtractor(); + projectExtractor.extract(extractContext); + } catch (Exception ex) { + WebLogger.Instance.error("部署前端脚本至publish目录失败" + ex, ProjectDeployerToPublish.class.getName()); + } + } +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java index ba9f3e06..2f863fb2 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/webservice/FrontendProjectWebServiceImpl.java @@ -24,9 +24,8 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.FrontendProjectManager; -import com.inspur.edp.web.frontendproject.FrontendProjectService; import com.inspur.edp.web.frontendproject.build.FrontendProjectBuild; -import com.inspur.edp.web.frontendproject.deploy.FrontendProjectDeploy; +import com.inspur.edp.web.frontendproject.deploy.FrontendProjectDeployer; import com.inspur.edp.web.frontendproject.entity.ChosenFormList; import com.inspur.edp.web.frontendproject.entity.IdeConfigEntity; import com.inspur.edp.web.frontendproject.generate.FrontendProjectGenerate; @@ -96,13 +95,13 @@ public class FrontendProjectWebServiceImpl implements FrontendProjectWebService @Override public void deployFrontendProject(String projectPath) { - FrontendProjectDeploy.deployFrontendProject(projectPath); + FrontendProjectDeployer.deployFrontendProject(projectPath); } @Override public void oneKeyDeployFrontendProject(String projectPath) { FrontendProjectManager.getInstance().resolveAndGenerateAndBuildFrontendProject(projectPath); - FrontendProjectDeploy.deployFrontendProject(projectPath); + FrontendProjectDeployer.deployFrontendProject(projectPath); } /** -- Gitee From 1c33a9964f7865bcb0f532489af2f59fdb4b6167 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 15:27:34 +0800 Subject: [PATCH 22/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=B0=83=E6=95=B4npm=20?= =?UTF-8?q?=E5=8C=85=E7=89=88=E6=9C=ACcheck?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web-frontendproject/pom.xml | 2 +- .../NpmPackageCheckUpdate.java | 9 +- .../api/service/NpmPackageInstallService.java | 16 ++++ .../api/service/NpmPackageService.java | 26 ++++++ .../core/config/NpmPackageConfiguration.java | 6 +- ...java => NpmPackageInstallServiceImpl.java} | 7 +- .../core/service/NpmPackageService.java | 74 ---------------- .../NpmPackageServiceImpl.java} | 84 ++++++++++++------- .../NpmPackageInstallWebServiceImpl.java | 13 ++- .../webservice/NpmPackageWebServiceImpl.java | 68 +++++++++++++++ 10 files changed, 186 insertions(+), 119 deletions(-) create mode 100644 web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageInstallService.java create mode 100644 web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageService.java rename web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/{NpmPackageInstallService.java => NpmPackageInstallServiceImpl.java} (78%) delete mode 100644 web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageService.java rename web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/{webservice/NpmPacakgeWebServiceImpl.java => service/NpmPackageServiceImpl.java} (54%) create mode 100644 web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageWebServiceImpl.java diff --git a/web-frontendproject/pom.xml b/web-frontendproject/pom.xml index 032f6c8c..ee92bc89 100644 --- a/web-frontendproject/pom.xml +++ b/web-frontendproject/pom.xml @@ -66,7 +66,7 @@ com.inspur.edp - web-npmpackage-core + web-npmpackage-api com.inspur.edp diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/NpmPackageCheckUpdate.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/NpmPackageCheckUpdate.java index 6afb2627..311636f6 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/NpmPackageCheckUpdate.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/NpmPackageCheckUpdate.java @@ -17,15 +17,18 @@ package com.inspur.edp.web.frontendproject; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; -import com.inspur.edp.web.npmpackage.core.webservice.NpmPacakgeWebServiceImpl; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageService; +import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageWebService; +import com.inspur.edp.web.npmpackage.core.webservice.NpmPackageWebServiceImpl; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; /** * @author guozhiqi */ public class NpmPackageCheckUpdate { public static NpmPackageResponse check() { - NpmPacakgeWebServiceImpl npmPacakgeWebServiceImpl = new NpmPacakgeWebServiceImpl(); - return npmPacakgeWebServiceImpl.checkUpdate(); + NpmPackageService npmPackageService = SpringBeanUtils.getBean(NpmPackageService.class); + return npmPackageService.checkUpdate(); } } diff --git a/web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageInstallService.java b/web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageInstallService.java new file mode 100644 index 00000000..58c265d4 --- /dev/null +++ b/web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageInstallService.java @@ -0,0 +1,16 @@ +package com.inspur.edp.web.npmpackage.api.service; + +import com.inspur.edp.web.npmpackage.api.entity.NpmInstallParameter; +import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; + +/** + * npm 包安装服务 + * + * @author noah + * 2023/7/8 15:12 + */ +public interface NpmPackageInstallService { + NpmPackageResponse install(NpmInstallParameter npmInstallParameter); + + NpmPackageResponse installCheck(NpmInstallParameter npmInstallParameter); +} diff --git a/web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageService.java b/web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageService.java new file mode 100644 index 00000000..a7055964 --- /dev/null +++ b/web-npmpackage-api/src/main/java/com/inspur/edp/web/npmpackage/api/service/NpmPackageService.java @@ -0,0 +1,26 @@ +package com.inspur.edp.web.npmpackage.api.service; + +import com.inspur.edp.web.npmpackage.api.entity.NpmPackageCheckUpdateOptions; +import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; + +/** + * npm 包service + * + * @author noah + * 2023/7/8 15:11 + */ +public interface NpmPackageService { + /** + * 检查是否发生更新 + * + * @param checkUpdateOptions + * @return + */ + NpmPackageResponse checkUpdate(NpmPackageCheckUpdateOptions checkUpdateOptions); + + /** + * 检查是否发生更新 + * @return + */ + NpmPackageResponse checkUpdate(); +} diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java index 98a1dd15..ae30ecf5 100644 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java @@ -17,7 +17,7 @@ package com.inspur.edp.web.npmpackage.core.config; import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageWebService; -import com.inspur.edp.web.npmpackage.core.webservice.NpmPacakgeWebServiceImpl; +import com.inspur.edp.web.npmpackage.core.webservice.NpmPackageWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -29,11 +29,11 @@ import org.springframework.context.annotation.Configuration; public class NpmPackageConfiguration { @Bean public NpmPackageWebService npmPackageWebService(){ - return new NpmPacakgeWebServiceImpl(); + return new NpmPackageWebServiceImpl(); } @Bean public RESTEndpoint NpmPackageWebServiceEndpoint(){ - return new RESTEndpoint("/dev/main/web/v1.0/npmpackage", new NpmPacakgeWebServiceImpl()); + return new RESTEndpoint("/dev/main/web/v1.0/npmpackage", new NpmPackageWebServiceImpl()); } } diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageInstallService.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageInstallServiceImpl.java similarity index 78% rename from web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageInstallService.java rename to web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageInstallServiceImpl.java index 17b0de70..dbf505ab 100644 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageInstallService.java +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageInstallServiceImpl.java @@ -18,6 +18,7 @@ package com.inspur.edp.web.npmpackage.core.service; import com.inspur.edp.web.npmpackage.api.entity.NpmInstallParameter; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageInstallService; import com.inspur.edp.web.npmpackage.core.npminstall.NpmInstallManager; /** @@ -25,18 +26,18 @@ import com.inspur.edp.web.npmpackage.core.npminstall.NpmInstallManager; * * @author guozhiqi */ -public class NpmPackageInstallService { +public class NpmPackageInstallServiceImpl implements NpmPackageInstallService { /** * 对外公共 npm包install * * @param npmInstallParameter * @return */ - public static NpmPackageResponse install(NpmInstallParameter npmInstallParameter) { + public NpmPackageResponse install(NpmInstallParameter npmInstallParameter) { return NpmInstallManager.npmInstall(npmInstallParameter, true); } - public static NpmPackageResponse installCheck(NpmInstallParameter npmInstallParameter) { + public NpmPackageResponse installCheck(NpmInstallParameter npmInstallParameter) { return NpmInstallManager.npmInstallCheck(npmInstallParameter); } } diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageService.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageService.java deleted file mode 100644 index 60333335..00000000 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageService.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.npmpackage.core.service; - -import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.common.logger.WebLogger; -import com.inspur.edp.web.npmpackage.api.entity.NpmInstallParameter; -import com.inspur.edp.web.npmpackage.api.entity.NpmPackageCheckUpdateOptions; -import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; -import com.inspur.edp.web.npmpackage.core.npminstall.NodeModulesPathGenerator; -import com.inspur.edp.web.npmpackage.core.npmpackagecheck.NpmPackageCheck; - -/** - * npm 包 manager service - * - * @author guozhiqi - */ -public class NpmPackageService { - /** - * 执行npm 版本检测 - * - * @param checkUpdateOptions - * @return - */ - public static NpmPackageResponse checkUpdate(NpmPackageCheckUpdateOptions checkUpdateOptions) { - - // 升级工具中不进行检测 - if (checkUpdateOptions.isUpgradeTool()) { - NpmPackageResponse npmPackageResponse = new NpmPackageResponse(); - npmPackageResponse.setSuccess(true); - npmPackageResponse.setErrorMessage("升级工具执行,npm包版本不进行检测"); - return npmPackageResponse; - } - - String currentServerPath = FileUtility.getCurrentWorkPath(checkUpdateOptions.isUpgradeTool()); - - - // 判断是否存在node_modules 避免被误删除的情况 - NpmInstallParameter npmInstallParameter = new NpmInstallParameter(); - npmInstallParameter.setExecuteEnvironment(checkUpdateOptions.getExecuteEnvironment()); - npmInstallParameter.setMobile(checkUpdateOptions.isMobile()); - String nodeModulesPath = NodeModulesPathGenerator.generatePackageJsonPath(npmInstallParameter, currentServerPath); - nodeModulesPath = FileUtility.combine(nodeModulesPath, "node_modules"); - if (!FileUtility.exists(nodeModulesPath) || FileUtility.isEmptyFolder(nodeModulesPath)) { - String tip = "未配置编译依赖node_modules,请在 Npm包管理进行在线安装。node_modules路径为:" + nodeModulesPath; - WebLogger.Instance.info(tip, NpmPackageService.class.getName()); - return NpmPackageResponse.createError(tip); - } - - // 是否需要update标识 - boolean npmCheckFlag = NpmPackageCheck.check(checkUpdateOptions); - - - if (npmCheckFlag) { - return NpmPackageResponse.create(); - } else { - return NpmPackageResponse.createError("npm包版本存在更新,为保证最终脚本运行正确,需先进行更新。\r\n请在选项->设置->Npm包管理进行更新!"); - } - } -} diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImpl.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageServiceImpl.java similarity index 54% rename from web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImpl.java rename to web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageServiceImpl.java index 404f3de4..f5cf9d91 100644 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPacakgeWebServiceImpl.java +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/service/NpmPackageServiceImpl.java @@ -14,49 +14,32 @@ * limitations under the License. */ -package com.inspur.edp.web.npmpackage.core.webservice; +package com.inspur.edp.web.npmpackage.core.service; import com.inspur.edp.web.common.environment.ExecuteEnvironment; +import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.common.logger.WebLogger; +import com.inspur.edp.web.npmpackage.api.entity.NpmInstallParameter; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageCheckUpdateOptions; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; import com.inspur.edp.web.npmpackage.api.entity.settings.NpmRepository; import com.inspur.edp.web.npmpackage.api.entity.settings.NpmSettings; import com.inspur.edp.web.npmpackage.api.entity.settings.NpmUpdatePolicy; -import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageWebService; -import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingEncryptService; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageService; +import com.inspur.edp.web.npmpackage.core.npminstall.NodeModulesPathGenerator; +import com.inspur.edp.web.npmpackage.core.npmpackagecheck.NpmPackageCheck; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingManager; -import com.inspur.edp.web.npmpackage.core.service.NpmPackageService; /** - * npm 包webservice + * npm 包 manager service * - * @author noah + * @author guozhiqi */ -public class NpmPacakgeWebServiceImpl implements NpmPackageWebService { - @Override - public NpmSettings getNpmSetting() { - NpmSettings npmSettings = NpmSettingManager.getNpmSetting(false); - - npmSettings = NpmSettingEncryptService.getInstance().encrypt(npmSettings); - - return npmSettings; - } - - +public class NpmPackageServiceImpl implements NpmPackageService { /** - * 保存npm配置信息 - * - * @param npmSettings npm配置信息 + * 检测是否发生npm包变化 * @return */ - @Override - public NpmPackageResponse saveNpmSetting(NpmSettings npmSettings) { - npmSettings=NpmSettingEncryptService.getInstance().deEncrypt(npmSettings); - - return NpmSettingManager.saveNpmSetting(npmSettings); - } - - @Override public NpmPackageResponse checkUpdate() { NpmSettings npmSettings = NpmSettingManager.getNpmSetting(false); // 如果为离线模式 @@ -95,12 +78,51 @@ public class NpmPacakgeWebServiceImpl implements NpmPackageWebService { NpmPackageCheckUpdateOptions checkUpdateOptions = new NpmPackageCheckUpdateOptions(); checkUpdateOptions.setExecuteEnvironment(ExecuteEnvironment.Design); checkUpdateOptions.setUpgradeTool(false); - return NpmPackageService.checkUpdate(checkUpdateOptions); + return this.checkUpdate(checkUpdateOptions); } -// 如果为编译前 那么自动执行无需提示 + // 如果为编译前 那么自动执行无需提示 return NpmPackageResponse.create(); - } + /** + * 执行npm 版本检测 + * + * @param checkUpdateOptions + * @return + */ + public NpmPackageResponse checkUpdate(NpmPackageCheckUpdateOptions checkUpdateOptions) { + + // 升级工具中不进行检测 + if (checkUpdateOptions.isUpgradeTool()) { + NpmPackageResponse npmPackageResponse = new NpmPackageResponse(); + npmPackageResponse.setSuccess(true); + npmPackageResponse.setErrorMessage("升级工具执行,npm包版本不进行检测"); + return npmPackageResponse; + } + + String currentServerPath = FileUtility.getCurrentWorkPath(checkUpdateOptions.isUpgradeTool()); + + // 判断是否存在node_modules 避免被误删除的情况 + NpmInstallParameter npmInstallParameter = new NpmInstallParameter(); + npmInstallParameter.setExecuteEnvironment(checkUpdateOptions.getExecuteEnvironment()); + npmInstallParameter.setMobile(checkUpdateOptions.isMobile()); + String nodeModulesPath = NodeModulesPathGenerator.generatePackageJsonPath(npmInstallParameter, currentServerPath); + nodeModulesPath = FileUtility.combine(nodeModulesPath, "node_modules"); + if (!FileUtility.exists(nodeModulesPath) || FileUtility.isEmptyFolder(nodeModulesPath)) { + String tip = "未配置编译依赖node_modules,请在 Npm包管理进行在线安装。node_modules路径为:" + nodeModulesPath; + WebLogger.Instance.info(tip, NpmPackageServiceImpl.class.getName()); + return NpmPackageResponse.createError(tip); + } + + // 是否需要update标识 + boolean npmCheckFlag = NpmPackageCheck.check(checkUpdateOptions); + + + if (npmCheckFlag) { + return NpmPackageResponse.create(); + } else { + return NpmPackageResponse.createError("npm包版本存在更新,为保证最终脚本运行正确,需先进行更新。\r\n请在选项->设置->Npm包管理进行更新!"); + } + } } diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageInstallWebServiceImpl.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageInstallWebServiceImpl.java index 697377a8..1e105450 100644 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageInstallWebServiceImpl.java +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageInstallWebServiceImpl.java @@ -21,11 +21,13 @@ import com.inspur.edp.web.npmpackage.api.entity.NpmInstallParameter; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponseLevel; import com.inspur.edp.web.npmpackage.api.entity.settings.NpmSettings; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageInstallService; import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageInstallWebService; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingConvertor; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingEncryptService; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingManager; -import com.inspur.edp.web.npmpackage.core.service.NpmPackageInstallService; +import com.inspur.edp.web.npmpackage.core.service.NpmPackageInstallServiceImpl; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; /** * npm 包安装webservice @@ -33,6 +35,7 @@ import com.inspur.edp.web.npmpackage.core.service.NpmPackageInstallService; * @author guozhiqi */ public class NpmPackageInstallWebServiceImpl implements NpmPackageInstallWebService { + @Override public NpmPackageResponse install(NpmSettings npmSettings) { if (npmSettings == null) { @@ -45,7 +48,8 @@ public class NpmPackageInstallWebServiceImpl implements NpmPackageInstallWebServ NpmInstallParameter npmInstallParameter = NpmSettingConvertor.convertFromNpmSetting(npmSettings); // 执行npm 安装 - NpmPackageResponse npmPackageResponse = NpmPackageInstallService.install(npmInstallParameter); + NpmPackageInstallService npmPackageInstallService = SpringBeanUtils.getBean(NpmPackageInstallService.class); + NpmPackageResponse npmPackageResponse = npmPackageInstallService.install(npmInstallParameter); try { // 保存最后的更新时间 @@ -86,12 +90,13 @@ public class NpmPackageInstallWebServiceImpl implements NpmPackageInstallWebServ */ @Override public NpmPackageResponse installCheck(NpmSettings installParameter) { - installParameter=NpmSettingEncryptService.getInstance().deEncrypt(installParameter); + installParameter = NpmSettingEncryptService.getInstance().deEncrypt(installParameter); // 获取默认的npm 仓库配置 NpmSettings npmSettings = NpmSettingManager.getNpmSetting(false); NpmInstallParameter npmInstallParameter = NpmSettingConvertor.convertFromNpmSetting(npmSettings); // 使用默认配置进行在线install - return NpmPackageInstallService.installCheck(npmInstallParameter); + NpmPackageInstallService npmPackageInstallService = SpringBeanUtils.getBean(NpmPackageInstallService.class); + return npmPackageInstallService.installCheck(npmInstallParameter); } } diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageWebServiceImpl.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageWebServiceImpl.java new file mode 100644 index 00000000..a1513fe5 --- /dev/null +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/webservice/NpmPackageWebServiceImpl.java @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.inspur.edp.web.npmpackage.core.webservice; + +import com.inspur.edp.web.common.environment.ExecuteEnvironment; +import com.inspur.edp.web.npmpackage.api.entity.NpmPackageCheckUpdateOptions; +import com.inspur.edp.web.npmpackage.api.entity.NpmPackageResponse; +import com.inspur.edp.web.npmpackage.api.entity.settings.NpmRepository; +import com.inspur.edp.web.npmpackage.api.entity.settings.NpmSettings; +import com.inspur.edp.web.npmpackage.api.entity.settings.NpmUpdatePolicy; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageService; +import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageWebService; +import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingEncryptService; +import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingManager; +import com.inspur.edp.web.npmpackage.core.service.NpmPackageServiceImpl; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; + +/** + * npm 包webservice + * + * @author noah + */ +public class NpmPackageWebServiceImpl implements NpmPackageWebService { + @Override + public NpmSettings getNpmSetting() { + NpmSettings npmSettings = NpmSettingManager.getNpmSetting(false); + + npmSettings = NpmSettingEncryptService.getInstance().encrypt(npmSettings); + + return npmSettings; + } + + + /** + * 保存npm配置信息 + * + * @param npmSettings npm配置信息 + * @return + */ + @Override + public NpmPackageResponse saveNpmSetting(NpmSettings npmSettings) { + npmSettings = NpmSettingEncryptService.getInstance().deEncrypt(npmSettings); + + return NpmSettingManager.saveNpmSetting(npmSettings); + } + + @Override + public NpmPackageResponse checkUpdate() { + NpmPackageService npmPackageService = SpringBeanUtils.getBean(NpmPackageService.class); + return npmPackageService.checkUpdate(); + } + + +} -- Gitee From cf01531ffb69c85e01dcb3ef3182da19a165c332 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 15:29:07 +0800 Subject: [PATCH 23/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=B0=83=E6=95=B4npm=20?= =?UTF-8?q?=E5=8C=85=E7=89=88=E6=9C=ACcheck?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/config/NpmPackageConfiguration.java | 11 +++++++++-- .../core/config/NpmPackageInstallConfiguration.java | 11 +++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java index ae30ecf5..5c8f7858 100644 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageConfiguration.java @@ -16,7 +16,9 @@ package com.inspur.edp.web.npmpackage.core.config; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageService; import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageWebService; +import com.inspur.edp.web.npmpackage.core.service.NpmPackageServiceImpl; import com.inspur.edp.web.npmpackage.core.webservice.NpmPackageWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; import org.springframework.context.annotation.Bean; @@ -28,12 +30,17 @@ import org.springframework.context.annotation.Configuration; @Configuration public class NpmPackageConfiguration { @Bean - public NpmPackageWebService npmPackageWebService(){ + public NpmPackageWebService npmPackageWebService() { return new NpmPackageWebServiceImpl(); } @Bean - public RESTEndpoint NpmPackageWebServiceEndpoint(){ + public NpmPackageService npmPackageService() { + return new NpmPackageServiceImpl(); + } + + @Bean + public RESTEndpoint NpmPackageWebServiceEndpoint() { return new RESTEndpoint("/dev/main/web/v1.0/npmpackage", new NpmPackageWebServiceImpl()); } } diff --git a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageInstallConfiguration.java b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageInstallConfiguration.java index 24d46df4..ea359d71 100644 --- a/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageInstallConfiguration.java +++ b/web-npmpackage-core/src/main/java/com/inspur/edp/web/npmpackage/core/config/NpmPackageInstallConfiguration.java @@ -16,7 +16,9 @@ package com.inspur.edp.web.npmpackage.core.config; +import com.inspur.edp.web.npmpackage.api.service.NpmPackageInstallService; import com.inspur.edp.web.npmpackage.api.webservice.NpmPackageInstallWebService; +import com.inspur.edp.web.npmpackage.core.service.NpmPackageInstallServiceImpl; import com.inspur.edp.web.npmpackage.core.webservice.NpmPackageInstallWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; import org.springframework.context.annotation.Bean; @@ -25,12 +27,17 @@ import org.springframework.context.annotation.Configuration; @Configuration public class NpmPackageInstallConfiguration { @Bean - public NpmPackageInstallWebService npmPackageInstallWebService(){ + public NpmPackageInstallWebService npmPackageInstallWebService() { return new NpmPackageInstallWebServiceImpl(); } @Bean - public RESTEndpoint NpmPackageInstallWebServiceEndpoint(){ + public NpmPackageInstallService npmPackageInstallService() { + return new NpmPackageInstallServiceImpl(); + } + + @Bean + public RESTEndpoint NpmPackageInstallWebServiceEndpoint() { return new RESTEndpoint("/dev/main/web/v1.0/npmpackageinstall", new NpmPackageInstallWebServiceImpl()); } } \ No newline at end of file -- Gitee From cc970a0c7ee4388cd957bb6670f2b4c7cf84a023 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 16:53:57 +0800 Subject: [PATCH 24/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=B0=83=E6=95=B4=E8=A1=A8?= =?UTF-8?q?=E5=8D=95debugUrl=E5=9C=B0=E5=9D=80=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metadata/MetadataProjectUtility.java | 8 ++-- .../web/common/metadata/MetadataUtility.java | 12 +++--- .../FrontendProjectService.java | 8 +++- .../AbstractFormMetadataDebugUri.java | 43 +++++++++++++++++-- .../FormMetadataDebugUriWithMobile.java | 15 +------ .../debuguri/FormMetadataDebugUriWithPC.java | 22 ++-------- .../metadata/service/RouteMetataService.java | 4 +- 7 files changed, 65 insertions(+), 47 deletions(-) diff --git a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataProjectUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataProjectUtility.java index df2afd41..5e2cd275 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataProjectUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataProjectUtility.java @@ -21,6 +21,8 @@ import com.inspur.edp.lcm.metadata.api.service.MetadataProjectService; import com.inspur.edp.web.common.utility.StringUtility; import io.iec.edp.caf.commons.utils.SpringBeanUtils; +import java.util.Optional; + /** * 元数据工程信息utility * @@ -33,12 +35,12 @@ public class MetadataProjectUtility { * @param metadataRelativePath * @return */ - public static MetadataProject getMetadataProject(String metadataRelativePath) { + public static Optional getMetadataProject(String metadataRelativePath) { if (StringUtility.isNullOrEmpty(metadataRelativePath)) { - return null; + return Optional.empty(); } - return MetadataProjectServiceInstance.get().getMetadataProjInfo(metadataRelativePath); + return Optional.ofNullable(MetadataProjectServiceInstance.get().getMetadataProjInfo(metadataRelativePath)); } private static class MetadataProjectServiceInstance { diff --git a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java index 8e6333bc..c11ee910 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/metadata/MetadataUtility.java @@ -29,6 +29,7 @@ import com.inspur.edp.web.common.utility.StringUtility; import java.util.HashMap; import java.util.List; +import java.util.Optional; import java.util.function.Supplier; /** @@ -239,6 +240,7 @@ public final class MetadataUtility { /** * rtc-viewmodel存在调用 * 不允许更改对应方法名称 + * * @param metadataId * @return */ @@ -253,7 +255,7 @@ public final class MetadataUtility { * @param metadataRelativePath * @return */ - public MetadataProject getMetadataProject(String metadataRelativePath) { + public Optional getMetadataProject(String metadataRelativePath) { return MetadataProjectUtility.getMetadataProject(metadataRelativePath); } @@ -264,11 +266,9 @@ public final class MetadataUtility { * @return */ public String getMetadataProjectPath(String metadataRelativePath) { - MetadataProject projectInfo = getMetadataProject(metadataRelativePath); - if (projectInfo != null) { - return projectInfo.getProjectPath(); - } - return null; + Optional projectInfo = getMetadataProject(metadataRelativePath); + + return projectInfo.map(MetadataProject::getProjectPath).orElse(null); } /** diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java index 06386a26..69b092c4 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectService.java @@ -16,7 +16,6 @@ package com.inspur.edp.web.frontendproject; -import com.inspur.edp.web.common.constant.FrontendProjectConstant; import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.debuguri.FormMetadataDebugUriService; @@ -51,6 +50,13 @@ public class FrontendProjectService { } + /** + * 获取表单调试 url地址 + * @param formMetadataRelativePath + * @param formMetadataId + * @param formType + * @return + */ public static String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId, String formType) { return FormMetadataDebugUriService.getFormMetadataDebugUri(formMetadataRelativePath, formMetadataId, formType); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java index 9b1345b0..e54441e3 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java @@ -16,11 +16,15 @@ package com.inspur.edp.web.frontendproject.debuguri; +import com.inspur.edp.lcm.metadata.api.entity.GspProject; import com.inspur.edp.lcm.metadata.api.entity.MetadataProject; import com.inspur.edp.web.appconfig.api.entity.GspAppConfig; import com.inspur.edp.web.appconfig.core.service.GspAppConfigService; +import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.metadata.MetadataProjectUtility; +import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.FrontendProjectUtility; import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntity; @@ -47,7 +51,20 @@ public abstract class AbstractFormMetadataDebugUri { * @param formMetadataId * @return */ - public abstract String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId); + public String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId) { + // 1. 获取表单元数据对应route Uri + String routeUri = this.generateRouteUri(formMetadataRelativePath, formMetadataId); + + // 2. 获取部署路径 + return this.generateDebugUri(formMetadataRelativePath, routeUri); + } + + /** + * 构造路由跳转Uri地址 + * + * @return + */ + protected abstract String generateRouteUri(String formMetadataRelativePath, String formMetadataId); /** * 判断是否为PC表单 @@ -55,7 +72,25 @@ public abstract class AbstractFormMetadataDebugUri { * @return */ protected boolean isPc() { - return this.terminalType == TerminalType.PC; + return TerminalType.isPC(this.terminalType); + } + + /** + * 构造debugUri地址 + * + * @param formMetadataRelativePath + * @param routeUri + * @return + */ + protected String generateDebugUri(String formMetadataRelativePath, String routeUri) { + // 2. 获取部署路径 + MetadataProject metadataProject = MetadataUtility.getInstance().getMetadataProject(formMetadataRelativePath).orElseThrow(() -> new WebCustomException(String.format("依据工程路径%s获取工程信息为空", formMetadataRelativePath))); + GspProject gspProject = GspProjectUtility.getProjectInformation(metadataProject.getProjectPath()); + String deploymentPath = "/" + gspProject.getSuDeploymentPath().toLowerCase(); + + String projectName = GspProjectUtility.getProjectName(gspProject); + + return deploymentPath + "/" + this.terminalType.getPublishPathName() + "/" + projectName + "/" + "index.html" + "#" + routeUri; } /** @@ -106,7 +141,9 @@ public abstract class AbstractFormMetadataDebugUri { } protected String getFormMetadataRouteUri(String formMetadataRelativePath, String formMetadataId) { - MetadataProject metadataProject = MetadataProjectUtility.getMetadataProject(formMetadataRelativePath); + MetadataProject metadataProject = MetadataProjectUtility.getMetadataProject(formMetadataRelativePath).orElseThrow(() -> + new WebCustomException(String.format("根据工程路径%s获取对应工程信息为空", formMetadataRelativePath)) + ); return getFormMetadataRouteUriWithoutDevPath(metadataProject.getProjectPath(), formMetadataId); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java index 1a7e59f4..ed4862e0 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java @@ -17,10 +17,7 @@ package com.inspur.edp.web.frontendproject.debuguri; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; -import com.inspur.edp.lcm.metadata.api.entity.GspProject; -import com.inspur.edp.lcm.metadata.api.entity.MetadataProject; import com.inspur.edp.web.common.entity.TerminalType; -import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; import com.inspur.edp.web.common.metadata.MetadataUtility; @@ -45,8 +42,7 @@ public class FormMetadataDebugUriWithMobile extends AbstractFormMetadataDebugUri } @Override - public String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId) { - // 1. 获取表单元数据对应route Uri + protected String generateRouteUri(String formMetadataRelativePath, String formMetadataId) { String formRouteUri = getFormMetadataRouteUri(formMetadataRelativePath, formMetadataId); // 获取表单实体,进而获取表单代码 @@ -80,14 +76,7 @@ public class FormMetadataDebugUriWithMobile extends AbstractFormMetadataDebugUri defaultPageUri = component.get("id").toString(); } } - - // 2. 获取部署路径 - MetadataProject metadataProject = MetadataUtility.getInstance().getMetadataProject(formMetadataRelativePath); - GspProject gspProject = GspProjectUtility.getProjectInformation(metadataProject.getProjectPath()); - - String projectName = GspProjectUtility.getProjectName(gspProject); - - return "/" + gspProject.getSuDeploymentPath().toLowerCase() + "/" + TerminalType.MOBILE.getPublishPathName() + "/" + projectName + "/" + "index.html" + "#" + "/" + formRouteUri + "/" + defaultPageUri; + return "/" + formRouteUri + "/" + defaultPageUri; } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java index 25e50d4f..f75846ba 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java @@ -16,14 +16,10 @@ package com.inspur.edp.web.frontendproject.debuguri; -import com.inspur.edp.lcm.metadata.api.entity.GspProject; -import com.inspur.edp.lcm.metadata.api.entity.MetadataProject; import com.inspur.edp.web.common.entity.TerminalType; -import com.inspur.edp.web.common.metadata.GspProjectUtility; -import com.inspur.edp.web.common.metadata.MetadataUtility; /** - * description: 表单调试Url地址 + * description: PC 表单调试Url地址 * * @author Noah Guo * @date 2021/03/17 @@ -34,19 +30,7 @@ public class FormMetadataDebugUriWithPC extends AbstractFormMetadataDebugUri { } @Override - public String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId) { - // 1. 获取表单元数据对应route Uri - String routeUri = getFormMetadataRouteUri(formMetadataRelativePath, formMetadataId); - - // 2. 获取部署路径 - MetadataProject metadataProject = MetadataUtility.getInstance().getMetadataProject(formMetadataRelativePath); - GspProject gspProject = GspProjectUtility.getProjectInformation(metadataProject.getProjectPath()); - String deploymentPath = "/" + gspProject.getSuDeploymentPath().toLowerCase(); - - String projectName = GspProjectUtility.getProjectName(gspProject); - - return deploymentPath + "/" + TerminalType.PC.getPublishPathName() + "/" + projectName + "/" + "index.html" + "#" + routeUri; + protected String generateRouteUri(String formMetadataRelativePath, String formMetadataId) { + return getFormMetadataRouteUri(formMetadataRelativePath, formMetadataId); } - - } diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java index 457b7e5d..c419b424 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java @@ -20,6 +20,7 @@ import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.lcm.metadata.api.service.MetadataService; import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; import com.inspur.edp.web.common.metadata.MetadataUtility; @@ -31,7 +32,6 @@ import io.iec.edp.caf.commons.utils.SpringBeanUtils; import lombok.extern.slf4j.Slf4j; -@Slf4j public class RouteMetataService { /** @@ -78,7 +78,7 @@ public class RouteMetataService { GspMetadata routeMetadata = MetadataUtility.getInstance().getMetadataWithDesign(metadataGetterParameter); if (routeMetadata == null) { - log.debug("Save Route Metadata Content Operation is Stopped Because Target Route Metadata is NULL."); + WebLogger.Instance.info("Save Route Metadata Content Operation is Stopped Because Target Route Metadata is NULL."); return; } -- Gitee From fe237b5b88660b027c1ddf160880497cedfe47cf Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 16:57:54 +0800 Subject: [PATCH 25/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=B0=83=E6=95=B4=E8=A1=A8?= =?UTF-8?q?=E5=8D=95debugUrl=E5=9C=B0=E5=9D=80=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../frontendproject/debuguri/AbstractFormMetadataDebugUri.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java index e54441e3..5f1ed089 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java @@ -38,7 +38,7 @@ import com.inspur.edp.web.pageflow.metadata.service.RouteMetataService; * @Create: 2022/7/4 17:04 */ public abstract class AbstractFormMetadataDebugUri { - protected TerminalType terminalType; + private TerminalType terminalType; public AbstractFormMetadataDebugUri(TerminalType terminalType) { this.terminalType = terminalType; -- Gitee From 5dcf07d5ae5c49c6a36cd8412ee45823a4186dfb Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 17:03:38 +0800 Subject: [PATCH 26/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=B0=83=E6=95=B4=E8=A1=A8?= =?UTF-8?q?=E5=8D=95debugUrl=E5=9C=B0=E5=9D=80=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../debuguri/AbstractFormMetadataDebugUri.java | 2 +- .../debuguri/FormMetadataDebugUri.java | 10 ++++++++++ .../debuguri/FormMetadataDebugUriService.java | 18 +++++++++++++----- 3 files changed, 24 insertions(+), 6 deletions(-) create mode 100644 web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java index 5f1ed089..bb1f70db 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java @@ -37,7 +37,7 @@ import com.inspur.edp.web.pageflow.metadata.service.RouteMetataService; * @Version: V1.0 * @Create: 2022/7/4 17:04 */ -public abstract class AbstractFormMetadataDebugUri { +public abstract class AbstractFormMetadataDebugUri implements FormMetadataDebugUri { private TerminalType terminalType; public AbstractFormMetadataDebugUri(TerminalType terminalType) { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java new file mode 100644 index 00000000..8b2783e0 --- /dev/null +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java @@ -0,0 +1,10 @@ +package com.inspur.edp.web.frontendproject.debuguri; + +/** + * 表单调试Url + * @author noah + * 2023/7/8 17:00 + */ +public interface FormMetadataDebugUri { + String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId); +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java index 79147e28..529a5858 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java @@ -34,19 +34,27 @@ public class FormMetadataDebugUriService { * @return */ public static String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId, String formType) { - String debugUri; + FormMetadataDebugUri formMetadataDebugUri = getFormDebugUri(formType); + return formMetadataDebugUri.getFormMetadataDebugUri(formMetadataRelativePath, formMetadataId); + } + + /** + * 根据表单类型获取对应的执行实例 + * @param formType + * @return + */ + private static FormMetadataDebugUri getFormDebugUri(String formType) { + FormMetadataDebugUri debugUri; switch (formType) { case "mobile": - debugUri = SpringBeanUtils.getBean(FormMetadataDebugUriWithMobile.class).getFormMetadataDebugUri(formMetadataRelativePath, formMetadataId); + debugUri = SpringBeanUtils.getBean(FormMetadataDebugUriWithMobile.class); break; case "pc": default: - debugUri = SpringBeanUtils.getBean(FormMetadataDebugUriWithPC.class).getFormMetadataDebugUri(formMetadataRelativePath, formMetadataId); + debugUri = SpringBeanUtils.getBean(FormMetadataDebugUriWithPC.class); break; } - return debugUri; } - } -- Gitee From 3ae8e2c15163e9d0997cd04a1409e1e7c6ebc6d4 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 17:05:47 +0800 Subject: [PATCH 27/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=B0=83=E6=95=B4=E8=A1=A8?= =?UTF-8?q?=E5=8D=95debugUrl=E5=9C=B0=E5=9D=80=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/FormMetadataDebugUriConfiguration.java | 12 ------------ .../debuguri/AbstractFormMetadataDebugUri.java | 2 +- .../debuguri/FormMetadataDebugUri.java | 2 +- .../debuguri/FormMetadataDebugUriService.java | 7 +++---- .../debuguri/FormMetadataDebugUriWithMobile.java | 2 +- .../debuguri/FormMetadataDebugUriWithPC.java | 2 +- 6 files changed, 7 insertions(+), 20 deletions(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FormMetadataDebugUriConfiguration.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FormMetadataDebugUriConfiguration.java index 79bc249f..e0f2744d 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FormMetadataDebugUriConfiguration.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/config/FormMetadataDebugUriConfiguration.java @@ -16,8 +16,6 @@ package com.inspur.edp.web.frontendproject.config; -import com.inspur.edp.web.frontendproject.debuguri.FormMetadataDebugUriWithMobile; -import com.inspur.edp.web.frontendproject.debuguri.FormMetadataDebugUriWithPC; import com.inspur.edp.web.frontendproject.webservice.FormMetadataDebugUriWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; import org.springframework.context.annotation.Bean; @@ -36,14 +34,4 @@ public class FormMetadataDebugUriConfiguration { return new RESTEndpoint("/dev/main/v1.0/form-debug-uri", new FormMetadataDebugUriWebServiceImpl() { }); } - - @Bean - public FormMetadataDebugUriWithPC getFormMetadataDebugUriInPC() { - return new FormMetadataDebugUriWithPC(); - } - - @Bean - public FormMetadataDebugUriWithMobile getFormMetadataDebugUriInMobile() { - return new FormMetadataDebugUriWithMobile(); - } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java index bb1f70db..6a2a0fb2 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java @@ -37,7 +37,7 @@ import com.inspur.edp.web.pageflow.metadata.service.RouteMetataService; * @Version: V1.0 * @Create: 2022/7/4 17:04 */ -public abstract class AbstractFormMetadataDebugUri implements FormMetadataDebugUri { +abstract class AbstractFormMetadataDebugUri implements FormMetadataDebugUri { private TerminalType terminalType; public AbstractFormMetadataDebugUri(TerminalType terminalType) { diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java index 8b2783e0..b435900d 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUri.java @@ -5,6 +5,6 @@ package com.inspur.edp.web.frontendproject.debuguri; * @author noah * 2023/7/8 17:00 */ -public interface FormMetadataDebugUri { + interface FormMetadataDebugUri { String getFormMetadataDebugUri(String formMetadataRelativePath, String formMetadataId); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java index 529a5858..6ab7921f 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriService.java @@ -16,8 +16,6 @@ package com.inspur.edp.web.frontendproject.debuguri; -import io.iec.edp.caf.commons.utils.SpringBeanUtils; - /** * description: 表单调试地址 * @@ -40,6 +38,7 @@ public class FormMetadataDebugUriService { /** * 根据表单类型获取对应的执行实例 + * * @param formType * @return */ @@ -47,11 +46,11 @@ public class FormMetadataDebugUriService { FormMetadataDebugUri debugUri; switch (formType) { case "mobile": - debugUri = SpringBeanUtils.getBean(FormMetadataDebugUriWithMobile.class); + debugUri = new FormMetadataDebugUriWithMobile(); break; case "pc": default: - debugUri = SpringBeanUtils.getBean(FormMetadataDebugUriWithPC.class); + debugUri = new FormMetadataDebugUriWithPC(); break; } return debugUri; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java index ed4862e0..89e7355c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithMobile.java @@ -36,7 +36,7 @@ import java.util.HashMap; * @author Noah Guo * @date 2021/03/17 */ -public class FormMetadataDebugUriWithMobile extends AbstractFormMetadataDebugUri { + class FormMetadataDebugUriWithMobile extends AbstractFormMetadataDebugUri { public FormMetadataDebugUriWithMobile() { super(TerminalType.MOBILE); } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java index f75846ba..4da75a54 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/FormMetadataDebugUriWithPC.java @@ -24,7 +24,7 @@ import com.inspur.edp.web.common.entity.TerminalType; * @author Noah Guo * @date 2021/03/17 */ -public class FormMetadataDebugUriWithPC extends AbstractFormMetadataDebugUri { +class FormMetadataDebugUriWithPC extends AbstractFormMetadataDebugUri { public FormMetadataDebugUriWithPC() { super(TerminalType.PC); } -- Gitee From f062a0c614f2c664c1faaea85fc8ee5622f285eb Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 17:35:12 +0800 Subject: [PATCH 28/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4=E8=A1=A8?= =?UTF-8?q?=E5=8D=95=E4=B8=AD=E5=AE=9A=E4=B9=89=E7=9A=84=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edp/web/jitengine/JITEngineManager.java | 5 +- .../i18nresource/GenerateResourceManager.java | 5 +- .../config/FormMetadataConfiguration.java | 12 ++ .../event/FormMetadataSaveEventListener.java | 10 +- .../formresource/FormResourceManager.java | 55 ++++++ .../manager/FormMetadataManager.java | 23 +-- .../metadata/formdom/FormDomService.java | 10 -- .../formmetadata/metadata/module/Module.java | 24 --- .../metadata/module/ModuleService.java | 9 - ...aService.java => FormMetadataService.java} | 170 +++--------------- .../FormMetadataWebServiceImpl.java | 6 +- .../resolver/FormMetadataResolver.java | 9 +- 12 files changed, 110 insertions(+), 228 deletions(-) create mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formresource/FormResourceManager.java rename web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/{FormMetataService.java => FormMetadataService.java} (51%) diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index 6e3454a9..92766b97 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -38,7 +38,7 @@ import com.inspur.edp.web.formmetadata.metadataanalysis.*; import com.inspur.edp.web.formmetadata.metadataanalysis.form.AnalysisExternalComponentResult; import com.inspur.edp.web.formmetadata.metadataanalysis.form.FormComponentParser; import com.inspur.edp.web.formmetadata.resolver.ResolveFormMetadataItem; -import com.inspur.edp.web.formmetadata.service.FormMetataService; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import com.inspur.edp.web.frontendproject.entity.FrontendProjectGenerateParameter; import com.inspur.edp.web.jitengine.babelgrnerate.GenerateForBabel; import com.inspur.edp.web.jitengine.expressions.ExpressionFormGenerator; @@ -54,6 +54,7 @@ import com.inspur.edp.web.npmpackage.core.npminstall.NodeModulesPathGenerator; import com.inspur.edp.web.npmpackage.core.npminstall.NpmInstallManager; import com.inspur.edp.web.npmpackage.core.npminstall.PackageJsonPathGenerator; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingManager; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; import org.apache.commons.lang3.SystemUtils; import java.io.File; @@ -502,7 +503,7 @@ public class JITEngineManager { */ private static void resolveExternalDependencyMetadata(GspMetadata formMetadata, String baseFormPath, FormDOM json, String targetStorageBasePath, GeneratedI18nResourceList zhResourceList, String baseRelativePath, String i18nResourcePrefix) { - List resourceList = FormMetataService.getFormResourceWithMetaData(formMetadata, I18nResourceConstant.ZH_CHS, baseFormPath); + List resourceList = FormMetadataService.getBeanInstance().getFormResourceWithMetaData(formMetadata, I18nResourceConstant.ZH_CHS, baseFormPath); if (resourceList != null && resourceList.size() > 0) { resourceList.forEach((item) -> { diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/i18nresource/GenerateResourceManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/i18nresource/GenerateResourceManager.java index e717c342..502bf179 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/i18nresource/GenerateResourceManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/i18nresource/GenerateResourceManager.java @@ -22,7 +22,7 @@ import com.inspur.edp.lcm.metadata.api.entity.I18nResourceItem; import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.utility.StringUtility; -import com.inspur.edp.web.formmetadata.service.FormMetataService; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import java.util.Arrays; import java.util.List; @@ -67,7 +67,8 @@ public class GenerateResourceManager { String keyPrefix, String language) { try { - List resourceList = FormMetataService.getFormResourceWithMetaData(metadata, language, baseFormPath); + + List resourceList = FormMetadataService.getBeanInstance().getFormResourceWithMetaData(metadata, language, baseFormPath); if (resourceList != null && !resourceList.isEmpty()) { if (!StringUtility.isBlank(keyPrefix)) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/config/FormMetadataConfiguration.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/config/FormMetadataConfiguration.java index 5ba5c2e8..bdae80ce 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/config/FormMetadataConfiguration.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/config/FormMetadataConfiguration.java @@ -17,9 +17,11 @@ package com.inspur.edp.web.formmetadata.config; import com.inspur.edp.web.formmetadata.api.FormMetadataCommonService; +import com.inspur.edp.web.formmetadata.formresource.FormResourceManager; import com.inspur.edp.web.formmetadata.lic.FormMetadataCreateLicControlListener; import com.inspur.edp.web.formmetadata.service.FormMetadataCommonServiceImpl; import com.inspur.edp.web.formmetadata.service.FormMetadataRTService; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import com.inspur.edp.web.formmetadata.service.FormRelateMetadataService; import com.inspur.edp.web.formmetadata.webservice.FormMetadataWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; @@ -48,8 +50,18 @@ public class FormMetadataConfiguration { return new FormMetadataCreateLicControlListener(); } + @Bean + public FormMetadataService getFormMetadataService() { + return new FormMetadataService(); + } + @Bean public FormRelateMetadataService getFormRelateMetadataService() { return new FormRelateMetadataService(); } + + @Bean + public FormResourceManager getFormResourceManager() { + return new FormResourceManager(); + } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java index 309ee7ec..13bef48f 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/event/FormMetadataSaveEventListener.java @@ -31,7 +31,7 @@ import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.formmetadata.entity.ResourceMetadataType; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; -import com.inspur.edp.web.formmetadata.service.FormMetataService; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import io.iec.edp.caf.commons.utils.SpringBeanUtils; import java.io.File; @@ -65,16 +65,8 @@ public class FormMetadataSaveEventListener implements MetadataEventListener { return; } - - if (TerminalType.PC.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { - // 同步本地语言包 - SyncLocalLanguagePackage(metadataEventArgs.getMetadata()); - } } - private void SyncLocalLanguagePackage(GspMetadata formMetadata) { - FormMetataService.exportLanguagePackage(formMetadata); - } @Override public void fireMetadataDeletingEvent(MetadataEventArgs metadataEventArgs) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formresource/FormResourceManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formresource/FormResourceManager.java new file mode 100644 index 00000000..8cfa3102 --- /dev/null +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formresource/FormResourceManager.java @@ -0,0 +1,55 @@ +package com.inspur.edp.web.formmetadata.formresource; + +import com.inspur.edp.i18n.resource.api.II18nResourceDTManager; +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.metadata.api.entity.I18nResource; +import com.inspur.edp.lcm.metadata.api.exception.MetadataNotFoundException; +import com.inspur.edp.web.common.logger.WebLogger; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 表单关联资源元数据 + * + * @author noah + * 2023/7/8 17:19 + */ +public class FormResourceManager { + /** + * 根据表单元数据获取对应的资源列表 + * + * @param metadata 元数据信息* + * @param language 语言列表 + * @param baseFormPath 传递的基础表单的路径 针对组合表单,传递的也是基础表单的路径 + */ + public List getFormResourceWithMetaData(GspMetadata metadata, String language, String baseFormPath) { + II18nResourceDTManager resourceDtManager = SpringBeanUtils.getBean(II18nResourceDTManager.class); + // 当前语言未生效 + try { + List resourceList = resourceDtManager.getI18nResource(metadata, language, baseFormPath); + // 按语言进行过滤 + if (resourceList != null && resourceList.size() > 0) { + resourceList = resourceList + .stream() + .filter((t) -> language.equals(t.getLanguage())) + .collect(Collectors.toList()); + } + return resourceList; + } catch (MetadataNotFoundException ex) { + WebLogger.Instance.warn(ex.getMessage() + ex.getStackTrace()); + } catch (Exception ex) { + // 排除掉找不到对应的资源文件的异常 + String fileNotFoundException = "java.io.FileNotFoundException"; + if (ex.getMessage() != null && ex.getMessage().contains(fileNotFoundException)) { + WebLogger.Instance.warn(ex.getMessage()); + } else { + WebLogger.Instance.error(ex); + throw ex; + } + } + return new ArrayList<>(); + } +} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java index 3deafcf8..35090e2d 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java @@ -17,7 +17,7 @@ package com.inspur.edp.web.formmetadata.manager; import com.inspur.edp.web.common.entity.ResultMessage; -import com.inspur.edp.web.formmetadata.service.FormMetataService; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import io.iec.edp.caf.i18n.framework.api.language.EcpLanguage; import java.util.List; @@ -39,33 +39,20 @@ public class FormMetadataManager { return new FormMetadataManager(); } - public final void synchronizeLanuagePackage(String formMetadataFileName, String formMetadataPath) { - FormMetataService.synchronizeLanuagePackage(formMetadataFileName, formMetadataPath); - } - - public final void exportLanguagePackage(String formMetadataFileName, String formMetadataPath) { - FormMetataService.exportLanguagePackage(formMetadataFileName, formMetadataPath); - } - - public final void synchronizeLocalLanuagePackage(String formMetadataFileName, String formMetadataPath) { - FormMetataService.synchronizeLocalLanuagePackage(formMetadataFileName, formMetadataPath); - } - public final List getEnabledLanguageList() { - return FormMetataService.getEnabledLanguageList(); + return FormMetadataService.getEnabledLanguageList(); } public final List getBuiltinLanguageList() { - return FormMetataService.getBuiltinLanguageList(); + return FormMetadataService.getBuiltinLanguageList(); } public final List getAllLanguageList() { - return FormMetataService.getAllLanguageList(); + return FormMetadataService.getAllLanguageList(); } public final ResultMessage replicateForm(String sourceMetadataId, String sourceMetadataRelativePath, String targetMetadataCode, String targetMetadataName, String targetProjectName) { - return FormMetataService.replicateForm(sourceMetadataId, sourceMetadataRelativePath, targetMetadataCode, targetMetadataName, targetProjectName); + return FormMetadataService.replicateForm(sourceMetadataId, sourceMetadataRelativePath, targetMetadataCode, targetMetadataName, targetProjectName); } - } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/formdom/FormDomService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/formdom/FormDomService.java index a281111e..0d1820db 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/formdom/FormDomService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/formdom/FormDomService.java @@ -49,15 +49,5 @@ public class FormDomService } - public final HashMap> GetLanguagePackage(FormDOM formDOM) - { - if (formDOM == null) - { - return null; - } - - return ModuleService.GetInstance().GetLanguagePackage(formDOM.getModule()); - } - } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/Module.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/Module.java index f3dbd04b..0a3466c3 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/Module.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/Module.java @@ -273,30 +273,6 @@ public class Module { externalComponents = value; } - /** - * TODO:升级结构后移除 - * 语言包 - * <语言, <控件id, 语言翻译>> - * 示例如下: - * "ctrlLangs": { - * "en": { - * "page-header-title": "cardForm1", - * "form_id": "id", - * "form_code": "code", - * "form_name": "name" - * } - * }, - */ - private HashMap> ctrlLangs; - - public final HashMap> getCtrlLangs() { - return ctrlLangs; - } - - public final void setCtrlLangs(HashMap> value) { - ctrlLangs = value; - } - /** * 国际化设置 */ diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/ModuleService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/ModuleService.java index eacf25de..b8ddfe72 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/ModuleService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadata/module/ModuleService.java @@ -16,8 +16,6 @@ package com.inspur.edp.web.formmetadata.metadata.module; -import java.util.*; - /** * 模块服务 */ @@ -41,11 +39,4 @@ public class ModuleService { return module.getI18nSetting().getlanguage(); } - public final HashMap> GetLanguagePackage(Module module) { - if (module == null) { - return null; - } - - return module.getCtrlLangs(); - } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetataService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java similarity index 51% rename from web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetataService.java rename to web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java index 0354049e..716094d7 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetataService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java @@ -34,7 +34,9 @@ import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.serialize.SerializeUtility; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.common.utility.StringUtility; +import com.inspur.edp.web.formmetadata.formresource.FormResourceManager; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContentService; @@ -45,6 +47,7 @@ import io.iec.edp.caf.commons.utils.SpringBeanUtils; import io.iec.edp.caf.i18n.framework.api.language.EcpLanguage; import io.iec.edp.caf.i18n.framework.api.language.ILanguageService; +import javax.annotation.Resource; import java.nio.file.Paths; import java.util.ArrayList; import java.util.HashMap; @@ -54,25 +57,30 @@ import java.util.Objects; import java.util.stream.Collectors; /** + * 需要通过spring 方式使用 + * * @author guozhiqi */ -public class FormMetataService { - public static void synchronizeLanuagePackage(String formMetadataFileName, String formMetadataPath) { - // (1) 获取表单元数据 - GspMetadata formMetadata = MetadataUtility.getInstance().getMetadataWithDesign(formMetadataFileName, formMetadataPath); - // (2) 查找到关联的资源元数据 - GspMetadata currentResourceMetadata = getRefResourceMetadata(formMetadata.getHeader().getId(), formMetadataPath); +public class FormMetadataService { + @Resource + private FormResourceManager formResourceManager; - // (3) 同步资源元数据上的语言包到表单元数据 - synchronizeLanuagePackage(formMetadata, currentResourceMetadata); + /** + * 获取对应的bean实例 + * + * @return + */ + public static FormMetadataService getBeanInstance() { + return SpringBeanUtils.getBean(FormMetadataService.class); } + /** * 生成表单关联的中文资源元数据 */ - public static void reSaveFormIfResourceNotExists(GspMetadata formMetadata, String baseFormPath) { + public void reSaveFormIfResourceNotExists(GspMetadata formMetadata, String baseFormPath) { List resourceList = getFormResourceWithMetaData(formMetadata, I18nResourceConstant.ZH_CHS, baseFormPath); - if (resourceList == null || resourceList.isEmpty()) { + if (ListUtility.isEmpty(resourceList)) { // 调用保存表单元数据接口,间接生成资源元数据 MetadataService metadataService = SpringBeanUtils.getBean(MetadataService.class); metadataService.saveMetadata(formMetadata, Paths.get(formMetadata.getRelativePath()).resolve(formMetadata.getHeader().getFileName()).toString()); @@ -86,74 +94,10 @@ public class FormMetataService { * @param language 语言列表 * @param baseFormPath 传递的基础表单的路径 针对组合表单,传递的也是基础表单的路径 */ - public static List getFormResourceWithMetaData(GspMetadata metadata, String language, String baseFormPath) { - II18nResourceDTManager resourceDtManager = SpringBeanUtils.getBean(II18nResourceDTManager.class); - // 当前语言未生效 - try { - List resourceList = resourceDtManager.getI18nResource(metadata, language, baseFormPath); - // 按语言进行过滤 - if (resourceList != null && resourceList.size() > 0) { - resourceList = resourceList - .stream() - .filter((t) -> language.equals(t.getLanguage())) - .collect(Collectors.toList()); - } - return resourceList; - } catch (MetadataNotFoundException ex) { - WebLogger.Instance.warn(ex.getMessage() + ex.getStackTrace()); - } catch (Exception ex) { - // 排除掉找不到对应的资源文件的异常 - String fileNotFoundException = "java.io.FileNotFoundException"; - if (ex.getMessage() != null && ex.getMessage().contains(fileNotFoundException)) { - WebLogger.Instance.warn(ex.getMessage()); - } else { - WebLogger.Instance.error(ex); - throw ex; - } - } - return null; + public List getFormResourceWithMetaData(GspMetadata metadata, String language, String baseFormPath) { + return this.formResourceManager.getFormResourceWithMetaData(metadata, language, baseFormPath); } - /** - * 同步资源元数据的语言包到表单元数据 - */ - private static void synchronizeLanuagePackage(GspMetadata targetFormMetadata, GspMetadata sourceResourceMetadata) { - // (1) 从资源元数据中获取语言 - String currentLanguage = "en"; - // (2) 同步到表单元数据 - ResourceMetadata resourceMetadataContent = (ResourceMetadata) sourceResourceMetadata.getContent(); - ResourceItemCollection resourceItemCollection = resourceMetadataContent.getStringResources(); - - FormMetadataContent formMetadataContent = (FormMetadataContent) targetFormMetadata.getContent(); - FormDOM formContent = FormMetadataContentService.getInstance().getFormContent(formMetadataContent); - HashMap> ctrlLangs = formContent.getModule().getCtrlLangs(); - - - HashMap chosenLaguagePackage = ctrlLangs.get(currentLanguage); - HashMap updatedChosenLaguagePackage = new HashMap<>(chosenLaguagePackage); - for (Map.Entry item : chosenLaguagePackage.entrySet()) { - String key = item.getKey(); - boolean existSameKey = false; - for (ResourceItem resourceItem : resourceItemCollection) { - if (Objects.equals(resourceItem.getId(), item.getKey())) { - updatedChosenLaguagePackage.put(key, resourceItem.getValue()); - existSameKey = true; - break; - } - } - - if (!existSameKey) { - updatedChosenLaguagePackage.remove(key); - } - } - ctrlLangs.put(currentLanguage, updatedChosenLaguagePackage); - - FormMetadataContentService.getInstance().setFormContent(formMetadataContent, formContent); - - // 回写表单元数据 - MetadataService metadataService = SpringBeanUtils.getBean(MetadataService.class); - metadataService.saveMetadata(targetFormMetadata, targetFormMetadata.getRelativePath() + FileUtility.DIRECTORY_SEPARATOR_CHAR + targetFormMetadata.getHeader().getFileName()); - } private static List getRefResourceMetadataHeaderCollection(String formMetadataId, String formMetadataPath) { MetadataService metadataService = SpringBeanUtils.getBean(MetadataService.class); @@ -194,79 +138,7 @@ public class FormMetataService { return resourceMetadataList; } - /** - * 导出语言包 - */ - public static void exportLanguagePackage(String formMetadataFileName, String formMetadataPath) { - // (1) 获取表单元数据 - GspMetadata formMetadata = MetadataUtility.getInstance().getMetadataWithDesign(formMetadataFileName, formMetadataPath); - exportLanguagePackage(formMetadata); - } - /** - * 导出语言包 - */ - public static void exportLanguagePackage(GspMetadata formMetadata) { - if (formMetadata == null) { - return; - } - - FormMetadataContent formMetadataContent = (FormMetadataContent) formMetadata.getContent(); - FormDOM formDOM = FormMetadataContentService.getInstance().getFormContent(formMetadataContent); - - // 从表单文档中提取出语言包并保存为JSON文件 - HashMap> ctrlLangs = formDOM.getModule().getCtrlLangs(); - String ctrlLangsStr = SerializeUtility.getInstance().serialize(ctrlLangs, false); - String formMetadataFileName = formMetadata.getHeader().getFileName(); - String formMetadataPath = formMetadata.getRelativePath(); - - String languagePackageFileName = formMetadataFileName.replace(".frm", "_frm") + ".json"; - String languagePackageAbsoluteStoragePath = MetadataUtility.getInstance().getAbsolutePath(formMetadataPath); - FileUtility.writeFile(languagePackageAbsoluteStoragePath, languagePackageFileName, ctrlLangsStr); - } - - /** - * 同步本地语言包 - */ - public static void synchronizeLocalLanuagePackage(String formMetadataFileName, String formMetadataPath) { - GspMetadata formMetadata = MetadataUtility.getInstance().getMetadataWithDesign(formMetadataFileName, formMetadataPath); - synchronizeLocalLanuagePackage(formMetadata); - } - - /** - * 同步本地语言包 - */ - public static void synchronizeLocalLanuagePackage(GspMetadata formMetadata) { - HashMap> localLanguagePackage = getLocalLanguagePackage(formMetadata.getHeader().getFileName(), formMetadata.getRelativePath()); - - synchronizeLocalLanuagePackage(formMetadata, localLanguagePackage); - } - - private static HashMap> getLocalLanguagePackage(String formMetadataFileName, String formMetadataPath) { - String languagePackageFileName = formMetadataFileName.replace(".frm", "_frm") + ".json"; - String languagePackageAbsoluteStoragePath = MetadataUtility.getInstance().getAbsolutePath(formMetadataPath); - String localLanguagePackageFullPath = Paths.get(languagePackageAbsoluteStoragePath).resolve(languagePackageFileName).toString(); - String localLanguagePackageStr = FileUtility.readAsString(localLanguagePackageFullPath); - - HashMap> temp = new HashMap<>(); - return SerializeUtility.getInstance().deserialize(localLanguagePackageStr, temp.getClass()); - } - - private static void synchronizeLocalLanuagePackage(GspMetadata targetFormMetadata, HashMap> sourceLocalLanguagePackage) { - FormMetadataContent formMetadataContent = (FormMetadataContent) targetFormMetadata.getContent(); - FormDOM formContent = FormMetadataContentService.getInstance().getFormContent(formMetadataContent); - - // TODO: 优化更新算法 - // 更新语言包 - formContent.getModule().setCtrlLangs(sourceLocalLanguagePackage); - - // 更新表单元数据内容 - FormMetadataContentService.getInstance().setFormContent(formMetadataContent, formContent); - - // 更新表单元数据 - MetadataService metadataService = SpringBeanUtils.getBean(MetadataService.class); - metadataService.saveMetadata(targetFormMetadata, Paths.get(targetFormMetadata.getRelativePath()).resolve(targetFormMetadata.getHeader().getFileName()).toString()); - } public static List getEnabledLanguageList() { ILanguageService languageService = SpringBeanUtils.getBean(ILanguageService.class); @@ -285,7 +157,7 @@ public class FormMetataService { public static ResultMessage replicateForm(String sourceMetadataId, String sourceMetadataRelativePath, String targetMetadataCode, String targetMetadataName, String targetProjectName) { if (StringUtility.isNullOrEmpty(sourceMetadataId) || StringUtility.isNullOrEmpty(sourceMetadataRelativePath)) { - WebLogger.Instance.error("待复制表单元数据ID或路径为空。请检查前端请求参数是否正常。", FormMetataService.class.getName()); + WebLogger.Instance.error("待复制表单元数据ID或路径为空。请检查前端请求参数是否正常。", FormMetadataService.class.getName()); throw new WebCustomException("待复制表单元数据ID或路径为空。请检查前端请求参数是否正常。"); } if (StringUtility.isNullOrEmpty(targetMetadataCode) || StringUtility.isNullOrEmpty(targetMetadataName)) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java index c6cd2fca..1d90f95a 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java @@ -49,7 +49,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public void synchronizeLanuagePackage(String fileName, String path) { - FormMetadataManager.getNewInstance().synchronizeLanuagePackage(fileName, path); + } /** @@ -60,7 +60,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public void exportLanguagePackage(String fileName, String path) { - FormMetadataManager.getNewInstance().exportLanguagePackage(fileName, path); + } /** @@ -71,7 +71,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public void synchronizeLocalLanuagePackage(String fileName, String path) { - FormMetadataManager.getNewInstance().synchronizeLocalLanuagePackage(fileName, path); + } /** diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java index a1362325..8ff0d2ad 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/resolver/FormMetadataResolver.java @@ -23,7 +23,7 @@ import com.inspur.edp.web.formmetadata.i18n.constant.I18nResourceConstant; import com.inspur.edp.web.formmetadata.metadataanalysis.CommandsAnalysis; import com.inspur.edp.web.formmetadata.resolver.ResolveFormMetadataItem; import com.inspur.edp.web.formmetadata.resolver.ResolveFormMetadataList; -import com.inspur.edp.web.formmetadata.service.FormMetataService; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import com.inspur.edp.web.frontendproject.customservice.SourceServicePathGenerator; import com.inspur.edp.web.frontendproject.entity.ChosenFormList; import com.inspur.edp.web.frontendproject.metadata.FormMetadataManager; @@ -32,7 +32,9 @@ import com.inspur.edp.web.jitengine.expressions.ExpressionManifest; import com.inspur.edp.web.jitengine.expressions.ExpressionManifestManager; import com.inspur.edp.web.jitengine.i18nresource.GenerateResourceManager; import com.inspur.edp.web.jitengine.i18nresource.GeneratedI18nResourceList; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; +import javax.annotation.Resource; import java.util.HashMap; /** @@ -41,6 +43,7 @@ import java.util.HashMap; * @author guozhiqi */ public class FormMetadataResolver { + /** * 表单元数据解析 * @@ -96,7 +99,9 @@ public class FormMetadataResolver { // 解析前检测 // TODO:尝试获取资源元数据,如果不存在则生成 为了保证中文资源必须存在 String formPath = resolveFormMetadataItem.getGspMetadata().getRelativePath(); - FormMetataService.reSaveFormIfResourceNotExists(resolveFormMetadataItem.getGspMetadata(), formPath); + + FormMetadataService formMetadataService = SpringBeanUtils.getBean(FormMetadataService.class); + formMetadataService.reSaveFormIfResourceNotExists(resolveFormMetadataItem.getGspMetadata(), formPath); String targetResolveBasePath = terminalType.getResolveBasePath(projectPath, resolveFormMetadataItem.getCalculateIsDynamicForm()); -- Gitee From c03a005e35089b9e333d7c01db03e64817209c29 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 18:32:20 +0800 Subject: [PATCH 29/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4=E8=A1=A8?= =?UTF-8?q?=E5=8D=95=E4=B8=AD=E5=AE=9A=E4=B9=89=E7=9A=84=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manager/FormMetadataManager.java | 58 ----------------- .../service/FormMetadataService.java | 63 ++++--------------- .../FormMetadataWebServiceImpl.java | 10 +-- 3 files changed, 17 insertions(+), 114 deletions(-) delete mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java deleted file mode 100644 index 35090e2d..00000000 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/manager/FormMetadataManager.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.formmetadata.manager; - -import com.inspur.edp.web.common.entity.ResultMessage; -import com.inspur.edp.web.formmetadata.service.FormMetadataService; -import io.iec.edp.caf.i18n.framework.api.language.EcpLanguage; - -import java.util.List; - -/** - * 表单元数据manager - * - * @author guozhiqi - */ -public class FormMetadataManager { - /** - * 私有构造函数,避免继承与外部实例化 - */ - private FormMetadataManager() { - - } - - public static FormMetadataManager getNewInstance() { - return new FormMetadataManager(); - } - - public final List getEnabledLanguageList() { - return FormMetadataService.getEnabledLanguageList(); - } - - public final List getBuiltinLanguageList() { - return FormMetadataService.getBuiltinLanguageList(); - } - - public final List getAllLanguageList() { - return FormMetadataService.getAllLanguageList(); - } - - public final ResultMessage replicateForm(String sourceMetadataId, String sourceMetadataRelativePath, String targetMetadataCode, String targetMetadataName, String targetProjectName) { - return FormMetadataService.replicateForm(sourceMetadataId, sourceMetadataRelativePath, targetMetadataCode, targetMetadataName, targetProjectName); - } - -} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java index 716094d7..2eb868da 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormMetadataService.java @@ -62,9 +62,14 @@ import java.util.stream.Collectors; * @author guozhiqi */ public class FormMetadataService { + + @Resource private FormResourceManager formResourceManager; + @Resource + private ILanguageService languageService; + /** * 获取对应的bean实例 * @@ -99,63 +104,19 @@ public class FormMetadataService { } - private static List getRefResourceMetadataHeaderCollection(String formMetadataId, String formMetadataPath) { - MetadataService metadataService = SpringBeanUtils.getBean(MetadataService.class); - return metadataService.getResourceMetadata(formMetadataId, formMetadataPath); - } - - private static GspMetadata getRefResourceMetadata(String formMetadataId, String formMetadataPath) { - List resourceMetadataList = getRefResourceMetadataList(formMetadataId, formMetadataPath); - if (resourceMetadataList == null || resourceMetadataList.size() <= 0) { - return null; - } - - // 一个表单元数据仅能关联一个资源元数据 - return resourceMetadataList.get(0); - } - - private static List getRefResourceMetadataList(String formMetadataId, String formMetadataPath) { - List resourceMetadataHeaderCollection = getRefResourceMetadataHeaderCollection(formMetadataId, formMetadataPath); - - // 获取资源元数据 - return getResourceMetadata(resourceMetadataHeaderCollection, formMetadataPath); - } - - private static ArrayList getResourceMetadata(List resourceMetadataHeaderList, String formMetadataPath) { - if (resourceMetadataHeaderList == null || resourceMetadataHeaderList.size() <= 0 || StringUtility.isNullOrEmpty(formMetadataPath)) { - return null; - } - - ArrayList resourceMetadataList = new ArrayList<>(); - for (MetadataHeader resouceMetadataHeader : resourceMetadataHeaderList) { - String resouceMetadataFileName = resouceMetadataHeader.getFileName(); - GspMetadata resourceMetadata = MetadataUtility.getInstance().getMetadataWithDesign(resouceMetadataFileName, formMetadataPath); - if (resourceMetadata != null) { - resourceMetadataList.add(resourceMetadata); - } - } - - return resourceMetadataList; - } - - - - public static List getEnabledLanguageList() { - ILanguageService languageService = SpringBeanUtils.getBean(ILanguageService.class); - return languageService.getEnabledLanguages(); + public List getEnabledLanguageList() { + return this.languageService.getEnabledLanguages(); } - public static List getBuiltinLanguageList() { - ILanguageService languageService = SpringBeanUtils.getBean(ILanguageService.class); - return languageService.getBuiltinLanguages(); + public List getBuiltinLanguageList() { + return this.languageService.getBuiltinLanguages(); } - public static List getAllLanguageList() { - ILanguageService languageService = SpringBeanUtils.getBean(ILanguageService.class); - return languageService.getAllLanguages(); + public List getAllLanguageList() { + return this.languageService.getAllLanguages(); } - public static ResultMessage replicateForm(String sourceMetadataId, String sourceMetadataRelativePath, String targetMetadataCode, String targetMetadataName, String targetProjectName) { + public ResultMessage replicateForm(String sourceMetadataId, String sourceMetadataRelativePath, String targetMetadataCode, String targetMetadataName, String targetProjectName) { if (StringUtility.isNullOrEmpty(sourceMetadataId) || StringUtility.isNullOrEmpty(sourceMetadataRelativePath)) { WebLogger.Instance.error("待复制表单元数据ID或路径为空。请检查前端请求参数是否正常。", FormMetadataService.class.getName()); throw new WebCustomException("待复制表单元数据ID或路径为空。请检查前端请求参数是否正常。"); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java index 1d90f95a..9f54e5ba 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/webservice/FormMetadataWebServiceImpl.java @@ -27,7 +27,7 @@ import com.inspur.edp.web.formmetadata.api.dto.FormRelateMetadataInDesignResultD import com.inspur.edp.web.formmetadata.api.entity.FormSuInfoEntity; import com.inspur.edp.web.formmetadata.api.entity.ReplicateFormRequestBody; import com.inspur.edp.web.formmetadata.api.entity.SuInfoWithBizobjIdEntity; -import com.inspur.edp.web.formmetadata.manager.FormMetadataManager; +import com.inspur.edp.web.formmetadata.service.FormMetadataService; import com.inspur.edp.web.formmetadata.service.FormRelateMetadataService; import io.iec.edp.caf.commons.utils.SpringBeanUtils; import io.iec.edp.caf.i18n.framework.api.language.EcpLanguage; @@ -79,7 +79,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public List getEnabledLanguageList() { - return FormMetadataManager.getNewInstance().getEnabledLanguageList(); + return FormMetadataService.getBeanInstance().getEnabledLanguageList(); } /** @@ -87,7 +87,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public List getBuiltinLanguageList() { - return FormMetadataManager.getNewInstance().getBuiltinLanguageList(); + return FormMetadataService.getBeanInstance().getBuiltinLanguageList(); } /** @@ -95,7 +95,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public List getAllLanguageList() { - return FormMetadataManager.getNewInstance().getAllLanguageList(); + return FormMetadataService.getBeanInstance().getAllLanguageList(); } /** @@ -103,7 +103,7 @@ public class FormMetadataWebServiceImpl implements FormMetadataWebService { */ @Override public ResultMessage replicateForm(ReplicateFormRequestBody replicateFormRequestBody) { - ResultMessage resultMessage = FormMetadataManager.getNewInstance().replicateForm(replicateFormRequestBody.getSourceMetadataId(), replicateFormRequestBody.getSourceMetadataRelativePath(), replicateFormRequestBody.getTargetMetadataCode(), replicateFormRequestBody.getTargetMetadataName(), replicateFormRequestBody.getTargetProjectName()); + ResultMessage resultMessage = FormMetadataService.getBeanInstance().replicateForm(replicateFormRequestBody.getSourceMetadataId(), replicateFormRequestBody.getSourceMetadataRelativePath(), replicateFormRequestBody.getTargetMetadataCode(), replicateFormRequestBody.getTargetMetadataName(), replicateFormRequestBody.getTargetProjectName()); return resultMessage; } -- Gitee From 0f08011f14cf48ff011b489ea6356c750e2d8366 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 18:45:56 +0800 Subject: [PATCH 30/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4self4j?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i18n/constant/ComponentType.java | 2 +- .../i18n/constant/I18nResourceConstant.java | 2 +- .../metadataanalysis/app/AppConfig.java | 56 ------------------- .../CommandServiceManager.java | 2 - .../FrontendProjectCompiler.java | 6 +- .../config/webapi/service/WebIDEService.java | 9 +-- .../PageFlowMetadataUpdateService.java | 15 +++-- .../metadata/service/RouteMetataService.java | 1 - .../utility/SourceCodeMetadataUtility.java | 6 +- 9 files changed, 18 insertions(+), 81 deletions(-) delete mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/app/AppConfig.java diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/ComponentType.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/ComponentType.java index 0b5f8bf1..1012589c 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/ComponentType.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/ComponentType.java @@ -21,7 +21,7 @@ package com.inspur.edp.web.formmetadata.i18n.constant; * * @author noah */ -public class ComponentType { +public final class ComponentType { private ComponentType() { } ///#region 组件类型 diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/I18nResourceConstant.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/I18nResourceConstant.java index e16a67a5..4e696c4f 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/I18nResourceConstant.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/constant/I18nResourceConstant.java @@ -16,7 +16,7 @@ package com.inspur.edp.web.formmetadata.i18n.constant; -public class I18nResourceConstant { +public final class I18nResourceConstant { /** * 资源项第一级分隔符 逗号 */ diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/app/AppConfig.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/app/AppConfig.java deleted file mode 100644 index 41426cc5..00000000 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/app/AppConfig.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.formmetadata.metadataanalysis.app; - -import java.util.ArrayList; -import java.util.HashMap; - -/** - * appconfig 实体信息 - * @author noah - */ -public class AppConfig { - private HashMap project; - - public final HashMap getproject() { - return project; - } - - public final void setproject(HashMap value) { - project = value; - } - - private ArrayList> pages; - - public final ArrayList> getpages() { - return pages; - } - - public final void setpages(ArrayList> value) { - pages = value; - } - - private String entry; - - public final String getentry() { - return entry; - } - - public final void setentry(String value) { - entry = value; - } -} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java index 3c4dd2be..6e49f069 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java @@ -26,7 +26,6 @@ import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.tsfile.api.service.TsFileService; import io.iec.edp.caf.commons.utils.SpringBeanUtils; -import lombok.extern.slf4j.Slf4j; import java.util.HashMap; @@ -35,7 +34,6 @@ import java.util.HashMap; * * @author noah */ -@Slf4j public class CommandServiceManager { private CommandServiceManager() { } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectCompiler.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectCompiler.java index 7c0baea0..5a624a09 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectCompiler.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/FrontendProjectCompiler.java @@ -35,7 +35,6 @@ import com.inspur.edp.web.frontendproject.generate.FrontendProjectGenerate; import com.inspur.edp.web.frontendproject.metadata.FormMetadataManager; import com.inspur.edp.web.frontendproject.resolver.FormMetadataResolver; import com.inspur.edp.web.jitengine.JITEngineManager; -import lombok.extern.slf4j.Slf4j; import java.util.List; @@ -45,7 +44,6 @@ import java.util.List; * * @author guozhiqi */ -@Slf4j public class FrontendProjectCompiler implements MetadataCompileAction { /** * 工程编译扩展实现 @@ -53,7 +51,7 @@ public class FrontendProjectCompiler implements MetadataCompileAction { @Override public void metadataCompile(MetadataCompilerContext context) { if (context == null || StringUtility.isNullOrEmpty(context.getProjectPath())) { - log.error("the Project Path is Empty When Compiling a Project"); + WebLogger.Instance.error("the Project Path is Empty When Compiling a Project"); throw new WebCustomException("the Project Path is Empty "); } WebLogger.Instance.info("begin compile frontend project", FrontendProjectCompiler.class.getName()); @@ -119,7 +117,7 @@ public class FrontendProjectCompiler implements MetadataCompileAction { ResolveFormMetadataList formMetataList = FormMetadataManager.getFormMetadataList(projectPath, terminalType, ChosenFormList.getNewInstance()); // 不存在表单,将其认定为非前端工程 if (formMetataList.isEmpty()) { - log.debug("Debug_FrontendProjectCompiler_CompileFrontendProject: Current project is not a frontend project or has no forms!"); + WebLogger.Instance.info("Debug_FrontendProjectCompiler_CompileFrontendProject: Current project is not a frontend project or has no forms!"); return true; } // 2. 解析表单元数据 diff --git a/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/service/WebIDEService.java b/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/service/WebIDEService.java index dbb8710e..7106933f 100644 --- a/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/service/WebIDEService.java +++ b/web-ide-webapi/src/main/java/com/inspur/edp/ide/config/webapi/service/WebIDEService.java @@ -21,10 +21,10 @@ import com.inspur.edp.ide.config.webapi.common.FileUtil; import com.inspur.edp.ide.config.webapi.entity.PanelDescription; import com.inspur.edp.ide.config.webapi.entity.PanelStyle; import com.inspur.edp.ide.config.webapi.entity.PluginConfig; +import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.utility.StringUtility; import io.iec.edp.caf.common.JSONSerializer; import io.iec.edp.caf.common.environment.EnvironmentUtil; -import lombok.extern.slf4j.Slf4j; import org.springframework.boot.configurationprocessor.json.JSONObject; import java.io.File; @@ -32,9 +32,9 @@ import java.nio.file.Paths; /** * ide service - * @author noah + * + * @author noah */ -@Slf4j public class WebIDEService { private static WebIDEService instance; private static PluginConfig pluginConfig; @@ -120,7 +120,7 @@ public class WebIDEService { } return result; } catch (RuntimeException e) { - log.error(e.getMessage(), e); + WebLogger.Instance.error(e); return null; } } @@ -128,6 +128,7 @@ public class WebIDEService { /** * 修正panelDescription的url路径 * n版url不带index.html,server会自动跳转,j版server不行。 + * * @param panelDescription * @param dir */ diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java index 42f20232..3bd1b1f7 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java @@ -27,6 +27,7 @@ import com.inspur.edp.web.appconfig.api.entity.GspAppConfig; import com.inspur.edp.web.appconfig.core.service.GspAppConfigService; import com.inspur.edp.web.common.entity.TerminalType; import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.GspProjectUtility; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; @@ -34,7 +35,6 @@ import com.inspur.edp.web.pageflow.metadata.entity.Page; import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntity; import com.inspur.edp.web.pageflow.metadata.entity.Project; import io.iec.edp.caf.commons.utils.SpringBeanUtils; -import lombok.extern.slf4j.Slf4j; import java.util.ArrayList; import java.util.Arrays; @@ -45,7 +45,6 @@ import java.util.List; * 用于当元数据扩展事件被触发时对页面流元数据进行更新。 * 从Listener里拆出 */ -@Slf4j public class PageFlowMetadataUpdateService { private static PageFlowMetadataUpdateService instance; @@ -95,7 +94,7 @@ public class PageFlowMetadataUpdateService { * @param metadataEventArgs */ public void syncPageFlowMetadataAfterFormDeleted(MetadataEventArgs metadataEventArgs) { - log.debug("Debug_PageFlowMetadataDeleteEventListener_SyncPageFlowMetadata: Sync PageFlow Metadata When Having Deleted Form metadatas."); + WebLogger.Instance.info("Debug_PageFlowMetadataDeleteEventListener_SyncPageFlowMetadata: Sync PageFlow Metadata When Having Deleted Form metadatas."); // 监听表单元数据删除。当删除表单元数据,同步页面流元数据 if (!TerminalType.PC.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType()) && !TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { return; @@ -112,20 +111,20 @@ public class PageFlowMetadataUpdateService { if (TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfigInfo.getMobilePageFlowMetadataID(), appConfigInfo.getMobilePageFlowMetadataFileName(), projectPath); if (pageFlowMetadataEntity == null) { - log.debug(String.format("Current Project %1$s's PageFlowMetadata %2$s Content is Null.", metadataEventArgs.getMetadata().getRelativePath(), appConfigInfo.getPageFlowMetadataFileName())); + WebLogger.Instance.info(String.format("Current Project %1$s's PageFlowMetadata %2$s Content is Null.", metadataEventArgs.getMetadata().getRelativePath(), appConfigInfo.getPageFlowMetadataFileName())); return; } } else { pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfigInfo.getPageFlowMetadataID(), appConfigInfo.getPageFlowMetadataFileName(), projectPath); if (pageFlowMetadataEntity == null) { - log.debug(String.format("Current Project %1$s's PageFlowMetadata %2$s Content is Null.", metadataEventArgs.getMetadata().getRelativePath(), appConfigInfo.getPageFlowMetadataFileName())); + WebLogger.Instance.info(String.format("Current Project %1$s's PageFlowMetadata %2$s Content is Null.", metadataEventArgs.getMetadata().getRelativePath(), appConfigInfo.getPageFlowMetadataFileName())); return; } } // (2) 从页面流中同步删除该表单元数据的记录 - log.debug("Current PageFlowMetadataEntity Pages Number is:" + pageFlowMetadataEntity.getPages().length); + WebLogger.Instance.info("Current PageFlowMetadataEntity Pages Number is:" + pageFlowMetadataEntity.getPages().length); Page[] updatePages = null; for (int i = 0; i < pageFlowMetadataEntity.getPages().length; i++) { // 检测到该表单元数据存在页面流中 @@ -142,7 +141,7 @@ public class PageFlowMetadataUpdateService { return; } pageFlowMetadataEntity.setPages(updatePages); - log.debug("Updated Pages Number is:" + updatePages.length); + WebLogger.Instance.info("Updated Pages Number is:" + updatePages.length); if (pageFlowMetadataEntity.getPages().length == 0) { pageFlowMetadataEntity.setEntry(""); @@ -159,7 +158,7 @@ public class PageFlowMetadataUpdateService { RouteMetataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getPageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); } - log.debug("Debug_PageFlowMetadataDeleteEventListener_SyncPageFlowMetadata: Done."); + WebLogger.Instance.info("Debug_PageFlowMetadataDeleteEventListener_SyncPageFlowMetadata: Done."); } private GspAppConfig getOrCreateGspAppConfig(String metadataRelativePath) { diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java index c419b424..e3ab6162 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java @@ -29,7 +29,6 @@ import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntity; import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntityManager; import io.iec.edp.caf.commons.exception.ExceptionLevel; import io.iec.edp.caf.commons.utils.SpringBeanUtils; -import lombok.extern.slf4j.Slf4j; public class RouteMetataService { diff --git a/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/utility/SourceCodeMetadataUtility.java b/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/utility/SourceCodeMetadataUtility.java index d248ec9f..d65ccf2b 100644 --- a/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/utility/SourceCodeMetadataUtility.java +++ b/web-sourcecode-metadata/src/main/java/com/inspur/edp/web/sourcecode/metadata/utility/SourceCodeMetadataUtility.java @@ -19,16 +19,14 @@ package com.inspur.edp.web.sourcecode.metadata.utility; import com.inspur.edp.lcm.metadata.api.entity.MetadataProject; import com.inspur.edp.lcm.metadata.api.service.MetadataProjectService; import com.inspur.edp.web.common.encrypt.EncryptUtility; +import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.sourcecode.metadata.entity.SourceCodeItemEntity; import com.inspur.edp.web.sourcecode.metadata.entity.SourceCodeMetadataEntity; import io.iec.edp.caf.commons.utils.SpringBeanUtils; -import lombok.extern.slf4j.Slf4j; -import com.inspur.edp.web.common.io.FileUtility; -@Slf4j public class SourceCodeMetadataUtility { /** * 自定义web构件 项增加文件内容作为填充 @@ -57,7 +55,7 @@ public class SourceCodeMetadataUtility { item.setSourceFileContent(strBase64Encoding); } catch (RuntimeException ex) { - log.error("sourceCodeMetadata saving," + ex.getMessage(), ex); + WebLogger.Instance.error("sourceCodeMetadata saving," + ex.getMessage()); } } else { WebLogger.Instance.info("自定义web构件,文件不存在,对应路径路径:" + absolutePath); -- Gitee From 143ad333de026b65043067fce4be2ff55b046452 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 18:52:13 +0800 Subject: [PATCH 31/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=A7=BB=E9=99=A4self4j?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metadatamanager/BaseMetaDataManager.java | 21 +++++----- .../metadatamanager/EapiMetadataManager.java | 3 -- .../app/AppMetadataManager.java | 38 ------------------- 3 files changed, 11 insertions(+), 51 deletions(-) delete mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java index 42ef2905..025ccf1f 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java @@ -36,6 +36,15 @@ import java.util.function.Supplier; */ public abstract class BaseMetaDataManager { + private boolean isUpdradeTool = false; + + private String relativePath = ""; + + /** + * 默认的元数据找不到异常信息提示格式化参数 + */ + protected static final String defaultMetadataNotFoundFormatMessage = "根据元数据id获取元数据信息为空,对应元数据id:%s,元数据类型为:%s"; + /** * 设定必须获取当前的运行环境 * @@ -47,15 +56,6 @@ public abstract class BaseMetaDataManager { this.relativePath = relativePath; } - private boolean isUpdradeTool = false; - - private String relativePath = ""; - - /** - * 默认的元数据找不到异常信息提示格式化参数 - */ - protected static final String defaultMetadataNotFoundFormatMessage = "根据元数据id获取元数据信息为空,对应元数据id:%s,元数据类型为:%s"; - /** * 获取默认的元数据找不到异常信息 * @@ -101,7 +101,8 @@ public abstract class BaseMetaDataManager { throw new WebCustomException("元数据获取,构造目标元数据信息supplierAction不能为空"); } - GspMetadata metadata = MetadataUtility.getInstance().getMetadataWithEnvironment(targetMetadataSupplierAction, sourceMetadataSupplierAction, customTargetMetadataNotFoundMessage, this.executeEnvironment, isUpdradeTool); + GspMetadata metadata = MetadataUtility.getInstance().getMetadataWithEnvironment(targetMetadataSupplierAction, sourceMetadataSupplierAction, + customTargetMetadataNotFoundMessage, this.executeEnvironment, isUpdradeTool); if (metadata != null) { //relativePath = metadata.getRelativePath(); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java index c98fedf5..00bd474e 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java @@ -28,9 +28,6 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; * @author noah */ public class EapiMetadataManager extends BaseMetaDataManager { -// public EapiMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { -// super(executeEnvironment, isUpdradeTool); -// } public EapiMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { super(executeEnvironment, relativePath, isUpdradeTool); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java deleted file mode 100644 index 319c4fed..00000000 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/app/AppMetadataManager.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.formmetadata.metadatamanager.app; - -import com.inspur.edp.web.common.environment.ExecuteEnvironment; -import com.inspur.edp.web.formmetadata.metadatamanager.BaseMetaDataManager; - -/** - * appmetadataManager - * - * @author noah - */ -public class AppMetadataManager extends BaseMetaDataManager { - - /** - * 设定必须获取当前的运行环境 - * - * @param executeEnvironment - * @param isUpdradeTool - */ - public AppMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - super(executeEnvironment, null, isUpdradeTool); - } -} -- Gitee From 48ecc9c7078884272c9ee68d7a9281494f5deb3a Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 19:03:38 +0800 Subject: [PATCH 32/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E8=8E=B7=E5=8F=96=E5=85=83?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metadatamanager/BaseMetaDataManager.java | 25 +++++-------------- .../CommandsMetadataManager.java | 3 --- .../ComponentMetadataManager.java | 4 --- .../metadatamanager/FormMetadataManager.java | 3 ++- .../StateMachineMetadataManager.java | 7 ++---- 5 files changed, 10 insertions(+), 32 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java index 025ccf1f..698e14a2 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java @@ -36,23 +36,23 @@ import java.util.function.Supplier; */ public abstract class BaseMetaDataManager { - private boolean isUpdradeTool = false; + private boolean isUpgradeTool = false; private String relativePath = ""; /** * 默认的元数据找不到异常信息提示格式化参数 */ - protected static final String defaultMetadataNotFoundFormatMessage = "根据元数据id获取元数据信息为空,对应元数据id:%s,元数据类型为:%s"; + private static final String defaultMetadataNotFoundFormatMessage = "根据元数据id获取元数据信息为空,对应元数据id:%s,元数据类型为:%s"; /** * 设定必须获取当前的运行环境 * * @param executeEnvironment */ - public BaseMetaDataManager(ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpdradeTool) { + public BaseMetaDataManager(ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpgradeTool) { this.setExecuteEnvironment(executeEnvironment); - this.isUpdradeTool = isUpdradeTool; + this.isUpgradeTool = isUpgradeTool; this.relativePath = relativePath; } @@ -101,21 +101,8 @@ public abstract class BaseMetaDataManager { throw new WebCustomException("元数据获取,构造目标元数据信息supplierAction不能为空"); } - GspMetadata metadata = MetadataUtility.getInstance().getMetadataWithEnvironment(targetMetadataSupplierAction, sourceMetadataSupplierAction, - customTargetMetadataNotFoundMessage, this.executeEnvironment, isUpdradeTool); - - if (metadata != null) { - //relativePath = metadata.getRelativePath(); - } - return metadata; - } - - public GspMetadata getMetadata(String metaDataFileName, String metaDataFilePath) { - GspMetadata metadata = MetadataUtility.getInstance().getMetadataWithDesign(metaDataFileName, metaDataFilePath); - if (metadata != null) { - //relativePath = metadata.getRelativePath(); - } - return metadata; + return MetadataUtility.getInstance().getMetadataWithEnvironment(targetMetadataSupplierAction, sourceMetadataSupplierAction, + customTargetMetadataNotFoundMessage, this.executeEnvironment, isUpgradeTool); } public String serialize(IMetadataContent obj) { diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java index d6b0c4b5..ac2155ec 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java @@ -27,9 +27,6 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; * @author noah */ public class CommandsMetadataManager extends BaseMetaDataManager { -// public CommandsMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { -// super(executeEnvironment, isUpdradeTool); -// } public CommandsMetadataManager(ExecuteEnvironment executeEnvironment, String relativePath, boolean isUpdradeTool) { super(executeEnvironment, relativePath, isUpdradeTool); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java index 1df46921..f501320a 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java @@ -29,10 +29,6 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; */ public class ComponentMetadataManager extends BaseMetaDataManager { -// public ComponentMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { -// super(executeEnvironment, isUpdradeTool); -// } - public ComponentMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { super(executeEnvironment, relativePath, isUpdradeTool); } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java index d2c7b0d4..f15ece9a 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java @@ -20,6 +20,7 @@ import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; +import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; /** @@ -36,7 +37,7 @@ public class FormMetadataManager extends BaseMetaDataManager { * 获取可视化的DOM */ public String getVisualDom(String metaDataFileName, String metaDataFilePath) { - GspMetadata metadata = getMetadata(metaDataFileName, metaDataFilePath); + GspMetadata metadata = MetadataUtility.getInstance().getMetadataWithDesign(metaDataFileName, metaDataFilePath); this.setRelativePath(metadata.getRelativePath()); return ((FormMetadataContent) metadata.getContent()).getContents().toString(); } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java index 4b5e394a..8fee975f 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java @@ -27,12 +27,9 @@ import com.inspur.edp.web.common.metadata.MetadataTypeEnum; * @author guozhiqi */ public class StateMachineMetadataManager extends BaseMetaDataManager { -// public StateMachineMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { -// super(executeEnvironment, isUpdradeTool); -// } - public StateMachineMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, String relativePath) { - super(executeEnvironment, relativePath, isUpdradeTool); + public StateMachineMetadataManager(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool, String relativePath) { + super(executeEnvironment, relativePath, isUpgradeTool); } public GspMetadata getStateMachine(String id, String code, String name, String nameSpace) { -- Gitee From 2709e841a45cca11102f15ce420ab577c97dac82 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sat, 8 Jul 2023 20:47:45 +0800 Subject: [PATCH 33/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=91=BD=E4=BB=A4=E5=85=83?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=8E=B7=E5=8F=96=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FrmJsonFileGenerator.java | 5 +- .../edp/web/common/utility/StringUtility.java | 13 + .../edp/web/jitengine/JITEngineManager.java | 4 +- .../metadataanalysis/CommandsAnalysis.java | 279 ------------------ .../metadataanalysis/CommandsAnalysis.java | 74 +++-- .../metadatamanager/BaseMetaDataManager.java | 1 + .../CommandExtendProperty.java | 33 --- .../CommandServiceManager.java | 17 ++ .../CommandsMetadataManager.java | 15 +- .../MetadataManagerParameter.java | 84 ++++++ .../specific/CommandMetadataOperation.java | 2 +- 11 files changed, 176 insertions(+), 351 deletions(-) delete mode 100644 web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java delete mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandExtendProperty.java create mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/MetadataManagerParameter.java diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java index 6d298d16..f5ca1fb2 100644 --- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java +++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java @@ -108,7 +108,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen HashMap projectCmpList = new HashMap<>(); try { fileName = fileName + ".frm"; - commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(null, json), fileName, basePath, projectCmpList, null, fileName); + commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(null, json), fileName, basePath, projectCmpList); } catch (Exception e) { WebLogger.Instance.error(e); } @@ -297,7 +297,8 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen // // // Step 3: Resolve Command CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); - commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formMetadata, formDom), formMetadataName, targetStorageBasePath, projectCmpList, webDevPath, null); + commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(formMetadata, formDom), + formMetadataName, targetStorageBasePath, projectCmpList); // // // Step 4: Resolve eapi EapiAnalysis eapiAnalysis = new EapiAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); diff --git a/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java b/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java index 685b6b48..491fe10a 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/utility/StringUtility.java @@ -267,6 +267,19 @@ public class StringUtility { return source.toString(); } + /** + * 获取对应值或默认值空字符串 + * + * @param source + * @return + */ + public static String getOrDefaultEmpty(Object source) { + if (source == null) { + return ""; + } + return source.toString(); + } + /** * 将null 转换成空字符串 * diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index 92766b97..bcce30d4 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -54,7 +54,6 @@ import com.inspur.edp.web.npmpackage.core.npminstall.NodeModulesPathGenerator; import com.inspur.edp.web.npmpackage.core.npminstall.NpmInstallManager; import com.inspur.edp.web.npmpackage.core.npminstall.PackageJsonPathGenerator; import com.inspur.edp.web.npmpackage.core.npmsetting.NpmSettingManager; -import io.iec.edp.caf.commons.utils.SpringBeanUtils; import org.apache.commons.lang3.SystemUtils; import java.io.File; @@ -380,7 +379,8 @@ public class JITEngineManager { // Resolve Command // 增加是否解析表单参数 如果为解析表单 那么不再生成对应的command.json 文件 CommandsAnalysis commandsAnalysis = new CommandsAnalysis(ExecuteEnvironment.Design, false, !resolveFormMetadataItem.getCalculateIsDynamicForm()); - commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(resolveFormMetadataItem.getGspMetadata(), formDom), formMetadataName, targetStorageBasePath, projectCmpList, webDevPath, null); + commandsAnalysis.resolveCommand(CommandsAnalysis.ResolveCommandParameter.init(resolveFormMetadataItem.getGspMetadata(), formDom), + formMetadataName, targetStorageBasePath, projectCmpList); if (!resolveFormMetadataItem.getCalculateIsDynamicForm()) { // Resolve Eapi diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java deleted file mode 100644 index 1ff1ca7d..00000000 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/metadataanalysis/CommandsAnalysis.java +++ /dev/null @@ -1,279 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.jitengine.metadataanalysis; - -import com.inspur.edp.cdp.web.component.metadata.define.WebComponentMetadata; -import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; -import com.inspur.edp.web.command.component.metadata.*; -import com.inspur.edp.web.common.environment.ExecuteEnvironment; -import com.inspur.edp.web.common.logger.WebLogger; -import com.inspur.edp.web.common.metadata.MetadataGetterParameter; -import com.inspur.edp.web.common.metadata.MetadataTypeEnum; -import com.inspur.edp.web.common.serialize.SerializeUtility; -import com.inspur.edp.web.common.utility.StringUtility; -import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; -import com.inspur.edp.web.formmetadata.metadatamanager.CommandsMetadataManager; -import com.inspur.edp.web.formmetadata.metadatamanager.ComponentMetadataManager; - -import java.util.*; - -/** - * 命令解析 - * - * @author noah - */ - -public class CommandsAnalysis { - private ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Design; - private boolean isUpdradeTool = false; - // 是否生成command.json 文件 - private boolean createCommandJsonFile = true; - - public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - this.executeEnvironment = executeEnvironment; - this.isUpdradeTool = isUpdradeTool; - } - - public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, boolean createCommandJsonFile) { - this.executeEnvironment = executeEnvironment; - this.isUpdradeTool = isUpdradeTool; - this.createCommandJsonFile = createCommandJsonFile; - } - - - public void resolveCommand(FormDOM json, String formMetadataName, String targetStoragePath, - HashMap projectCmpList, - String webDevPath, String relativePath, String fileName) { - HashMap cmpList = new HashMap<>(8); - CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, relativePath, this.isUpdradeTool); - ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, relativePath); - StringBuilder sbCommands = new StringBuilder(); - sbCommands.append("{"); - if (json.getModule() != null && json.getModule().getWebcmds() != null && json.getModule().getWebcmds().size() > 0) { - sbCommands.append("\"commands\":{"); - int index = 0; - WebCommandsMetadata metadata; - String cmdId; - for (HashMap c : json.getModule().getWebcmds()) { - if (index > 0) { - sbCommands.append(","); - } - cmdId = c.get("id").toString(); - GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), "").toString(), StringUtility.getOrDefault(c.get("name"), ""), StringUtility.getOrDefault(c.get("nameSpace"), "")); - metadata = (WebCommandsMetadata) commandMetadata.getContent(); - analysisComponentMetadata(metadata, cmpList, null, componentMetadataManager, projectCmpList); - - try { - analysisServiceRef(json, cmpList, relativePath); - } catch (Exception e) { - WebLogger.Instance.error(e); - return; - } - - sbCommands.append("\"").append(cmdId).append("\":"); - sbCommands.append(cmdManager.serialize(metadata)); - index += 1; - } - sbCommands.append("}"); - - if (cmpList.size() > 0) { - sbCommands.append(",\"serviceList\":["); - index = 0; - - Iterator iter = cmpList.entrySet().iterator(); - while (iter.hasNext()) { - HashMap.Entry entry = (HashMap.Entry) iter.next(); - if (index > 0) { - sbCommands.append(","); - } - sbCommands.append(SerializeUtility.getInstance().serialize(entry.getValue(), false)); - index += 1; - } - sbCommands.append("]"); - } - } - sbCommands.append("}"); - - if (StringUtility.isNullOrEmpty(fileName)) { - fileName = json.getModule().getCode().toLowerCase(); - } - if (this.createCommandJsonFile) { - cmdManager.saveMetadataFile(targetStoragePath, formMetadataName.toLowerCase() + ".command.json", sbCommands.toString()); - } - - } - - private void analysisComponentMetadata(WebCommandsMetadata metadata, HashMap cmpList, - List items, ComponentMetadataManager cmpManager, - HashMap projectCmpList) { - if (items == null || items.size() == 0) { - if (metadata.getCommands() != null && metadata.getCommands().size() > 0) { - for (WebCommand webCommandItem : metadata.getCommands()) { - try { - analysisComponentCommandItemList(webCommandItem.getItems(), cmpList, cmpManager, projectCmpList); - } catch (Exception e) { - WebLogger.Instance.error(e); - } - } - } - } else { - for (BranchCommandItem branchCommandItem : items) { - try { - analysisComponentCommandItemList(branchCommandItem.getItems(), cmpList, cmpManager, projectCmpList); - } catch (Exception e) { - WebLogger.Instance.error(e); - } - } - } - } - - /// - /// 解析commandItem - /// - /// - /// - /// - private void analysisComponentCommandItemList(List commandItemList, HashMap cmpList, - ComponentMetadataManager cmpManager, HashMap projectCmpList) throws Exception { - if (commandItemList != null && commandItemList.size() > 0) { - WebComponentMetadata cmpMetadata = null; - for (CommandItem item : commandItemList) { - switch (item.getItemType()) { - case MethodRefer: - if (!cmpList.containsKey(((CmpMethodRefering) item).getComponentId())) { - if (!projectCmpList.containsKey(((CmpMethodRefering) item).getComponentId())) { - try { - CmpMethodRefering cmpMethodReferingItem = (CmpMethodRefering) item; - cmpMetadata = cmpManager.getComponentMetadata(cmpMethodReferingItem.getComponentId(), cmpMethodReferingItem.getCode(), cmpMethodReferingItem.getName(), cmpMethodReferingItem.getComponentPath()); - if (cmpMetadata == null) { - throw new Exception("标识为'" + ((CmpMethodRefering) item).getComponentId() + "'的服务构件为null。"); - } - WebLogger.Instance.info("Get WebCommands By Id:" + cmpMetadata.getId(), this.getClass().getName()); - cmpList.put(cmpMetadata.getId(), cmpMetadata); - projectCmpList.put(cmpMetadata.getId(), cmpMetadata); - } catch (Exception ex) { - throw new Exception("获取command元数据" + ((CmpMethodRefering) item).getComponentId() + "失败", ex); - } - } else { - cmpMetadata = projectCmpList.get(((CmpMethodRefering) item).getComponentId()); - cmpList.put(cmpMetadata.getId(), cmpMetadata); - } - } - break; - case BranchCollection: - analysisComponentMetadata(null, cmpList, ((BranchCollectionCommandItem) item).getItems(), cmpManager, projectCmpList); - break; - default: - break; - - } - } - } - } - - private void analysisServiceRef(FormDOM json, HashMap cmpList, String relativePath) throws Exception { - if (cmpList != null && cmpList.size() > 0) { - - Iterator iter = cmpList.entrySet().iterator(); - while (iter.hasNext()) { - HashMap.Entry entry = (HashMap.Entry) iter.next(); - - HashMap serviceRef = new HashMap<>(); - WebComponentMetadata component = (WebComponentMetadata) entry.getValue(); - if (component == null) { - throw new RuntimeException("不存在标识为'" + entry.getKey() + "'的服务构件"); - } - - if (!hasServiceReference(json.getModule().getServiceRefs(), component)) { - serviceRef.put("cmpId", component.getId()); - serviceRef.put("name", component.getClassName()); - String path = component.getSource(); - if (path == null || path.isEmpty()) { - path = getTSFileName(component.getId(), relativePath); - component.setSource(path); - } - serviceRef.put("path", path); - - serviceRef.put("isCommon", component.isCommon() ? "1" : "0"); - serviceRef.put("alias", component.getClassName() + "1"); - - json.getModule().getServiceRefs().add(serviceRef); - } - } - } - } - - private boolean hasServiceReference(List> serviceReferenceList, WebComponentMetadata component) { - boolean flag = false; - for (HashMap serviceRef : serviceReferenceList) { - if (serviceRef.containsKey("name") && serviceRef.containsKey("path")) { - if (serviceRef.get("name") == null) { - throw new RuntimeException("标识为'{" + serviceRef.get("cmpId") + "'的服务构件name属性不允许为null。"); - } - - if (serviceRef.get("path") == null) { - throw new RuntimeException("标识为'" + serviceRef.get("cmpId") + "'的服务构件path属性不允许为null。"); - } - - if (serviceRef.get("name").toString().equals(component.getClassName()) && - serviceRef.get("path") == component.getSource()) { - flag = true; - break; - } - } - } - return flag; - } - - /** - * 获取ts文件路径和名称 - */ - private String getTSFileName(String cmpId, String relativePath) throws Exception { - // 最理想的方式:路径来自webcmp构件路径,名称来自path(即元数据的Source属性) - // 先用webcmp的文件名构造,后续可以考虑调整 - if (cmpId == null || cmpId.isEmpty()) { - throw new Exception("获取ts文件名出错,对应的web构件id不能为空。"); - } - - CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, relativePath, this.isUpdradeTool); - GspMetadata metadata = manager.getMetadata(() -> { - MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); - getterMetadataInfo.setId(cmpId); - getterMetadataInfo.setMetadataType(MetadataTypeEnum.TS); - return getterMetadataInfo; - }, null, null); - - if (metadata == null) { - throw new RuntimeException("load command metatdata is null,commandId is " + cmpId); - } - - String path = metadata.getRelativePath(); - String cmpFileName = metadata.getHeader().getFileName(); - // 后缀为.webcmp - int suffixIndex = cmpFileName.lastIndexOf(".webcmp"); - String fileName; - if (suffixIndex > 0 && suffixIndex + 7 == cmpFileName.length()) { - fileName = cmpFileName.substring(0, suffixIndex); - } else if (cmpFileName.contains(metadata.getHeader().getCode())) { - fileName = cmpFileName; - } else { - throw new Exception("获取ts文件名出错,web构件上获取的文件名不对。"); - } - - return path + "/" + fileName + ".ts"; - } -} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java index d85bd83c..150a2313 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java @@ -25,12 +25,14 @@ import com.inspur.edp.web.common.logger.WebLogger; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; import com.inspur.edp.web.common.serialize.SerializeUtility; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.api.dto.FormRelateMetadataInDesignResultDto; import com.inspur.edp.web.formmetadata.api.dto.RelateMetadataTypeEnum; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadatamanager.CommandsMetadataManager; import com.inspur.edp.web.formmetadata.metadatamanager.ComponentMetadataManager; +import com.inspur.edp.web.formmetadata.metadatamanager.MetadataManagerParameter; import io.iec.edp.caf.boot.context.CAFContext; import io.iec.edp.caf.core.session.CafSession; import lombok.Getter; @@ -51,30 +53,29 @@ import java.util.concurrent.atomic.AtomicInteger; public class CommandsAnalysis { private ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Design; - private boolean isUpdradeTool = false; + private boolean isUpgradeTool = false; // 是否生成command.json 文件 private boolean createCommandJsonFile = true; /** * web 命令元数据列表 */ - private HashMap webCommandsMetadataHashMap; + private Map webCommandsMetadataHashMap; - public HashMap getWebCommandsMetadataHashMap() { + public Map getWebCommandsMetadataHashMap() { if (this.webCommandsMetadataHashMap == null) { this.webCommandsMetadataHashMap = new HashMap<>(); } return this.webCommandsMetadataHashMap; } - public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - this.executeEnvironment = executeEnvironment; - this.isUpdradeTool = isUpdradeTool; + public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) { + this(executeEnvironment, isUpgradeTool, true); } public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, boolean createCommandJsonFile) { this.executeEnvironment = executeEnvironment; - this.isUpdradeTool = isUpdradeTool; + this.isUpgradeTool = isUpdradeTool; this.createCommandJsonFile = createCommandJsonFile; } @@ -86,8 +87,21 @@ public class CommandsAnalysis { public static class ResolveCommandParameter { private FormDOM json; + /** + * 关联的表单元数据信息 + */ private GspMetadata formMetadata; + /** + * 获取表单元数据的相对路径 + * 如果对应表单元数据为空,那么对应的相对路径参数为空 + * + * @return + */ + public String getFormMetadataRelativePath() { + return this.formMetadata == null ? null : this.formMetadata.getRelativePath(); + } + public static ResolveCommandParameter init(GspMetadata formMetadata, FormDOM formDOM) { ResolveCommandParameter parameter = new ResolveCommandParameter(); parameter.json = formDOM; @@ -97,15 +111,15 @@ public class CommandsAnalysis { } public void resolveCommand(ResolveCommandParameter parameter, String formMetadataName, String targetStoragePath, - HashMap projectCmpList, - String webDevPath, String fileName) { + HashMap projectCmpList) { HashMap cmpList = new HashMap<>(8); - String strFormRelativePath = parameter.getFormMetadata() == null ? null : parameter.getFormMetadata().getRelativePath(); - CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, strFormRelativePath, this.isUpdradeTool); - ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, strFormRelativePath); + String strFormRelativePath = parameter.getFormMetadataRelativePath(); + CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, strFormRelativePath, this.isUpgradeTool); + ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpgradeTool, strFormRelativePath); StringBuilder sbCommands = new StringBuilder(); sbCommands.append("{"); - if (parameter.getJson().getModule() != null && parameter.getJson().getModule().getWebcmds() != null && parameter.getJson().getModule().getWebcmds().size() > 0) { + if (parameter.getJson().getModule() != null && + ListUtility.isNotEmpty(parameter.getJson().getModule().getWebcmds())) { sbCommands.append("\"commands\":{"); int index = 0; WebCommandsMetadata metadata; @@ -116,14 +130,18 @@ public class CommandsAnalysis { } cmdId = c.get("id").toString(); - GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), ""), StringUtility.getOrDefault(c.get("name"), ""), - StringUtility.getOrDefault(c.get("nameSpace"), "")); + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(cmdId, + StringUtility.getOrDefaultEmpty(c.get("code")), + StringUtility.getOrDefaultEmpty(c.get("name")), + StringUtility.getOrDefaultEmpty(c.get("nameSpace"))); + GspMetadata commandMetadata = cmdManager.getWebCommands(metadataManagerParameter); metadata = (WebCommandsMetadata) commandMetadata.getContent(); - // 写入web 命令元数据 - this.getWebCommandsMetadataHashMap().put(commandMetadata.getHeader().getId(), WebCommandsMetadataAndExtra.init(metadata, commandMetadata.getHeader().getId(), commandMetadata.getHeader().getName(), commandMetadata.getHeader().getFileName(), commandMetadata.getRelativePath())); + // 写入缓存 避免多次对同一个元数据的请求 + this.getWebCommandsMetadataHashMap().put(commandMetadata.getHeader().getId(), + WebCommandsMetadataAndExtra.init(metadata, commandMetadata.getHeader().getId(), commandMetadata.getHeader().getName(), commandMetadata.getHeader().getFileName(), commandMetadata.getRelativePath())); analysisComponentMetadata(metadata, cmpList, null, componentMetadataManager, projectCmpList); @@ -155,9 +173,7 @@ public class CommandsAnalysis { } sbCommands.append("}"); - if (StringUtility.isNullOrEmpty(fileName)) { - fileName = parameter.getJson().getModule().getCode().toLowerCase(); - } + if (this.createCommandJsonFile) { cmdManager.saveMetadataFile(targetStoragePath, formMetadataName.toLowerCase() + ".command.json", sbCommands.toString()); } @@ -189,9 +205,9 @@ public class CommandsAnalysis { List> completableFutureList, Map formRelateMetadataInDesignResultDtoConcurrentHashMap ) { - CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, parameter.getFormMetadata().getRelativePath(), this.isUpdradeTool); + CommandsMetadataManager cmdManager = new CommandsMetadataManager(this.executeEnvironment, parameter.getFormMetadata().getRelativePath(), this.isUpgradeTool); - ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, parameter.getFormMetadata().getRelativePath()); + ComponentMetadataManager componentMetadataManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpgradeTool, parameter.getFormMetadata().getRelativePath()); if (parameter.getJson().getModule() != null && parameter.getJson().getModule().getWebcmds() != null && parameter.getJson().getModule().getWebcmds().size() > 0) { // 使用并行流 @@ -202,7 +218,11 @@ public class CommandsAnalysis { Map webCommandsMetadataAndExtraMap = new ConcurrentHashMap<>(); String cmdId = c.get("id").toString(); - GspMetadata commandMetadata = cmdManager.getWebCommands(cmdId, StringUtility.getOrDefault(c.get("code"), ""), StringUtility.getOrDefault(c.get("name"), ""), StringUtility.getOrDefault(c.get("nameSpace"), "")); + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(cmdId, + StringUtility.getOrDefaultEmpty(c.get("code")), + StringUtility.getOrDefaultEmpty(c.get("name")), + StringUtility.getOrDefaultEmpty(c.get("nameSpace"))); + GspMetadata commandMetadata = cmdManager.getWebCommands(metadataManagerParameter); WebCommandsMetadata metadata = (WebCommandsMetadata) commandMetadata.getContent(); // 写入web 命令元数据 webCommandsMetadataAndExtraMap.put(commandMetadata.getHeader().getId(), WebCommandsMetadataAndExtra.init(metadata, commandMetadata.getHeader().getId(), commandMetadata.getHeader().getName(), commandMetadata.getHeader().getFileName(), commandMetadata.getRelativePath())); @@ -244,8 +264,8 @@ public class CommandsAnalysis { private void analysisComponentMetadata(WebCommandsMetadata metadata, Map cmpList, List items, ComponentMetadataManager cmpManager, Map projectCmpList) { - if (items == null || items.size() == 0) { - if (metadata.getCommands() != null && metadata.getCommands().size() > 0) { + if (ListUtility.isEmpty(items)) { + if (ListUtility.isNotEmpty(metadata.getCommands())) { for (WebCommand webCommandItem : metadata.getCommands()) { try { analysisComponentCommandItemList(webCommandItem.getItems(), cmpList, cmpManager, projectCmpList); @@ -275,7 +295,7 @@ public class CommandsAnalysis { ComponentMetadataManager cmpManager, Map projectCmpList) throws Exception { if (commandItemList != null && commandItemList.size() > 0) { if (cmpManager == null) { - cmpManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpdradeTool, null); + cmpManager = new ComponentMetadataManager(this.executeEnvironment, this.isUpgradeTool, null); } WebComponentMetadata cmpMetadata = null; for (CommandItem item : commandItemList) { @@ -404,7 +424,7 @@ public class CommandsAnalysis { throw new WebCustomException("获取ts文件名出错,对应的web构件id不能为空。"); } - CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, null, this.isUpdradeTool); + CommandsMetadataManager manager = new CommandsMetadataManager(this.executeEnvironment, null, this.isUpgradeTool); GspMetadata metadata = manager.getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); getterMetadataInfo.setId(cmpId); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java index 698e14a2..6777f518 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/BaseMetaDataManager.java @@ -26,6 +26,7 @@ import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.serialize.SerializeUtility; +import com.inspur.edp.web.common.utility.StringUtility; import java.util.function.Supplier; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandExtendProperty.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandExtendProperty.java deleted file mode 100644 index 49d89c09..00000000 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandExtendProperty.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.inspur.edp.web.formmetadata.metadatamanager; - -/** - * 命令扩展 - * @author noah - */ -public class CommandExtendProperty { - private String sourceCode; - - public final String getSourceCode() { - return sourceCode; - } - - public final void setsourceCode(String value) { - sourceCode = value; - } -} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java index 6e49f069..637546e5 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandServiceManager.java @@ -90,4 +90,21 @@ public class CommandServiceManager { } return ""; } + + /** + * 命令扩展 + * + * @author noah + */ + private static class CommandExtendProperty { + private String sourceCode; + + public final String getSourceCode() { + return sourceCode; + } + + public final void setsourceCode(String value) { + sourceCode = value; + } + } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java index ac2155ec..23dada6a 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/CommandsMetadataManager.java @@ -17,6 +17,7 @@ package com.inspur.edp.web.formmetadata.metadatamanager; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; @@ -32,19 +33,19 @@ public class CommandsMetadataManager extends BaseMetaDataManager { super(executeEnvironment, relativePath, isUpdradeTool); } - public GspMetadata getWebCommands(String id, String code, String name, String nameSpace) { + public GspMetadata getWebCommands(MetadataManagerParameter metadataManagerParameter) { GspMetadata webCommandMetadata = getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); - getterMetadataInfo.setId(id); + getterMetadataInfo.setId(metadataManagerParameter.getId()); getterMetadataInfo.setMetadataType(MetadataTypeEnum.Command); - getterMetadataInfo.setCode(code); + getterMetadataInfo.setCode(metadataManagerParameter.getExtendParameter().getCode()); getterMetadataInfo.setPath(this.getRelativePath()); - getterMetadataInfo.setNameSpace(nameSpace); - getterMetadataInfo.setName(name); + getterMetadataInfo.setNameSpace(metadataManagerParameter.getExtendParameter().getNameSpace()); + getterMetadataInfo.setName(metadataManagerParameter.getExtendParameter().getName()); return getterMetadataInfo; - }, null, this.getDefaultMetadataNotFoundFormatMessage(id, MetadataTypeEnum.Command)); + }, null, this.getDefaultMetadataNotFoundFormatMessage(metadataManagerParameter.getId(), MetadataTypeEnum.Command)); if (webCommandMetadata == null) { - throw new RuntimeException("load webCommand metadata is null,the commandId is " + id); + throw new WebCustomException("load webCommand metadata is null,the commandId is " + metadataManagerParameter.getId()); } return webCommandMetadata; } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/MetadataManagerParameter.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/MetadataManagerParameter.java new file mode 100644 index 00000000..e17bd6e6 --- /dev/null +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/MetadataManagerParameter.java @@ -0,0 +1,84 @@ +package com.inspur.edp.web.formmetadata.metadatamanager; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 通过id获取元数据参数 + * 增加code、name、namespace的目的是为了更加友好的提示元数据找不到时的异常提示信息 + * + * @author noah + * 2023/7/8 19:06 + */ +public class MetadataManagerParameter implements Serializable { + private static final long serialVersionUID = -8388L; + + private MetadataManagerParameter() { + } + + /** + * 元数据id + */ + String id; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + private ExtendParameter extendParameter; + + public ExtendParameter getExtendParameter() { + if (this.extendParameter == null) { + this.extendParameter = new ExtendParameter(); + } + return extendParameter; + } + + public void setExtendParameter(ExtendParameter extendParameter) { + this.extendParameter = extendParameter; + } + + public static MetadataManagerParameter init(String id, String code, String name, String nameSpace) { + MetadataManagerParameter metadataManagerParameter = new MetadataManagerParameter(); + metadataManagerParameter.setId(id); + ExtendParameter extendParameter = ExtendParameter.init(code, name, nameSpace); + metadataManagerParameter.setExtendParameter(extendParameter); + return metadataManagerParameter; + } + + /** + * 扩展参数信息 + */ + @Data + public static class ExtendParameter { + /** + * 元数据code + */ + String code; + /** + * 元数据name + */ + String name; + /** + * 元数据nameSpace + */ + String nameSpace; + + private ExtendParameter() { + } + + public static ExtendParameter init(String code, String name, String nameSpace) { + ExtendParameter extendParameter = new ExtendParameter(); + extendParameter.setCode(code); + extendParameter.setName(name); + extendParameter.setNameSpace(nameSpace); + return extendParameter; + } + } + +} diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java index 7f1fa7b9..3c385815 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java @@ -28,7 +28,7 @@ class CommandMetadataOperation { CommandsAnalysis commandsAnalysis = new CommandsAnalysis(ExecuteEnvironment.Runtime, false); HashMap cmpCacheList = new HashMap<>(); CommandsAnalysis.ResolveCommandParameter resolveCommandParameter = CommandsAnalysis.ResolveCommandParameter.init(formParameter.getMetadata(), json); - commandsAnalysis.resolveCommand(resolveCommandParameter, formMetadataName, webDevPath, cmpCacheList, null, null); + commandsAnalysis.resolveCommand(resolveCommandParameter, formMetadataName, webDevPath, cmpCacheList); } } -- Gitee From ce5b60c837920b3c92e71862055241108afe54a8 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 15:14:47 +0800 Subject: [PATCH 34/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=91=BD=E4=BB=A4=E5=85=83?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=8E=B7=E5=8F=96=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metadataanalysis/CommandsAnalysis.java | 6 +++++- .../metadataanalysis/EapiAnalysis.java | 8 +++++--- .../ComponentMetadataManager.java | 14 +++++++------- .../metadatamanager/EapiMetadataManager.java | 14 +++++++------- .../metadatamanager/FormMetadataManager.java | 19 ++++++++++--------- 5 files changed, 34 insertions(+), 27 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java index 150a2313..b6c7bc15 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java @@ -305,7 +305,11 @@ public class CommandsAnalysis { if (!projectCmpList.containsKey(((CmpMethodRefering) item).getComponentId())) { try { CmpMethodRefering cmpMethodReferingItem = (CmpMethodRefering) item; - cmpMetadata = cmpManager.getComponentMetadata(cmpMethodReferingItem.getComponentId(), cmpMethodReferingItem.getCode(), cmpMethodReferingItem.getName(), cmpMethodReferingItem.getComponentPath()); + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(cmpMethodReferingItem.getComponentId(), + cmpMethodReferingItem.getCode(), + cmpMethodReferingItem.getName(), + cmpMethodReferingItem.getComponentPath()); + cmpMetadata = cmpManager.getComponentMetadata(metadataManagerParameter); if (cmpMetadata == null) { throw new Exception("标识为'" + ((CmpMethodRefering) item).getComponentId() + "'的服务构件为null。"); } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java index 696c9993..f2132a32 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java @@ -22,6 +22,7 @@ import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadatamanager.EapiMetadataManager; +import com.inspur.edp.web.formmetadata.metadatamanager.MetadataManagerParameter; import java.util.HashMap; import java.util.List; @@ -72,10 +73,11 @@ public class EapiAnalysis { String strEapiID = item.containsKey("eapiId") ? item.get("eapiId").toString() : ""; // 如果获取到EapiID 抛出对应的异常,主要目的是因为eapi的结构调整 if (!StringUtility.isNullOrEmpty(strEapiID)) { - IMetadataContent eapiMetadataContent = eapiMetadataManager.getEapiMetadataContent(strEapiID, - StringUtility.getOrDefault(item.get("eapiCode"), ""), - StringUtility.getOrDefault(item.get("eapiName"), ""), + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(strEapiID, + StringUtility.getOrDefaultEmpty(item.get("eapiCode")), + StringUtility.getOrDefaultEmpty(item.get("eapiName")), StringUtility.getOrDefault(item.get("eapiNameSpace"), nameSpace)); + IMetadataContent eapiMetadataContent = eapiMetadataManager.getEapiMetadataContent(metadataManagerParameter); String eapiJson = eapiMetadataManager.serialize(eapiMetadataContent, PropertyNamingStrategy.UPPER_CAMEL_CASE); eapis.append(eapiJson); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java index f501320a..a5313f6b 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/ComponentMetadataManager.java @@ -33,19 +33,19 @@ public class ComponentMetadataManager extends BaseMetaDataManager { super(executeEnvironment, relativePath, isUpdradeTool); } - public WebComponentMetadata getComponentMetadata(String id, String code, String name, String nameSpace) { + public WebComponentMetadata getComponentMetadata(MetadataManagerParameter metadataManagerParameter) { GspMetadata webComponentMetadata = getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); - getterMetadataInfo.setId(id); - getterMetadataInfo.setCode(code); - getterMetadataInfo.setName(name); + getterMetadataInfo.setId(metadataManagerParameter.getId()); + getterMetadataInfo.setCode(metadataManagerParameter.getExtendParameter().getCode()); + getterMetadataInfo.setName(metadataManagerParameter.getExtendParameter().getName()); getterMetadataInfo.setPath(this.getRelativePath()); - getterMetadataInfo.setNameSpace(nameSpace); + getterMetadataInfo.setNameSpace(metadataManagerParameter.getExtendParameter().getNameSpace()); getterMetadataInfo.setMetadataType(MetadataTypeEnum.Component); return getterMetadataInfo; - }, null, this.getDefaultMetadataNotFoundFormatMessage(id, MetadataTypeEnum.Component)); + }, null, this.getDefaultMetadataNotFoundFormatMessage(metadataManagerParameter.getId(), MetadataTypeEnum.Component)); if (webComponentMetadata == null) { - throw new RuntimeException("load webComponent metadata is null,the metaDataId is " + id); + throw new RuntimeException("load webComponent metadata is null,the metaDataId is " + metadataManagerParameter.getId()); } return (WebComponentMetadata) webComponentMetadata.getContent(); } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java index 00bd474e..53dfda09 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java @@ -38,18 +38,18 @@ public class EapiMetadataManager extends BaseMetaDataManager { * * @return */ - public IMetadataContent getEapiMetadataContent(String eapiMetadataId, String eapiMetadataCode, String eapiMetadataName, String eapiMetadataNameSpace) { + public IMetadataContent getEapiMetadataContent(MetadataManagerParameter metadataManagerParameter) { GspMetadata eapiMetadata = getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); - getterMetadataInfo.setId(eapiMetadataId); + getterMetadataInfo.setId(metadataManagerParameter.getId()); getterMetadataInfo.setMetadataType(MetadataTypeEnum.Eapi); - getterMetadataInfo.setName(eapiMetadataName); - getterMetadataInfo.setCode(eapiMetadataCode); - getterMetadataInfo.setNameSpace(eapiMetadataNameSpace); + getterMetadataInfo.setName(metadataManagerParameter.getExtendParameter().getName()); + getterMetadataInfo.setCode(metadataManagerParameter.getExtendParameter().getCode()); + getterMetadataInfo.setNameSpace(metadataManagerParameter.getExtendParameter().getNameSpace()); return getterMetadataInfo; - }, null, this.getDefaultMetadataNotFoundFormatMessage(eapiMetadataId, MetadataTypeEnum.Eapi)); + }, null, this.getDefaultMetadataNotFoundFormatMessage(metadataManagerParameter.getId(), MetadataTypeEnum.Eapi)); if (eapiMetadata == null) { - throw new RuntimeException("load eapi metadata is null,the metaDataId is " + eapiMetadataId); + throw new RuntimeException("load eapi metadata is null,the metaDataId is " + metadataManagerParameter.getId()); } return eapiMetadata.getContent(); } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java index f15ece9a..b06d35ba 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/FormMetadataManager.java @@ -46,21 +46,21 @@ public class FormMetadataManager extends BaseMetaDataManager { /** * 根据元数据id获取表单元数据 * - * @param metaDataId + * @param metadataManagerParameter * @return */ - private GspMetadata getFormMetaData(String metaDataId, String code, String name, String nameSpace) { + private GspMetadata getFormMetaData(MetadataManagerParameter metadataManagerParameter) { GspMetadata metadata = getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); - getterMetadataInfo.setId(metaDataId); - getterMetadataInfo.setCode(code); - getterMetadataInfo.setName(name); - getterMetadataInfo.setNameSpace(nameSpace); + getterMetadataInfo.setId(metadataManagerParameter.getId()); + getterMetadataInfo.setCode(metadataManagerParameter.getExtendParameter().getCode()); + getterMetadataInfo.setName(metadataManagerParameter.getExtendParameter().getName()); + getterMetadataInfo.setNameSpace(metadataManagerParameter.getExtendParameter().getNameSpace()); getterMetadataInfo.setMetadataType(MetadataTypeEnum.Frm); return getterMetadataInfo; - }, null, this.getDefaultMetadataNotFoundFormatMessage(metaDataId, MetadataTypeEnum.Frm)); + }, null, this.getDefaultMetadataNotFoundFormatMessage(metadataManagerParameter.getId(), MetadataTypeEnum.Frm)); if (metadata == null) { - throw new RuntimeException("load form metadata is null,the metaDataId is " + metaDataId); + throw new RuntimeException("load form metadata is null,the metaDataId is " + metadataManagerParameter.getId()); } return metadata; } @@ -69,7 +69,8 @@ public class FormMetadataManager extends BaseMetaDataManager { * 根据元数据ID获取元数据信息 */ public String getVisualDom(String metadataID, String code, String name, String nameSpace) { - GspMetadata metadata = this.getFormMetaData(metadataID, code, name, nameSpace); + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(metadataID, code, name, nameSpace); + GspMetadata metadata = this.getFormMetaData(metadataManagerParameter); this.setRelativePath(metadata.getRelativePath()); return ((FormMetadataContent) metadata.getContent()).getContents().toString(); } -- Gitee From c2b30100555fdcd240aad9a5554ae89081b36eea Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 15:18:36 +0800 Subject: [PATCH 35/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E7=8A=B6=E6=80=81=E6=9C=BA?= =?UTF-8?q?=E5=85=83=E6=95=B0=E6=8D=AE=E8=8E=B7=E5=8F=96=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metadataanalysis/StateMachineAnalysis.java | 7 ++++++- .../StateMachineMetadataManager.java | 14 +++++++------- .../service/FormRelateMetadataService.java | 9 ++++++--- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java index ae33bc88..cdab82d5 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java @@ -20,6 +20,7 @@ import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; +import com.inspur.edp.web.formmetadata.metadatamanager.MetadataManagerParameter; import com.inspur.edp.web.formmetadata.metadatamanager.StateMachineMetadataManager; import java.util.HashMap; @@ -45,7 +46,11 @@ public class StateMachineAnalysis { stateMachines.append(","); } String uri = o.get("uri").toString(); - GspMetadata obj = smManager.getStateMachine(uri, StringUtility.getOrDefault(o.get("code"), ""), StringUtility.getOrDefault(o.get("name"), ""), StringUtility.getOrDefault(o.get("nameSpace"), "")); + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(uri, + StringUtility.getOrDefaultEmpty(o.get("code")), + StringUtility.getOrDefaultEmpty(o.get("name")), + StringUtility.getOrDefaultEmpty(o.get("nameSpace"))); + GspMetadata obj = smManager.getStateMachine(metadataManagerParameter); String sm_json = smManager.serialize(obj.getContent()); String idStr = o.get("id").toString(); stateMachines.append("\"").append(idStr).append("\":"); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java index 8fee975f..aeaa413c 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/StateMachineMetadataManager.java @@ -32,19 +32,19 @@ public class StateMachineMetadataManager extends BaseMetaDataManager { super(executeEnvironment, relativePath, isUpgradeTool); } - public GspMetadata getStateMachine(String id, String code, String name, String nameSpace) { + public GspMetadata getStateMachine(MetadataManagerParameter metadataManagerParameter) { GspMetadata stateMachineMetaData = getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); - getterMetadataInfo.setId(id); - getterMetadataInfo.setCode(code); - getterMetadataInfo.setName(name); - getterMetadataInfo.setNameSpace(nameSpace); + getterMetadataInfo.setId(metadataManagerParameter.getId()); + getterMetadataInfo.setCode(metadataManagerParameter.getExtendParameter().getCode()); + getterMetadataInfo.setName(metadataManagerParameter.getExtendParameter().getName()); + getterMetadataInfo.setNameSpace(metadataManagerParameter.getExtendParameter().getNameSpace()); getterMetadataInfo.setPath(this.getRelativePath()); getterMetadataInfo.setMetadataType(MetadataTypeEnum.StateMachine); return getterMetadataInfo; - }, null, this.getDefaultMetadataNotFoundFormatMessage(id, MetadataTypeEnum.StateMachine)); + }, null, this.getDefaultMetadataNotFoundFormatMessage(metadataManagerParameter.getId(), MetadataTypeEnum.StateMachine)); if (stateMachineMetaData == null) { - throw new RuntimeException("load statemachine metadata is null,the metaDataId is " + id); + throw new RuntimeException("load statemachine metadata is null,the metaDataId is " + metadataManagerParameter.getId()); } return stateMachineMetaData; } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java index 0d95cd51..40388487 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/FormRelateMetadataService.java @@ -14,6 +14,7 @@ import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContentService; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadataanalysis.CommandsAnalysis; +import com.inspur.edp.web.formmetadata.metadatamanager.MetadataManagerParameter; import com.inspur.edp.web.formmetadata.metadatamanager.StateMachineMetadataManager; import io.iec.edp.caf.boot.context.CAFContext; import io.iec.edp.caf.commons.utils.SpringBeanUtils; @@ -163,9 +164,11 @@ public class FormRelateMetadataService { CAFContext.current.getService().setCurrentThreadPoolSession(cafSession); long start = System.currentTimeMillis(); StateMachineMetadataManager stateMachineMetadataManager = new StateMachineMetadataManager(executeEnvironment, false, formMetadata.getRelativePath()); - GspMetadata stateMachineMetadata = stateMachineMetadataManager.getStateMachine(smObjUri.toString(), - StringUtility.getOrDefault(firstStateMachine.get("code"), ""), StringUtility.getOrDefault(firstStateMachine.get("name"), ""), - StringUtility.getOrDefault(firstStateMachine.get("nameSpace"), "")); + MetadataManagerParameter metadataManagerParameter = MetadataManagerParameter.init(smObjUri.toString(), + StringUtility.getOrDefaultEmpty(firstStateMachine.get("code")), + StringUtility.getOrDefaultEmpty(firstStateMachine.get("name")), + StringUtility.getOrDefaultEmpty(firstStateMachine.get("nameSpace"))); + GspMetadata stateMachineMetadata = stateMachineMetadataManager.getStateMachine(metadataManagerParameter); WebLogger.Instance.info("获取状态机元数据耗时 " + (System.currentTimeMillis() - start) + " ms"); return stateMachineMetadata; }).thenApply(t -> { -- Gitee From 84864ce928de88f46c11ec7dda8432eeccfb4d4d Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 16:37:03 +0800 Subject: [PATCH 36/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=90=88=E5=B9=B6=E9=9B=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81eapi=E3=80=81=E7=8A=B6=E6=80=81=E6=9C=BA?= =?UTF-8?q?=E5=85=83=E6=95=B0=E6=8D=AE=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FrmJsonFileGenerator.java | 5 +- .../edp/web/jitengine/JITEngineManager.java | 5 +- .../AbstractMetadataAnalysis.java | 17 +++++ .../metadataanalysis/CommandsAnalysis.java | 10 ++- .../metadataanalysis/EapiAnalysis.java | 71 +++++++++++++------ .../metadataanalysis/FormAnalysis.java | 17 ++--- .../StateMachineAnalysis.java | 52 +++++++++++--- .../metadatamanager/EapiMetadataManager.java | 7 +- .../specific/EapiMetadataOperation.java | 39 ++-------- .../StateMachineMetadataOperation.java | 40 +++-------- 10 files changed, 141 insertions(+), 122 deletions(-) create mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/AbstractMetadataAnalysis.java diff --git a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java index f5ca1fb2..effad153 100644 --- a/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java +++ b/runtime-core/src/main/java/com/inspur/edp/web/jitruntimebuild/core/formjsonfilegenerator/FrmJsonFileGenerator.java @@ -293,7 +293,8 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen String formMetadataName = formMetadata.getHeader().getFileName(); // 临时注释,方便调试 // Step 2: Resolve StateMachine, and Save StateMachine - StateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, webDevPath, projectPath, this.getExecuteEnvironment(), relativePath, this.isUpdradeTool()); + StateMachineAnalysis stateMachineAnalysis = new StateMachineAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); + stateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, relativePath); // // // Step 3: Resolve Command CommandsAnalysis commandsAnalysis = new CommandsAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); @@ -302,7 +303,7 @@ public class FrmJsonFileGenerator extends AbstractFormJsonFileGenerator implemen // // // Step 4: Resolve eapi EapiAnalysis eapiAnalysis = new EapiAnalysis(this.getExecuteEnvironment(), this.isUpdradeTool()); - eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, projectPath, webDevPath, formMetadata.getHeader().getNameSpace(), relativePath); + eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, formMetadata.getHeader().getNameSpace(), relativePath); // // // Step 5: Resolve command service CommandServiceAnalysis.resolveCommandService(formDom, relativePath, formServiceBasePath, webDevPath, this.getExecuteEnvironment(), this.isUpdradeTool()); diff --git a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java index bcce30d4..8e65f5d5 100644 --- a/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java +++ b/web-form-jitengine/src/main/java/com/inspur/edp/web/jitengine/JITEngineManager.java @@ -373,7 +373,8 @@ public class JITEngineManager { FormComponentParser.getInstance().ExtractComponent(formDom, formMetadataName, targetStorageBasePath, webDevPath); // Resolve StateMachine - StateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, webDevPath, projectPath, ExecuteEnvironment.Design, relativePath, false); + StateMachineAnalysis stateMachineAnalysis=new StateMachineAnalysis(ExecuteEnvironment.Design,false); + stateMachineAnalysis.resolveStateMachine(formDom, formMetadataName, targetStorageBasePath, relativePath); } // Resolve Command @@ -386,7 +387,7 @@ public class JITEngineManager { // Resolve Eapi EapiAnalysis eapiAnalysis = new EapiAnalysis(ExecuteEnvironment.Design, false); String formNameSpace = resolveFormMetadataItem.getGspMetadata() == null ? "" : resolveFormMetadataItem.getGspMetadata().getHeader().getNameSpace(); - eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, projectPath, webDevPath, formNameSpace, relativePath); + eapiAnalysis.resolveEapi(formDom, formMetadataName, targetStorageBasePath, formNameSpace, relativePath); } // Resolve Command Service diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/AbstractMetadataAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/AbstractMetadataAnalysis.java new file mode 100644 index 00000000..1f8d3518 --- /dev/null +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/AbstractMetadataAnalysis.java @@ -0,0 +1,17 @@ +package com.inspur.edp.web.formmetadata.metadataanalysis; + +import com.inspur.edp.web.common.environment.ExecuteEnvironment; + +/** + * @author noah + * 2023/7/9 16:24 + */ +public abstract class AbstractMetadataAnalysis { + protected ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Design; + protected boolean isUpgradeTool = false; + + public AbstractMetadataAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) { + this.isUpgradeTool = isUpgradeTool; + this.executeEnvironment = executeEnvironment; + } +} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java index b6c7bc15..7d38aee6 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/CommandsAnalysis.java @@ -51,9 +51,8 @@ import java.util.concurrent.atomic.AtomicInteger; * @author noah */ -public class CommandsAnalysis { - private ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Design; - private boolean isUpgradeTool = false; +public class CommandsAnalysis extends AbstractMetadataAnalysis { + // 是否生成command.json 文件 private boolean createCommandJsonFile = true; @@ -73,9 +72,8 @@ public class CommandsAnalysis { this(executeEnvironment, isUpgradeTool, true); } - public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool, boolean createCommandJsonFile) { - this.executeEnvironment = executeEnvironment; - this.isUpgradeTool = isUpdradeTool; + public CommandsAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool, boolean createCommandJsonFile) { + super(executeEnvironment, isUpgradeTool); this.createCommandJsonFile = createCommandJsonFile; } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java index f2132a32..3c2d5234 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/EapiAnalysis.java @@ -18,14 +18,18 @@ package com.inspur.edp.web.formmetadata.metadataanalysis; import com.fasterxml.jackson.databind.PropertyNamingStrategy; import com.inspur.edp.lcm.metadata.api.IMetadataContent; +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadatamanager.EapiMetadataManager; import com.inspur.edp.web.formmetadata.metadatamanager.MetadataManagerParameter; +import lombok.Getter; import java.util.HashMap; import java.util.List; +import java.util.Optional; +import java.util.function.Function; /** * Eapi解析 @@ -33,27 +37,15 @@ import java.util.List; * @author noah */ -public class EapiAnalysis { +public class EapiAnalysis extends AbstractMetadataAnalysis { - private ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Design; - private boolean isUpdradeTool = false; - - public EapiAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - this.executeEnvironment = executeEnvironment; - this.isUpdradeTool = isUpdradeTool; + public EapiAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) { + super(executeEnvironment, isUpgradeTool); } - - /** - * 解析表单代码引用的eapi - * - * @param json 表单代码 - * @param targetStoragePath 解析后eapi存储路径 - * @param projectPath 工程路径 - * @param webDevPath webdev目录所在路径 - */ - public void resolveEapi(FormDOM json, String formMetadataName, String targetStoragePath, String projectPath, - String webDevPath, String nameSpace, String relativePath) { + public void resolveEapi(FormDOM json, String formMetadataName, String targetStoragePath, + String nameSpace, String relativePath, + Function> getEapiMetadataSupplier) { if (json == null || json.getModule() == null || json.getModule().getCode() == null || StringUtility.isNullOrEmpty(targetStoragePath) || json.getModule().getSchemas() == null || json.getModule().getSchemas().size() == 0) { @@ -64,7 +56,7 @@ public class EapiAnalysis { int index = 0; // VO-EAPI(vo和eapi是一对一的关系) List> schemas = json.getModule().getSchemas(); - EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(this.executeEnvironment, this.isUpdradeTool, relativePath); + EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(this.executeEnvironment, this.isUpgradeTool, relativePath); for (HashMap item : schemas) { if (index > 0) { eapis.append(","); @@ -77,15 +69,48 @@ public class EapiAnalysis { StringUtility.getOrDefaultEmpty(item.get("eapiCode")), StringUtility.getOrDefaultEmpty(item.get("eapiName")), StringUtility.getOrDefault(item.get("eapiNameSpace"), nameSpace)); - IMetadataContent eapiMetadataContent = eapiMetadataManager.getEapiMetadataContent(metadataManagerParameter); - String eapiJson = eapiMetadataManager.serialize(eapiMetadataContent, PropertyNamingStrategy.UPPER_CAMEL_CASE); - eapis.append(eapiJson); + ResolveEapiParameter resolveEapiParameter = ResolveEapiParameter.init(metadataManagerParameter, eapiMetadataManager); + Optional optionalEapiMetadata = getEapiMetadataSupplier.apply(resolveEapiParameter); + if (optionalEapiMetadata.isPresent()) { + IMetadataContent eapiMetadataContent = optionalEapiMetadata.get().getContent(); + String eapiJson = eapiMetadataManager.serialize(eapiMetadataContent, PropertyNamingStrategy.UPPER_CAMEL_CASE); + eapis.append(eapiJson); - index += 1; + index += 1; + } } } eapis.append("]"); eapiMetadataManager.saveMetadataFile(targetStoragePath, formMetadataName.toLowerCase() + ".eapi.json", eapis.toString()); } + + /** + * 解析表单代码引用的eapi + * + * @param json 表单代码 + * @param targetStoragePath 解析后eapi存储路径 + */ + public void resolveEapi(FormDOM json, String formMetadataName, String targetStoragePath, + String nameSpace, String relativePath) { + this.resolveEapi(json, formMetadataName, targetStoragePath, nameSpace, relativePath, + (resolveEapiParameter) -> + resolveEapiParameter.getEapiMetadataManager().getEapiMetadata(resolveEapiParameter.getMetadataManagerParameter())); + } + + @Getter + public static class ResolveEapiParameter { + private MetadataManagerParameter metadataManagerParameter; + private EapiMetadataManager eapiMetadataManager; + + private ResolveEapiParameter() { + } + + public static ResolveEapiParameter init(MetadataManagerParameter metadataManagerParameter, EapiMetadataManager eapiMetadataManager) { + ResolveEapiParameter resolveEapiParameter = new ResolveEapiParameter(); + resolveEapiParameter.eapiMetadataManager = eapiMetadataManager; + resolveEapiParameter.metadataManagerParameter = metadataManagerParameter; + return resolveEapiParameter; + } + } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java index 93c62a68..a2423444 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/FormAnalysis.java @@ -31,17 +31,10 @@ import java.util.HashMap; * * @author noah */ -public class FormAnalysis { +public class FormAnalysis extends AbstractMetadataAnalysis { - /** - * 设定执行环境 - */ - private ExecuteEnvironment executeEnvironment = ExecuteEnvironment.Design; - private boolean isUpdradeTool = false; - - public FormAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpdradeTool) { - this.executeEnvironment = executeEnvironment; - this.isUpdradeTool = isUpdradeTool; + public FormAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) { + super(executeEnvironment, isUpgradeTool); } /** @@ -49,7 +42,7 @@ public class FormAnalysis { */ public ResolveFormResult resolveForm(String formMetadataFileName, String formMetadataFilePath, String destStoragePath, String projectPath) { // Get Visual Dom - FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, null, this.isUpdradeTool); + FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, null, this.isUpgradeTool); String formDom = formMetadataManager.getVisualDom(formMetadataFileName, formMetadataFilePath); // 反序列化表单元数据 @@ -101,7 +94,7 @@ public class FormAnalysis { Object objExternalComponentContainerId = null; String externalComponentContainerId = ""; String externalComponentPath = ""; - FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, relativePath, this.isUpdradeTool); + FormMetadataManager formMetadataManager = new FormMetadataManager(this.executeEnvironment, relativePath, this.isUpgradeTool); //TODO: 验证TryGetValue在java中语义实现 objUri = externalComponent.get("uri"); externalComponentUri = objUri != null ? objUri.toString() : ""; diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java index cdab82d5..e11a31bc 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadataanalysis/StateMachineAnalysis.java @@ -22,22 +22,27 @@ import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.formmetadata.metadatamanager.MetadataManagerParameter; import com.inspur.edp.web.formmetadata.metadatamanager.StateMachineMetadataManager; +import lombok.Getter; import java.util.HashMap; +import java.util.function.Function; /** * 状态机的解析 */ -public class StateMachineAnalysis { - /** - * 解析状态机元数据 - */ - public static void resolveStateMachine(FormDOM json, String metaDataFileName, String targetStoragePath, String webDevPath, - String projectPath, ExecuteEnvironment executeEnvironment, String relativePath, - boolean isUpdradeTool) { +public class StateMachineAnalysis extends AbstractMetadataAnalysis { + + public StateMachineAnalysis(ExecuteEnvironment executeEnvironment, boolean isUpgradeTool) { + super(executeEnvironment, isUpgradeTool); + } + + public void resolveStateMachine(FormDOM json, String metaDataFileName, String targetStoragePath, + String relativePath, + Function getMetadataSupplier) { // Get StateMachine Metadata, and Save StateMachine - if (json.getModule() != null && json.getModule().getStateMachines() != null && json.getModule().getStateMachines().size() > 0) { - StateMachineMetadataManager smManager = new StateMachineMetadataManager(executeEnvironment, isUpdradeTool, relativePath); + if (json.getModule() != null && json.getModule().getStateMachines() != null && + json.getModule().getStateMachines().size() > 0) { + StateMachineMetadataManager smManager = new StateMachineMetadataManager(this.executeEnvironment, this.isUpgradeTool, relativePath); StringBuilder stateMachines = new StringBuilder(); stateMachines.append("{"); int index = 0; @@ -50,7 +55,8 @@ public class StateMachineAnalysis { StringUtility.getOrDefaultEmpty(o.get("code")), StringUtility.getOrDefaultEmpty(o.get("name")), StringUtility.getOrDefaultEmpty(o.get("nameSpace"))); - GspMetadata obj = smManager.getStateMachine(metadataManagerParameter); + ResolveStateMachineParameter resolveStateMachineParameter = ResolveStateMachineParameter.init(metadataManagerParameter, smManager); + GspMetadata obj = getMetadataSupplier.apply(resolveStateMachineParameter); String sm_json = smManager.serialize(obj.getContent()); String idStr = o.get("id").toString(); stateMachines.append("\"").append(idStr).append("\":"); @@ -63,4 +69,30 @@ public class StateMachineAnalysis { smManager.saveMetadataFile(targetStoragePath, String.format("%1$s.sm.json", metaDataFileName.toLowerCase()), stateMachines.toString()); } } + + /** + * 解析状态机元数据 + * 使用默认的StateMachineManager进行元数据读取 + */ + public void resolveStateMachine(FormDOM json, String metaDataFileName, String targetStoragePath, + String relativePath) { + resolveStateMachine(json, metaDataFileName, targetStoragePath, relativePath, + (resolveStateMachineParameter) -> resolveStateMachineParameter.smManager.getStateMachine(resolveStateMachineParameter.metadataManagerParameter)); + } + + @Getter + public static class ResolveStateMachineParameter { + private MetadataManagerParameter metadataManagerParameter; + private StateMachineMetadataManager smManager; + + private ResolveStateMachineParameter() { + } + + public static ResolveStateMachineParameter init(MetadataManagerParameter metadataManagerParameter, StateMachineMetadataManager smManager) { + ResolveStateMachineParameter resolveStateMachineParameter = new ResolveStateMachineParameter(); + resolveStateMachineParameter.metadataManagerParameter = metadataManagerParameter; + resolveStateMachineParameter.smManager = smManager; + return resolveStateMachineParameter; + } + } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java index 53dfda09..4f089044 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/metadatamanager/EapiMetadataManager.java @@ -16,12 +16,13 @@ package com.inspur.edp.web.formmetadata.metadatamanager; -import com.inspur.edp.lcm.metadata.api.IMetadataContent; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.common.metadata.MetadataGetterParameter; import com.inspur.edp.web.common.metadata.MetadataTypeEnum; +import java.util.Optional; + /** * Eapi 元数据管理器 * @@ -38,7 +39,7 @@ public class EapiMetadataManager extends BaseMetaDataManager { * * @return */ - public IMetadataContent getEapiMetadataContent(MetadataManagerParameter metadataManagerParameter) { + public Optional getEapiMetadata(MetadataManagerParameter metadataManagerParameter) { GspMetadata eapiMetadata = getMetadata(() -> { MetadataGetterParameter.GetterMetadataInfo getterMetadataInfo = new MetadataGetterParameter.GetterMetadataInfo(); getterMetadataInfo.setId(metadataManagerParameter.getId()); @@ -51,6 +52,6 @@ public class EapiMetadataManager extends BaseMetaDataManager { if (eapiMetadata == null) { throw new RuntimeException("load eapi metadata is null,the metaDataId is " + metadataManagerParameter.getId()); } - return eapiMetadata.getContent(); + return Optional.ofNullable(eapiMetadata); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java index 4a70ed73..a35cface 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/EapiMetadataOperation.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.databind.PropertyNamingStrategy; import com.inspur.edp.lcm.metadata.api.IMetadataContent; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; +import com.inspur.edp.web.formmetadata.metadataanalysis.EapiAnalysis; import com.inspur.edp.web.formmetadata.metadatamanager.EapiMetadataManager; import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; @@ -27,40 +28,14 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormRefMetadataParame import java.util.HashMap; import java.util.List; +import java.util.Optional; class EapiMetadataOperation { public void save(FormDOM json, String formMetadataName, String webDevPath, ZeroCodeFormParameter formParameter) { - if (json == null || json.getModule() == null || json.getModule().getCode() == null - || json.getModule().getSchemas() == null || json.getModule().getSchemas().size() == 0) { - return; - } - StringBuilder eapis = new StringBuilder(); - eapis.append("["); - int index = 0; - // VO-EAPI(vo和eapi是一对一的关系) - List> schemas = json.getModule().getSchemas(); - EapiMetadataManager eapiMetadataManager = new EapiMetadataManager(ExecuteEnvironment.Design, false, null); - for (HashMap item : schemas) { - if (index > 0) { - eapis.append(","); - } - //获取对应的EapiID 如果可以读取到 - String strEapiID = item.containsKey("eapiId") ? item.get("eapiId").toString() : ""; - // 如果获取到EapiID 那么根据EapiID去读取对应的元数据 - IMetadataContent eapiMetadataContent = null; - - ZeroCodeFormRefMetadataParameter formRefMetadataParameter = formParameter.getSpecialFormRefMetaData(strEapiID, JitMetadataTypeEnum.Eapi); - if (formRefMetadataParameter != null) { - eapiMetadataContent = formRefMetadataParameter.getMetadata().getContent(); - String eapiJson = ""; - eapiJson = eapiMetadataManager.serialize(eapiMetadataContent, PropertyNamingStrategy.UPPER_CAMEL_CASE); - eapis.append(eapiJson); - index += 1; - } - - } - eapis.append("]"); - eapiMetadataManager.saveMetadataFile(webDevPath, - formMetadataName.toLowerCase() + ".eapi.json", eapis.toString()); + EapiAnalysis eapiAnalysis = new EapiAnalysis(ExecuteEnvironment.Runtime, false); + eapiAnalysis.resolveEapi(json, formMetadataName, webDevPath, null, null, (resolveEapiParameter) -> { + ZeroCodeFormRefMetadataParameter formRefMetadataParameter = formParameter.getSpecialFormRefMetaData(resolveEapiParameter.getMetadataManagerParameter().getId(), JitMetadataTypeEnum.Eapi); + return Optional.ofNullable(formRefMetadataParameter.getMetadata()); + }); } } diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java index 8ac09383..556c63d0 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/StateMachineMetadataOperation.java @@ -16,50 +16,26 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; -import com.inspur.edp.lcm.metadata.api.IMetadataContent; import com.inspur.edp.web.common.environment.ExecuteEnvironment; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; -import com.inspur.edp.web.formmetadata.metadatamanager.StateMachineMetadataManager; +import com.inspur.edp.web.formmetadata.metadataanalysis.StateMachineAnalysis; import com.inspur.edp.web.jitruntimebuild.api.entity.JitMetadataTypeEnum; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormRefMetadataParameter; -import java.util.HashMap; - public class StateMachineMetadataOperation { /** * 保存 * * @param formParameter */ - public void save(FormDOM json, ZeroCodeFormParameter formParameter, String wevDevPath, String formMetadataFileName) { - if (json.getModule() != null && json.getModule().getStateMachines() != null && json.getModule().getStateMachines().size() > 0) { - StateMachineMetadataManager smManager = new StateMachineMetadataManager(ExecuteEnvironment.Design, false, null); - StringBuilder stateMachines = new StringBuilder(); - stateMachines.append("{"); - int index = 0; - for (HashMap o : json.getModule().getStateMachines()) { - if (index > 0) { - stateMachines.append(","); - } - String uri = o.get("uri").toString(); - - ZeroCodeFormRefMetadataParameter formRefMetadataParameter = formParameter.getSpecialFormRefMetaData(uri, JitMetadataTypeEnum.StateMachine); - if (formRefMetadataParameter != null) { - IMetadataContent obj = formRefMetadataParameter.getMetadata().getContent(); - String sm_json = smManager.serialize(obj); - String idStr = o.get("id").toString(); - stateMachines.append("\"").append(idStr).append("\":"); - stateMachines.append(sm_json); - index += 1; - } - - } - stateMachines.append("}"); - - // Save StateMachine - smManager.saveMetadataFile(wevDevPath, String.format("%1$s.sm.json", formMetadataFileName.toLowerCase()), stateMachines.toString()); - } + public void save(FormDOM json, ZeroCodeFormParameter formParameter, String wevDevPath, + String formMetadataFileName) { + StateMachineAnalysis stateMachineAnalysis=new StateMachineAnalysis(ExecuteEnvironment.Runtime,false); + stateMachineAnalysis.resolveStateMachine(json, formMetadataFileName, wevDevPath, null, (resolveStateMachineParameter) -> { + ZeroCodeFormRefMetadataParameter formRefMetadataParameter = formParameter.getSpecialFormRefMetaData(resolveStateMachineParameter.getMetadataManagerParameter().getId(), JitMetadataTypeEnum.StateMachine); + return formRefMetadataParameter.getMetadata(); + }); } -- Gitee From c525c0cef948168c06c929eae1192e85381baee8 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 16:52:46 +0800 Subject: [PATCH 37/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=90=88=E5=B9=B6=E9=9B=B6?= =?UTF-8?q?=E4=BB=A3=E7=A0=81eapi=E3=80=81=E7=8A=B6=E6=80=81=E6=9C=BA?= =?UTF-8?q?=E5=85=83=E6=95=B0=E6=8D=AE=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edp/web/common/entity/TerminalType.java | 27 ++++++++++++++++++ .../webdevjson/WebDevJsonPathGenerator.java | 28 ++----------------- 2 files changed, 30 insertions(+), 25 deletions(-) diff --git a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java index 1095c724..6732a73d 100644 --- a/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java +++ b/web-common/src/main/java/com/inspur/edp/web/common/entity/TerminalType.java @@ -17,12 +17,15 @@ package com.inspur.edp.web.common.entity; import com.inspur.edp.web.common.constant.FrontendProjectConstant; +import com.inspur.edp.web.common.customexception.WebCustomException; import com.inspur.edp.web.common.io.FileUtility; import lombok.Data; import java.util.ArrayList; import java.util.List; import java.util.function.Consumer; +import java.util.function.Function; +import java.util.function.Supplier; /** * 表单类型 @@ -141,6 +144,7 @@ public enum TerminalType { return "mobiledev"; } + @Override public String getResolveBasePath(String projectPath, boolean isDynamicForm) { return FileUtility.combine(projectPath, FrontendProjectConstant.FRONTEND_PROJECT_COMPILE_PATH, this.getWebDevPathName()); @@ -208,6 +212,27 @@ public enum TerminalType { */ public abstract String getWebDevPathName(); + + /** + * 根据terminalType执行不同的supplier + * @param terminalType + * @param executeWithPCSupplier + * @param executeWithMobileSupplier + * @return + */ + public static String getCustomExecuteResult(TerminalType terminalType, Supplier executeWithPCSupplier, Supplier executeWithMobileSupplier) { + if (terminalType == TerminalType.MOBILE) { + if (executeWithMobileSupplier == null) { + throw new WebCustomException("executeWithMobileSupplier 不能为空"); + } + return executeWithMobileSupplier.get(); + } + if (executeWithPCSupplier == null) { + throw new WebCustomException("executeWithPCSupplier不能为空"); + } + return executeWithPCSupplier.get(); + } + /** * 获取指定类型的resolve 基础路径 * PC projectPath/src/webdev @@ -260,6 +285,7 @@ public enum TerminalType { /** * 是否 PC + * * @param terminalType * @return */ @@ -269,6 +295,7 @@ public enum TerminalType { /** * 是否 mobile + * * @param terminalType * @return */ diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java index 23404591..d112a232 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/WebDevJsonPathGenerator.java @@ -25,30 +25,8 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; */ class WebDevJsonPathGenerator { public static String generate(ZeroCodeParameter zeroCodeParameter, TerminalType terminalType) { - if (terminalType == TerminalType.MOBILE) { - return getMobileWebDevPath(zeroCodeParameter.getAbsoluteBasePath()); - } - - return getPCWebDevPath(zeroCodeParameter.getAbsoluteBasePath()); - } - - /** - * 获取webdev文件目录 - * - * @param absolutePath - * @return - */ - private static String getPCWebDevPath(String absolutePath) { - return FileUtility.getPlatformIndependentPath(FileUtility.combine(absolutePath, "src", "webdev")); - } - - /** - * 获取移动对应的webdev路径 - * - * @param absolutePath - * @return - */ - private static String getMobileWebDevPath(String absolutePath) { - return FileUtility.getPlatformIndependentPath(FileUtility.combine(absolutePath, "src", "mobiledev")); + return TerminalType.getCustomExecuteResult(terminalType, () -> + FileUtility.getPlatformIndependentPath(FileUtility.combine(zeroCodeParameter.getAbsoluteBasePath(), "src", "webdev")), () -> + FileUtility.getPlatformIndependentPath(FileUtility.combine(zeroCodeParameter.getAbsoluteBasePath(), "src", "mobiledev"))); } } -- Gitee From df85817a2b797bc50a0f6eda6dc5c09264d6728f Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 16:55:11 +0800 Subject: [PATCH 38/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=90=88=E5=B9=B6=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metadata/manager/PageFlowMetadataEntityManager.java | 2 +- .../edp/web/pageflow/metadata/service/RouteMetataService.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java index 3fa0bde2..f6f48b79 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java @@ -44,7 +44,7 @@ public class PageFlowMetadataEntityManager implements MetadataContentManager { * @return */ public static String getCurrentPageRouteUri(PageFlowMetadataEntity pageFlowMetadataEntity, String pageId) { - return RouteMetataService.getcurrentpagerouteuri(pageFlowMetadataEntity, pageId); + return RouteMetataService.getCurrentPageRouteUri(pageFlowMetadataEntity, pageId); } } diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java index e3ab6162..30715894 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java @@ -94,7 +94,7 @@ public class RouteMetataService { * @param pageFlowMetadataEntity * @return */ - public static String getcurrentpagerouteuri(PageFlowMetadataEntity pageFlowMetadataEntity, String pageId) { + public static String getCurrentPageRouteUri(PageFlowMetadataEntity pageFlowMetadataEntity, String pageId) { if (pageFlowMetadataEntity == null || StringUtility.isNullOrEmpty(pageId)) { throw new WebCustomException("Current Route Metadata Content is Null or the Page id is Nulll or Empty.", null, ExceptionLevel.Warning); } -- Gitee From 4054ffcd3899de55434403dda443a32bd171341c Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 17:03:05 +0800 Subject: [PATCH 39/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=90=88=E5=B9=B6=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../debuguri/AbstractFormMetadataDebugUri.java | 6 +++--- .../specific/PageFlowMetadataOperation.java | 6 ++++++ .../listener/PageFlowMetadataEventListener.java | 3 +-- .../manager/PageFlowMetadataEntityManager.java | 4 ++-- .../service/PageFlowMetadataUpdateService.java | 14 +++++++------- ...etataService.java => RouteMetadataService.java} | 11 +++++++---- 6 files changed, 26 insertions(+), 18 deletions(-) rename web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/{RouteMetataService.java => RouteMetadataService.java} (95%) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java index 6a2a0fb2..21568d4c 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/debuguri/AbstractFormMetadataDebugUri.java @@ -28,7 +28,7 @@ import com.inspur.edp.web.common.metadata.MetadataUtility; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.frontendproject.FrontendProjectUtility; import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntity; -import com.inspur.edp.web.pageflow.metadata.service.RouteMetataService; +import com.inspur.edp.web.pageflow.metadata.service.RouteMetadataService; /** * @Title: AbstractFormMetadataDebugUri @@ -110,9 +110,9 @@ abstract class AbstractFormMetadataDebugUri implements FormMetadataDebugUri { } // 2.获取路由元数据中内容 if (isPc()) { - pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfig.getPageFlowMetadataID(), appConfig.getPageFlowMetadataFileName(), projectPath); + pageFlowMetadataEntity = RouteMetadataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfig.getPageFlowMetadataID(), appConfig.getPageFlowMetadataFileName(), projectPath); } else { - pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfig.getMobilePageFlowMetadataID(), appConfig.getMobilePageFlowMetadataFileName(), projectPath); + pageFlowMetadataEntity = RouteMetadataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfig.getMobilePageFlowMetadataID(), appConfig.getMobilePageFlowMetadataFileName(), projectPath); } return pageFlowMetadataEntity; diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java index c37445b2..4c192968 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/PageFlowMetadataOperation.java @@ -22,6 +22,12 @@ import com.inspur.edp.web.common.serialize.SerializeUtility; import com.inspur.edp.web.pageflow.metadata.entity.AdaptedPageFlowMetadataEntity; public class PageFlowMetadataOperation { + /** + * 保存页面流元数据 json + * @param webDevPath + * @param pageFlowMetadataEntity + * @param formMetadataName + */ public void save(String webDevPath, AdaptedPageFlowMetadataEntity pageFlowMetadataEntity, String formMetadataName) { String pageFlowContent = SerializeUtility.getInstance().serialize(pageFlowMetadataEntity); FileUtility.writeFile(webDevPath, formMetadataName.toLowerCase() + JITEngineConstants.ProjectRouteFileExtension, pageFlowContent); diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/listener/PageFlowMetadataEventListener.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/listener/PageFlowMetadataEventListener.java index b49faeb6..afd31f96 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/listener/PageFlowMetadataEventListener.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/listener/PageFlowMetadataEventListener.java @@ -72,8 +72,7 @@ public class PageFlowMetadataEventListener implements MetadataEventListener, Met return; } - if (TerminalType.PC.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType()) - || TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { + if (TerminalType.isPCOrMobile(metadataEventArgs.getMetadata().getHeader().getType())) { PageFlowMetadataUpdateService.getInstance().updatePageFlowMetadata(metadataEventArgs); } } diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java index f6f48b79..d68a80f7 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/manager/PageFlowMetadataEntityManager.java @@ -20,7 +20,7 @@ import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.lcm.metadata.spi.MetadataContentManager; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntity; -import com.inspur.edp.web.pageflow.metadata.service.RouteMetataService; +import com.inspur.edp.web.pageflow.metadata.service.RouteMetadataService; public class PageFlowMetadataEntityManager implements MetadataContentManager { @Override @@ -44,7 +44,7 @@ public class PageFlowMetadataEntityManager implements MetadataContentManager { * @return */ public static String getCurrentPageRouteUri(PageFlowMetadataEntity pageFlowMetadataEntity, String pageId) { - return RouteMetataService.getCurrentPageRouteUri(pageFlowMetadataEntity, pageId); + return RouteMetadataService.getCurrentPageRouteUri(pageFlowMetadataEntity, pageId); } } diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java index 3bd1b1f7..314b7a16 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/PageFlowMetadataUpdateService.java @@ -109,13 +109,13 @@ public class PageFlowMetadataUpdateService { String projectPath = MetadataUtility.getInstance().getMetadataProjectPath(metadataEventArgs.getMetadata().getRelativePath()); if (TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { - pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfigInfo.getMobilePageFlowMetadataID(), appConfigInfo.getMobilePageFlowMetadataFileName(), projectPath); + pageFlowMetadataEntity = RouteMetadataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfigInfo.getMobilePageFlowMetadataID(), appConfigInfo.getMobilePageFlowMetadataFileName(), projectPath); if (pageFlowMetadataEntity == null) { WebLogger.Instance.info(String.format("Current Project %1$s's PageFlowMetadata %2$s Content is Null.", metadataEventArgs.getMetadata().getRelativePath(), appConfigInfo.getPageFlowMetadataFileName())); return; } } else { - pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfigInfo.getPageFlowMetadataID(), appConfigInfo.getPageFlowMetadataFileName(), projectPath); + pageFlowMetadataEntity = RouteMetadataService.getRouteMetadataContentWithMetadataIdAndProjectPath(appConfigInfo.getPageFlowMetadataID(), appConfigInfo.getPageFlowMetadataFileName(), projectPath); if (pageFlowMetadataEntity == null) { WebLogger.Instance.info(String.format("Current Project %1$s's PageFlowMetadata %2$s Content is Null.", metadataEventArgs.getMetadata().getRelativePath(), appConfigInfo.getPageFlowMetadataFileName())); return; @@ -152,10 +152,10 @@ public class PageFlowMetadataUpdateService { // (3) 更新页面流元数据 if (TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { - RouteMetataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getMobilePageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); + RouteMetadataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getMobilePageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); } else { - RouteMetataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getPageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); + RouteMetadataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getPageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); } WebLogger.Instance.info("Debug_PageFlowMetadataDeleteEventListener_SyncPageFlowMetadata: Done."); @@ -233,7 +233,7 @@ public class PageFlowMetadataUpdateService { pageFlowMetadataName = pageFlowMetadata.getHeader().getName(); } - pageFlowMetadataEntity = RouteMetataService.getRouteMetadataContentWithMetadataIdAndProjectPath(pageFlowMetadataId, pageFlowMetadataName, projectPath); + pageFlowMetadataEntity = RouteMetadataService.getRouteMetadataContentWithMetadataIdAndProjectPath(pageFlowMetadataId, pageFlowMetadataName, projectPath); return pageFlowMetadataEntity; } @@ -282,9 +282,9 @@ public class PageFlowMetadataUpdateService { private void saveRouteMetadataContent(MetadataEventArgs metadataEventArgs, PageFlowMetadataEntity pageFlowMetadataEntity, GspAppConfig appConfigInfo) { if (TerminalType.PC.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { - RouteMetataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getPageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); + RouteMetadataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getPageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); } else if (TerminalType.MOBILE.getMetadataType().equals(metadataEventArgs.getMetadata().getHeader().getType())) { - RouteMetataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getMobilePageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); + RouteMetadataService.saveRouteMetadataContent(pageFlowMetadataEntity, appConfigInfo.getMobilePageFlowMetadataID(), metadataEventArgs.getMetadata().getRelativePath()); } } diff --git a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetadataService.java similarity index 95% rename from web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java rename to web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetadataService.java index 30715894..fdd5cb78 100644 --- a/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetataService.java +++ b/web-pageflow-metadata/src/main/java/com/inspur/edp/web/pageflow/metadata/service/RouteMetadataService.java @@ -30,8 +30,12 @@ import com.inspur.edp.web.pageflow.metadata.entity.PageFlowMetadataEntityManager import io.iec.edp.caf.commons.exception.ExceptionLevel; import io.iec.edp.caf.commons.utils.SpringBeanUtils; - -public class RouteMetataService { +/** + * 页面流元数据service + * + * @author noah + */ +public class RouteMetadataService { /** * 获取路由元数据内容 @@ -77,14 +81,13 @@ public class RouteMetataService { GspMetadata routeMetadata = MetadataUtility.getInstance().getMetadataWithDesign(metadataGetterParameter); if (routeMetadata == null) { - WebLogger.Instance.info("Save Route Metadata Content Operation is Stopped Because Target Route Metadata is NULL."); + WebLogger.Instance.error("Save Route Metadata Content Operation is Stopped Because Target Route Metadata is NULL."); return; } routeMetadata.setContent(pageFlowMetadataEntity); MetadataService metadataService = SpringBeanUtils.getBean(MetadataService.class); - metadataService.saveMetadata(routeMetadata, routeMetadata.getRelativePath() + FileUtility.DIRECTORY_SEPARATOR_CHAR + routeMetadata.getHeader().getFileName()); } -- Gitee From 8b718b5d952c362c92329b1522ba31681b0d86b0 Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 17:14:22 +0800 Subject: [PATCH 40/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=90=88=E5=B9=B6=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../webdevjson/specific/CommandMetadataOperation.java | 4 ++++ .../webdevjson/specific/FormExpressionOperation.java | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java index 3c385815..8b74c685 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/CommandMetadataOperation.java @@ -23,6 +23,10 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import java.util.HashMap; +/** + * 命令元数据保存为json + * @author noah + */ class CommandMetadataOperation { public void save(FormDOM json, ZeroCodeFormParameter formParameter, String webDevPath, String formMetadataName) { CommandsAnalysis commandsAnalysis = new CommandsAnalysis(ExecuteEnvironment.Runtime, false); diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java index b3eb05ac..1f5e40d3 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/webdevjson/specific/FormExpressionOperation.java @@ -17,6 +17,7 @@ package com.inspur.edp.web.frontendproject.zerocode.operation.webdevjson.specific; import com.inspur.edp.web.common.entity.TerminalType; +import com.inspur.edp.web.common.utility.ListUtility; import com.inspur.edp.web.formmetadata.metadata.formdom.FormDOM; import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeFormParameter; import com.inspur.edp.web.jitengine.expressions.ExpressionFormGenerator; @@ -36,7 +37,7 @@ public class FormExpressionOperation { ///获取表单对应的表达式 ModuleFormExpressions moduleFormExpressions = ExpressionFormGenerator.generate(json, null, null); // 仅仅在包含表达式时才进行添加 - if (moduleFormExpressions != null && moduleFormExpressions.getExpressions() != null && moduleFormExpressions.getExpressions().size() > 0) { + if (moduleFormExpressions != null && ListUtility.isNotEmpty(moduleFormExpressions.getExpressions())) { expressionManifest.getExpressions().add(moduleFormExpressions); } // 写入表单表达式json文件 仅在PC下构造表达式 -- Gitee From 4cc8f70aae58b5b533ace0dd2fea34f8d5ecfc7f Mon Sep 17 00:00:00 2001 From: guozhiqi Date: Sun, 9 Jul 2023 17:18:41 +0800 Subject: [PATCH 41/41] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=85=83=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E8=AF=BB=E5=8F=96=EF=BC=8C=E5=90=88=E5=B9=B6=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=B5=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sourcegenerate/AbstractSourceCodeOperation.java | 13 ++++++++----- .../sourcegenerate/SourceCodePathGenerator.java | 8 +++++--- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java index 0c7fd44a..49b79834 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/AbstractSourceCodeOperation.java @@ -44,6 +44,13 @@ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { */ private String frameworkType; + + AbstractSourceCodeOperation(TerminalType terminalType, String formType, String frameworkType) { + this.terminalType = terminalType; + this.formType = formType; + this.frameworkType = frameworkType; + } + /** * 获取 webdev 路径 * @@ -74,11 +81,7 @@ abstract class AbstractSourceCodeOperation implements ISourceCodeOperation { return SourceCodePathGenerator.generate(zeroCodeParameter, this.terminalType); } - AbstractSourceCodeOperation(TerminalType terminalType, String formType, String frameworkType) { - this.terminalType = terminalType; - this.formType = formType; - this.frameworkType = frameworkType; - } + /** diff --git a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java index f2de34d1..c7178c27 100644 --- a/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java +++ b/web-frontendproject/src/main/java/com/inspur/edp/web/frontendproject/zerocode/operation/sourcegenerate/SourceCodePathGenerator.java @@ -22,10 +22,12 @@ import com.inspur.edp.web.frontendproject.zerocode.ZeroCodeParameter; class SourceCodePathGenerator { public static String generate(ZeroCodeParameter zeroCodeParameter, TerminalType terminalType) { - if (TerminalType.isMobile(terminalType)) { + + return TerminalType.getCustomExecuteResult(terminalType, () -> { + return getAppPath(zeroCodeParameter.getAbsoluteBasePath()); + }, () -> { return getMobileAppPath(zeroCodeParameter.getAbsoluteBasePath()); - } - return getAppPath(zeroCodeParameter.getAbsoluteBasePath()); + }); } /** -- Gitee