From b6f5f6726543bfcc2a4eeb5f6c2bef1cb79574fb Mon Sep 17 00:00:00 2001 From: yuanxiangyu Date: Thu, 10 Apr 2025 15:22:41 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E5=8D=95=E9=9B=86=E6=88=90=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E9=85=8D=E7=BD=AE=E6=94=AF=E6=8C=81=E9=9B=B6=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- view-object-model/pom.xml | 4 ++++ .../viewmodel/formentity/ChildData.java | 6 +++++ .../rtwebapi/VMCodeGenController.java | 24 ++++++++++++++++--- .../VoBuildFormFormatServiceImpl.java | 17 +++++++++++-- 4 files changed, 46 insertions(+), 5 deletions(-) diff --git a/view-object-model/pom.xml b/view-object-model/pom.xml index 153d13d..3ab68bc 100644 --- a/view-object-model/pom.xml +++ b/view-object-model/pom.xml @@ -95,6 +95,10 @@ io.iec.edp caf-i18n-api + + com.inspur.edp + wf-bizprocess-api + diff --git a/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/formentity/ChildData.java b/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/formentity/ChildData.java index f8497b9..14df2f5 100644 --- a/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/formentity/ChildData.java +++ b/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/formentity/ChildData.java @@ -1,5 +1,6 @@ package com.inspur.edp.formserver.viewmodel.formentity; +import com.inspur.edp.wf.bizprocess.entity.FieldState; import lombok.Getter; import java.util.List; @@ -9,6 +10,7 @@ public class ChildData { private String id; private String name; private String code; + private FieldState state; private List configurableAttrs; private List childFields; @@ -24,6 +26,10 @@ public class ChildData { this.code = code; } + public void setState(FieldState state) { + this.state = state; + } + public void setConfigurableAttrs(List configurableAttrs) { this.configurableAttrs = configurableAttrs; } diff --git a/view-object-rtwebapi/src/main/java/com/inspur/edp/formserver/viewmodel/rtwebapi/VMCodeGenController.java b/view-object-rtwebapi/src/main/java/com/inspur/edp/formserver/viewmodel/rtwebapi/VMCodeGenController.java index 2846808..deae726 100644 --- a/view-object-rtwebapi/src/main/java/com/inspur/edp/formserver/viewmodel/rtwebapi/VMCodeGenController.java +++ b/view-object-rtwebapi/src/main/java/com/inspur/edp/formserver/viewmodel/rtwebapi/VMCodeGenController.java @@ -3,10 +3,14 @@ package com.inspur.edp.formserver.viewmodel.rtwebapi; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.inspur.edp.bef.bizentity.GspBusinessEntity; +import com.inspur.edp.cef.designtime.api.element.GspElementDataType; +import com.inspur.edp.cef.designtime.api.variable.CommonVariable; import com.inspur.edp.das.commonmodel.util.HandleAssemblyNameUtil; import com.inspur.edp.formserver.viewmodel.GspViewModel; import com.inspur.edp.formserver.viewmodel.common.ConvertUtils; import com.inspur.edp.formserver.viewmodel.exception.ViewModelException; +import com.inspur.edp.formserver.viewmodel.i18n.VMI8nResourceUtil; +import com.inspur.edp.formserver.viewmodel.i18n.names.VoResourceKeyNames; import com.inspur.edp.formserver.viewmodel.rtwebapi.exception.VoRtApiErrorCodes; import com.inspur.edp.formserver.vmmanager.util.CheckInfoUtil; import com.inspur.edp.formserver.vmmanager.voguide.VoGuideUtil; @@ -18,6 +22,7 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import java.util.HashMap; +import java.util.UUID; @Path("") @Produces(MediaType.APPLICATION_JSON) @@ -42,13 +47,17 @@ public class VMCodeGenController { CheckInfoUtil.checkNessaceryInfo("beId", beIdJsonNode); JsonNode voGeneratingAssemblyJsonNode = jsonNode.get("voGeneratingAssembly"); CheckInfoUtil.checkNessaceryInfo("voGeneratingAssembly", voGeneratingAssemblyJsonNode); + String enableProcessItem = "0"; + if (!CheckInfoUtil.checkNull(jsonNode.get("enableProcessItem"))) { + enableProcessItem = jsonNode.get("enableProcessItem").textValue(); + } String bizEntityJson = bizEntityJsonNode.textValue(); String bePkgName = bePkgNameJsonNode.textValue(); String beId = beIdJsonNode.textValue(); String voGeneratingAssembly = voGeneratingAssemblyJsonNode.textValue(); - return convertBizEntityToViewModel(bizEntityJson, bePkgName, beId, voGeneratingAssembly); + return convertBizEntityToViewModel(bizEntityJson, bePkgName, beId, voGeneratingAssembly,enableProcessItem); } catch (Exception e) { throw new ViewModelException(VoRtApiErrorCodes.GSP_VIEWOBJECT_RTWEBAPI_1002, e); } @@ -136,7 +145,7 @@ public class VMCodeGenController { } private String convertBizEntityToViewModel(String bizEntityJson, String bePkgName, String beId, - String voGeneratingAssembly) { + String voGeneratingAssembly,String enableProcessItem) { GspBusinessEntity be = null; try { be = new ObjectMapper().readValue(bizEntityJson, GspBusinessEntity.class); @@ -144,7 +153,16 @@ public class VMCodeGenController { // 联动vo的关联带出字段枚举信息 // LinkBeUtils linkBeUtils = new LinkBeUtils(); // linkBeUtils.LinkBeRefElements(vm); - + if (enableProcessItem.equals("1")) { + CommonVariable variable = new CommonVariable(); + variable.setID(UUID.randomUUID().toString()); + variable.setCode("bffSysFormConfigId"); + variable.setLabelID("bffSysFormConfigId"); + variable.setName(VMI8nResourceUtil.getMessage(VoResourceKeyNames.FROM_PROCESS_CONFIG)); + variable.setMDataType(GspElementDataType.forValue(0)); + variable.setLength(36); + vm.getVariables().getContainElements().addField(variable); + } return new ObjectMapper().writeValueAsString(vm); } catch (Exception e) { throw new ViewModelException(VoRtApiErrorCodes.GSP_VIEWOBJECT_RTWEBAPI_1005, e); diff --git a/view-object-webapi/src/main/java/com/inspur/edp/formserver/viewmodel/core/buildformformat/VoBuildFormFormatServiceImpl.java b/view-object-webapi/src/main/java/com/inspur/edp/formserver/viewmodel/core/buildformformat/VoBuildFormFormatServiceImpl.java index a540144..15ee44b 100644 --- a/view-object-webapi/src/main/java/com/inspur/edp/formserver/viewmodel/core/buildformformat/VoBuildFormFormatServiceImpl.java +++ b/view-object-webapi/src/main/java/com/inspur/edp/formserver/viewmodel/core/buildformformat/VoBuildFormFormatServiceImpl.java @@ -35,6 +35,7 @@ import com.inspur.edp.formserver.viewmodel.i18n.names.VoResourceKeyNames; import com.inspur.edp.formserver.vmapi.formconfig.VoBuildFormFormatService; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.lcm.metadata.api.service.MetadataService; +import com.inspur.edp.lcm.metadata.api.service.NoCodeService; import com.inspur.edp.metadata.businesstype.api.MdBizTypeMappingService; import com.inspur.edp.wf.bizprocess.entity.FormButton; import com.inspur.edp.wf.bizprocess.entity.FormField; @@ -60,6 +61,8 @@ import java.util.UUID; public class VoBuildFormFormatServiceImpl implements VoBuildFormFormatService { + private final NoCodeService noCodeService = SpringBeanUtils.getBean(NoCodeService.class); + private final MetadataService metadataService; private final MdBizTypeMappingService mdBizTypeMappingService; @@ -314,6 +317,7 @@ public class VoBuildFormFormatServiceImpl implements VoBuildFormFormatService { FormFieldData data = new FormFieldData(); FormField formField = new FormField(); formField.setId(UUID.randomUUID().toString()); + formField.setFieldState(fieldData.getState()); formField.setFieldId(fieldData.getCode()); formField.setFieldName(fieldData.getName()); formField.setConfigurableStates(mappingFieldConfigure(fieldData.getConfigurableAttrs())); @@ -409,8 +413,13 @@ public class VoBuildFormFormatServiceImpl implements VoBuildFormFormatService { * @param projectPath 工程路径 */ private void checkFormConfigID(String viewModelID, String projectPath) { + GspMetadata metadata; //获取表单对应的VO - GspMetadata metadata = metadataService.loadMetadataByMetadataId(viewModelID, projectPath); + if (projectPath.isEmpty()) { + metadata = this.noCodeService.getMetadata(viewModelID); + } else { + metadata = this.metadataService.loadMetadataByMetadataId(viewModelID, projectPath); + } if (metadata == null || metadata.getContent() == null) { throw new ViewModelException(FormFormatErrorCodes.GSP_VIEWOBJECT_FORMFORMAT_1005, null, ExceptionLevel.Error, false); } @@ -422,7 +431,11 @@ public class VoBuildFormFormatServiceImpl implements VoBuildFormFormatService { } metadata.setContent(vo); try { - metadataService.saveMetadata(metadata, metadata.getRelativePath() + "/" + metadata.getHeader().getFileName()); + if (projectPath.isEmpty()) { + this.noCodeService.saveMetadata(metadata); + } else { + this.metadataService.saveMetadata(metadata, metadata.getRelativePath() + "/" + metadata.getHeader().getFileName()); + } } catch (RuntimeException e) { throw new ViewModelException(FormFormatErrorCodes.GSP_VIEWOBJECT_FORMFORMAT_1006, null, ExceptionLevel.Error, false); } -- Gitee