From 3398f0474b8dd223e2cf8e6133b18a907cb8ba8c Mon Sep 17 00:00:00 2001 From: lijiangkun Date: Mon, 25 Aug 2025 11:11:11 +0800 Subject: [PATCH 01/48] =?UTF-8?q?=E9=9B=B6=E4=BB=A3=E7=A0=81=E5=8F=91?= =?UTF-8?q?=E5=B8=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zerocode/ZeroCodeServiceImpl.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) 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 945b93ed..07d31816 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,9 @@ package com.inspur.edp.web.frontendproject.zerocode; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.inspur.edp.lcm.metadata.api.entity.FrameWorkTypeEnum; +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.metadata.api.entity.MetadataProperties; import com.inspur.edp.web.common.JITEngineConstants; import com.inspur.edp.web.common.io.FileUtility; import com.inspur.edp.web.common.logger.WebLogger; @@ -95,6 +98,10 @@ public class ZeroCodeServiceImpl implements ZeroCodeService { @Override public void resolveBuild(ZeroCodeParameter zeroCodeParameter) { prepareOperate(zeroCodeParameter); + if(isVueForm(zeroCodeParameter)){ + resolveVueForm(zeroCodeParameter); + return; + } // if (zeroCodeParameter.xxx) { List formParameters = zeroCodeParameter.getFormParameters(); List formatsForm = formParameters.stream().filter(form -> !form.getFormFormatList().isEmpty() && !form.isMobile()).collect(Collectors.toList()); @@ -179,6 +186,24 @@ public class ZeroCodeServiceImpl implements ZeroCodeService { } } + private void resolveVueForm(ZeroCodeParameter zeroCodeParameter) { + ZeroCodeManager.getInstance().saveZeroCodeParameterMetadataIntoJson(zeroCodeParameter); + + } + + private boolean isVueForm(ZeroCodeParameter zeroCodeParameter) { + if(zeroCodeParameter.getFormParameters().isEmpty()){ + return false; + } + + List formParameters = zeroCodeParameter.getFormParameters().stream().filter(form -> { + MetadataProperties properties = form.getMetadata().getProperties(); + return properties != null && properties.getFramework() == FrameWorkTypeEnum.Vue; + }).collect(Collectors.toList()); + + return !formParameters.isEmpty(); + } + private static void mergeAndDeduplicate(JSONArray jsonArray, Set uniqueKeys, JSONArray mergedArray) { if (jsonArray != null) { for (int i = 0; i < jsonArray.size(); i++) { -- Gitee From 6d4a98dd26546a5e87fc4fb92efab2a72410e5c7 Mon Sep 17 00:00:00 2001 From: Wang Jason Date: Thu, 25 Sep 2025 17:36:09 +0800 Subject: [PATCH 02/48] Merge remote-tracking branch 'origin/main' into dev-i18n-fix --- .../api/webservice/DesignSchemaWebService.java | 7 +++++-- .../webservice/DesignSchemaWebServiceImpl.java | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java b/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java index 88dfc723..86adb354 100644 --- a/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java +++ b/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java @@ -34,13 +34,16 @@ public interface DesignSchemaWebService /** * 创建designschema + * * @param content * @return */ @POST @Path("/create") - @Consumes({MediaType.APPLICATION_JSON,MediaType.TEXT_PLAIN}) - String CreateDesignSchema(JSONObject content); + @Consumes({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN}) + default String CreateDesignSchema(JSONObject content) { + return null; + } @POST @Path("/createByScene") 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 6f05c3a2..e9b5b9e3 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 @@ -60,8 +60,8 @@ public class DesignSchemaWebServiceImpl implements DesignSchemaWebService { SchemaBuilder schemaBuilder = new SchemaBuilder(); Schema schema = schemaBuilder.buildWithScene(vm, scene, isRuntime); - - return SerializeUtility.getInstance().valueToJson(schema, PropertyNamingStrategy.LOWER_CAMEL_CASE).toString(); + String result=SerializeUtility.getInstance().valueToJson(schema, PropertyNamingStrategy.LOWER_CAMEL_CASE).toString(); + return result; } catch (WebCustomException e) { WebLogger.Instance.error(e, DesignSchemaWebServiceImpl.class.getName()); throw e; -- Gitee From 9e0dfde4d2ef29f2a6927f105d10f70afa5cf0f8 Mon Sep 17 00:00:00 2001 From: Wang Jason Date: Thu, 25 Sep 2025 17:36:09 +0800 Subject: [PATCH 03/48] Merge remote-tracking branch 'origin/main' into dev-i18n-fix --- .../api/webservice/DesignSchemaWebService.java | 7 +++++-- .../webservice/DesignSchemaWebServiceImpl.java | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java b/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java index 88dfc723..86adb354 100644 --- a/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java +++ b/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java @@ -34,13 +34,16 @@ public interface DesignSchemaWebService /** * 创建designschema + * * @param content * @return */ @POST @Path("/create") - @Consumes({MediaType.APPLICATION_JSON,MediaType.TEXT_PLAIN}) - String CreateDesignSchema(JSONObject content); + @Consumes({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN}) + default String CreateDesignSchema(JSONObject content) { + return null; + } @POST @Path("/createByScene") 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 6f05c3a2..e9b5b9e3 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 @@ -60,8 +60,8 @@ public class DesignSchemaWebServiceImpl implements DesignSchemaWebService { SchemaBuilder schemaBuilder = new SchemaBuilder(); Schema schema = schemaBuilder.buildWithScene(vm, scene, isRuntime); - - return SerializeUtility.getInstance().valueToJson(schema, PropertyNamingStrategy.LOWER_CAMEL_CASE).toString(); + String result=SerializeUtility.getInstance().valueToJson(schema, PropertyNamingStrategy.LOWER_CAMEL_CASE).toString(); + return result; } catch (WebCustomException e) { WebLogger.Instance.error(e, DesignSchemaWebServiceImpl.class.getName()); throw e; -- Gitee From b2636e21e2ed2c248d26280abee5ee3c411d24a5 Mon Sep 17 00:00:00 2001 From: Wang Jason Date: Sun, 28 Sep 2025 09:43:46 +0800 Subject: [PATCH 04/48] Merge remote-tracking branch 'origin/main' into dev-i18n-fix --- .../designschema/api/webservice/DesignSchemaWebService.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java b/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java index 86adb354..c09c0d61 100644 --- a/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java +++ b/web-designschema-api/src/main/java/com/inspur/edp/web/designschema/api/webservice/DesignSchemaWebService.java @@ -40,10 +40,8 @@ public interface DesignSchemaWebService */ @POST @Path("/create") - @Consumes({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN}) - default String CreateDesignSchema(JSONObject content) { - return null; - } + @Consumes({MediaType.APPLICATION_JSON,MediaType.TEXT_PLAIN}) + String CreateDesignSchema(JSONObject content); @POST @Path("/createByScene") -- Gitee From 4252288cb51c54c91314dd970fe022ec835e7201 Mon Sep 17 00:00:00 2001 From: lijiangkun Date: Tue, 9 Dec 2025 13:33:54 +0800 Subject: [PATCH 05/48] =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=8F=90=E5=8F=96?= =?UTF-8?q?=E5=B8=AE=E5=8A=A9=E6=98=A0=E5=B0=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../formmetadata/service/SmartFormServiceImpl.java | 11 +++++++++-- .../web/formmetadata/webservice/PCForm-angular.json | 2 +- .../edp/web/formmetadata/webservice/PCForm-vue.json | 4 +++- .../webservice/SmartFormServiceImplTest.java | 4 ++-- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java index 1095a79b..399ca5f4 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java @@ -1,5 +1,6 @@ package com.inspur.edp.web.formmetadata.service; +import com.alibaba.fastjson.JSON; import com.fasterxml.jackson.databind.JsonNode; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; import com.inspur.edp.lcm.metadata.api.entity.MetadataHeader; @@ -175,7 +176,10 @@ public class SmartFormServiceImpl implements SmartFormService { properties.put("multiSelect", getBooleanValue(component,"/editor/multiSelect")); properties.put("helpId", getStringValue(component,"/editor/helpId")); properties.put("precision", getNumberValue(component,"/editor/precision")); - + String mapFieldsString = getStringValue(component,"/editor/mappingFields"); + if(StringUtils.isNotBlank(mapFieldsString)){ + properties.put("mappingFields", JSON.parseObject(mapFieldsString, Map.class)); + } String dataSourceType = getStringValue(component, "/editor/dataSourceType"); if(!"dynamic".equals(dataSourceType)){ properties.put("enumData", getObjectValue(component, "/editor/data")); @@ -190,7 +194,10 @@ public class SmartFormServiceImpl implements SmartFormService { properties.put("multiSelect", getBooleanValue(extractedComponent,"/multiSelect")); properties.put("helpId", getStringValue(extractedComponent,"/helpId")); properties.put("precision", getNumberValue(extractedComponent,"/precision")); - + String mapFieldsString = getStringValue(extractedComponent,"/mapFields"); + if(StringUtils.isNotBlank(mapFieldsString)){ + properties.put("mappingFields", JSON.parseObject(mapFieldsString, Map.class)); + } String dataSourceType = getStringValue(extractedComponent, "/dataSourceType"); if(!"dynamic".equals(dataSourceType)){ properties.put("enumData", getObjectValue(extractedComponent, "/enumData")); diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json index c80db8a7..8f444c38 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json @@ -2350,7 +2350,7 @@ "showCloseButton": null, "resizable": null, "buttonAlign": null, - "mapFields": "", + "mapFields": "{'userType':'version','code':'version'}", "lookupStyle": "popup", "holdPlace": false, "isTextArea": true, diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json index b2c6a9ab..883aaec3 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json @@ -1418,7 +1418,9 @@ "loadTreeDataType": "default", "onlySelectLeaf": false, "multiSelect": true, - "required": true + "required": true, + "mappingFields": "{\"code\":\"processInstance.processInstance\"}" + }, "path": "name", "updateOn": "blur" diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java index 3cdde043..258b31e2 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java @@ -29,11 +29,11 @@ class SmartFormServiceImplTest { @Test public void testExtract(){ //String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); - String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-angular.json"); + String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); JsonNode jsonNode = SerializeUtility.getInstance().deserialize(jsonContent, JsonNode.class); SmartFormServiceImpl SmartFormServiceImpl = new SmartFormServiceImpl(); - SmartFormEntity smartFormEntity = SmartFormServiceImpl.extract(jsonNode,false); + SmartFormEntity smartFormEntity = SmartFormServiceImpl.extract(jsonNode,true); System.out.println(smartFormEntity); } -- Gitee From 9522eb08d6732304964ac4d98bb2dcf6830c0175 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 12 Dec 2025 15:40:20 +0800 Subject: [PATCH 06/48] =?UTF-8?q?=E6=8A=BD=E5=B1=89=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E6=A0=87=E9=A2=98=E8=B5=84=E6=BA=90=E5=85=83=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i18nresourcestrategy/VueDrawerI18nResourceStrategy.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/VueDrawerI18nResourceStrategy.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/VueDrawerI18nResourceStrategy.java index f63070e2..e5284e55 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/VueDrawerI18nResourceStrategy.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/VueDrawerI18nResourceStrategy.java @@ -13,7 +13,7 @@ import java.util.List; public class VueDrawerI18nResourceStrategy extends AbstractI18nResourceStrategy { @Override protected String getComponentName(HashMap component) { - IComponentNameStrategy componentNameStrategy = ComponentNameFactory.getInstance().creatComponentNameStrategy(ComponentNameType.TEXT); + IComponentNameStrategy componentNameStrategy = ComponentNameFactory.getInstance().creatComponentNameStrategy(ComponentNameType.TITLE); if (componentNameStrategy == null) { return null; } -- Gitee From df41529b16317cc37401af33c302a2c50ff43435 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 12 Dec 2025 16:11:39 +0800 Subject: [PATCH 07/48] =?UTF-8?q?Revert=20"=E6=8F=90=E5=8F=96=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E5=80=BC=E5=B1=9E=E6=80=A7"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 9a5da0e17dd2d5f3c0af3ba177b548b901860426. --- .../edp/web/formmetadata/service/SmartFormServiceImpl.java | 1 - .../inspur/edp/web/formmetadata/webservice/PCForm-angular.json | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java index 1095a79b..bbd0881f 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java @@ -289,7 +289,6 @@ public class SmartFormServiceImpl implements SmartFormService { smartFormField.setDataType(getStringValue(fieldNode, "/type/valueType/$type")); } } - smartFormField.getProperties().put("defaultValue", getStringValue(fieldNode, "/defaultValue")); } private String getStringValue(JsonNode node, String key){ diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json index c80db8a7..2839e4a2 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json @@ -462,7 +462,7 @@ "editor": { "$type": "TextBox" }, - "defaultValue": "2", + "defaultValue": "", "path": "ID", "type": { "$type": "StringType", -- Gitee From 9fdcf0fccd64d97e0949a7cd2847c62c4acea26c Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 12 Dec 2025 16:11:49 +0800 Subject: [PATCH 08/48] =?UTF-8?q?Revert=20"=E6=9A=82=E5=AD=98"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit facbeaea5c158994efd719c882e0371ec9f6415f. --- .../formmetadata/api/SmartFormService.java | 10 - .../api/entity/SmartFormContent.java | 14 - .../api/entity/SmartFormEntity.java | 17 - .../api/entity/SmartFormField.java | 39 - .../config/FormMetadataConfiguration.java | 11 +- .../service/SmartFormServiceImpl.java | 339 -- .../webservice/PCForm-angular.json | 4088 ----------------- .../formmetadata/webservice/PCForm-vue.json | 2275 --------- .../webservice/SmartFormServiceImplTest.java | 40 - 9 files changed, 4 insertions(+), 6829 deletions(-) delete mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java delete mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java delete mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java delete mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java delete mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java delete mode 100644 web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json delete mode 100644 web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json delete mode 100644 web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java deleted file mode 100644 index 1287fc96..00000000 --- a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.inspur.edp.web.formmetadata.api; - - -import com.inspur.edp.web.formmetadata.api.entity.SmartFormContent; - -public interface SmartFormService { - - SmartFormContent getFormContent(String formId); - -} diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java deleted file mode 100644 index 75aa18ad..00000000 --- a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.inspur.edp.web.formmetadata.api.entity; - - -import lombok.Data; - -@Data -public class SmartFormContent { - private String id; - private String code; - private String name; - private String voId; - - private SmartFormEntity entity; -} diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java deleted file mode 100644 index 6e114220..00000000 --- a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.inspur.edp.web.formmetadata.api.entity; - -import lombok.Data; - -import java.util.ArrayList; -import java.util.List; - -@Data -public class SmartFormEntity { - private String id; - private String code; - private String name; - - private List fields = new ArrayList<>(); - private List childEntities = new ArrayList<>(); -} - diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java deleted file mode 100644 index 415f4794..00000000 --- a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.inspur.edp.web.formmetadata.api.entity; - -import lombok.Data; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - - -@Data -public class SmartFormField { - - private String id; - private String code; - private String name; - // 原始字段ID - private String originalId; - - // 数据类型:StringType - private String dataType; - // 对象类型(enum:枚举、association:关联、dynamicprop:动态属性) - // private String objectType; - - /** - 字段属性 - { - "required":true, 必填 - "multiSelect":true, 多选 - "enumData":JSONArray, 枚举项 - "helpId":"b524a702-7323-4d46-998e-5ba0c6abcd49", 帮助数据源 - "precision":2, 精度 - } - */ - private Map properties = new HashMap<>(); - - private List childFields = new ArrayList<>(); - -} 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 1fa9f8df..3bf10919 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,11 +17,13 @@ package com.inspur.edp.web.formmetadata.config; import com.inspur.edp.web.formmetadata.api.FormMetadataCommonService; -import com.inspur.edp.web.formmetadata.api.SmartFormService; import com.inspur.edp.web.formmetadata.filter.LowCodeLanguagePackageFilter; import com.inspur.edp.web.formmetadata.formresource.FormResourceManager; import com.inspur.edp.web.formmetadata.lic.FormMetadataCreateLicControlListener; -import com.inspur.edp.web.formmetadata.service.*; +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; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; @@ -81,9 +83,4 @@ public class FormMetadataConfiguration { public LowCodeLanguagePackageFilter registerLowCodeLanguagePackageFilter() { return new LowCodeLanguagePackageFilter(); } - - @Bean - public SmartFormService getSmartFormService() { - return new SmartFormServiceImpl(); - } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java deleted file mode 100644 index bbd0881f..00000000 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java +++ /dev/null @@ -1,339 +0,0 @@ -package com.inspur.edp.web.formmetadata.service; - -import com.fasterxml.jackson.databind.JsonNode; -import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; -import com.inspur.edp.lcm.metadata.api.entity.MetadataHeader; -import com.inspur.edp.web.common.metadata.MetadataUtility; -import com.inspur.edp.web.formmetadata.api.SmartFormService; -import com.inspur.edp.web.formmetadata.api.entity.SmartFormContent; -import com.inspur.edp.web.formmetadata.api.entity.SmartFormEntity; -import com.inspur.edp.web.formmetadata.api.entity.SmartFormField; -import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; -import io.swagger.util.Json; -import org.apache.commons.lang3.StringUtils; - -import java.util.*; - -/** - * 为智能填单提取表单属性 - */ -public class SmartFormServiceImpl implements SmartFormService { - - // 子级控件的属性 - private static final List childPropertyNamesForAngular = Arrays.asList("contents", "fields"); - private static final List childPropertyNamesForVue = Arrays.asList("contents", "columns"); - - public SmartFormServiceImpl() { - } - - @Override - public SmartFormContent getFormContent(String formId) { - GspMetadata formMetadata = MetadataUtility.getInstance().getMetadataWithRuntime(formId); - if (formMetadata == null) { - return null; - } - - boolean isVueForm = false; - if(formMetadata.getProperties() != null && formMetadata.getProperties().getFramework() != null) { - String frameworkType = String.valueOf(formMetadata.getProperties().getFramework()); - isVueForm = "Vue".equals(frameworkType); - } - - FormMetadataContent formContents = (FormMetadataContent) formMetadata.getContent(); - if(formContents == null) { - return null; - } - JsonNode formContent = formContents.getContents(); - if(formContent == null){ - return null; - } - MetadataHeader header = formMetadata.getHeader(); - SmartFormContent smartFormContent = new SmartFormContent(); - smartFormContent.setEntity(extract(formContent, isVueForm)); - smartFormContent.setId(header.getId()); - smartFormContent.setCode(header.getCode()); - smartFormContent.setName(header.getName()); - - JsonNode entity = isVueForm ? formContent.at("/module/entity/0") : formContent.at("/module/schemas/0"); - if(entity != null){ - smartFormContent.setVoId(getStringValue(entity, "/id")); - } - - return smartFormContent; - - } - - public SmartFormEntity extract(JsonNode formContent, boolean isVueForm){ - // 1、提取viewmodel中的字段 - JsonNode viewModels = formContent.at("/module/viewmodels"); - List fieldIds = extractViewModels(viewModels); - - // 2、获取component中字段信息 - JsonNode components = formContent.at("/module/components"); - Map fieldMap = extractComponents(components, fieldIds, isVueForm); - - // 3、构建实体树 - JsonNode mainEntity = isVueForm ? formContent.at("/module/entity/0/entities/0") : formContent.at("/module/schemas/0/entities/0"); - - SmartFormEntity smartFormEntity = extractEntities(mainEntity, fieldMap); - - return smartFormEntity; - } - - /** - * 提取视图模型中的字段 - * @param viewModels - * @return - */ - private List extractViewModels(JsonNode viewModels){ - List fieldIds = new ArrayList<>(); - if(viewModels == null || viewModels.isEmpty()){ - return fieldIds; - } - for(JsonNode viewModel : viewModels){ - JsonNode fields = viewModel.get("fields"); - if (fields != null && !fields.isEmpty()) { - fieldIds.addAll(fields.findValuesAsText("id")); - } - } - - return fieldIds; - } - - - /** - * 提取组件中的字段 - * @param components - * @param fieldIds - * @return - */ - private Map extractComponents(JsonNode components, List fieldIds, boolean isVueForm) { - Map fieldMap = new HashMap<>(); - if(components == null || components.isEmpty()){ - return fieldMap; - } - - for(JsonNode component : components){ - // 提取当前控件 - Map currentFieldMap = extractComponent(fieldIds, component, isVueForm); - fieldMap.putAll(currentFieldMap); - - // 提取子控件 - List childPropertyNames = isVueForm ? childPropertyNamesForVue : childPropertyNamesForAngular; - for (String childPropertyName : childPropertyNames){ - JsonNode childComponent = component.get(childPropertyName); - if (childComponent != null && !childComponent.isEmpty() && childComponent.isArray()) { - Map childFieldMap = extractComponents(childComponent, fieldIds, isVueForm); - fieldMap.putAll(childFieldMap); - } - } - } - return fieldMap; - } - - /** - * 提取控件的属性 - * @param fieldIds - * @param component - */ - private Map extractComponent(List fieldIds, JsonNode component, boolean isVueForm) { - Map fieldMap = new HashMap<>(); - if(component == null || component.isEmpty()){ - return fieldMap; - } - JsonNode fieldId = component.at("/binding/field"); - JsonNode type = component.at("/type"); - if (fieldId == null || type == null || type.isMissingNode() || fieldId.isMissingNode()) { - return fieldMap; - } - - String fieldIdText = fieldId.asText(); - if (fieldIds.contains(fieldIdText)) { - // todo 提取属性 - - SmartFormField field = new SmartFormField(); - field.setId(fieldIdText); - - field.setName(getStringValue(component, isVueForm ? "/label" : "/title")); - - - Map properties = field.getProperties(); - if(isVueForm){ - this.extractPropertiesForVue(component, properties); - }else{ - this.extractPropertiesForAngular(component, properties); - } - - field.setProperties(properties); - fieldMap.put(fieldIdText, field); - } - return fieldMap; - } - - private void extractPropertiesForVue(JsonNode component, Map properties){ - properties.put("required", getBooleanValue(component,"/editor/required")); - properties.put("multiSelect", getBooleanValue(component,"/editor/multiSelect")); - properties.put("helpId", getStringValue(component,"/editor/helpId")); - properties.put("precision", getNumberValue(component,"/editor/precision")); - - String dataSourceType = getStringValue(component, "/editor/dataSourceType"); - if(!"dynamic".equals(dataSourceType)){ - properties.put("enumData", getObjectValue(component, "/editor/data")); - } - } - - private void extractPropertiesForAngular(JsonNode component, Map properties){ - JsonNode editor = component.at("/editor"); - JsonNode extractedComponent = (editor != null && !editor.isMissingNode()) ? editor : component; - - properties.put("required", getBooleanValue(extractedComponent,"/require")); - properties.put("multiSelect", getBooleanValue(extractedComponent,"/multiSelect")); - properties.put("helpId", getStringValue(extractedComponent,"/helpId")); - properties.put("precision", getNumberValue(extractedComponent,"/precision")); - - String dataSourceType = getStringValue(extractedComponent, "/dataSourceType"); - if(!"dynamic".equals(dataSourceType)){ - properties.put("enumData", getObjectValue(extractedComponent, "/enumData")); - if(properties.get("enumData") == null){ - properties.put("enumData", getObjectValue(extractedComponent, "/items")); - } - } - } - - - /** - * 提取实体树 - * @param entityNode - * @param fieldMap - * @return - */ - private SmartFormEntity extractEntities(JsonNode entityNode, Map fieldMap) { - SmartFormEntity smartFormEntity = new SmartFormEntity(); - if (entityNode == null || entityNode.isEmpty()) { - return smartFormEntity; - } - - // 提取主表 - smartFormEntity.setId(getStringValue(entityNode, "/id")); - smartFormEntity.setCode(getStringValue(entityNode, "/code")); - smartFormEntity.setName(getStringValue(entityNode, "/name")); - - // 提取主表字段 - JsonNode fieldNodes = entityNode.at("/type/fields"); - List smartFormFields = extractFields(fieldNodes, fieldMap); - smartFormEntity.setFields(smartFormFields); - - // 提取子表 - JsonNode childEntityNodes = entityNode.at("/type/entities"); - if (childEntityNodes == null || childEntityNodes.isEmpty()) { - return smartFormEntity; - } - - for(JsonNode childEntityNode : childEntityNodes){ - SmartFormEntity childEntity = extractEntities(childEntityNode, fieldMap); - // 如果当前子对象有字段,则添加 - if (!childEntity.getFields().isEmpty()) { - smartFormEntity.getChildEntities().add(childEntity); - } - } - - return smartFormEntity; - } - - private List extractFields(JsonNode fieldNodes, Map fieldMap) { - List smartFormFields = new ArrayList<>(); - if(fieldNodes == null || fieldNodes.isEmpty()){ - return smartFormFields; - } - for(JsonNode fieldNode : fieldNodes){ - // 提取当前字段 - // todo 提取属性 - String id = getStringValue(fieldNode, "/id"); - SmartFormField smartFormField = fieldMap.get(id); - if(smartFormField != null){ - this.setFormField(smartFormField, fieldNode, true); - smartFormFields.add(smartFormField); - continue; - } - - // 提取子字段 - JsonNode childFieldNodes = fieldNode.at("/type/fields"); - if (childFieldNodes == null || childFieldNodes.isEmpty()) { - continue; - } - - List childFields = extractFields(childFieldNodes, fieldMap); - if (childFields.isEmpty()) { - continue; - } - smartFormField = new SmartFormField(); - this.setFormField(smartFormField, fieldNode, false); - smartFormField.setName(getStringValue(fieldNode, "/name")); - - // formField.setDataType(getStringValue(fieldNode, "/type/$type")); - - smartFormField.setChildFields(childFields); - smartFormFields.add(smartFormField); - } - - return smartFormFields; - } - - private void setFormField(SmartFormField smartFormField, JsonNode fieldNode, boolean isSetDataType){ - smartFormField.setId(getStringValue(fieldNode, "/id")); - smartFormField.setCode(getStringValue(fieldNode, "/code")); - smartFormField.setOriginalId(getStringValue(fieldNode, "/originalId")); - if(isSetDataType){ - smartFormField.setDataType(getStringValue(fieldNode, "/type/$type")); - if("EnumType".equals(smartFormField.getDataType())){ - smartFormField.setDataType(getStringValue(fieldNode, "/type/valueType/$type")); - } - } - } - - private String getStringValue(JsonNode node, String key){ - if(node == null || node.isEmpty()){ - return null; - } - JsonNode result = node.at(key); - if(result == null || StringUtils.isEmpty(result.asText())){ - return null; - } - return result.asText(); - } - - private Integer getNumberValue(JsonNode node, String key){ - if(node == null || node.isEmpty()){ - return null; - } - JsonNode result = node.at(key); - if(result == null || !result.isNumber()){ - return null; - } - return result.asInt(); - } - - private Boolean getBooleanValue(JsonNode node, String key){ - if(node == null || node.isEmpty()){ - return null; - } - JsonNode result = node.at(key); - if(result == null || !result.isBoolean()){ - return null; - } - return result.asBoolean(); - - } - - private Object getObjectValue(JsonNode node, String key){ - if(node == null || node.isEmpty()){ - return null; - } - JsonNode result = node.at(key); - if(result == null || result.isEmpty()){ - return null; - } - return result; - } - -} diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json deleted file mode 100644 index 2839e4a2..00000000 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json +++ /dev/null @@ -1,4088 +0,0 @@ -{ - "module": { - "id": "PCCardFormTest", - "code": "PCCardFormTest", - "name": "PC卡片测试", - "caption": "PC卡片测试", - "type": "Module", - "creator": "lijiangkun", - "creationDate": "2025-04-25T08:12:29.233Z", - "updateVersion": "191104", - "showTitle": true, - "bootstrap": "card-template", - "templateId": "card-template", - "schemas": [ - { - "eapiId": "5ccf045d-6ed0-47a7-84eb-19afc47883d9", - "eapiCode": "PCCardFormTest_frm", - "eapiName": "PC卡片测试_frm", - "eapiNameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front", - "voPath": "MyDev/AngularTest/RuntimeTest/bo-runtimetest-front/metadata/components", - "voNameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front", - "entities": [ - { - "type": { - "$type": "EntityType", - "entities": [ - { - "type": { - "$type": "EntityType", - "entities": [], - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": true, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "ID", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "c39c80e2-74c8-43e6-9cb0-d1b3848ac57a", - "originalId": "c39c80e2-74c8-43e6-9cb0-d1b3848ac57a", - "label": "id", - "code": "ID", - "bindingField": "id", - "bindingPath": "id", - "name": "主键" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": true, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "ParentID", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "aef35c14-654b-493b-987e-d39969239b6d", - "originalId": "aef35c14-654b-493b-987e-d39969239b6d", - "label": "parentID", - "code": "ParentID", - "bindingField": "parentID", - "bindingPath": "parentID", - "name": "上级对象主键" - }, - { - "$type": "ComplexField", - "path": "attachment", - "type": { - "$type": "ObjectType", - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "attachment.AttachmentId", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "24040962-4fd6-49ff-a18a-f466a068f905", - "originalId": "ff73a947-4fd6-49ff-a18a-f466a068f905", - "label": "attachmentId", - "code": "AttachmentId", - "bindingField": "attachment_AttachmentId", - "bindingPath": "attachment.attachmentId", - "name": "附件Id" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "attachment.FileName", - "type": { - "$type": "StringType", - "length": 512, - "name": "String", - "displayName": "字符串" - }, - "id": "24040962-1497-4526-86f9-290aab400e0b", - "originalId": "026b07a9-1497-4526-86f9-290aab400e0b", - "label": "fileName", - "code": "FileName", - "bindingField": "attachment_FileName", - "bindingPath": "attachment.fileName", - "name": "附件名称" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "NumericBox" - }, - "defaultValue": "", - "path": "attachment.FileSize", - "type": { - "$type": "NumericType", - "precision": 8, - "length": 128, - "name": "Number", - "displayName": "数字" - }, - "id": "24040962-dd56-4cab-a54b-577a65f9eb6e", - "originalId": "6369fb66-dd56-4cab-a54b-577a65f9eb6e", - "label": "fileSize", - "code": "FileSize", - "bindingField": "attachment_FileSize", - "bindingPath": "attachment.fileSize", - "name": "附件大小" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "defaultValue": "", - "path": "attachment.FileCreateTime", - "type": { - "$type": "DateTimeType", - "name": "DateTime", - "displayName": "日期时间" - }, - "id": "24040962-a1f5-4f6c-9c82-ddb10864c652", - "originalId": "ff677864-a1f5-4f6c-9c82-ddb10864c652", - "label": "fileCreateTime", - "code": "FileCreateTime", - "bindingField": "attachment_FileCreateTime", - "bindingPath": "attachment.fileCreateTime", - "name": "附件上传时间" - } - ], - "name": "AttachmentInfo2404", - "displayName": "附件信息" - }, - "id": "24040962-8b52-467c-b760-a2fdf257c8ea", - "originalId": "24040962-8b52-467c-b760-a2fdf257c8ea", - "label": "attachment", - "code": "attachment", - "bindingField": "attachment", - "bindingPath": "attachment", - "name": "附件" - }, - { - "$type": "ComplexField", - "label": "name", - "id": "27e7a688-82b2-45ba-a85d-870c233bb984", - "path": "name", - "type": { - "$type": "EntityType", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "name", - "id": "f75e046c-1b7a-4f2e-98fe-228242b3ca33", - "path": "name.name", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "originalId": "f75e046c-1b7a-4f2e-98fe-228242b3ca33", - "code": "name", - "bindingField": "name", - "bindingPath": "name.name", - "name": "名称" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "name_Name", - "id": "c78a1ced-09c7-4c08-938d-897af682ef17", - "path": "name.name_Name", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 1000, - "name": "String" - }, - "originalId": "c78a1ced-09c7-4c08-938d-897af682ef17", - "code": "Name", - "bindingField": "name_name_Name", - "bindingPath": "name.name_Name", - "name": "姓名" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "name_Code", - "id": "0776bfe0-5912-4a8d-9447-ca896edf4cc1", - "path": "name.name_Code", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 100, - "name": "String" - }, - "originalId": "0776bfe0-5912-4a8d-9447-ca896edf4cc1", - "code": "Code", - "bindingField": "name_name_Code", - "bindingPath": "name.name_Code", - "name": "编码" - } - ], - "primary": "name", - "entities": [], - "displayName": "人员", - "name": "DFFEmployeeF75e" - }, - "originalId": "27e7a688-82b2-45ba-a85d-870c233bb984", - "code": "name", - "bindingField": "name", - "bindingPath": "name", - "name": "名称" - } - ], - "primary": "id", - "name": "ChildAttachment1", - "displayName": "子表附件1" - }, - "id": "f987f0c2-039e-4a32-a8dd-fcbf8f6645b4", - "label": "childAttachment1s", - "code": "ChildAttachment1", - "name": "子表附件1" - }, - { - "type": { - "$type": "EntityType", - "entities": [], - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": true, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "ID", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "3df94820-efa6-48a6-8d47-112ac47e3302", - "originalId": "3df94820-efa6-48a6-8d47-112ac47e3302", - "label": "id", - "code": "ID", - "bindingField": "id", - "bindingPath": "id", - "name": "主键" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": true, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "ParentID", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "originalId": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "label": "parentID", - "code": "ParentID", - "bindingField": "parentID", - "bindingPath": "parentID", - "name": "上级对象主键" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "code", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "c864358f-cb3c-4b2b-960e-423754e28ea8", - "originalId": "c864358f-cb3c-4b2b-960e-423754e28ea8", - "label": "code", - "code": "code", - "bindingField": "code", - "bindingPath": "code", - "name": "编号" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "name", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "a6c40426-7529-45e3-8c53-4ae973f28c09", - "originalId": "a6c40426-7529-45e3-8c53-4ae973f28c09", - "label": "name", - "code": "name", - "bindingField": "name", - "bindingPath": "name", - "name": "名称" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "CheckBox" - }, - "readonly": false, - "path": "booleanField", - "type": { - "$type": "BooleanType", - "displayName": "布尔", - "name": "Boolean" - }, - "id": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "code": "booleanField", - "label": "booleanField", - "bindingPath": "booleanField", - "bindingField": "booleanField", - "originalId": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "name": "布尔" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "MultiTextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "noteField", - "id": "11bdf429-f332-475b-983b-ae82fba00e8f", - "path": "noteField", - "type": { - "$type": "TextType", - "displayName": "文本", - "length": 0, - "name": "Text" - }, - "originalId": "11bdf429-f332-475b-983b-ae82fba00e8f", - "code": "noteField", - "bindingField": "noteField", - "bindingPath": "noteField", - "name": "备注" - } - ], - "primary": "id", - "name": "RuntimeItem1", - "displayName": "运行时明细1" - }, - "id": "8b102388-c979-4378-805e-e891d480c9bf", - "label": "runtimeItem1s", - "code": "RuntimeItem1", - "name": "运行时明细1" - } - ], - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": true, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "ID", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "668b9bfb-9c29-46b7-862d-b391bb7602e2", - "originalId": "668b9bfb-9c29-46b7-862d-b391bb7602e2", - "label": "id", - "code": "ID", - "bindingField": "id", - "bindingPath": "id", - "name": "主键" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "defaultValue": "", - "path": "Version", - "type": { - "$type": "DateTimeType", - "name": "DateTime", - "displayName": "日期时间" - }, - "id": "30ba0d3e-e2d0-402f-a569-646b3b191297", - "originalId": "30ba0d3e-e2d0-402f-a569-646b3b191297", - "label": "version", - "code": "Version", - "bindingField": "version", - "bindingPath": "version", - "name": "版本" - }, - { - "$type": "ComplexField", - "path": "BillStatus", - "type": { - "$type": "ObjectType", - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "EnumField" - }, - "defaultValue": "", - "path": "BillStatus.BillState", - "type": { - "$type": "EnumType", - "valueType": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "enumValues": [ - { - "disabled": false, - "name": "制单", - "value": "Billing" - }, - { - "disabled": false, - "name": "提交审批", - "value": "SubmitApproval" - }, - { - "disabled": false, - "name": "审批通过", - "value": "Approved" - }, - { - "disabled": false, - "name": "审批不通过", - "value": "ApprovalNotPassed" - } - ], - "name": "Enum", - "displayName": "枚举" - }, - "id": "a54c2230-0101-468f-ae3f-40c76c0f06b0", - "originalId": "a0b19650-0101-468f-ae3f-40c76c0f06b0", - "label": "billState", - "code": "BillState", - "bindingField": "billStatus_BillState", - "bindingPath": "billStatus.billState", - "name": "状态" - } - ], - "name": "BillStateA54c", - "displayName": "状态" - }, - "id": "a54c2230-3231-4928-a503-93fb64767b84", - "originalId": "a54c2230-3231-4928-a503-93fb64767b84", - "label": "billStatus", - "code": "BillStatus", - "bindingField": "billStatus", - "bindingPath": "billStatus", - "name": "状态" - }, - { - "$type": "ComplexField", - "path": "ProcessInstance", - "type": { - "$type": "ObjectType", - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "ProcessInstance.ProcessInstance", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "4c02d802-ad8f-4da3-a430-c8a7f2162135", - "originalId": "2e1beb7d-ad8f-4da3-a430-c8a7f2162135", - "label": "processInstance", - "code": "ProcessInstance", - "bindingField": "processInstance_ProcessInstance", - "bindingPath": "processInstance.processInstance", - "name": "流程实例" - } - ], - "name": "ProcessInstance4c02", - "displayName": "流程实例" - }, - "id": "4c02d802-33fe-47d1-b289-05427b719a11", - "originalId": "4c02d802-33fe-47d1-b289-05427b719a11", - "label": "processInstance", - "code": "ProcessInstance", - "bindingField": "processInstance", - "bindingPath": "processInstance", - "name": "流程实例" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "code", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "b86fa068-5985-419e-86f0-dbe862719192", - "originalId": "b86fa068-5985-419e-86f0-dbe862719192", - "label": "code", - "code": "code", - "bindingField": "code", - "bindingPath": "code", - "name": "编号" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "name", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "61595c14-d06a-4f6c-977e-152aeb5f7b46", - "originalId": "61595c14-d06a-4f6c-977e-152aeb5f7b46", - "label": "name", - "code": "name", - "bindingField": "name", - "bindingPath": "name", - "name": "名称" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "NumericBox" - }, - "defaultValue": "", - "path": "numberField1", - "type": { - "$type": "NumericType", - "precision": 0, - "length": 0, - "name": "Number", - "displayName": "数字" - }, - "id": "a53ae211-98d0-4606-a68b-fd5401c5dba5", - "originalId": "a53ae211-98d0-4606-a68b-fd5401c5dba5", - "label": "numberField1", - "code": "numberField1", - "bindingField": "numberField1", - "bindingPath": "numberField1", - "name": "数值1" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "readonly": false, - "path": "dateField", - "type": { - "$type": "DateType", - "displayName": "日期", - "name": "Date" - }, - "id": "293ef601-da8b-4950-9805-226415b6072b", - "code": "dateField", - "label": "dateField", - "bindingPath": "dateField", - "bindingField": "dateField", - "originalId": "293ef601-da8b-4950-9805-226415b6072b", - "name": "日期" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "readonly": false, - "path": "dateTimeField", - "type": { - "$type": "DateTimeType", - "displayName": "日期时间", - "name": "DateTime" - }, - "id": "7bd1e315-3b4d-4329-b2df-7a928142286e", - "code": "dateTimeField", - "label": "dateTimeField", - "bindingPath": "dateTimeField", - "bindingField": "dateTimeField", - "originalId": "7bd1e315-3b4d-4329-b2df-7a928142286e", - "name": "日期时间" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "NumericBox" - }, - "readonly": false, - "path": "floatField", - "type": { - "$type": "NumericType", - "displayName": "数字", - "precision": 2, - "length": 18, - "name": "Number" - }, - "id": "173f0950-1ac6-4452-a92c-76e0189c56d7", - "code": "floatField", - "label": "floatField", - "bindingPath": "floatField", - "bindingField": "floatField", - "originalId": "173f0950-1ac6-4452-a92c-76e0189c56d7", - "name": "浮点" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "MultiTextBox" - }, - "readonly": false, - "path": "noteField", - "type": { - "$type": "TextType", - "displayName": "文本", - "length": 0, - "name": "Text" - }, - "id": "ad758550-ac5e-4f04-85c2-107681f716a2", - "code": "noteField", - "label": "noteField", - "bindingPath": "noteField", - "bindingField": "noteField", - "originalId": "ad758550-ac5e-4f04-85c2-107681f716a2", - "name": "备注" - }, - { - "$type": "ComplexField", - "path": "AttachmentFile", - "type": { - "$type": "ObjectType", - "fields": [ - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "readonly": false, - "path": "AttachmentFile.AttachmentId", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "id": "9d012316-4fd6-49ff-a18a-f466a068f905", - "code": "AttachmentId", - "label": "attachmentId", - "bindingPath": "attachmentFile.attachmentId", - "bindingField": "attachmentFile_AttachmentId", - "originalId": "ff73a947-4fd6-49ff-a18a-f466a068f905", - "name": "附件Id" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "readonly": false, - "path": "AttachmentFile.FileName", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 512, - "name": "String" - }, - "id": "9d012316-1497-4526-86f9-290aab400e0b", - "code": "FileName", - "label": "fileName", - "bindingPath": "attachmentFile.fileName", - "bindingField": "attachmentFile_FileName", - "originalId": "026b07a9-1497-4526-86f9-290aab400e0b", - "name": "附件名称" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "NumericBox" - }, - "readonly": false, - "path": "AttachmentFile.FileSize", - "type": { - "$type": "NumericType", - "displayName": "数字", - "precision": 8, - "length": 128, - "name": "Number" - }, - "id": "9d012316-dd56-4cab-a54b-577a65f9eb6e", - "code": "FileSize", - "label": "fileSize", - "bindingPath": "attachmentFile.fileSize", - "bindingField": "attachmentFile_FileSize", - "originalId": "6369fb66-dd56-4cab-a54b-577a65f9eb6e", - "name": "附件大小" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "readonly": false, - "path": "AttachmentFile.FileCreateTime", - "type": { - "$type": "DateTimeType", - "displayName": "日期时间", - "name": "DateTime" - }, - "id": "9d012316-a1f5-4f6c-9c82-ddb10864c652", - "code": "FileCreateTime", - "label": "fileCreateTime", - "bindingPath": "attachmentFile.fileCreateTime", - "bindingField": "attachmentFile_FileCreateTime", - "originalId": "ff677864-a1f5-4f6c-9c82-ddb10864c652", - "name": "附件上传时间" - } - ], - "name": "AttachmentInfo9d01", - "displayName": "附件信息" - }, - "id": "9d012316-310e-43ec-8686-3b881f2c25a9", - "code": "AttachmentFile", - "label": "attachmentFile", - "bindingPath": "attachmentFile", - "bindingField": "attachmentFile", - "originalId": "9d012316-310e-43ec-8686-3b881f2c25a9", - "name": "附件文件" - }, - { - "$type": "SimpleField", - "require": false, - "multiLanguage": false, - "defaultValue": "", - "editor": { - "$type": "CheckBox" - }, - "readonly": false, - "path": "booleanField", - "type": { - "$type": "BooleanType", - "displayName": "布尔", - "name": "Boolean" - }, - "id": "24119450-10d9-485b-9ab2-cf225ec1c3bb", - "code": "booleanField", - "label": "booleanField", - "bindingPath": "booleanField", - "bindingField": "booleanField", - "originalId": "24119450-10d9-485b-9ab2-cf225ec1c3bb", - "name": "布尔" - }, - { - "$type": "ComplexField", - "label": "treeField", - "id": "2bd38907-b163-4b2f-85aa-bb0bd708b364", - "path": "treeField", - "type": { - "$type": "HierarchyType", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "parentElement", - "id": "2bd38907-b2b6-4ff2-bcc4-5c4d5534d02c", - "path": "treeField.ParentElement", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "originalId": "37a3529a-b2b6-4ff2-bcc4-5c4d5534d02c", - "code": "ParentElement", - "bindingField": "treeField_ParentElement", - "bindingPath": "treeField.parentElement", - "name": "父节点字段" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "NumericBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "sequence", - "id": "2bd38907-f606-4999-ae4a-1357b2970daa", - "path": "treeField.Sequence", - "type": { - "$type": "NumericType", - "displayName": "数字", - "precision": 0, - "length": 0, - "name": "Number" - }, - "originalId": "b5a7caf0-f606-4999-ae4a-1357b2970daa", - "code": "Sequence", - "bindingField": "treeField_Sequence", - "bindingPath": "treeField.sequence", - "name": "顺序号" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "NumericBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "layer", - "id": "2bd38907-09d1-42ed-9cd0-b823d9098a5d", - "path": "treeField.Layer", - "type": { - "$type": "NumericType", - "displayName": "数字", - "precision": 0, - "length": 0, - "name": "Number" - }, - "originalId": "592e17a0-09d1-42ed-9cd0-b823d9098a5d", - "code": "Layer", - "bindingField": "treeField_Layer", - "bindingPath": "treeField.layer", - "name": "级数" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "CheckBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "isDetail", - "id": "2bd38907-c6cd-46a5-b05f-9f25f02edf7f", - "path": "treeField.IsDetail", - "type": { - "$type": "BooleanType", - "displayName": "布尔", - "name": "Boolean" - }, - "originalId": "79aff7ce-c6cd-46a5-b05f-9f25f02edf7f", - "code": "IsDetail", - "bindingField": "treeField_IsDetail", - "bindingPath": "treeField.isDetail", - "name": "是否明细" - } - ], - "name": "ParentHierarchyInfo2bd3", - "displayName": "父节点分级信息" - }, - "originalId": "2bd38907-b163-4b2f-85aa-bb0bd708b364", - "code": "treeField", - "bindingField": "treeField", - "bindingPath": "treeField", - "name": "树字段" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "EnumField" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "label": "enumField", - "id": "e77f1a5c-3e36-4551-a157-e4903cff80fd", - "path": "enumField", - "type": { - "$type": "EnumType", - "displayName": "枚举", - "valueType": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "enumValues": [ - { - "disabled": false, - "name": "值1", - "value": "value1" - }, - { - "disabled": false, - "name": "值2", - "value": "value2" - } - ], - "name": "Enum" - }, - "originalId": "e77f1a5c-3e36-4551-a157-e4903cff80fd", - "code": "enumField", - "bindingField": "enumField", - "bindingPath": "enumField", - "name": "枚举字段" - } - ], - "primary": "id", - "name": "RuntimeTestBe", - "displayName": "运行时问题测试" - }, - "id": "359b32d4-58f0-4631-b52c-bf8b62e03e18", - "label": "runtimeTestBes", - "code": "RuntimeTestBe", - "name": "运行时问题测试" - } - ], - "sourceType": "vo", - "id": "11213af2-51cd-458a-882b-ef35209c7ba2", - "variables": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "readonly": false, - "editor": { - "$type": "TextBox" - }, - "defaultValue": "", - "path": "bffSysFormConfigId", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "id": "da48cef2-4219-4a33-8bf6-e0acdaf6d83b", - "originalId": "da48cef2-4219-4a33-8bf6-e0acdaf6d83b", - "label": "bffSysFormConfigId", - "code": "bffSysFormConfigId", - "bindingField": "bffSysFormConfigId", - "bindingPath": "bffSysFormConfigId", - "name": "表单流程配置" - } - ], - "code": "PCCardFormTest_frm", - "sourceUri": "api/mydev/angulartest/v1.0/PCCardFormTest_frm", - "extendProperties": { - "enableStdTimeFormat": true - }, - "name": "PC卡片测试_frm" - } - ], - "states": [], - "contents": [], - "stateMachines": [ - { - "id": "PCCardFormTest_state_machine", - "name": "PC卡片测试", - "uri": "05a3916d-1f67-4b30-8742-e50b496e08c8", - "code": "PCCardFormTest_frm", - "nameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front" - } - ], - "viewmodels": [ - { - "id": "root-viewmodel", - "code": "root-viewmodel", - "name": "运行时问题测试", - "fields": [], - "stateMachine": "PCCardFormTest_state_machine", - "serviceRefs": [], - "commands": [ - { - "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "code": "Load1", - "name": "执行加载页面后初始方法", - "params": [ - { - "name": "action", - "shownName": "初始方法", - "value": "{UISTATE~/#{root-component}/action}", - "defaultValue": null - } - ], - "handlerName": "Load", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "246a275c-88c9-4c8a-aa82-be6a950a4325", - "code": "LoadAndAdd1", - "name": "新增一条数据", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "handlerName": "LoadAndAdd", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "70acc053-fa15-45be-851c-cf694e1bcaf7", - "code": "LoadAndView1", - "name": "查看一条数据", - "params": [ - { - "name": "id", - "shownName": "待查看数据的标识", - "value": "{UISTATE~/#{root-component}/id}", - "defaultValue": null - }, - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "transitionActionParamName", - "shownName": "状态迁移动作参数编号", - "value": "", - "defaultValue": null - } - ], - "handlerName": "LoadAndView", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", - "code": "LoadAndEdit1", - "name": "编辑当前数据", - "params": [ - { - "name": "id", - "shownName": "待编辑数据的标识", - "value": "{UISTATE~/#{root-component}/id}", - "defaultValue": null - }, - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - }, - { - "name": "transitionActionParamName", - "shownName": "状态迁移动作参数编号", - "value": "", - "defaultValue": null - } - ], - "handlerName": "LoadAndEdit", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "f90aadfa-988c-4da5-a5db-1416c3333794", - "code": "Add1", - "name": "新增一条数据", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "handlerName": "Add", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "code": "Edit1", - "name": "编辑当前数据", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - } - ], - "handlerName": "Edit", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "31b814db-01e4-407d-8fad-0f08dbb01999", - "code": "Save1", - "name": "保存变更", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "successMsg", - "shownName": "保存成功提示信息", - "value": "", - "defaultValue": null - } - ], - "handlerName": "Save", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "code": "Cancel1", - "name": "取消变更", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "handlerName": "Cancel", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "c8504c24-33e8-487a-91ce-2218b803fe01", - "code": "ChangeItem1", - "name": "切换上一条或下一条1", - "params": [ - { - "name": "id", - "shownName": "当前数据标识", - "value": "{DATA~/#{root-component}/id}", - "defaultValue": null - }, - { - "name": "type", - "shownName": "切换类型(prev|next)", - "value": "prev", - "defaultValue": null - }, - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "handlerName": "ChangeItem", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "4a0cfb1a-1262-41a2-aeb9-c8edd5c09683", - "code": "ChangeItem2", - "name": "切换上一条或下一条2", - "params": [ - { - "name": "id", - "shownName": "当前数据标识", - "value": "{DATA~/#{root-component}/id}", - "defaultValue": null - }, - { - "name": "type", - "shownName": "切换类型(prev|next)", - "value": "next", - "defaultValue": null - }, - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "handlerName": "ChangeItem", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "0d34f338-b601-4716-8530-493b0752483b", - "code": "submitWithBizDefKey1", - "name": "提交审批", - "params": [ - { - "name": "dataId", - "shownName": "表单数据id", - "value": "{DATA~/#{basic-form-component}/id}", - "defaultValue": null - }, - { - "name": "bizDefKey", - "shownName": "流程分类id", - "value": "", - "defaultValue": null - }, - { - "name": "action", - "shownName": "迁移动作(可选)", - "value": "", - "defaultValue": null - } - ], - "handlerName": "submitWithBizDefKey", - "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "e492063e-a22d-4f23-8aed-7fe139843220", - "code": "cancelSubmitWithDataId1", - "name": "取消提交", - "params": [ - { - "name": "dataId", - "shownName": "表单数据id", - "value": "{DATA~/#{basic-form-component}/id}", - "defaultValue": null - }, - { - "name": "bizDefKey", - "shownName": "流程分类id", - "value": "", - "defaultValue": null - }, - { - "name": "action", - "shownName": "迁移动作(可选)", - "value": "", - "defaultValue": null - } - ], - "handlerName": "cancelSubmitWithDataId", - "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "shortcut": {}, - "extensions": [], - "isInvalid": false - } - ], - "states": [ - { - "id": "da48cef2-4219-4a33-8bf6-e0acdaf6d83b", - "code": "bffSysFormConfigId", - "name": "表单流程配置", - "type": "String", - "category": "remote" - }, - { - "id": "e7bdd079-ca82-400c-bd82-fff8385571e5", - "code": "date", - "name": "date", - "type": "Date", - "category": "locale" - } - ], - "bindTo": "/", - "enableValidation": false, - "enableUnifiedSession": false - }, - { - "id": "basic-form-viewmodel", - "code": "basic-form-viewmodel", - "name": "运行时问题测试", - "fields": [ - { - "type": "Form", - "id": "668b9bfb-9c29-46b7-862d-b391bb7602e2", - "fieldName": "id", - "groupId": null, - "groupName": null, - "updateOn": "blur" - }, - { - "type": "Form", - "id": "30ba0d3e-e2d0-402f-a569-646b3b191297", - "fieldName": "version", - "groupId": null, - "groupName": null, - "updateOn": "blur" - }, - { - "type": "Form", - "id": "a54c2230-0101-468f-ae3f-40c76c0f06b0", - "fieldName": "billStatus_BillState", - "groupId": null, - "groupName": null, - "updateOn": "change", - "fieldSchema": { - "name": "状态1" - } - }, - { - "type": "Form", - "id": "4c02d802-ad8f-4da3-a430-c8a7f2162135", - "fieldName": "processInstance_ProcessInstance", - "groupId": null, - "groupName": null, - "updateOn": "blur" - }, - { - "type": "Form", - "id": "b86fa068-5985-419e-86f0-dbe862719192", - "fieldName": "code", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": { - "editor": { - "$type": "LookupEdit", - "dataSource": { - "uri": "RuntimeTestBe.code", - "displayName": "用户组织帮助", - "idField": "id", - "type": "ViewObject", - "helpCode": "UserOrgTest" - }, - "valueField": "id", - "textField": "name", - "displayType": "NavTreeList", - "mapFields": "", - "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799" - }, - "name": "编号", - "require": false, - "readonly": false - } - }, - { - "type": "Form", - "id": "61595c14-d06a-4f6c-977e-152aeb5f7b46", - "fieldName": "name", - "groupId": null, - "groupName": null, - "updateOn": "blur" - }, - { - "type": "Form", - "id": "a53ae211-98d0-4606-a68b-fd5401c5dba5", - "fieldName": "numberField1", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": { - "editor": { - "maxValue": 10 - } - } - }, - { - "type": "Form", - "id": "173f0950-1ac6-4452-a92c-76e0189c56d7", - "fieldName": "floatField", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "blur", - "fieldSchema": { - "editor": { - "minValue": null, - "maxValue": null - } - } - }, - { - "type": "Form", - "id": "e77f1a5c-3e36-4551-a157-e4903cff80fd", - "fieldName": "enumField", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "change", - "fieldSchema": {} - } - ], - "serviceRefs": [], - "commands": [], - "states": [], - "bindTo": "/", - "parent": "root-viewmodel", - "enableValidation": true - }, - { - "id": "childattachment1-egs8-component-viewmodel", - "code": "childattachment1-egs8-component-viewmodel", - "name": "子表附件1", - "bindTo": "/childAttachment1s", - "parent": "root-viewmodel", - "fields": [], - "commands": [ - { - "id": "childattachment1egs8AddFileRows-id", - "code": "childattachment1egs8AddFileRows", - "name": "批量添加文件数据", - "handlerName": "addFileRows", - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "params": [ - { - "name": "fileInfoFieldPath", - "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" - } - ], - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "childattachment1egs8RemoveFileRows-id", - "code": "childattachment1egs8RemoveFileRows", - "name": "批量删除文件数据", - "handlerName": "removeFileRows", - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "params": [ - { - "name": "fileInfoFieldPath", - "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" - } - ], - "shortcut": {}, - "extensions": [], - "isInvalid": false - } - ], - "states": [], - "enableValidation": true, - "pagination": { - "enable": false - }, - "allowEmpty": true - }, - { - "id": "runtimeitem1-vgy0-component-viewmodel", - "code": "runtimeitem1-vgy0-component-viewmodel", - "name": "{{'test' }}", - "bindTo": "/runtimeItem1s", - "parent": "root-viewmodel", - "fields": [ - { - "type": "Form", - "id": "3df94820-efa6-48a6-8d47-112ac47e3302", - "fieldName": "id", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": {} - }, - { - "type": "Form", - "id": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "fieldName": "parentID", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": {} - }, - { - "type": "Form", - "id": "c864358f-cb3c-4b2b-960e-423754e28ea8", - "fieldName": "code", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": { - "require": true - } - }, - { - "type": "Form", - "id": "a6c40426-7529-45e3-8c53-4ae973f28c09", - "fieldName": "name", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": {} - }, - { - "type": "Form", - "id": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "fieldName": "booleanField", - "groupId": null, - "groupName": null, - "updateOn": "change", - "fieldSchema": { - "editor": { - "$type": "CheckBox" - }, - "name": "布尔", - "require": false, - "readonly": false - } - } - ], - "commands": [ - { - "id": "3a2f8aee-605b-4789-a971-43ba31c60b61", - "code": "runtimeitem1vgy0AddItem1", - "name": "增加一条子表数据1", - "params": [], - "handlerName": "AddItem", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "5a844e51-0196-44e6-ac4c-e9c4d235a894", - "code": "runtimeitem1vgy0RemoveItem1", - "name": "删除一条子表数据1", - "params": [ - { - "name": "id", - "shownName": "待删除子表数据的标识", - "value": "{DATA~/#{runtimeitem1-vgy0-component}/runtimeItem1s/id}" - } - ], - "handlerName": "RemoveItem", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - } - ], - "states": [], - "enableValidation": true, - "pagination": { - "enable": false - }, - "allowEmpty": true - } - ], - "components": [ - { - "id": "root-component", - "type": "Component", - "viewModel": "root-viewmodel", - "componentType": "Frame", - "onInit": "Load1", - "contents": [ - { - "id": "root-layout", - "type": "ContentContainer", - "appearance": { - "class": "f-page f-page-card f-page-is-mainsubcard" - }, - "size": null, - "contents": [ - { - "id": "page-header", - "type": "ContentContainer", - "appearance": { - "class": "f-page-header" - }, - "size": null, - "contents": [ - { - "id": "header-nav", - "type": "ContentContainer", - "appearance": { - "class": "f-page-header-base" - }, - "size": null, - "contents": [ - { - "id": "header-title-container", - "type": "ContentContainer", - "appearance": { - "class": "f-title" - }, - "size": null, - "contents": [ - { - "id": "page-header-title", - "type": "HtmlTemplate", - "html": "

{{'title'|lang:lang:'PC卡片测试'}}

" - } - ], - "visible": true, - "isScrollspyContainer": false, - "isLikeCardContainer": false - }, - { - "id": "page-header-toolbar", - "type": "ToolBar", - "appearance": { - "class": "col-7 f-toolbar" - }, - "size": null, - "items": [ - { - "id": "button-add", - "type": "ToolBarItem", - "text": "新增", - "appearance": { - "class": "btn-primary" - }, - "disable": "!viewModel.stateMachine['canAdd']", - "visible": true, - "click": "Add1", - "visibleControlledByRules": true, - "disableControlledByRules": true, - "items": [], - "usageMode": "button", - "modalConfig": null - }, - { - "id": "button-edit", - "type": "ToolBarItem", - "text": "编辑", - "appearance": null, - "disable": "!viewModel.stateMachine['canEdit']", - "visible": true, - "click": "Edit1", - "visibleControlledByRules": true, - "disableControlledByRules": true, - "items": [], - "usageMode": "button", - "modalConfig": null - }, - { - "id": "button-save", - "type": "ToolBarItem", - "text": "保存", - "appearance": null, - "disable": "!viewModel.stateMachine['canSave']", - "visible": true, - "click": "Save1", - "visibleControlledByRules": true, - "disableControlledByRules": true, - "items": [], - "usageMode": "button", - "modalConfig": null - }, - { - "id": "button-cancel", - "type": "ToolBarItem", - "text": "取消", - "appearance": null, - "disable": "!viewModel.stateMachine['canCancel']", - "visible": true, - "click": "Cancel1", - "visibleControlledByRules": false, - "disableControlledByRules": false, - "items": [], - "usageMode": "button", - "modalConfig": null - }, - { - "id": "button-approve", - "type": "ToolBarItem", - "appearance": null, - "disable": "!viewModel.stateMachine['canApprove']", - "text": "提交审批", - "visible": true, - "click": "submitWithBizDefKey1", - "visibleControlledByRules": true, - "disableControlledByRules": true, - "items": [], - "usageMode": "button", - "modalConfig": null - }, - { - "id": "button-cancel-approve", - "type": "ToolBarItem", - "appearance": null, - "disable": "!viewModel.stateMachine['canCancelApprove']", - "text": "取消提交审批", - "visible": true, - "click": "cancelSubmitWithDataId1", - "visibleControlledByRules": true, - "disableControlledByRules": true, - "items": [], - "usageMode": "button", - "modalConfig": null - } - ], - "visible": true, - "buttonSize": "default", - "popDirection": "default" - } - ], - "visible": true, - "isScrollspyContainer": false, - "isLikeCardContainer": false - } - ], - "visible": true, - "isScrollspyContainer": false, - "isLikeCardContainer": false - }, - { - "id": "main-container", - "type": "ContentContainer", - "appearance": { - "class": "f-page-main" - }, - "size": null, - "contents": [ - { - "id": "like-card-container", - "type": "ContentContainer", - "appearance": { - "class": "f-struct-like-card" - }, - "size": null, - "contents": [ - { - "id": "basic-form-component-ref", - "type": "ComponentRef", - "component": "basic-form-component", - "visible": true - }, - { - "id": "container_8036", - "type": "ContentContainer", - "appearance": { - "class": "f-struct-wrapper" - }, - "visible": true, - "contents": [ - { - "id": "section_8036", - "type": "Section", - "appearance": { - "class": "f-section-in-mainsubcard" - }, - "visible": true, - "mainTitle": "运行时明细1", - "subTitle": "", - "headerClass": "", - "titleClass": "", - "extendedHeaderAreaClass": "", - "toolbarClass": "", - "extendedAreaClass": "", - "contentTemplateClass": "", - "fill": false, - "expanded": true, - "enableMaximize": false, - "enableAccordion": false, - "accordionMode": "default", - "showHeader": true, - "headerTemplate": "", - "titleTemplate": "", - "extendedHeaderAreaTemplate": "", - "toolbarTemplate": "", - "extendedAreaTemplate": "", - "contents": [ - { - "id": "runtimeitem1-vgy0-component-ref", - "type": "ComponentRef", - "component": "runtimeitem1-vgy0-component", - "visible": true - } - ], - "isScrollSpyItem": false, - "toolbar": { - "type": "SectionToolbar", - "position": "inHead", - "contents": [ - { - "id": "runtimeitem1-vgy0-component-button-add", - "type": "SectionToolbarItem", - "title": "新增", - "disable": "!viewModel.stateMachine['canAddDetail']", - "appearance": { - "class": "btn btn-secondary f-btn-ml" - }, - "visible": true, - "click": "root-viewModel.runtimeitem1-vgy0-component-viewmodel.runtimeitem1vgy0AddItem1", - "items": [], - "split": false, - "visibleControlledByRules": true, - "disableControlledByRules": true - }, - { - "id": "runtimeitem1-vgy0-component-button-remove", - "type": "SectionToolbarItem", - "title": "删除", - "disable": "!viewModel.stateMachine['canRemoveDetail']", - "appearance": { - "class": "btn btn-secondary f-btn-ml" - }, - "visible": true, - "click": "root-viewModel.runtimeitem1-vgy0-component-viewmodel.runtimeitem1vgy0RemoveItem1", - "items": [], - "split": false, - "visibleControlledByRules": true, - "disableControlledByRules": true - } - ] - } - } - ], - "isScrollspyContainer": false, - "isLikeCardContainer": false - }, - { - "id": "childattachment1-egs8-component-ref", - "type": "ComponentRef", - "component": "childattachment1-egs8-component", - "visible": true - } - ], - "visible": true, - "draggable": false, - "isLikeCardContainer": true, - "isScrollspyContainer": false - } - ], - "visible": true, - "isScrollspyContainer": false, - "isLikeCardContainer": false - } - ], - "visible": true, - "isScrollspyContainer": false, - "isLikeCardContainer": false - } - ], - "appearance": null, - "visible": true, - "afterViewInit": null - }, - { - "id": "basic-form-component", - "type": "Component", - "viewModel": "basic-form-viewmodel", - "componentType": "form-col-4", - "appearance": { - "class": "f-struct-wrapper" - }, - "onInit": "", - "contents": [ - { - "id": "basic-form-section", - "type": "Section", - "appearance": { - "class": "f-section-form f-section-in-mainsubcard" - }, - "visible": true, - "mainTitle": "基本信息", - "subTitle": "", - "headerClass": "", - "titleClass": "", - "extendedHeaderAreaClass": "", - "toolbarClass": "", - "extendedAreaClass": "", - "contentTemplateClass": "", - "fill": false, - "expanded": true, - "enableMaximize": false, - "enableAccordion": true, - "accordionMode": "default", - "showHeader": true, - "headerTemplate": "", - "titleTemplate": "", - "extendedHeaderAreaTemplate": "", - "toolbarTemplate": "", - "extendedAreaTemplate": "", - "contents": [ - { - "id": "basic-form-layout", - "type": "Form", - "appearance": { - "class": "f-form-layout farris-form farris-form-controls-inline" - }, - "size": null, - "contents": [ - { - "id": "id_668b9bfb_9kgu", - "type": "TextBox", - "titleSourceType": "static", - "title": "主键", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "id", - "field": "668b9bfb-9c29-46b7-862d-b391bb7602e2", - "fullPath": "ID" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": true, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "id", - "visibleControlledByRules": true, - "readonlyControlledByRules": false, - "requireControlledByRules": false, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500 - }, - { - "id": "version_30ba0d3e_s8rx", - "type": "DateBox", - "titleSourceType": "static", - "title": "版本", - "controlSource": "Farris", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "version", - "field": "30ba0d3e-e2d0-402f-a569-646b3b191297", - "fullPath": "Version" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "placeHolder": "", - "validation": null, - "value": null, - "editable": true, - "dateRange": false, - "showTime": true, - "showType": 1, - "dateFormat": "yyyy-MM-dd HH:mm:ss", - "returnFormat": "yyyy-MM-dd HH:mm:ss", - "maxValue": null, - "minValue": null, - "disableDates": [], - "showWeekNumbers": false, - "dateRangeDatesDelimiter": "~", - "shortcuts": [], - "fieldType": "DateTime", - "useDefault": false, - "holdPlace": false, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "isTextArea": true, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "localization": false, - "path": "version", - "localizationType": "DateTime", - "visibleControlledByRules": true, - "readonlyControlledByRules": false, - "requireControlledByRules": false, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "autoHeight": false, - "maxHeight": 500, - "hourStep": 1, - "minuteStep": 1, - "secondStep": 1, - "firstDayOfWeek": "mo" - }, - { - "id": "billStatus_BillState_a54c2230_pl5h", - "type": "EnumField", - "titleSourceType": "static", - "title": "状态1", - "controlSource": "Farris", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "billStatus_BillState", - "field": "a54c2230-0101-468f-ae3f-40c76c0f06b0", - "fullPath": "BillStatus.BillState" - }, - "placeHolder": "", - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "enumData": [ - { - "disabled": false, - "name": "制单", - "value": "Billing" - }, - { - "disabled": false, - "name": "提交审批", - "value": "SubmitApproval" - }, - { - "disabled": false, - "name": "审批通过", - "value": "Approved" - }, - { - "disabled": false, - "name": "审批不通过", - "value": "ApprovalNotPassed" - } - ], - "holdPlace": false, - "isTextArea": true, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "idField": "value", - "textField": "name", - "multiSelect": false, - "uri": "", - "autoWidth": true, - "enableClear": false, - "onClear": null, - "valueChanged": null, - "onShown": null, - "onHidden": null, - "editable": false, - "enableCancelSelected": false, - "beforeShow": null, - "beforeHide": null, - "dataSourceType": "static", - "path": "billStatus.billState", - "visibleControlledByRules": true, - "readonlyControlledByRules": false, - "requireControlledByRules": false, - "viewType": "text", - "noSearch": false, - "maxSearchLength": null, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "autoHeight": false, - "maxHeight": 500, - "showDisabledItem": true, - "labelAutoOverflow": false, - "updateOn": "change" - }, - { - "id": "processInstance_ProcessInstance_4c02d802_v27r", - "type": "TextBox", - "titleSourceType": "static", - "title": "流程实例", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "processInstance_ProcessInstance", - "field": "4c02d802-ad8f-4da3-a430-c8a7f2162135", - "fullPath": "ProcessInstance.ProcessInstance" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "processInstance.processInstance", - "visibleControlledByRules": true, - "readonlyControlledByRules": false, - "requireControlledByRules": false, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500 - }, - { - "id": "code_b86fa068_y9fz", - "type": "LookupEdit", - "titleSourceType": "static", - "title": "编号", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "code", - "field": "b86fa068-5985-419e-86f0-dbe862719192", - "fullPath": "code" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "placeHolder": "", - "dataSource": { - "uri": "RuntimeTestBe.code", - "displayName": "用户组织帮助", - "idField": "id", - "type": "ViewObject", - "helpCode": "UserOrgTest" - }, - "textField": "name", - "valueField": "id", - "displayType": "NavTreeList", - "multiSelect": false, - "pageList": "10,20,30,50", - "pageSize": 20, - "pageIndex": null, - "pagination": null, - "dialogTitle": "", - "showMaxButton": null, - "showCloseButton": null, - "resizable": null, - "buttonAlign": null, - "mapFields": "", - "lookupStyle": "popup", - "holdPlace": false, - "isTextArea": true, - "useTip": false, - "useFavorite": true, - "noSearch": false, - "maxSearchLength": 36, - "enableToSelect": true, - "isRecordSize": false, - "lookupPicking": null, - "lookupPicked": null, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "enableExtendLoadMethod": true, - "editable": false, - "enableFullTree": false, - "enableClear": true, - "clear": null, - "loadTreeDataType": "default", - "expandLevel": -1, - "enableCascade": false, - "cascadeStatus": "enable", - "onShown": null, - "onHidden": null, - "beforeShow": null, - "beforeHide": null, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "textAlign": "left", - "useExtendInfo": false, - "extInfoFields": null, - "extInfoFormatter": null, - "customFormatter": null, - "customNavFormatter": null, - "selectFirstInNav": false, - "loadDataWhenOpen": true, - "onlySelectLeaf": "default", - "viewType": "text", - "autoHeight": false, - "maxHeight": 500, - "autoWidth": true, - "showHeader": true, - "beforeSelectData": null, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "enableContextMenu": false, - "quickSelect": { - "enable": false, - "showItemsCount": 10, - "formatter": null, - "showMore": true - }, - "treeToList": false, - "navTreeToList": false, - "showNavigation": true, - "showCascadeControl": true, - "linkConfig": { - "enable": false, - "config": [] - }, - "showSelected": false, - "useNewLayout": false, - "enableMultiFieldSearch": false, - "separator": ",", - "path": "code", - "visibleControlledByRules": true, - "readonlyControlledByRules": true, - "requireControlledByRules": true, - "isRTControl": false, - "labelAutoOverflow": false, - "updateOn": "blur", - "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799" - }, - { - "id": "name_61595c14_rx8x", - "type": "TextBox", - "titleSourceType": "static", - "title": "名称", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "name", - "field": "61595c14-d06a-4f6c-977e-152aeb5f7b46", - "fullPath": "name" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "name", - "visibleControlledByRules": true, - "readonlyControlledByRules": true, - "requireControlledByRules": true, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "labelAutoOverflow": false, - "updateOn": "blur" - }, - { - "id": "enumField_e77f1a5c_to85", - "type": "EnumField", - "titleSourceType": "static", - "title": "枚举字段", - "controlSource": "Farris", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "enumField", - "field": "e77f1a5c-3e36-4551-a157-e4903cff80fd", - "fullPath": "enumField" - }, - "placeHolder": "", - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "enumData": [ - { - "disabled": false, - "name": "值1", - "value": "value1" - }, - { - "disabled": false, - "name": "值2", - "value": "value2" - } - ], - "idField": "value", - "textField": "name", - "holdPlace": false, - "isTextArea": true, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "multiSelect": false, - "uri": "", - "autoWidth": true, - "enableClear": false, - "onClear": null, - "valueChanged": null, - "onShown": null, - "onHidden": null, - "editable": false, - "enableCancelSelected": false, - "beforeShow": null, - "beforeHide": null, - "dataSourceType": "static", - "viewType": "text", - "noSearch": false, - "maxSearchLength": null, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "autoHeight": false, - "maxHeight": 500, - "showDisabledItem": true, - "path": "enumField", - "visibleControlledByRules": true, - "readonlyControlledByRules": true, - "requireControlledByRules": true, - "labelAutoOverflow": false, - "updateOn": "change", - "fieldValueChanging": "", - "fieldValueChanged": "" - }, - { - "id": "numberField1_a53ae211_gle2", - "type": "NumericBox", - "titleSourceType": "static", - "title": "数值1", - "controlSource": "Farris", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "numberField1", - "field": "a53ae211-98d0-4606-a68b-fd5401c5dba5", - "fullPath": "numberField1" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "placeHolder": "", - "textAlign": "left", - "precisionSourceType": "static", - "precision": 0, - "validation": null, - "maxValue": 10, - "minValue": null, - "step": 1, - "useThousands": true, - "formatter": null, - "parser": null, - "canNull": true, - "bigNumber": false, - "maxLength": 0, - "holdPlace": false, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "isTextArea": true, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "showZero": true, - "showButton": true, - "path": "numberField1", - "visibleControlledByRules": true, - "readonlyControlledByRules": true, - "requireControlledByRules": true, - "localization": false, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "autoHeight": false, - "maxHeight": 500, - "labelAutoOverflow": false, - "updateOn": "blur" - }, - { - "id": "floatField_173f0950_91tt", - "type": "NumericBox", - "titleSourceType": "static", - "title": "浮点", - "controlSource": "Farris", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "size": null, - "binding": { - "type": "Form", - "path": "floatField", - "field": "173f0950-1ac6-4452-a92c-76e0189c56d7", - "fullPath": "floatField" - }, - "readonly": "!viewModel.stateMachine['editable']", - "require": false, - "disable": false, - "placeHolder": "", - "textAlign": "left", - "precisionSourceType": "static", - "precision": 2, - "validation": null, - "maxValue": null, - "minValue": null, - "step": 1, - "useThousands": true, - "formatter": null, - "parser": null, - "canNull": true, - "bigNumber": false, - "maxLength": 18, - "holdPlace": false, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "isTextArea": true, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "localization": false, - "showZero": true, - "showButton": true, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "autoHeight": false, - "maxHeight": 500, - "path": "floatField", - "visibleControlledByRules": true, - "readonlyControlledByRules": true, - "requireControlledByRules": true, - "labelAutoOverflow": false, - "updateOn": "blur" - } - ], - "controlsInline": true, - "formAutoIntl": true, - "visible": true, - "labelAutoOverflow": false - } - ], - "isScrollSpyItem": false, - "toolbar": { - "type": "SectionToolbar", - "position": "inHead", - "contents": [] - } - } - ], - "visible": true, - "afterViewInit": null - }, - { - "id": "childattachment1-egs8-component", - "type": "Component", - "viewModel": "childattachment1-egs8-component-viewmodel", - "componentType": "attachmentPanel", - "appearance": { - "class": "f-struct-wrapper" - }, - "visible": true, - "onInit": null, - "afterViewInit": null, - "contents": [ - { - "id": "childattachment1-egs8-section", - "type": "Section", - "appearance": { - "class": "f-section-form f-section-in-mainsubcard" - }, - "visible": true, - "mainTitle": "子表附件1", - "subTitle": "", - "headerClass": "", - "titleClass": "", - "extendedHeaderAreaClass": "", - "toolbarClass": "", - "extendedAreaClass": "", - "contentTemplateClass": "", - "fill": false, - "expanded": true, - "enableMaximize": false, - "enableAccordion": true, - "accordionMode": "default", - "showHeader": true, - "headerTemplate": "", - "titleTemplate": "", - "extendedHeaderAreaTemplate": "", - "toolbarTemplate": "", - "extendedAreaTemplate": "", - "contents": [ - { - "id": "childattachment1-egs8-file", - "type": "FileUploadPreview", - "appearance": { - "class": "d-block mx-3" - }, - "uploadSelectText": "上传附件", - "uploadEnableMulti": true, - "uploadVisible": "viewModel.stateMachine && viewModel.stateMachine['editable']", - "uploadDisabled": "viewModel.stateMachine && !viewModel.stateMachine['editable']", - "uploadOptions": { - "maxUploads": 3, - "maxFileSize": 12, - "allowedContentTypes": [ - ".pdf", - ".jpg", - ".png", - ".doc", - ".docx", - ".xls", - ".xlsx", - ".ppt", - ".pptx", - ".txt", - ".DOC", - ".DOCX", - ".XLS", - ".XLSX", - ".PPT", - ".PPTX", - ".wps", - ".et" - ], - "notAllowedCharsInFileName": null - }, - "rootId": "default-root", - "formId": "viewModel.bindingData && viewModel.bindingData['id']", - "enableUploadedCount": true, - "previewVisible": true, - "previewReadonly": "viewModel.stateMachine && !viewModel.stateMachine['editable']", - "previewEnableMulti": true, - "previewEnableRename": true, - "previewDefaultRename": "", - "previewShowType": "list", - "fieldIdKey": { - "type": "Form", - "path": "attachment_AttachmentId", - "field": "24040962-4fd6-49ff-a18a-f466a068f905", - "fullPath": "attachment.AttachmentId", - "bindingPath": "attachment.attachmentId" - }, - "fileNameKey": { - "type": "Form", - "path": "attachment_FileName", - "field": "24040962-1497-4526-86f9-290aab400e0b", - "fullPath": "attachment.FileName", - "bindingPath": "attachment.fileName" - }, - "fUploadDoneEvent": "childattachment1egs8AddFileRows", - "fUploadRemovedEvent": null, - "enableOrder": false, - "fileSortOrderKey": { - "type": "Form", - "path": "attachment_FileCreateTime", - "field": "24040962-a1f5-4f6c-9c82-ddb10864c652", - "fullPath": "attachment.FileCreateTime", - "bindingPath": "attachment.fileCreateTime" - }, - "fileRemoveEvent": "childattachment1egs8RemoveFileRows", - "contentFill": false, - "visible": true, - "showFileList": true, - "showHeader": true, - "disabled": false, - "noDownload": false, - "noPreview": false, - "previewEnableEditFile": false, - "previewEditFileDocMode": "normal", - "previewShowComments": false, - "previewDateFormat": "yyyy-MM-dd", - "enablePreviewColumns": false, - "enableSliceUpload": false, - "enablePreviewFileList": false, - "chunkSize": 1, - "orderType": "desc", - "noDelete": "default", - "previewModeless": false, - "attachmentFieldId": "attachment", - "allowEmpty": true - } - ], - "isScrollSpyItem": false, - "toolbar": { - "type": "SectionToolbar", - "position": "inHead", - "contents": [] - } - } - ] - }, - { - "id": "runtimeitem1-vgy0-component", - "type": "Component", - "viewModel": "runtimeitem1-vgy0-component-viewmodel", - "componentType": "dataGrid", - "appearance": { - "class": "f-struct-is-subgrid" - }, - "visible": true, - "onInit": null, - "afterViewInit": null, - "contents": [ - { - "id": "runtimeitem1-vgy0-component-layout", - "type": "ContentContainer", - "appearance": { - "class": "f-grid-is-sub f-utils-flex-column" - }, - "visible": true, - "contents": [ - { - "id": "runtimeitem1-vgy0-dataGrid", - "type": "DataGrid", - "controlSource": "Farris", - "appearance": { - "class": "f-component-grid f-utils-fill" - }, - "disable": false, - "dataSource": "runtimeItem1s", - "fields": [ - { - "id": "id_3df94820_clzf", - "type": "GridField", - "controlSource": "Farris", - "caption": "主键", - "binding": { - "type": "Form", - "path": "id", - "field": "3df94820-efa6-48a6-8d47-112ac47e3302", - "fullPath": "ID" - }, - "appearance": null, - "size": { - "width": 120 - }, - "readonly": false, - "dataField": "id", - "dataType": "string", - "displayTemplate": null, - "captionTemplate": null, - "editor": { - "id": "id_3df94820_67wq", - "type": "TextBox", - "titleSourceType": "static", - "title": "主键", - "appearance": { - "class": "" - }, - "size": null, - "binding": { - "type": "Form", - "path": "id", - "field": "3df94820-efa6-48a6-8d47-112ac47e3302", - "fullPath": "ID" - }, - "require": true, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "id", - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "requireControlledByRules": false, - "updateOn": "blur" - }, - "draggable": false, - "frozen": "none", - "sortable": true, - "enumData": null, - "idField": "value", - "textField": "name", - "aggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "groupAggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "textAlign": "left", - "hAlign": "left", - "vAlign": "middle", - "formatter": { - "type": "none" - }, - "showTips": false, - "tipContent": null, - "multiLanguage": false, - "visible": true, - "enableFilter": false, - "headerStyler": "", - "styler": "", - "localization": false, - "allowGrouping": true, - "tipMode": "auto", - "captionTipContent": "", - "captionTipStyler": "", - "enableBatchEdit": false, - "localizationType": "Date", - "visibleControlledByRules": false, - "readonlyControlledByRules": false - }, - { - "id": "parentID_ee23f329_uzdm", - "type": "GridField", - "controlSource": "Farris", - "caption": "上级对象主键", - "binding": { - "type": "Form", - "path": "parentID", - "field": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "fullPath": "ParentID" - }, - "appearance": null, - "size": { - "width": 120 - }, - "readonly": false, - "dataField": "parentID", - "dataType": "string", - "displayTemplate": null, - "captionTemplate": null, - "editor": { - "id": "parentID_ee23f329_p92l", - "type": "TextBox", - "titleSourceType": "static", - "title": "上级对象主键", - "appearance": { - "class": "" - }, - "size": null, - "binding": { - "type": "Form", - "path": "parentID", - "field": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "fullPath": "ParentID" - }, - "require": true, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "parentID", - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "requireControlledByRules": false - }, - "draggable": false, - "frozen": "none", - "sortable": true, - "enumData": null, - "idField": "value", - "textField": "name", - "aggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "groupAggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "textAlign": "left", - "hAlign": "left", - "vAlign": "middle", - "formatter": { - "type": "none" - }, - "showTips": false, - "tipContent": null, - "multiLanguage": false, - "visible": true, - "enableFilter": false, - "headerStyler": "", - "styler": "", - "localization": false, - "allowGrouping": true, - "tipMode": "auto", - "captionTipContent": "", - "captionTipStyler": "", - "enableBatchEdit": false, - "localizationType": "Date", - "visibleControlledByRules": false, - "readonlyControlledByRules": false - }, - { - "id": "code_c864358f_pvwg", - "type": "GridField", - "controlSource": "Farris", - "caption": "编号", - "binding": { - "type": "Form", - "path": "code", - "field": "c864358f-cb3c-4b2b-960e-423754e28ea8", - "fullPath": "code" - }, - "appearance": null, - "size": { - "width": 120 - }, - "readonly": false, - "dataField": "code", - "dataType": "string", - "displayTemplate": null, - "captionTemplate": null, - "editor": { - "id": "code_c864358f_btp2", - "type": "TextBox", - "titleSourceType": "static", - "title": "编号", - "appearance": { - "class": "" - }, - "size": null, - "binding": { - "type": "Form", - "path": "code", - "field": "c864358f-cb3c-4b2b-960e-423754e28ea8", - "fullPath": "code" - }, - "require": true, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "code", - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "requireControlledByRules": true, - "updateOn": "blur" - }, - "draggable": false, - "frozen": "none", - "sortable": true, - "enumData": null, - "idField": "value", - "textField": "name", - "aggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "groupAggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "textAlign": "left", - "hAlign": "left", - "vAlign": "middle", - "formatter": { - "type": "none" - }, - "showTips": false, - "tipContent": null, - "multiLanguage": false, - "visible": true, - "enableFilter": false, - "headerStyler": "", - "styler": "", - "localization": false, - "allowGrouping": true, - "tipMode": "auto", - "captionTipContent": "", - "captionTipStyler": "", - "enableBatchEdit": false, - "localizationType": "Date", - "visibleControlledByRules": true, - "readonlyControlledByRules": true - }, - { - "id": "name_a6c40426_ywb9", - "type": "GridField", - "controlSource": "Farris", - "caption": "名称", - "binding": { - "type": "Form", - "path": "name", - "field": "a6c40426-7529-45e3-8c53-4ae973f28c09", - "fullPath": "name" - }, - "appearance": null, - "size": { - "width": 120 - }, - "readonly": false, - "dataField": "name", - "dataType": "string", - "displayTemplate": null, - "captionTemplate": null, - "editor": { - "id": "name_a6c40426_fds8", - "type": "TextBox", - "titleSourceType": "static", - "title": "名称", - "appearance": { - "class": "" - }, - "size": null, - "binding": { - "type": "Form", - "path": "name", - "field": "a6c40426-7529-45e3-8c53-4ae973f28c09", - "fullPath": "name" - }, - "require": false, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableTips": true, - "path": "name", - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "requireControlledByRules": true - }, - "draggable": false, - "frozen": "none", - "sortable": true, - "enumData": null, - "idField": "value", - "textField": "name", - "aggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "groupAggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "textAlign": "left", - "hAlign": "left", - "vAlign": "middle", - "formatter": { - "type": "none" - }, - "showTips": false, - "tipContent": null, - "multiLanguage": false, - "visible": true, - "enableFilter": false, - "headerStyler": "", - "styler": "", - "localization": false, - "allowGrouping": true, - "tipMode": "auto", - "captionTipContent": "", - "captionTipStyler": "", - "enableBatchEdit": false, - "localizationType": "Date", - "visibleControlledByRules": true, - "readonlyControlledByRules": true - }, - { - "id": "booleanField_e4f457e3_2q97", - "type": "GridField", - "controlSource": "Farris", - "caption": "布尔", - "binding": { - "type": "Form", - "path": "booleanField", - "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "fullPath": "booleanField" - }, - "appearance": null, - "size": { - "width": 120 - }, - "readonly": false, - "dataField": "booleanField", - "dataType": "boolean", - "displayTemplate": null, - "captionTemplate": null, - "editor": { - "id": "booleanField_e4f457e3_nzmm", - "type": "CheckBox", - "titleSourceType": "static", - "title": "布尔", - "require": false, - "disable": false, - "binding": { - "type": "Form", - "path": "booleanField", - "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "fullPath": "booleanField" - }, - "visible": true, - "appearance": { - "class": "" - }, - "size": null, - "holdPlace": false, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "path": "booleanField", - "requireControlledByRules": true, - "isRTControl": false, - "updateOn": "change" - }, - "draggable": false, - "frozen": "none", - "sortable": true, - "enumData": null, - "idField": "value", - "textField": "name", - "aggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "groupAggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "textAlign": "left", - "hAlign": "left", - "vAlign": "middle", - "formatter": { - "type": "boolean", - "trueText": "是", - "falseText": "否" - }, - "showTips": false, - "tipContent": null, - "multiLanguage": false, - "visible": true, - "enableFilter": false, - "headerStyler": "", - "styler": "", - "localization": false, - "allowGrouping": true, - "tipMode": "auto", - "captionTipContent": "", - "captionTipStyler": "", - "enableBatchEdit": true, - "visibleControlledByRules": true, - "readonlyControlledByRules": true - } - ], - "focusedItem": null, - "focusedIndex": null, - "pagination": false, - "lockPagination": "viewModel.stateMachine&&viewModel.stateMachine['editable']", - "showPageSize": false, - "identifyField": null, - "multiSelect": false, - "showCheckbox": false, - "selectable": null, - "itemTemplate": null, - "toolBar": null, - "summary": null, - "showAllCheckbox": false, - "fieldEditable": true, - "editable": null, - "groupable": false, - "group": null, - "showGroupColumn": true, - "groupFormatter": null, - "groupStyler": null, - "groupFooter": false, - "fitColumns": false, - "onSelectionChange": "", - "styler": "", - "fixedColumns": [], - "enableCommandColumn": false, - "onEditClicked": "", - "onDeleteClicked": "", - "commandColumnWidth": 120, - "showCommandColumn": true, - "checkedChange": null, - "disableRow": null, - "beforeSelect": null, - "beforeUnSelect": null, - "beforeCheck": null, - "beforeUnCheck": null, - "multiSort": false, - "autoFitColumns": false, - "showFooter": false, - "footerTemplate": "", - "footerDataFrom": "client", - "footerDataCommand": null, - "footerHeight": 29, - "filterType": "none", - "enableFilterRow": false, - "enableSmartFilter": false, - "remoteFilter": false, - "showFilterBar": false, - "showBorder": false, - "striped": true, - "showLineNumber": false, - "lineNumberTitle": "", - "appendRow": null, - "pageChange": null, - "dblClickRow": null, - "useControlPanel": false, - "autoHeight": false, - "rowClick": null, - "showSelectedList": false, - "selectedItemFormatter": null, - "lineNumberWidth": 36, - "enableMorePageSelect": false, - "headerWrap": false, - "emptyTemplate": null, - "emptyDataHeight": 240, - "maxHeight": 300, - "rowHeight": 30, - "enableHighlightCell": false, - "enableEditCellStyle": false, - "showRowGroupPanel": false, - "enableDragColumn": false, - "groupSummaryPosition": "groupFooterRow", - "clearSelectionsWhenDataIsEmpty": true, - "keepSelect": true, - "enableEditByCard": "none", - "pageSizeChanged": null, - "visible": true, - "showGotoInput": false, - "scrollBarShowMode": "auto", - "showScrollArrow": false, - "footerPosition": "bottom", - "footerStyler": null, - "selectOnEditing": true, - "selectionMode": "custom", - "enableContextMenu": false, - "disableGroupOnEditing": true, - "enableSimpleMode": false, - "enableScheme": false, - "beforeEdit": null, - "nowrap": true, - "mergeCell": false, - "remoteSort": false, - "columnSorted": null, - "checkOnSelect": false, - "selectOnCheck": false, - "enableHeaderGroup": false, - "headerGroup": null, - "AutoColumnWidthUseDblclick": true, - "virtualized": false, - "virtualizedAsyncLoad": false, - "scrollYLoad": null, - "pagerContentTemplate": null, - "expandGroupRows": true, - "useBlankWhenDataIsEmpty": false, - "checked": null, - "unChecked": null, - "checkAll": null, - "unCheckAll": null, - "filterChanged": null, - "enableEditStateFilterSorting": false, - "showConfirmWhenSchemeChanged": false, - "enableSetMultiHeaders": false, - "allowEmpty": true - } - ], - "isScrollspyContainer": false, - "isLikeCardContainer": false - } - ] - } - ], - "webcmds": [ - { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "path": "/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd", - "name": "CardController.webcmd", - "refedHandlers": [ - { - "host": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "handler": "Load" - }, - { - "host": "246a275c-88c9-4c8a-aa82-be6a950a4325", - "handler": "LoadAndAdd" - }, - { - "host": "70acc053-fa15-45be-851c-cf694e1bcaf7", - "handler": "LoadAndView" - }, - { - "host": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", - "handler": "LoadAndEdit" - }, - { - "host": "f90aadfa-988c-4da5-a5db-1416c3333794", - "handler": "Add" - }, - { - "host": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "handler": "Edit" - }, - { - "host": "31b814db-01e4-407d-8fad-0f08dbb01999", - "handler": "Save" - }, - { - "host": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "handler": "Cancel" - }, - { - "host": "c8504c24-33e8-487a-91ce-2218b803fe01", - "handler": "ChangeItem" - }, - { - "host": "4a0cfb1a-1262-41a2-aeb9-c8edd5c09683", - "handler": "ChangeItem" - }, - { - "host": "3a2f8aee-605b-4789-a971-43ba31c60b61", - "handler": "AddItem" - }, - { - "host": "5a844e51-0196-44e6-ac4c-e9c4d235a894", - "handler": "RemoveItem" - } - ], - "code": "CardController", - "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" - }, - { - "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "path": null, - "name": "ApproveController.webcmd", - "refedHandlers": [ - { - "host": "0d34f338-b601-4716-8530-493b0752483b", - "handler": "submitWithBizDefKey" - }, - { - "host": "e492063e-a22d-4f23-8aed-7fe139843220", - "handler": "cancelSubmitWithDataId" - } - ], - "code": "ApproveController", - "nameSpace": "Inspur.GS.Gsp.Web.WebApprove" - }, - { - "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "path": "Gsp/Web/AttachmentCmp/bo-attachmentcmp/metadata/webcmd", - "name": "FileController.webcmd", - "refedHandlers": [ - { - "host": "childattachment1egs8AddFileRows-id", - "handler": "addFileRows" - }, - { - "host": "childattachment1egs8RemoveFileRows-id", - "handler": "removeFileRows" - } - ], - "code": "FileController", - "nameSpace": "Inspur.GS.Gsp.Web.AttachmentCmp" - } - ], - "serviceRefs": [], - "projectName": "bo-runtimetest-front", - "showType": "page", - "toolbar": { - "items": {}, - "configs": {} - }, - "declarations": { - "events": [], - "commands": [], - "states": [] - }, - "subscriptions": [], - "extraImports": [], - "expressions": [], - "metadataId": "94540a61-e3c0-4220-ba13-e5a8dc52e79e", - "actions": [ - { - "sourceComponent": { - "id": "button-add", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "f90aadfa-988c-4da5-a5db-1416c3333794", - "label": "Add1", - "name": "新增一条数据", - "handlerName": "Add", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-edit", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "label": "Edit1", - "name": "编辑当前数据", - "handlerName": "Edit", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-save", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "31b814db-01e4-407d-8fad-0f08dbb01999", - "label": "Save1", - "name": "保存变更", - "handlerName": "Save", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "successMsg", - "shownName": "保存成功提示信息", - "value": "", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-cancel", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "label": "Cancel1", - "name": "取消变更", - "handlerName": "Cancel", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-approve", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "0d34f338-b601-4716-8530-493b0752483b", - "label": "submitWithBizDefKey1", - "name": "提交审批", - "handlerName": "submitWithBizDefKey", - "params": [ - { - "name": "dataId", - "shownName": "表单数据id", - "value": "{DATA~/#{basic-form-component}/id}", - "defaultValue": null - }, - { - "name": "bizDefKey", - "shownName": "流程分类id", - "value": "", - "defaultValue": null - }, - { - "name": "action", - "shownName": "迁移动作(可选)", - "value": "", - "defaultValue": null - } - ], - "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "label": "ApproveController", - "name": "审批控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-cancel-approve", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "e492063e-a22d-4f23-8aed-7fe139843220", - "label": "cancelSubmitWithDataId1", - "name": "取消提交", - "handlerName": "cancelSubmitWithDataId", - "params": [ - { - "name": "dataId", - "shownName": "表单数据id", - "value": "{DATA~/#{basic-form-component}/id}", - "defaultValue": null - }, - { - "name": "bizDefKey", - "shownName": "流程分类id", - "value": "", - "defaultValue": null - }, - { - "name": "action", - "shownName": "迁移动作(可选)", - "value": "", - "defaultValue": null - } - ], - "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", - "label": "ApproveController", - "name": "审批控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "runtimeitem1-vgy0-component-button-add", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "runtimeitem1-vgy0-component", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel" - }, - "command": { - "id": "3a2f8aee-605b-4789-a971-43ba31c60b61", - "label": "runtimeitem1vgy0AddItem1", - "name": "增加一条子表数据1", - "handlerName": "AddItem", - "params": [], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "runtimeitem1-vgy0-component-button-remove", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel", - "map": [ - { - "event": { - "label": "click", - "name": "点击事件" - }, - "targetComponent": { - "id": "runtimeitem1-vgy0-component", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel" - }, - "command": { - "id": "5a844e51-0196-44e6-ac4c-e9c4d235a894", - "label": "runtimeitem1vgy0RemoveItem1", - "name": "删除一条子表数据1", - "handlerName": "RemoveItem", - "params": [ - { - "name": "id", - "shownName": "待删除子表数据的标识", - "value": "{DATA~/#{runtimeitem1-vgy0-component}/runtimeItem1s/id}" - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onInit", - "name": "初始化事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "label": "Load1", - "name": "执行加载页面后初始方法", - "handlerName": "Load", - "params": [ - { - "name": "action", - "shownName": "初始方法", - "value": "{UISTATE~/#{root-component}/action}", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "childattachment1-egs8-file", - "viewModelId": "childattachment1-egs8-component-viewmodel", - "map": [ - { - "event": { - "label": "fUploadDoneEvent", - "name": "附件上传后事件" - }, - "targetComponent": { - "id": "childattachment1-egs8-component", - "viewModelId": "childattachment1-egs8-component-viewmodel" - }, - "command": { - "id": "childattachment1egs8AddFileRows-id", - "label": "childattachment1egs8AddFileRows", - "name": "批量添加文件数据", - "handlerName": "addFileRows", - "params": [ - { - "name": "fileInfoFieldPath", - "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" - } - ], - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "label": "FileController", - "name": "文件控制器" - } - }, - { - "event": { - "label": "fileRemoveEvent", - "name": "附件预览删除事件" - }, - "targetComponent": { - "id": "childattachment1-egs8-component", - "viewModelId": "childattachment1-egs8-component-viewmodel" - }, - "command": { - "id": "childattachment1egs8RemoveFileRows-id", - "label": "childattachment1egs8RemoveFileRows", - "name": "批量删除文件数据", - "handlerName": "removeFileRows", - "params": [ - { - "name": "fileInfoFieldPath", - "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" - } - ], - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "label": "FileController", - "name": "文件控制器" - } - } - ] - } - } - ] - }, - "options": { - "enableTextArea": true, - "renderMode": "compile", - "enableDeleteSourceCode": true, - "changeSetPolicy": "valid", - "formRulePushMode": "pushToVO", - "combineFormMode": "strict", - "enableServerSideChangeDetection": true, - "mobileMetadataId": "726a19b1-263a-466e-a3e7-601f8b635410" - } -} \ No newline at end of file diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json deleted file mode 100644 index b2c6a9ab..00000000 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json +++ /dev/null @@ -1,2275 +0,0 @@ -{ - "module": { - "id": "58c44201-64df-436c-a57c-a36f94a2414b", - "code": "PCFormTest", - "name": "PC表单测试", - "type": "Module", - "creator": "lijiangkun", - "creationDate": "2025-04-12T07:59:57.479Z", - "templateId": "card-template", - "templateRule": "card-template", - "entity": [ - { - "eapiId": "bebb83f9-499d-4fda-8466-1b6a6f721353", - "eapiCode": "PCFormTest_frm", - "eapiName": "PC表单测试_frm", - "eapiNameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", - "voPath": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", - "voNameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", - "name": "PC表单测试_frm", - "id": "4801eb04-71d2-4420-813c-496ed48c65c0", - "sourceType": "vo", - "variables": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "表单流程配置", - "id": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "bffSysFormConfigId", - "originalId": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", - "label": "bffSysFormConfigId", - "bindingField": "bffSysFormConfigId", - "bindingPath": "bffSysFormConfigId", - "code": "bffSysFormConfigId" - } - ], - "entities": [ - { - "name": "Vue测试", - "id": "75e5f57b-3a02-4177-9846-1a5d0ba2c885", - "type": { - "$type": "EntityType", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": true, - "multiLanguage": false, - "readonly": false, - "name": "主键", - "id": "52fc4c0e-f155-4c01-9fe6-54fd08795ae0", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ID", - "originalId": "52fc4c0e-f155-4c01-9fe6-54fd08795ae0", - "label": "id", - "bindingField": "id", - "bindingPath": "id", - "code": "ID" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "版本", - "id": "10b522a5-9dd3-437e-bd29-bf57a58b3fb3", - "type": { - "$type": "DateTimeType", - "name": "DateTime", - "displayName": "日期时间" - }, - "path": "Version", - "originalId": "10b522a5-9dd3-437e-bd29-bf57a58b3fb3", - "label": "version", - "bindingField": "version", - "bindingPath": "version", - "code": "Version" - }, - { - "$type": "ComplexField", - "name": "状态", - "id": "e7c488df-8456-48d8-be1c-2cc6cc1cba8b", - "type": { - "$type": "ObjectType", - "name": "BillStateE7c4", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "EnumField" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "状态", - "id": "e7c488df-0101-468f-ae3f-40c76c0f06b0", - "type": { - "$type": "EnumType", - "name": "Enum", - "displayName": "枚举", - "valueType": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "enumValues": [ - { - "disabled": false, - "name": "制单", - "value": "Billing" - }, - { - "disabled": false, - "name": "提交审批", - "value": "SubmitApproval" - }, - { - "disabled": false, - "name": "审批通过", - "value": "Approved" - }, - { - "disabled": false, - "name": "审批不通过", - "value": "ApprovalNotPassed" - } - ] - }, - "path": "BillStatus.BillState", - "originalId": "a0b19650-0101-468f-ae3f-40c76c0f06b0", - "label": "billState", - "bindingField": "billStatus_BillState", - "bindingPath": "billStatus.billState", - "code": "BillState" - } - ], - "displayName": "状态" - }, - "path": "BillStatus", - "originalId": "e7c488df-8456-48d8-be1c-2cc6cc1cba8b", - "label": "billStatus", - "bindingField": "billStatus", - "bindingPath": "billStatus", - "code": "BillStatus" - }, - { - "$type": "ComplexField", - "name": "流程实例", - "id": "5d3fd927-71bc-4687-9be1-55d94033dd47", - "type": { - "$type": "ObjectType", - "name": "ProcessInstance5d3f", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "流程实例", - "id": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ProcessInstance.ProcessInstance", - "originalId": "2e1beb7d-ad8f-4da3-a430-c8a7f2162135", - "label": "processInstance", - "bindingField": "processInstance_ProcessInstance", - "bindingPath": "processInstance.processInstance", - "code": "ProcessInstance" - } - ], - "displayName": "流程实例" - }, - "path": "ProcessInstance", - "originalId": "5d3fd927-71bc-4687-9be1-55d94033dd47", - "label": "processInstance", - "bindingField": "processInstance", - "bindingPath": "processInstance", - "code": "ProcessInstance" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "编号", - "id": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "code", - "originalId": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "label": "code", - "bindingField": "code", - "bindingPath": "code", - "code": "code" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "名称", - "id": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "name", - "originalId": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "label": "name", - "bindingField": "name", - "bindingPath": "name", - "code": "name" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "CheckBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "布尔字段", - "id": "c419df06-d982-44ca-8e48-b366b778049a", - "type": { - "$type": "BooleanType", - "name": "Boolean", - "displayName": "布尔" - }, - "path": "booleanField", - "originalId": "c419df06-d982-44ca-8e48-b366b778049a", - "label": "booleanField", - "bindingField": "booleanField", - "bindingPath": "booleanField", - "code": "booleanField" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "NumericBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "数值字段", - "id": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "type": { - "$type": "NumericType", - "length": 0, - "name": "Number", - "displayName": "数字", - "precision": 0 - }, - "path": "numberField", - "originalId": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "label": "numberField", - "bindingField": "numberField", - "bindingPath": "numberField", - "code": "numberField" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "DateBox", - "format": "'yyyy-MM-dd'" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "日期字段", - "id": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "type": { - "$type": "DateType", - "name": "Date", - "displayName": "日期" - }, - "path": "dateField", - "originalId": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "label": "dateField", - "bindingField": "dateField", - "bindingPath": "dateField", - "code": "dateField" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", - "editor": { - "$type": "EnumField" - }, - "readonly": false, - "originalId": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "name": "eumu1", - "id": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "type": { - "$type": "EnumType", - "displayName": "枚举", - "name": "Enum", - "enumValues": [ - { - "disabled": false, - "name": "testname", - "value": "test1" - } - ], - "valueType": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - } - }, - "path": "eumu1", - "code": "eumu1", - "label": "eumu1", - "bindingField": "eumu1", - "bindingPath": "eumu1" - }, - { - "$type": "ComplexField", - "originalId": "9652a7a9-5e65-41a8-a3c0-6d0da6a7504e", - "name": "ass1", - "id": "9652a7a9-5e65-41a8-a3c0-6d0da6a7504e", - "type": { - "$type": "EntityType", - "fields": [ - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "readonly": false, - "originalId": "8760c74c-9141-46ea-a9fb-408db9a41e61", - "name": "ass1", - "id": "8760c74c-9141-46ea-a9fb-408db9a41e61", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "path": "ass1.ass1", - "code": "ass1", - "label": "ass1", - "bindingField": "ass1", - "bindingPath": "ass1.ass1" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "readonly": false, - "originalId": "3c45b0e6-2695-4085-a861-e451ad139e0e", - "name": "编号", - "id": "3c45b0e6-2695-4085-a861-e451ad139e0e", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "path": "ass1.ass1_Code", - "code": "Code", - "label": "ass1_Code", - "bindingField": "ass1_ass1_Code", - "bindingPath": "ass1.ass1_Code" - }, - { - "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "readonly": false, - "originalId": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "name": "名称", - "id": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "path": "ass1.ass1_Name", - "code": "Name", - "label": "ass1_Name", - "bindingField": "ass1_ass1_Name", - "bindingPath": "ass1.ass1_Name" - } - ], - "primary": "ass1", - "entities": [], - "displayName": "用户", - "name": "GspUser8760" - }, - "path": "ass1", - "code": "ass1", - "label": "ass1", - "bindingField": "ass1", - "bindingPath": "ass1" - }, - { - "$type": "ComplexField", - "originalId": "46b400d4-0f47-42f2-9f6e-df6a95c21235", - "name": "dy1", - "id": "46b400d4-0f47-42f2-9f6e-df6a95c21235", - "type": { - "$type": "DynamicObjectType", - "name": "DynamicEntity", - "displayName": null - }, - "path": "dy1", - "code": "dy1", - "label": "dy1", - "bindingField": "dy1", - "bindingPath": "dy1" - } - ], - "primary": "id", - "entities": [ - { - "name": "子表1", - "id": "9b108121-4e38-42d7-bd2c-9c7647dd8d77", - "type": { - "$type": "EntityType", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": true, - "multiLanguage": false, - "readonly": false, - "name": "主键", - "id": "466e5a86-120a-44a1-8ca6-80e1bdfdc3eb", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ID", - "originalId": "466e5a86-120a-44a1-8ca6-80e1bdfdc3eb", - "label": "id", - "bindingField": "id", - "bindingPath": "id", - "code": "ID" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": true, - "multiLanguage": false, - "readonly": false, - "name": "上级对象主键", - "id": "bec1003e-8a76-4ce2-b6cb-cebf0b426e6a", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ParentID", - "originalId": "bec1003e-8a76-4ce2-b6cb-cebf0b426e6a", - "label": "parentID", - "bindingField": "parentID", - "bindingPath": "parentID", - "code": "ParentID" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "编号", - "id": "e5a6411a-c30e-4259-8682-53685c53e62a", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "code", - "originalId": "e5a6411a-c30e-4259-8682-53685c53e62a", - "label": "code", - "bindingField": "code", - "bindingPath": "code", - "code": "code" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "名称", - "id": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "name", - "originalId": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "label": "name", - "bindingField": "name", - "bindingPath": "name", - "code": "name" - } - ], - "primary": "id", - "entities": [], - "name": "Child1", - "displayName": "子表1" - }, - "label": "child1s", - "code": "Child1" - }, - { - "name": "子表2", - "id": "06d00b52-4477-4c7b-a63d-01654e195364", - "type": { - "$type": "EntityType", - "fields": [ - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": true, - "multiLanguage": false, - "readonly": false, - "name": "主键", - "id": "80fa5266-0fa2-4418-b225-61efcf2309ed", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ID", - "originalId": "80fa5266-0fa2-4418-b225-61efcf2309ed", - "label": "id", - "bindingField": "id", - "bindingPath": "id", - "code": "ID" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": true, - "multiLanguage": false, - "readonly": false, - "name": "上级对象主键", - "id": "2292dc09-74d7-44fb-9a47-73d48c1e5831", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ParentID", - "originalId": "2292dc09-74d7-44fb-9a47-73d48c1e5831", - "label": "parentID", - "bindingField": "parentID", - "bindingPath": "parentID", - "code": "ParentID" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "编号", - "id": "0fd1145f-2a5f-4080-aa65-b87d252515a5", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "code", - "originalId": "0fd1145f-2a5f-4080-aa65-b87d252515a5", - "label": "code", - "bindingField": "code", - "bindingPath": "code", - "code": "code" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "名称", - "id": "52eb3ac2-decc-49f3-83b3-1549aec4b4d0", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "name", - "originalId": "52eb3ac2-decc-49f3-83b3-1549aec4b4d0", - "label": "name", - "bindingField": "name", - "bindingPath": "name", - "code": "name" - } - ], - "primary": "id", - "entities": [], - "name": "Child2", - "displayName": "子表2" - }, - "label": "child2s", - "code": "Child2" - } - ], - "name": "VueTest", - "displayName": "Vue测试" - }, - "label": "vueTests", - "code": "VueTest" - } - ], - "extendProperties": { - "enableStdTimeFormat": true - }, - "code": "PCFormTest_frm", - "sourceUri": "api/mydev/farrisvuetest/v1.0/PCFormTest_frm" - } - ], - "states": [], - "stateMachines": [ - { - "id": "PCFormTest_state_machine", - "name": "PC表单测试", - "uri": "ef535e87-96b6-4024-a762-41ca0ae45d6a", - "code": "PCFormTest_frm", - "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front" - } - ], - "viewmodels": [ - { - "id": "root-viewmodel", - "code": "root-viewmodel", - "name": "Vue测试", - "fields": [], - "stateMachine": "PCFormTest_state_machine", - "commands": [ - { - "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "code": "Load1", - "name": "执行加载页面后初始方法", - "params": [ - { - "name": "action", - "shownName": "初始方法", - "value": "{UISTATE~/#{root-component}/action}", - "defaultValue": null - } - ], - "handlerName": "Load", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false, - "isNewGenerated": false, - "targetComponent": "root-component" - }, - { - "id": "246a275c-88c9-4c8a-aa82-be6a950a4325", - "code": "LoadAndAdd1", - "name": "加载并新增数据", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "handlerName": "LoadAndAdd", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "70acc053-fa15-45be-851c-cf694e1bcaf7", - "code": "LoadAndView1", - "name": "加载并查看数据", - "params": [ - { - "name": "id", - "shownName": "待查看数据的标识", - "value": "{UISTATE~/#{root-component}/id}", - "defaultValue": null - }, - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "transitionActionParamName", - "shownName": "状态迁移动作参数编号", - "value": "", - "defaultValue": null - } - ], - "handlerName": "LoadAndView", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", - "code": "LoadAndEdit1", - "name": "加载并编辑数据", - "params": [ - { - "name": "id", - "shownName": "待编辑数据的标识", - "value": "{UISTATE~/#{root-component}/id}", - "defaultValue": null - }, - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - }, - { - "name": "transitionActionParamName", - "shownName": "状态迁移动作参数编号", - "value": "", - "defaultValue": null - } - ], - "handlerName": "LoadAndEdit", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "f90aadfa-988c-4da5-a5db-1416c3333794", - "code": "Add1", - "name": "新增一条数据", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "handlerName": "Add", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "code": "Edit1", - "name": "编辑当前数据", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - } - ], - "handlerName": "Edit", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "31b814db-01e4-407d-8fad-0f08dbb01999", - "code": "Save1", - "name": "保存变更", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "successMsg", - "shownName": "保存成功提示信息", - "value": "", - "defaultValue": null - } - ], - "handlerName": "Save", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "code": "Cancel1", - "name": "取消变更", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "handlerName": "Cancel", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "20dbc06c-6e46-46f0-b8f2-a7fd951d722e", - "code": "rootTest1", - "name": "test1", - "params": [], - "handlerName": "test", - "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "shortcut": {}, - "extensions": [], - "isInvalid": false, - "isNewGenerated": false - }, - { - "id": "45e98f07-494f-4171-9129-817552fb91a8", - "code": "rootTest2", - "name": "test2", - "params": [], - "handlerName": "test", - "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "shortcut": {}, - "extensions": [], - "isInvalid": false, - "isNewGenerated": false, - "targetComponent": "root-component" - }, - { - "id": "01760ad7-e092-4d91-88d8-89f9e13566fa", - "code": "rootTest3", - "name": "测试3", - "params": [], - "handlerName": "test", - "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "shortcut": {}, - "extensions": [], - "isInvalid": false, - "isNewGenerated": false, - "targetComponent": "root-component" - }, - { - "id": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", - "code": "rootTest4", - "name": "测试4", - "params": [], - "handlerName": "test", - "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "shortcut": {}, - "extensions": [], - "isInvalid": false, - "isNewGenerated": false, - "targetComponent": "root-component" - } - ], - "states": [ - { - "id": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", - "code": "bffSysFormConfigId", - "name": "表单流程配置", - "type": "String", - "category": "remote" - } - ], - "bindTo": "/", - "enableValidation": false, - "enableUnifiedSession": false - }, - { - "id": "basic-form-viewmodel", - "code": "basic-form-viewmodel", - "name": "Vue测试", - "fields": [ - { - "type": "Form", - "id": "e7c488df-0101-468f-ae3f-40c76c0f06b0", - "fieldName": "billStatus_BillState", - "groupId": null, - "groupName": null, - "updateOn": "change", - "fieldSchema": { - "name": "工单状态" - } - }, - { - "type": "Form", - "id": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "fieldName": "name", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": { - "name": "工单编号", - "editor": { - "$type": "lookup" - } - } - }, - { - "type": "Form", - "id": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "fieldName": "numberField", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": { - "name": "工时" - } - }, - { - "type": "Form", - "id": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "fieldName": "dateField", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": { - "name": "制单日期" - } - }, - { - "type": "Form", - "id": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", - "fieldName": "processInstance_ProcessInstance", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "blur", - "fieldSchema": { - "editor": { - "$type": "radio-group" - }, - "name": "工单类型" - } - }, - { - "type": "Form", - "id": "c419df06-d982-44ca-8e48-b366b778049a", - "fieldName": "booleanField", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "change", - "fieldSchema": { - "editor": { - "$type": "switch" - }, - "name": "是否处理" - } - }, - { - "type": "Form", - "id": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "fieldName": "code", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "blur", - "fieldSchema": { - "editor": { - "$type": "time-picker" - }, - "name": "制单时间" - } - }, - { - "type": "Form", - "id": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "fieldName": "eumu1", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "change", - "fieldSchema": { - "editor": { - "$type": "combo-list" - } - } - }, - { - "type": "Form", - "id": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "fieldName": "ass1_ass1_Name", - "groupId": "", - "groupName": "", - "valueChanging": "", - "valueChanged": "", - "updateOn": "blur", - "fieldSchema": { - "editor": { - "$type": "input-group" - } - } - } - ], - "serviceRefs": [], - "commands": [], - "states": [ - { - "id": "472eb525-a024-4a49-b51f-cdcfac1df8c8", - "category": "locale", - "code": "isCodeReadonly", - "name": "isCodeReadonly", - "type": "Object", - "value": { - "sssss": 22222 - } - } - ], - "bindTo": "/", - "parent": "root-viewmodel", - "enableValidation": true - }, - { - "id": "data-grid-z5vj-component-viewmodel", - "code": "data-grid-z5vj-component-viewmodel", - "name": "子表1", - "bindTo": "/child1s", - "parent": "root-viewmodel", - "fields": [ - { - "type": "Form", - "id": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "fieldName": "name", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": {} - }, - { - "type": "Form", - "id": "e5a6411a-c30e-4259-8682-53685c53e62a", - "fieldName": "code", - "groupId": null, - "groupName": null, - "updateOn": "blur", - "fieldSchema": {} - } - ], - "commands": [ - { - "id": "d0d339b9-958b-4426-a108-e863300e4151", - "code": "datagridz5vjAddItem1", - "name": "增加一条子表数据", - "params": [], - "handlerName": "AddItem", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - }, - { - "id": "573952e2-118d-4773-8cf7-347e97e319ca", - "code": "datagridz5vjRemoveItem1", - "name": "删除一条子表数据", - "params": [ - { - "name": "id", - "shownName": "待删除子表数据的标识", - "value": "{DATA~/child1s/id}" - } - ], - "handlerName": "RemoveItem", - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], - "isInvalid": false - } - ], - "states": [], - "enableValidation": true - } - ], - "components": [ - { - "id": "root-component", - "type": "component", - "viewModel": "root-viewmodel", - "componentType": "frame", - "onInit": "Load1", - "contents": [ - { - "id": "root-layout", - "type": "content-container", - "appearance": { - "class": "f-page f-page-card f-page-is-mainsubcard" - }, - "contents": [ - { - "id": "page-header", - "type": "page-header", - "appearance": { - "class": "f-page-header" - }, - "iconClass": "f-title-icon f-text-orna-bill", - "icon": "f-icon f-icon-page-title-record", - "title": "PC表单测试", - "toolbar": { - "type": "response-toolbar", - "buttons": [ - { - "id": "button-add", - "type": "response-toolbar-item", - "appearance": { - "class": "btn-primary" - }, - "disabled": { - "type": "StateMachine", - "status": false, - "field": "canAdd" - }, - "onClick": "Add1", - "text": "新增" - }, - { - "id": "button-edit", - "type": "response-toolbar-item", - "text": "编辑", - "disabled": "!viewModel.stateMachine['canEdit']", - "onClick": "Edit1" - }, - { - "id": "button-save", - "type": "response-toolbar-item", - "text": "保存", - "disabled": { - "type": "StateMachine", - "status": false, - "field": "canSave" - }, - "onClick": "Save1" - }, - { - "id": "button-cancel", - "type": "response-toolbar-item", - "text": "取消", - "disabled": "!viewModel.stateMachine['canCancel']", - "onClick": "Cancel1" - }, - { - "id": "toolbar_item_2362", - "type": "response-toolbar-item", - "text": "按钮", - "appearance": { - "class": "btn btn-secondary f-btn-ml" - }, - "onClick": "rootTest2" - }, - { - "id": "toolbar_item_4335", - "type": "response-toolbar-item", - "text": "触发组合表单", - "onClick": "rootTest4" - }, - { - "id": "toolbar_item_1125", - "type": "response-toolbar-item", - "text": "弹出帮助" - } - ] - } - }, - { - "id": "main-container", - "type": "content-container", - "appearance": { - "class": "f-page-main" - }, - "contents": [ - { - "id": "like-card-container", - "type": "content-container", - "appearance": { - "class": "f-struct-like-card" - }, - "contents": [ - { - "id": "basic-form-component-ref", - "type": "component-ref", - "component": "basic-form-component" - }, - { - "id": "container-0133", - "type": "content-container", - "contents": [ - { - "id": "section-0133", - "type": "section", - "contents": [ - { - "id": "data-grid-z5vj-component-ref", - "type": "component-ref", - "component": "data-grid-z5vj-component" - } - ], - "appearance": { - "class": "f-section-in-mainsubcard" - }, - "mainTitle": "子表1", - "toolbar": { - "id": "section-0133_toolbar", - "buttons": [ - { - "id": "button-add-data-grid-z5vj", - "type": "section-toolbar-item", - "text": "新增", - "disabled": "!viewModel.stateMachine['canAddDetail']", - "onClick": "root-viewModel.data-grid-z5vj-component-viewmodel.datagridz5vjAddItem1" - }, - { - "id": "button-remove-data-grid-z5vj", - "type": "section-toolbar-item", - "text": "删除", - "disabled": "!viewModel.stateMachine['canRemoveDetail']", - "onClick": "root-viewModel.data-grid-z5vj-component-viewmodel.datagridz5vjRemoveItem1" - } - ] - } - } - ], - "appearance": { - "class": "f-struct-wrapper" - } - } - ], - "isLikeCardContainer": true - } - ] - } - ] - } - ], - "name": "Vue测试", - "enableValidation": false, - "onAfterViewInit": null - }, - { - "id": "basic-form-component", - "type": "component", - "viewModel": "basic-form-viewmodel", - "componentType": "form", - "formColumns": 4, - "appearance": { - "class": "f-struct-wrapper" - }, - "contents": [ - { - "id": "basic-form-section", - "type": "section", - "appearance": { - "class": "f-section-form f-section-in-mainsubcard" - }, - "mainTitle": "基本信息", - "contents": [ - { - "id": "basic-form-layout", - "type": "response-form", - "appearance": { - "class": "f-form-layout farris-form farris-form-controls-inline" - }, - "contents": [ - { - "id": "name_3410f627_2m6a", - "type": "form-group", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2", - "style": "color:red" - }, - "label": "工单编号", - "binding": { - "type": "Form", - "path": "name", - "field": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "fullPath": "name" - }, - "editor": { - "type": "lookup", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - }, - "maxLength": 36, - "dataSource": { - "displayName": "系统组织帮助(sysorghlp)", - "idField": "id", - "type": "ViewObject", - "uri": "lookup.name_3410f627_2m6a" - }, - "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", - "displayType": "TreeList", - "textField": "name", - "pagination": { - "enable": true, - "sizeLimits": [ - 10, - 20, - 30, - 50 - ], - "size": 20, - "showLimits": true, - "showGoto": false, - "mode": "server" - }, - "loadTreeDataType": "default", - "onlySelectLeaf": false, - "multiSelect": true, - "required": true - }, - "path": "name", - "updateOn": "blur" - }, - { - "id": "billStatus_BillState_e7c488df_x74m", - "type": "form-group", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2 pc-red" - }, - "label": "工单状态", - "binding": { - "type": "Form", - "path": "billStatus_BillState", - "field": "e7c488df-0101-468f-ae3f-40c76c0f06b0", - "fullPath": "BillStatus.BillState" - }, - "editor": { - "type": "combo-list", - "data": [ - { - "disabled": false, - "name": "制单", - "value": "Billing" - }, - { - "disabled": false, - "name": "提交审批", - "value": "SubmitApproval" - }, - { - "disabled": false, - "name": "审批通过", - "value": "Approved" - }, - { - "disabled": false, - "name": "审批不通过", - "value": "ApprovalNotPassed" - } - ], - "textField": "name", - "valueField": "value", - "idField": "value", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - } - }, - "path": "billStatus.billState", - "updateOn": "change" - }, - { - "id": "booleanField_c419df06_drqr", - "type": "form-group", - "editor": { - "type": "switch", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - } - }, - "label": "是否处理", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "binding": { - "type": "Form", - "path": "booleanField", - "field": "c419df06-d982-44ca-8e48-b366b778049a", - "fullPath": "booleanField" - }, - "path": "booleanField", - "updateOn": "change" - }, - { - "id": "processInstance_ProcessInstance_5d3fd927_6mxv", - "type": "form-group", - "editor": { - "type": "radio-group", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - }, - "data": [], - "idField": "value", - "valueField": "value", - "textField": "name", - "maxLength": 36 - }, - "label": "工单类型", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "binding": { - "type": "Form", - "path": "processInstance_ProcessInstance", - "field": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", - "fullPath": "ProcessInstance.ProcessInstance" - }, - "path": "processInstance.processInstance", - "updateOn": "blur" - }, - { - "id": "numberField_cc6b21b3_dyee", - "type": "form-group", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "label": "工时", - "binding": { - "type": "Form", - "path": "numberField", - "field": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "fullPath": "numberField" - }, - "editor": { - "type": "number-spinner", - "nullable": true, - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - }, - "precision": 0, - "maxLength": 0 - }, - "path": "numberField", - "updateOn": "blur" - }, - { - "id": "dateField_e18b1dc0_so35", - "type": "form-group", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "label": "制单日期", - "binding": { - "type": "Form", - "path": "dateField", - "field": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "fullPath": "dateField" - }, - "editor": { - "type": "date-picker", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - }, - "fieldType": "Date" - }, - "path": "dateField", - "updateOn": "blur" - }, - { - "id": "ass1_ass1_Name_63b04a7c_p63a", - "type": "form-group", - "editor": { - "type": "input-group", - "readonly": "!viewModel.stateMachine['editable']", - "maxLength": 36 - }, - "label": "名称", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "binding": { - "type": "Form", - "path": "ass1_ass1_Name", - "field": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "fullPath": "ass1.ass1_Name" - }, - "path": "ass1.ass1_Name" - }, - { - "id": "code_d63b5e0f_nzbn", - "type": "form-group", - "editor": { - "type": "time-picker", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - }, - "maxLength": 36 - }, - "label": "制单时间", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "binding": { - "type": "Form", - "path": "code", - "field": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "fullPath": "code" - }, - "path": "code", - "updateOn": "blur" - }, - { - "id": "eumu1_2092e529_k19l", - "type": "form-group", - "editor": { - "type": "combo-list", - "readonly": "!viewModel.stateMachine['editable']", - "data": [ - { - "disabled": false, - "name": "testname", - "value": "test1" - } - ], - "idField": "value", - "valueField": "value", - "textField": "name" - }, - "label": "eumu1", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "binding": { - "type": "Form", - "path": "eumu1", - "field": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "fullPath": "eumu1" - }, - "path": "eumu1" - } - ], - "controlsInline": true, - "formAutoIntl": true - } - ], - "enableAccordion": "default" - } - ], - "name": "Vue测试" - }, - { - "id": "data-grid-z5vj-component", - "type": "component", - "contents": [ - { - "id": "data-grid-z5vj-container", - "type": "content-container", - "contents": [ - { - "id": "data-grid-z5vj-dataGrid", - "type": "data-grid", - "columns": [ - { - "id": "name_49fca8d8_r0yy", - "type": "data-grid-column", - "title": "名称", - "field": "name", - "binding": { - "type": "Form", - "path": "name", - "field": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "fullPath": "name" - }, - "dataType": "string", - "editor": { - "type": "input-group", - "readonly": "!viewModel.stateMachine['editable']", - "maxLength": 36 - }, - "filter": "", - "showSetting": false, - "actualWidth": 120 - }, - { - "id": "code_e5a6411a_lvjz", - "type": "data-grid-column", - "title": "编号", - "field": "code", - "binding": { - "type": "Form", - "path": "code", - "field": "e5a6411a-c30e-4259-8682-53685c53e62a", - "fullPath": "code" - }, - "dataType": "string", - "editor": { - "type": "input-group", - "readonly": "!viewModel.stateMachine['editable']", - "maxLength": 36 - }, - "filter": "", - "showSetting": true, - "actualWidth": 120 - } - ], - "appearance": { - "class": "f-component-grid" - }, - "fieldEditable": true, - "dataSource": "child1s", - "editable": "viewModel.stateMachine['editable']", - "pagination": { - "enable": false - } - } - ], - "appearance": { - "class": "f-grid-is-sub f-utils-flex-column" - } - } - ], - "viewModel": "data-grid-z5vj-component-viewmodel", - "componentType": "data-grid", - "appearance": { - "class": "f-struct-is-subgrid" - } - } - ], - "webcmds": [ - { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "path": "/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd", - "name": "CardController.webcmd", - "refedHandlers": [ - { - "host": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "handler": "Load" - }, - { - "host": "246a275c-88c9-4c8a-aa82-be6a950a4325", - "handler": "LoadAndAdd" - }, - { - "host": "70acc053-fa15-45be-851c-cf694e1bcaf7", - "handler": "LoadAndView" - }, - { - "host": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", - "handler": "LoadAndEdit" - }, - { - "host": "f90aadfa-988c-4da5-a5db-1416c3333794", - "handler": "Add" - }, - { - "host": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "handler": "Edit" - }, - { - "host": "31b814db-01e4-407d-8fad-0f08dbb01999", - "handler": "Save" - }, - { - "host": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "handler": "Cancel" - }, - { - "host": "d0d339b9-958b-4426-a108-e863300e4151", - "handler": "AddItem" - }, - { - "host": "573952e2-118d-4773-8cf7-347e97e319ca", - "handler": "RemoveItem" - } - ], - "code": "CardController", - "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" - }, - { - "id": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "path": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", - "name": "PCFormTest_frm_Controller.webcmd", - "refedHandlers": [ - { - "host": "20dbc06c-6e46-46f0-b8f2-a7fd951d722e", - "handler": "test" - }, - { - "host": "45e98f07-494f-4171-9129-817552fb91a8", - "handler": "test" - } - ], - "code": "PCFormTest_frm_Controller", - "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front" - }, - { - "id": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "path": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", - "name": "vuetest1_frm_Controller.webcmd", - "code": "vuetest1_frm_Controller", - "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", - "refedHandlers": [ - { - "host": "01760ad7-e092-4d91-88d8-89f9e13566fa", - "handler": "test" - }, - { - "host": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", - "handler": "test" - } - ] - } - ], - "projectName": "bo-vueformtest-front", - "customClass": { - "root-component": ".pc-red{\r\n color:red\r\n}", - "card-component": ".test{\r\n color:green\r\n}", - "basic-form-component": ".test2{\r\n color:black\r\n}", - "child1-component": "" - }, - "actions": [ - { - "sourceComponent": { - "id": "button-add", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "f90aadfa-988c-4da5-a5db-1416c3333794", - "label": "Add1", - "name": "新增一条数据", - "handlerName": "Add", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-edit", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "label": "Edit1", - "name": "编辑当前数据", - "handlerName": "Edit", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-save", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "31b814db-01e4-407d-8fad-0f08dbb01999", - "label": "Save1", - "name": "保存变更", - "handlerName": "Save", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "successMsg", - "shownName": "保存成功提示信息", - "value": "", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-cancel", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "label": "Cancel1", - "name": "取消变更", - "handlerName": "Cancel", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "toolbar_item_2362", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "45e98f07-494f-4171-9129-817552fb91a8", - "label": "rootTest2", - "name": "test2", - "handlerName": "test", - "params": [], - "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "label": "PCFormTest_frm_Controller", - "name": "PC卡片表单测试_frm_Controller" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "toolbar_item_4335", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", - "label": "rootTest4", - "name": "测试4", - "handlerName": "test", - "params": [], - "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "label": "vuetest1_frm_Controller", - "name": "vuetest1_frm_Controller" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-add-data-grid-z5vj", - "viewModelId": "data-grid-z5vj-component-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "data-grid-z5vj-component", - "viewModelId": "data-grid-z5vj-component-viewmodel" - }, - "command": { - "id": "d0d339b9-958b-4426-a108-e863300e4151", - "label": "datagridz5vjAddItem1", - "name": "增加一条子表数据", - "handlerName": "AddItem", - "params": [], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "button-remove-data-grid-z5vj", - "viewModelId": "data-grid-z5vj-component-viewmodel", - "map": [ - { - "event": { - "label": "onClick", - "name": "点击事件" - }, - "targetComponent": { - "id": "data-grid-z5vj-component", - "viewModelId": "data-grid-z5vj-component-viewmodel" - }, - "command": { - "id": "573952e2-118d-4773-8cf7-347e97e319ca", - "label": "datagridz5vjRemoveItem1", - "name": "删除一条子表数据", - "handlerName": "RemoveItem", - "params": [ - { - "name": "id", - "shownName": "待删除子表数据的标识", - "value": "{DATA~/child1s/id}" - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - }, - { - "sourceComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel", - "map": [ - { - "event": { - "label": "onInit", - "name": "初始化事件" - }, - "targetComponent": { - "id": "root-component", - "viewModelId": "root-viewmodel" - }, - "command": { - "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "label": "Load1", - "name": "执行加载页面后初始方法", - "handlerName": "Load", - "params": [ - { - "name": "action", - "shownName": "初始方法", - "value": "{UISTATE~/#{root-component}/action}", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "isNewGenerated": false, - "isInvalid": false - }, - "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" - } - } - ] - } - } - ], - "communications": [], - "customStyleFile": "/apps/MyDev/FarrisVueTest/web/bo-vueformtest-front/PCFormTest/PCFormTest.css", - "externalComponents": [ - { - "id": "sysorghlp-5vsx", - "type": "lookup", - "enableToSelect": false, - "dataSource": { - "displayName": "系统组织帮助(sysorghlp)", - "idField": "id", - "type": "ViewObject", - "uri": "lookup.sysorghlp_5vsx" - }, - "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", - "displayType": "TreeList", - "textField": "name", - "pagination": { - "enable": true, - "sizeLimits": [ - 10, - 20, - 30, - 50 - ], - "size": 20, - "showLimits": true, - "showGoto": false, - "mode": "server" - }, - "loadTreeDataType": "default", - "onlySelectLeaf": false, - "dialog": { - "title": "系统组织帮助" - }, - "name": "系统组织帮助" - }, - { - "id": "vuetest1-02de", - "type": "modal", - "name": "vuetest1", - "title": "vuetest1", - "contents": [ - { - "id": "external-container-1e92e", - "type": "external-container", - "appearance": { - "class": "position-relative h-100" - }, - "externalComponent": { - "id": "7df43f6c-35ff-429c-ab17-737a3d673ba4", - "code": "vuetest1", - "name": "vuetest1", - "fileName": "vuetest1.frm", - "relativePath": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components" - }, - "onCommunication": "" - } - ] - }, - { - "id": "UserOrgTest-t8m3", - "type": "lookup", - "enableToSelect": false, - "dataSource": { - "displayName": "用户组织帮助(UserOrgTest)", - "idField": "id", - "type": "ViewObject", - "uri": "lookup.UserOrgTest_t8m3" - }, - "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799", - "displayType": "NavTreeList", - "textField": "name", - "pagination": { - "enable": true, - "sizeLimits": [ - 10, - 20, - 30, - 50 - ], - "size": 20, - "showLimits": true, - "showGoto": false, - "mode": "server" - }, - "loadTreeDataType": "default", - "onlySelectLeaf": false, - "dialog": { - "title": "用户组织帮助" - }, - "name": "用户组织帮助" - } - ], - "hiddenComponents": [] - } -} \ No newline at end of file diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java deleted file mode 100644 index 3cdde043..00000000 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java +++ /dev/null @@ -1,40 +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.webservice; - -import com.fasterxml.jackson.databind.JsonNode; -import com.inspur.edp.web.common.io.FileUtility; -import com.inspur.edp.web.common.serialize.SerializeUtility; -import com.inspur.edp.web.formmetadata.api.entity.SmartFormEntity; -import com.inspur.edp.web.formmetadata.service.SmartFormServiceImpl; -import org.junit.jupiter.api.Test; - - -class SmartFormServiceImplTest { - - @Test - public void testExtract(){ - //String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); - String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-angular.json"); - - JsonNode jsonNode = SerializeUtility.getInstance().deserialize(jsonContent, JsonNode.class); - SmartFormServiceImpl SmartFormServiceImpl = new SmartFormServiceImpl(); - SmartFormEntity smartFormEntity = SmartFormServiceImpl.extract(jsonNode,false); - - System.out.println(smartFormEntity); - } -} -- Gitee From 6fdac342b64b7406d0cc94f66726ccd9de7b5783 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Wed, 17 Dec 2025 15:49:36 +0800 Subject: [PATCH 09/48] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=8A=9B=E5=87=BA?= =?UTF-8?q?=E5=8E=9F=E7=94=9F=E5=BC=82=E5=B8=B8=E5=8E=86=E5=8F=B2=E9=81=97?= =?UTF-8?q?=E7=95=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 + .../web/formmetadata/filter/LowCodeLanguagePackageFilter.java | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d9f87fe9..b671fbe6 100644 --- a/pom.xml +++ b/pom.xml @@ -96,6 +96,7 @@ 0.2.0-rc.7 0.2.0-rc.1 0.2.1 + 1.0.2-SNAPSHOT diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java index d3f06141..abf0631c 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java @@ -30,6 +30,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; +import com.inspur.edp.web.common.customexception.WebCustomException; import io.iec.edp.caf.boot.context.CAFContext; import io.iec.edp.caf.commons.exception.CAFRuntimeException; import io.iec.edp.caf.commons.utils.SpringBeanUtils; @@ -299,7 +300,7 @@ public class LowCodeLanguagePackageFilter extends OncePerRequestFilter { JsonNode mergedJsonNodes = mergeJsonNodes(originalJson, uiLanguagePackageJson); return objectMapper.writeValueAsString(mergedJsonNodes); } catch (JsonProcessingException e) { - throw new CAFRuntimeException("pfcommon", "", "", e); // todo: 换成多语的抛异常方式。 + throw new WebCustomException(e); // todo: 换成多语的抛异常方式。 } } -- Gitee From 59b8d44c0a2997e49390c58e0499a521b51c0eec Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 19 Dec 2025 08:45:15 +0800 Subject: [PATCH 10/48] =?UTF-8?q?Revert=20"Revert=20"=E6=9A=82=E5=AD=98""?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 9fdcf0fccd64d97e0949a7cd2847c62c4acea26c. --- .../formmetadata/api/SmartFormService.java | 10 + .../api/entity/SmartFormContent.java | 14 + .../api/entity/SmartFormEntity.java | 17 + .../api/entity/SmartFormField.java | 39 + .../config/FormMetadataConfiguration.java | 11 +- .../service/SmartFormServiceImpl.java | 339 ++ .../webservice/PCForm-angular.json | 4088 +++++++++++++++++ .../formmetadata/webservice/PCForm-vue.json | 2275 +++++++++ .../webservice/SmartFormServiceImplTest.java | 40 + 9 files changed, 6829 insertions(+), 4 deletions(-) create mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java create mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java create mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java create mode 100644 web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java create mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java create mode 100644 web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json create mode 100644 web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json create mode 100644 web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java new file mode 100644 index 00000000..1287fc96 --- /dev/null +++ b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/SmartFormService.java @@ -0,0 +1,10 @@ +package com.inspur.edp.web.formmetadata.api; + + +import com.inspur.edp.web.formmetadata.api.entity.SmartFormContent; + +public interface SmartFormService { + + SmartFormContent getFormContent(String formId); + +} diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java new file mode 100644 index 00000000..75aa18ad --- /dev/null +++ b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormContent.java @@ -0,0 +1,14 @@ +package com.inspur.edp.web.formmetadata.api.entity; + + +import lombok.Data; + +@Data +public class SmartFormContent { + private String id; + private String code; + private String name; + private String voId; + + private SmartFormEntity entity; +} diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java new file mode 100644 index 00000000..6e114220 --- /dev/null +++ b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormEntity.java @@ -0,0 +1,17 @@ +package com.inspur.edp.web.formmetadata.api.entity; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +@Data +public class SmartFormEntity { + private String id; + private String code; + private String name; + + private List fields = new ArrayList<>(); + private List childEntities = new ArrayList<>(); +} + diff --git a/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java new file mode 100644 index 00000000..415f4794 --- /dev/null +++ b/web-form-metadata-api/src/main/java/com/inspur/edp/web/formmetadata/api/entity/SmartFormField.java @@ -0,0 +1,39 @@ +package com.inspur.edp.web.formmetadata.api.entity; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + + +@Data +public class SmartFormField { + + private String id; + private String code; + private String name; + // 原始字段ID + private String originalId; + + // 数据类型:StringType + private String dataType; + // 对象类型(enum:枚举、association:关联、dynamicprop:动态属性) + // private String objectType; + + /** + 字段属性 + { + "required":true, 必填 + "multiSelect":true, 多选 + "enumData":JSONArray, 枚举项 + "helpId":"b524a702-7323-4d46-998e-5ba0c6abcd49", 帮助数据源 + "precision":2, 精度 + } + */ + private Map properties = new HashMap<>(); + + private List childFields = new ArrayList<>(); + +} 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 3bf10919..1fa9f8df 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,13 +17,11 @@ package com.inspur.edp.web.formmetadata.config; import com.inspur.edp.web.formmetadata.api.FormMetadataCommonService; +import com.inspur.edp.web.formmetadata.api.SmartFormService; import com.inspur.edp.web.formmetadata.filter.LowCodeLanguagePackageFilter; 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.service.*; import com.inspur.edp.web.formmetadata.webservice.FormMetadataWebServiceImpl; import io.iec.edp.caf.rest.RESTEndpoint; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; @@ -83,4 +81,9 @@ public class FormMetadataConfiguration { public LowCodeLanguagePackageFilter registerLowCodeLanguagePackageFilter() { return new LowCodeLanguagePackageFilter(); } + + @Bean + public SmartFormService getSmartFormService() { + return new SmartFormServiceImpl(); + } } diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java new file mode 100644 index 00000000..bbd0881f --- /dev/null +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java @@ -0,0 +1,339 @@ +package com.inspur.edp.web.formmetadata.service; + +import com.fasterxml.jackson.databind.JsonNode; +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.metadata.api.entity.MetadataHeader; +import com.inspur.edp.web.common.metadata.MetadataUtility; +import com.inspur.edp.web.formmetadata.api.SmartFormService; +import com.inspur.edp.web.formmetadata.api.entity.SmartFormContent; +import com.inspur.edp.web.formmetadata.api.entity.SmartFormEntity; +import com.inspur.edp.web.formmetadata.api.entity.SmartFormField; +import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; +import io.swagger.util.Json; +import org.apache.commons.lang3.StringUtils; + +import java.util.*; + +/** + * 为智能填单提取表单属性 + */ +public class SmartFormServiceImpl implements SmartFormService { + + // 子级控件的属性 + private static final List childPropertyNamesForAngular = Arrays.asList("contents", "fields"); + private static final List childPropertyNamesForVue = Arrays.asList("contents", "columns"); + + public SmartFormServiceImpl() { + } + + @Override + public SmartFormContent getFormContent(String formId) { + GspMetadata formMetadata = MetadataUtility.getInstance().getMetadataWithRuntime(formId); + if (formMetadata == null) { + return null; + } + + boolean isVueForm = false; + if(formMetadata.getProperties() != null && formMetadata.getProperties().getFramework() != null) { + String frameworkType = String.valueOf(formMetadata.getProperties().getFramework()); + isVueForm = "Vue".equals(frameworkType); + } + + FormMetadataContent formContents = (FormMetadataContent) formMetadata.getContent(); + if(formContents == null) { + return null; + } + JsonNode formContent = formContents.getContents(); + if(formContent == null){ + return null; + } + MetadataHeader header = formMetadata.getHeader(); + SmartFormContent smartFormContent = new SmartFormContent(); + smartFormContent.setEntity(extract(formContent, isVueForm)); + smartFormContent.setId(header.getId()); + smartFormContent.setCode(header.getCode()); + smartFormContent.setName(header.getName()); + + JsonNode entity = isVueForm ? formContent.at("/module/entity/0") : formContent.at("/module/schemas/0"); + if(entity != null){ + smartFormContent.setVoId(getStringValue(entity, "/id")); + } + + return smartFormContent; + + } + + public SmartFormEntity extract(JsonNode formContent, boolean isVueForm){ + // 1、提取viewmodel中的字段 + JsonNode viewModels = formContent.at("/module/viewmodels"); + List fieldIds = extractViewModels(viewModels); + + // 2、获取component中字段信息 + JsonNode components = formContent.at("/module/components"); + Map fieldMap = extractComponents(components, fieldIds, isVueForm); + + // 3、构建实体树 + JsonNode mainEntity = isVueForm ? formContent.at("/module/entity/0/entities/0") : formContent.at("/module/schemas/0/entities/0"); + + SmartFormEntity smartFormEntity = extractEntities(mainEntity, fieldMap); + + return smartFormEntity; + } + + /** + * 提取视图模型中的字段 + * @param viewModels + * @return + */ + private List extractViewModels(JsonNode viewModels){ + List fieldIds = new ArrayList<>(); + if(viewModels == null || viewModels.isEmpty()){ + return fieldIds; + } + for(JsonNode viewModel : viewModels){ + JsonNode fields = viewModel.get("fields"); + if (fields != null && !fields.isEmpty()) { + fieldIds.addAll(fields.findValuesAsText("id")); + } + } + + return fieldIds; + } + + + /** + * 提取组件中的字段 + * @param components + * @param fieldIds + * @return + */ + private Map extractComponents(JsonNode components, List fieldIds, boolean isVueForm) { + Map fieldMap = new HashMap<>(); + if(components == null || components.isEmpty()){ + return fieldMap; + } + + for(JsonNode component : components){ + // 提取当前控件 + Map currentFieldMap = extractComponent(fieldIds, component, isVueForm); + fieldMap.putAll(currentFieldMap); + + // 提取子控件 + List childPropertyNames = isVueForm ? childPropertyNamesForVue : childPropertyNamesForAngular; + for (String childPropertyName : childPropertyNames){ + JsonNode childComponent = component.get(childPropertyName); + if (childComponent != null && !childComponent.isEmpty() && childComponent.isArray()) { + Map childFieldMap = extractComponents(childComponent, fieldIds, isVueForm); + fieldMap.putAll(childFieldMap); + } + } + } + return fieldMap; + } + + /** + * 提取控件的属性 + * @param fieldIds + * @param component + */ + private Map extractComponent(List fieldIds, JsonNode component, boolean isVueForm) { + Map fieldMap = new HashMap<>(); + if(component == null || component.isEmpty()){ + return fieldMap; + } + JsonNode fieldId = component.at("/binding/field"); + JsonNode type = component.at("/type"); + if (fieldId == null || type == null || type.isMissingNode() || fieldId.isMissingNode()) { + return fieldMap; + } + + String fieldIdText = fieldId.asText(); + if (fieldIds.contains(fieldIdText)) { + // todo 提取属性 + + SmartFormField field = new SmartFormField(); + field.setId(fieldIdText); + + field.setName(getStringValue(component, isVueForm ? "/label" : "/title")); + + + Map properties = field.getProperties(); + if(isVueForm){ + this.extractPropertiesForVue(component, properties); + }else{ + this.extractPropertiesForAngular(component, properties); + } + + field.setProperties(properties); + fieldMap.put(fieldIdText, field); + } + return fieldMap; + } + + private void extractPropertiesForVue(JsonNode component, Map properties){ + properties.put("required", getBooleanValue(component,"/editor/required")); + properties.put("multiSelect", getBooleanValue(component,"/editor/multiSelect")); + properties.put("helpId", getStringValue(component,"/editor/helpId")); + properties.put("precision", getNumberValue(component,"/editor/precision")); + + String dataSourceType = getStringValue(component, "/editor/dataSourceType"); + if(!"dynamic".equals(dataSourceType)){ + properties.put("enumData", getObjectValue(component, "/editor/data")); + } + } + + private void extractPropertiesForAngular(JsonNode component, Map properties){ + JsonNode editor = component.at("/editor"); + JsonNode extractedComponent = (editor != null && !editor.isMissingNode()) ? editor : component; + + properties.put("required", getBooleanValue(extractedComponent,"/require")); + properties.put("multiSelect", getBooleanValue(extractedComponent,"/multiSelect")); + properties.put("helpId", getStringValue(extractedComponent,"/helpId")); + properties.put("precision", getNumberValue(extractedComponent,"/precision")); + + String dataSourceType = getStringValue(extractedComponent, "/dataSourceType"); + if(!"dynamic".equals(dataSourceType)){ + properties.put("enumData", getObjectValue(extractedComponent, "/enumData")); + if(properties.get("enumData") == null){ + properties.put("enumData", getObjectValue(extractedComponent, "/items")); + } + } + } + + + /** + * 提取实体树 + * @param entityNode + * @param fieldMap + * @return + */ + private SmartFormEntity extractEntities(JsonNode entityNode, Map fieldMap) { + SmartFormEntity smartFormEntity = new SmartFormEntity(); + if (entityNode == null || entityNode.isEmpty()) { + return smartFormEntity; + } + + // 提取主表 + smartFormEntity.setId(getStringValue(entityNode, "/id")); + smartFormEntity.setCode(getStringValue(entityNode, "/code")); + smartFormEntity.setName(getStringValue(entityNode, "/name")); + + // 提取主表字段 + JsonNode fieldNodes = entityNode.at("/type/fields"); + List smartFormFields = extractFields(fieldNodes, fieldMap); + smartFormEntity.setFields(smartFormFields); + + // 提取子表 + JsonNode childEntityNodes = entityNode.at("/type/entities"); + if (childEntityNodes == null || childEntityNodes.isEmpty()) { + return smartFormEntity; + } + + for(JsonNode childEntityNode : childEntityNodes){ + SmartFormEntity childEntity = extractEntities(childEntityNode, fieldMap); + // 如果当前子对象有字段,则添加 + if (!childEntity.getFields().isEmpty()) { + smartFormEntity.getChildEntities().add(childEntity); + } + } + + return smartFormEntity; + } + + private List extractFields(JsonNode fieldNodes, Map fieldMap) { + List smartFormFields = new ArrayList<>(); + if(fieldNodes == null || fieldNodes.isEmpty()){ + return smartFormFields; + } + for(JsonNode fieldNode : fieldNodes){ + // 提取当前字段 + // todo 提取属性 + String id = getStringValue(fieldNode, "/id"); + SmartFormField smartFormField = fieldMap.get(id); + if(smartFormField != null){ + this.setFormField(smartFormField, fieldNode, true); + smartFormFields.add(smartFormField); + continue; + } + + // 提取子字段 + JsonNode childFieldNodes = fieldNode.at("/type/fields"); + if (childFieldNodes == null || childFieldNodes.isEmpty()) { + continue; + } + + List childFields = extractFields(childFieldNodes, fieldMap); + if (childFields.isEmpty()) { + continue; + } + smartFormField = new SmartFormField(); + this.setFormField(smartFormField, fieldNode, false); + smartFormField.setName(getStringValue(fieldNode, "/name")); + + // formField.setDataType(getStringValue(fieldNode, "/type/$type")); + + smartFormField.setChildFields(childFields); + smartFormFields.add(smartFormField); + } + + return smartFormFields; + } + + private void setFormField(SmartFormField smartFormField, JsonNode fieldNode, boolean isSetDataType){ + smartFormField.setId(getStringValue(fieldNode, "/id")); + smartFormField.setCode(getStringValue(fieldNode, "/code")); + smartFormField.setOriginalId(getStringValue(fieldNode, "/originalId")); + if(isSetDataType){ + smartFormField.setDataType(getStringValue(fieldNode, "/type/$type")); + if("EnumType".equals(smartFormField.getDataType())){ + smartFormField.setDataType(getStringValue(fieldNode, "/type/valueType/$type")); + } + } + } + + private String getStringValue(JsonNode node, String key){ + if(node == null || node.isEmpty()){ + return null; + } + JsonNode result = node.at(key); + if(result == null || StringUtils.isEmpty(result.asText())){ + return null; + } + return result.asText(); + } + + private Integer getNumberValue(JsonNode node, String key){ + if(node == null || node.isEmpty()){ + return null; + } + JsonNode result = node.at(key); + if(result == null || !result.isNumber()){ + return null; + } + return result.asInt(); + } + + private Boolean getBooleanValue(JsonNode node, String key){ + if(node == null || node.isEmpty()){ + return null; + } + JsonNode result = node.at(key); + if(result == null || !result.isBoolean()){ + return null; + } + return result.asBoolean(); + + } + + private Object getObjectValue(JsonNode node, String key){ + if(node == null || node.isEmpty()){ + return null; + } + JsonNode result = node.at(key); + if(result == null || result.isEmpty()){ + return null; + } + return result; + } + +} diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json new file mode 100644 index 00000000..2839e4a2 --- /dev/null +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json @@ -0,0 +1,4088 @@ +{ + "module": { + "id": "PCCardFormTest", + "code": "PCCardFormTest", + "name": "PC卡片测试", + "caption": "PC卡片测试", + "type": "Module", + "creator": "lijiangkun", + "creationDate": "2025-04-25T08:12:29.233Z", + "updateVersion": "191104", + "showTitle": true, + "bootstrap": "card-template", + "templateId": "card-template", + "schemas": [ + { + "eapiId": "5ccf045d-6ed0-47a7-84eb-19afc47883d9", + "eapiCode": "PCCardFormTest_frm", + "eapiName": "PC卡片测试_frm", + "eapiNameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front", + "voPath": "MyDev/AngularTest/RuntimeTest/bo-runtimetest-front/metadata/components", + "voNameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front", + "entities": [ + { + "type": { + "$type": "EntityType", + "entities": [ + { + "type": { + "$type": "EntityType", + "entities": [], + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": true, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "ID", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "c39c80e2-74c8-43e6-9cb0-d1b3848ac57a", + "originalId": "c39c80e2-74c8-43e6-9cb0-d1b3848ac57a", + "label": "id", + "code": "ID", + "bindingField": "id", + "bindingPath": "id", + "name": "主键" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": true, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "ParentID", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "aef35c14-654b-493b-987e-d39969239b6d", + "originalId": "aef35c14-654b-493b-987e-d39969239b6d", + "label": "parentID", + "code": "ParentID", + "bindingField": "parentID", + "bindingPath": "parentID", + "name": "上级对象主键" + }, + { + "$type": "ComplexField", + "path": "attachment", + "type": { + "$type": "ObjectType", + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "attachment.AttachmentId", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "24040962-4fd6-49ff-a18a-f466a068f905", + "originalId": "ff73a947-4fd6-49ff-a18a-f466a068f905", + "label": "attachmentId", + "code": "AttachmentId", + "bindingField": "attachment_AttachmentId", + "bindingPath": "attachment.attachmentId", + "name": "附件Id" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "attachment.FileName", + "type": { + "$type": "StringType", + "length": 512, + "name": "String", + "displayName": "字符串" + }, + "id": "24040962-1497-4526-86f9-290aab400e0b", + "originalId": "026b07a9-1497-4526-86f9-290aab400e0b", + "label": "fileName", + "code": "FileName", + "bindingField": "attachment_FileName", + "bindingPath": "attachment.fileName", + "name": "附件名称" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "path": "attachment.FileSize", + "type": { + "$type": "NumericType", + "precision": 8, + "length": 128, + "name": "Number", + "displayName": "数字" + }, + "id": "24040962-dd56-4cab-a54b-577a65f9eb6e", + "originalId": "6369fb66-dd56-4cab-a54b-577a65f9eb6e", + "label": "fileSize", + "code": "FileSize", + "bindingField": "attachment_FileSize", + "bindingPath": "attachment.fileSize", + "name": "附件大小" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "defaultValue": "", + "path": "attachment.FileCreateTime", + "type": { + "$type": "DateTimeType", + "name": "DateTime", + "displayName": "日期时间" + }, + "id": "24040962-a1f5-4f6c-9c82-ddb10864c652", + "originalId": "ff677864-a1f5-4f6c-9c82-ddb10864c652", + "label": "fileCreateTime", + "code": "FileCreateTime", + "bindingField": "attachment_FileCreateTime", + "bindingPath": "attachment.fileCreateTime", + "name": "附件上传时间" + } + ], + "name": "AttachmentInfo2404", + "displayName": "附件信息" + }, + "id": "24040962-8b52-467c-b760-a2fdf257c8ea", + "originalId": "24040962-8b52-467c-b760-a2fdf257c8ea", + "label": "attachment", + "code": "attachment", + "bindingField": "attachment", + "bindingPath": "attachment", + "name": "附件" + }, + { + "$type": "ComplexField", + "label": "name", + "id": "27e7a688-82b2-45ba-a85d-870c233bb984", + "path": "name", + "type": { + "$type": "EntityType", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "name", + "id": "f75e046c-1b7a-4f2e-98fe-228242b3ca33", + "path": "name.name", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "originalId": "f75e046c-1b7a-4f2e-98fe-228242b3ca33", + "code": "name", + "bindingField": "name", + "bindingPath": "name.name", + "name": "名称" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "name_Name", + "id": "c78a1ced-09c7-4c08-938d-897af682ef17", + "path": "name.name_Name", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 1000, + "name": "String" + }, + "originalId": "c78a1ced-09c7-4c08-938d-897af682ef17", + "code": "Name", + "bindingField": "name_name_Name", + "bindingPath": "name.name_Name", + "name": "姓名" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "name_Code", + "id": "0776bfe0-5912-4a8d-9447-ca896edf4cc1", + "path": "name.name_Code", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 100, + "name": "String" + }, + "originalId": "0776bfe0-5912-4a8d-9447-ca896edf4cc1", + "code": "Code", + "bindingField": "name_name_Code", + "bindingPath": "name.name_Code", + "name": "编码" + } + ], + "primary": "name", + "entities": [], + "displayName": "人员", + "name": "DFFEmployeeF75e" + }, + "originalId": "27e7a688-82b2-45ba-a85d-870c233bb984", + "code": "name", + "bindingField": "name", + "bindingPath": "name", + "name": "名称" + } + ], + "primary": "id", + "name": "ChildAttachment1", + "displayName": "子表附件1" + }, + "id": "f987f0c2-039e-4a32-a8dd-fcbf8f6645b4", + "label": "childAttachment1s", + "code": "ChildAttachment1", + "name": "子表附件1" + }, + { + "type": { + "$type": "EntityType", + "entities": [], + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": true, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "ID", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "3df94820-efa6-48a6-8d47-112ac47e3302", + "originalId": "3df94820-efa6-48a6-8d47-112ac47e3302", + "label": "id", + "code": "ID", + "bindingField": "id", + "bindingPath": "id", + "name": "主键" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": true, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "ParentID", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "ee23f329-c1d4-489e-b691-b39b6cd12302", + "originalId": "ee23f329-c1d4-489e-b691-b39b6cd12302", + "label": "parentID", + "code": "ParentID", + "bindingField": "parentID", + "bindingPath": "parentID", + "name": "上级对象主键" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "code", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "c864358f-cb3c-4b2b-960e-423754e28ea8", + "originalId": "c864358f-cb3c-4b2b-960e-423754e28ea8", + "label": "code", + "code": "code", + "bindingField": "code", + "bindingPath": "code", + "name": "编号" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "name", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "a6c40426-7529-45e3-8c53-4ae973f28c09", + "originalId": "a6c40426-7529-45e3-8c53-4ae973f28c09", + "label": "name", + "code": "name", + "bindingField": "name", + "bindingPath": "name", + "name": "名称" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "CheckBox" + }, + "readonly": false, + "path": "booleanField", + "type": { + "$type": "BooleanType", + "displayName": "布尔", + "name": "Boolean" + }, + "id": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "code": "booleanField", + "label": "booleanField", + "bindingPath": "booleanField", + "bindingField": "booleanField", + "originalId": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "name": "布尔" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "MultiTextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "noteField", + "id": "11bdf429-f332-475b-983b-ae82fba00e8f", + "path": "noteField", + "type": { + "$type": "TextType", + "displayName": "文本", + "length": 0, + "name": "Text" + }, + "originalId": "11bdf429-f332-475b-983b-ae82fba00e8f", + "code": "noteField", + "bindingField": "noteField", + "bindingPath": "noteField", + "name": "备注" + } + ], + "primary": "id", + "name": "RuntimeItem1", + "displayName": "运行时明细1" + }, + "id": "8b102388-c979-4378-805e-e891d480c9bf", + "label": "runtimeItem1s", + "code": "RuntimeItem1", + "name": "运行时明细1" + } + ], + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": true, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "ID", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "668b9bfb-9c29-46b7-862d-b391bb7602e2", + "originalId": "668b9bfb-9c29-46b7-862d-b391bb7602e2", + "label": "id", + "code": "ID", + "bindingField": "id", + "bindingPath": "id", + "name": "主键" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "defaultValue": "", + "path": "Version", + "type": { + "$type": "DateTimeType", + "name": "DateTime", + "displayName": "日期时间" + }, + "id": "30ba0d3e-e2d0-402f-a569-646b3b191297", + "originalId": "30ba0d3e-e2d0-402f-a569-646b3b191297", + "label": "version", + "code": "Version", + "bindingField": "version", + "bindingPath": "version", + "name": "版本" + }, + { + "$type": "ComplexField", + "path": "BillStatus", + "type": { + "$type": "ObjectType", + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "EnumField" + }, + "defaultValue": "", + "path": "BillStatus.BillState", + "type": { + "$type": "EnumType", + "valueType": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "enumValues": [ + { + "disabled": false, + "name": "制单", + "value": "Billing" + }, + { + "disabled": false, + "name": "提交审批", + "value": "SubmitApproval" + }, + { + "disabled": false, + "name": "审批通过", + "value": "Approved" + }, + { + "disabled": false, + "name": "审批不通过", + "value": "ApprovalNotPassed" + } + ], + "name": "Enum", + "displayName": "枚举" + }, + "id": "a54c2230-0101-468f-ae3f-40c76c0f06b0", + "originalId": "a0b19650-0101-468f-ae3f-40c76c0f06b0", + "label": "billState", + "code": "BillState", + "bindingField": "billStatus_BillState", + "bindingPath": "billStatus.billState", + "name": "状态" + } + ], + "name": "BillStateA54c", + "displayName": "状态" + }, + "id": "a54c2230-3231-4928-a503-93fb64767b84", + "originalId": "a54c2230-3231-4928-a503-93fb64767b84", + "label": "billStatus", + "code": "BillStatus", + "bindingField": "billStatus", + "bindingPath": "billStatus", + "name": "状态" + }, + { + "$type": "ComplexField", + "path": "ProcessInstance", + "type": { + "$type": "ObjectType", + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "ProcessInstance.ProcessInstance", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "4c02d802-ad8f-4da3-a430-c8a7f2162135", + "originalId": "2e1beb7d-ad8f-4da3-a430-c8a7f2162135", + "label": "processInstance", + "code": "ProcessInstance", + "bindingField": "processInstance_ProcessInstance", + "bindingPath": "processInstance.processInstance", + "name": "流程实例" + } + ], + "name": "ProcessInstance4c02", + "displayName": "流程实例" + }, + "id": "4c02d802-33fe-47d1-b289-05427b719a11", + "originalId": "4c02d802-33fe-47d1-b289-05427b719a11", + "label": "processInstance", + "code": "ProcessInstance", + "bindingField": "processInstance", + "bindingPath": "processInstance", + "name": "流程实例" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "code", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "b86fa068-5985-419e-86f0-dbe862719192", + "originalId": "b86fa068-5985-419e-86f0-dbe862719192", + "label": "code", + "code": "code", + "bindingField": "code", + "bindingPath": "code", + "name": "编号" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "name", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "61595c14-d06a-4f6c-977e-152aeb5f7b46", + "originalId": "61595c14-d06a-4f6c-977e-152aeb5f7b46", + "label": "name", + "code": "name", + "bindingField": "name", + "bindingPath": "name", + "name": "名称" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "path": "numberField1", + "type": { + "$type": "NumericType", + "precision": 0, + "length": 0, + "name": "Number", + "displayName": "数字" + }, + "id": "a53ae211-98d0-4606-a68b-fd5401c5dba5", + "originalId": "a53ae211-98d0-4606-a68b-fd5401c5dba5", + "label": "numberField1", + "code": "numberField1", + "bindingField": "numberField1", + "bindingPath": "numberField1", + "name": "数值1" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "readonly": false, + "path": "dateField", + "type": { + "$type": "DateType", + "displayName": "日期", + "name": "Date" + }, + "id": "293ef601-da8b-4950-9805-226415b6072b", + "code": "dateField", + "label": "dateField", + "bindingPath": "dateField", + "bindingField": "dateField", + "originalId": "293ef601-da8b-4950-9805-226415b6072b", + "name": "日期" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "readonly": false, + "path": "dateTimeField", + "type": { + "$type": "DateTimeType", + "displayName": "日期时间", + "name": "DateTime" + }, + "id": "7bd1e315-3b4d-4329-b2df-7a928142286e", + "code": "dateTimeField", + "label": "dateTimeField", + "bindingPath": "dateTimeField", + "bindingField": "dateTimeField", + "originalId": "7bd1e315-3b4d-4329-b2df-7a928142286e", + "name": "日期时间" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "NumericBox" + }, + "readonly": false, + "path": "floatField", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "173f0950-1ac6-4452-a92c-76e0189c56d7", + "code": "floatField", + "label": "floatField", + "bindingPath": "floatField", + "bindingField": "floatField", + "originalId": "173f0950-1ac6-4452-a92c-76e0189c56d7", + "name": "浮点" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "MultiTextBox" + }, + "readonly": false, + "path": "noteField", + "type": { + "$type": "TextType", + "displayName": "文本", + "length": 0, + "name": "Text" + }, + "id": "ad758550-ac5e-4f04-85c2-107681f716a2", + "code": "noteField", + "label": "noteField", + "bindingPath": "noteField", + "bindingField": "noteField", + "originalId": "ad758550-ac5e-4f04-85c2-107681f716a2", + "name": "备注" + }, + { + "$type": "ComplexField", + "path": "AttachmentFile", + "type": { + "$type": "ObjectType", + "fields": [ + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "readonly": false, + "path": "AttachmentFile.AttachmentId", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "9d012316-4fd6-49ff-a18a-f466a068f905", + "code": "AttachmentId", + "label": "attachmentId", + "bindingPath": "attachmentFile.attachmentId", + "bindingField": "attachmentFile_AttachmentId", + "originalId": "ff73a947-4fd6-49ff-a18a-f466a068f905", + "name": "附件Id" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "readonly": false, + "path": "AttachmentFile.FileName", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 512, + "name": "String" + }, + "id": "9d012316-1497-4526-86f9-290aab400e0b", + "code": "FileName", + "label": "fileName", + "bindingPath": "attachmentFile.fileName", + "bindingField": "attachmentFile_FileName", + "originalId": "026b07a9-1497-4526-86f9-290aab400e0b", + "name": "附件名称" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "NumericBox" + }, + "readonly": false, + "path": "AttachmentFile.FileSize", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 8, + "length": 128, + "name": "Number" + }, + "id": "9d012316-dd56-4cab-a54b-577a65f9eb6e", + "code": "FileSize", + "label": "fileSize", + "bindingPath": "attachmentFile.fileSize", + "bindingField": "attachmentFile_FileSize", + "originalId": "6369fb66-dd56-4cab-a54b-577a65f9eb6e", + "name": "附件大小" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "readonly": false, + "path": "AttachmentFile.FileCreateTime", + "type": { + "$type": "DateTimeType", + "displayName": "日期时间", + "name": "DateTime" + }, + "id": "9d012316-a1f5-4f6c-9c82-ddb10864c652", + "code": "FileCreateTime", + "label": "fileCreateTime", + "bindingPath": "attachmentFile.fileCreateTime", + "bindingField": "attachmentFile_FileCreateTime", + "originalId": "ff677864-a1f5-4f6c-9c82-ddb10864c652", + "name": "附件上传时间" + } + ], + "name": "AttachmentInfo9d01", + "displayName": "附件信息" + }, + "id": "9d012316-310e-43ec-8686-3b881f2c25a9", + "code": "AttachmentFile", + "label": "attachmentFile", + "bindingPath": "attachmentFile", + "bindingField": "attachmentFile", + "originalId": "9d012316-310e-43ec-8686-3b881f2c25a9", + "name": "附件文件" + }, + { + "$type": "SimpleField", + "require": false, + "multiLanguage": false, + "defaultValue": "", + "editor": { + "$type": "CheckBox" + }, + "readonly": false, + "path": "booleanField", + "type": { + "$type": "BooleanType", + "displayName": "布尔", + "name": "Boolean" + }, + "id": "24119450-10d9-485b-9ab2-cf225ec1c3bb", + "code": "booleanField", + "label": "booleanField", + "bindingPath": "booleanField", + "bindingField": "booleanField", + "originalId": "24119450-10d9-485b-9ab2-cf225ec1c3bb", + "name": "布尔" + }, + { + "$type": "ComplexField", + "label": "treeField", + "id": "2bd38907-b163-4b2f-85aa-bb0bd708b364", + "path": "treeField", + "type": { + "$type": "HierarchyType", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "parentElement", + "id": "2bd38907-b2b6-4ff2-bcc4-5c4d5534d02c", + "path": "treeField.ParentElement", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "originalId": "37a3529a-b2b6-4ff2-bcc4-5c4d5534d02c", + "code": "ParentElement", + "bindingField": "treeField_ParentElement", + "bindingPath": "treeField.parentElement", + "name": "父节点字段" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "NumericBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "sequence", + "id": "2bd38907-f606-4999-ae4a-1357b2970daa", + "path": "treeField.Sequence", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 0, + "length": 0, + "name": "Number" + }, + "originalId": "b5a7caf0-f606-4999-ae4a-1357b2970daa", + "code": "Sequence", + "bindingField": "treeField_Sequence", + "bindingPath": "treeField.sequence", + "name": "顺序号" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "NumericBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "layer", + "id": "2bd38907-09d1-42ed-9cd0-b823d9098a5d", + "path": "treeField.Layer", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 0, + "length": 0, + "name": "Number" + }, + "originalId": "592e17a0-09d1-42ed-9cd0-b823d9098a5d", + "code": "Layer", + "bindingField": "treeField_Layer", + "bindingPath": "treeField.layer", + "name": "级数" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "CheckBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "isDetail", + "id": "2bd38907-c6cd-46a5-b05f-9f25f02edf7f", + "path": "treeField.IsDetail", + "type": { + "$type": "BooleanType", + "displayName": "布尔", + "name": "Boolean" + }, + "originalId": "79aff7ce-c6cd-46a5-b05f-9f25f02edf7f", + "code": "IsDetail", + "bindingField": "treeField_IsDetail", + "bindingPath": "treeField.isDetail", + "name": "是否明细" + } + ], + "name": "ParentHierarchyInfo2bd3", + "displayName": "父节点分级信息" + }, + "originalId": "2bd38907-b163-4b2f-85aa-bb0bd708b364", + "code": "treeField", + "bindingField": "treeField", + "bindingPath": "treeField", + "name": "树字段" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "EnumField" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "label": "enumField", + "id": "e77f1a5c-3e36-4551-a157-e4903cff80fd", + "path": "enumField", + "type": { + "$type": "EnumType", + "displayName": "枚举", + "valueType": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "enumValues": [ + { + "disabled": false, + "name": "值1", + "value": "value1" + }, + { + "disabled": false, + "name": "值2", + "value": "value2" + } + ], + "name": "Enum" + }, + "originalId": "e77f1a5c-3e36-4551-a157-e4903cff80fd", + "code": "enumField", + "bindingField": "enumField", + "bindingPath": "enumField", + "name": "枚举字段" + } + ], + "primary": "id", + "name": "RuntimeTestBe", + "displayName": "运行时问题测试" + }, + "id": "359b32d4-58f0-4631-b52c-bf8b62e03e18", + "label": "runtimeTestBes", + "code": "RuntimeTestBe", + "name": "运行时问题测试" + } + ], + "sourceType": "vo", + "id": "11213af2-51cd-458a-882b-ef35209c7ba2", + "variables": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "readonly": false, + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "path": "bffSysFormConfigId", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "id": "da48cef2-4219-4a33-8bf6-e0acdaf6d83b", + "originalId": "da48cef2-4219-4a33-8bf6-e0acdaf6d83b", + "label": "bffSysFormConfigId", + "code": "bffSysFormConfigId", + "bindingField": "bffSysFormConfigId", + "bindingPath": "bffSysFormConfigId", + "name": "表单流程配置" + } + ], + "code": "PCCardFormTest_frm", + "sourceUri": "api/mydev/angulartest/v1.0/PCCardFormTest_frm", + "extendProperties": { + "enableStdTimeFormat": true + }, + "name": "PC卡片测试_frm" + } + ], + "states": [], + "contents": [], + "stateMachines": [ + { + "id": "PCCardFormTest_state_machine", + "name": "PC卡片测试", + "uri": "05a3916d-1f67-4b30-8742-e50b496e08c8", + "code": "PCCardFormTest_frm", + "nameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front" + } + ], + "viewmodels": [ + { + "id": "root-viewmodel", + "code": "root-viewmodel", + "name": "运行时问题测试", + "fields": [], + "stateMachine": "PCCardFormTest_state_machine", + "serviceRefs": [], + "commands": [ + { + "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "code": "Load1", + "name": "执行加载页面后初始方法", + "params": [ + { + "name": "action", + "shownName": "初始方法", + "value": "{UISTATE~/#{root-component}/action}", + "defaultValue": null + } + ], + "handlerName": "Load", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "246a275c-88c9-4c8a-aa82-be6a950a4325", + "code": "LoadAndAdd1", + "name": "新增一条数据", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "handlerName": "LoadAndAdd", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "70acc053-fa15-45be-851c-cf694e1bcaf7", + "code": "LoadAndView1", + "name": "查看一条数据", + "params": [ + { + "name": "id", + "shownName": "待查看数据的标识", + "value": "{UISTATE~/#{root-component}/id}", + "defaultValue": null + }, + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + }, + { + "name": "transitionActionParamName", + "shownName": "状态迁移动作参数编号", + "value": "", + "defaultValue": null + } + ], + "handlerName": "LoadAndView", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", + "code": "LoadAndEdit1", + "name": "编辑当前数据", + "params": [ + { + "name": "id", + "shownName": "待编辑数据的标识", + "value": "{UISTATE~/#{root-component}/id}", + "defaultValue": null + }, + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + }, + { + "name": "transitionActionParamName", + "shownName": "状态迁移动作参数编号", + "value": "", + "defaultValue": null + } + ], + "handlerName": "LoadAndEdit", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "f90aadfa-988c-4da5-a5db-1416c3333794", + "code": "Add1", + "name": "新增一条数据", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "handlerName": "Add", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "code": "Edit1", + "name": "编辑当前数据", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + } + ], + "handlerName": "Edit", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "31b814db-01e4-407d-8fad-0f08dbb01999", + "code": "Save1", + "name": "保存变更", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "保存成功提示信息", + "value": "", + "defaultValue": null + } + ], + "handlerName": "Save", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "code": "Cancel1", + "name": "取消变更", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "handlerName": "Cancel", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "c8504c24-33e8-487a-91ce-2218b803fe01", + "code": "ChangeItem1", + "name": "切换上一条或下一条1", + "params": [ + { + "name": "id", + "shownName": "当前数据标识", + "value": "{DATA~/#{root-component}/id}", + "defaultValue": null + }, + { + "name": "type", + "shownName": "切换类型(prev|next)", + "value": "prev", + "defaultValue": null + }, + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "handlerName": "ChangeItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "4a0cfb1a-1262-41a2-aeb9-c8edd5c09683", + "code": "ChangeItem2", + "name": "切换上一条或下一条2", + "params": [ + { + "name": "id", + "shownName": "当前数据标识", + "value": "{DATA~/#{root-component}/id}", + "defaultValue": null + }, + { + "name": "type", + "shownName": "切换类型(prev|next)", + "value": "next", + "defaultValue": null + }, + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "handlerName": "ChangeItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "0d34f338-b601-4716-8530-493b0752483b", + "code": "submitWithBizDefKey1", + "name": "提交审批", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/#{basic-form-component}/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "handlerName": "submitWithBizDefKey", + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "e492063e-a22d-4f23-8aed-7fe139843220", + "code": "cancelSubmitWithDataId1", + "name": "取消提交", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/#{basic-form-component}/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "handlerName": "cancelSubmitWithDataId", + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "shortcut": {}, + "extensions": [], + "isInvalid": false + } + ], + "states": [ + { + "id": "da48cef2-4219-4a33-8bf6-e0acdaf6d83b", + "code": "bffSysFormConfigId", + "name": "表单流程配置", + "type": "String", + "category": "remote" + }, + { + "id": "e7bdd079-ca82-400c-bd82-fff8385571e5", + "code": "date", + "name": "date", + "type": "Date", + "category": "locale" + } + ], + "bindTo": "/", + "enableValidation": false, + "enableUnifiedSession": false + }, + { + "id": "basic-form-viewmodel", + "code": "basic-form-viewmodel", + "name": "运行时问题测试", + "fields": [ + { + "type": "Form", + "id": "668b9bfb-9c29-46b7-862d-b391bb7602e2", + "fieldName": "id", + "groupId": null, + "groupName": null, + "updateOn": "blur" + }, + { + "type": "Form", + "id": "30ba0d3e-e2d0-402f-a569-646b3b191297", + "fieldName": "version", + "groupId": null, + "groupName": null, + "updateOn": "blur" + }, + { + "type": "Form", + "id": "a54c2230-0101-468f-ae3f-40c76c0f06b0", + "fieldName": "billStatus_BillState", + "groupId": null, + "groupName": null, + "updateOn": "change", + "fieldSchema": { + "name": "状态1" + } + }, + { + "type": "Form", + "id": "4c02d802-ad8f-4da3-a430-c8a7f2162135", + "fieldName": "processInstance_ProcessInstance", + "groupId": null, + "groupName": null, + "updateOn": "blur" + }, + { + "type": "Form", + "id": "b86fa068-5985-419e-86f0-dbe862719192", + "fieldName": "code", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "LookupEdit", + "dataSource": { + "uri": "RuntimeTestBe.code", + "displayName": "用户组织帮助", + "idField": "id", + "type": "ViewObject", + "helpCode": "UserOrgTest" + }, + "valueField": "id", + "textField": "name", + "displayType": "NavTreeList", + "mapFields": "", + "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799" + }, + "name": "编号", + "require": false, + "readonly": false + } + }, + { + "type": "Form", + "id": "61595c14-d06a-4f6c-977e-152aeb5f7b46", + "fieldName": "name", + "groupId": null, + "groupName": null, + "updateOn": "blur" + }, + { + "type": "Form", + "id": "a53ae211-98d0-4606-a68b-fd5401c5dba5", + "fieldName": "numberField1", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": { + "editor": { + "maxValue": 10 + } + } + }, + { + "type": "Form", + "id": "173f0950-1ac6-4452-a92c-76e0189c56d7", + "fieldName": "floatField", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "minValue": null, + "maxValue": null + } + } + }, + { + "type": "Form", + "id": "e77f1a5c-3e36-4551-a157-e4903cff80fd", + "fieldName": "enumField", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "change", + "fieldSchema": {} + } + ], + "serviceRefs": [], + "commands": [], + "states": [], + "bindTo": "/", + "parent": "root-viewmodel", + "enableValidation": true + }, + { + "id": "childattachment1-egs8-component-viewmodel", + "code": "childattachment1-egs8-component-viewmodel", + "name": "子表附件1", + "bindTo": "/childAttachment1s", + "parent": "root-viewmodel", + "fields": [], + "commands": [ + { + "id": "childattachment1egs8AddFileRows-id", + "code": "childattachment1egs8AddFileRows", + "name": "批量添加文件数据", + "handlerName": "addFileRows", + "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "params": [ + { + "name": "fileInfoFieldPath", + "shownName": "文件信息字段路径", + "value": "/childAttachment1s/attachment" + } + ], + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "childattachment1egs8RemoveFileRows-id", + "code": "childattachment1egs8RemoveFileRows", + "name": "批量删除文件数据", + "handlerName": "removeFileRows", + "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "params": [ + { + "name": "fileInfoFieldPath", + "shownName": "文件信息字段路径", + "value": "/childAttachment1s/attachment" + } + ], + "shortcut": {}, + "extensions": [], + "isInvalid": false + } + ], + "states": [], + "enableValidation": true, + "pagination": { + "enable": false + }, + "allowEmpty": true + }, + { + "id": "runtimeitem1-vgy0-component-viewmodel", + "code": "runtimeitem1-vgy0-component-viewmodel", + "name": "{{'test' }}", + "bindTo": "/runtimeItem1s", + "parent": "root-viewmodel", + "fields": [ + { + "type": "Form", + "id": "3df94820-efa6-48a6-8d47-112ac47e3302", + "fieldName": "id", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": {} + }, + { + "type": "Form", + "id": "ee23f329-c1d4-489e-b691-b39b6cd12302", + "fieldName": "parentID", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": {} + }, + { + "type": "Form", + "id": "c864358f-cb3c-4b2b-960e-423754e28ea8", + "fieldName": "code", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": { + "require": true + } + }, + { + "type": "Form", + "id": "a6c40426-7529-45e3-8c53-4ae973f28c09", + "fieldName": "name", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": {} + }, + { + "type": "Form", + "id": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "fieldName": "booleanField", + "groupId": null, + "groupName": null, + "updateOn": "change", + "fieldSchema": { + "editor": { + "$type": "CheckBox" + }, + "name": "布尔", + "require": false, + "readonly": false + } + } + ], + "commands": [ + { + "id": "3a2f8aee-605b-4789-a971-43ba31c60b61", + "code": "runtimeitem1vgy0AddItem1", + "name": "增加一条子表数据1", + "params": [], + "handlerName": "AddItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "5a844e51-0196-44e6-ac4c-e9c4d235a894", + "code": "runtimeitem1vgy0RemoveItem1", + "name": "删除一条子表数据1", + "params": [ + { + "name": "id", + "shownName": "待删除子表数据的标识", + "value": "{DATA~/#{runtimeitem1-vgy0-component}/runtimeItem1s/id}" + } + ], + "handlerName": "RemoveItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + } + ], + "states": [], + "enableValidation": true, + "pagination": { + "enable": false + }, + "allowEmpty": true + } + ], + "components": [ + { + "id": "root-component", + "type": "Component", + "viewModel": "root-viewmodel", + "componentType": "Frame", + "onInit": "Load1", + "contents": [ + { + "id": "root-layout", + "type": "ContentContainer", + "appearance": { + "class": "f-page f-page-card f-page-is-mainsubcard" + }, + "size": null, + "contents": [ + { + "id": "page-header", + "type": "ContentContainer", + "appearance": { + "class": "f-page-header" + }, + "size": null, + "contents": [ + { + "id": "header-nav", + "type": "ContentContainer", + "appearance": { + "class": "f-page-header-base" + }, + "size": null, + "contents": [ + { + "id": "header-title-container", + "type": "ContentContainer", + "appearance": { + "class": "f-title" + }, + "size": null, + "contents": [ + { + "id": "page-header-title", + "type": "HtmlTemplate", + "html": "

{{'title'|lang:lang:'PC卡片测试'}}

" + } + ], + "visible": true, + "isScrollspyContainer": false, + "isLikeCardContainer": false + }, + { + "id": "page-header-toolbar", + "type": "ToolBar", + "appearance": { + "class": "col-7 f-toolbar" + }, + "size": null, + "items": [ + { + "id": "button-add", + "type": "ToolBarItem", + "text": "新增", + "appearance": { + "class": "btn-primary" + }, + "disable": "!viewModel.stateMachine['canAdd']", + "visible": true, + "click": "Add1", + "visibleControlledByRules": true, + "disableControlledByRules": true, + "items": [], + "usageMode": "button", + "modalConfig": null + }, + { + "id": "button-edit", + "type": "ToolBarItem", + "text": "编辑", + "appearance": null, + "disable": "!viewModel.stateMachine['canEdit']", + "visible": true, + "click": "Edit1", + "visibleControlledByRules": true, + "disableControlledByRules": true, + "items": [], + "usageMode": "button", + "modalConfig": null + }, + { + "id": "button-save", + "type": "ToolBarItem", + "text": "保存", + "appearance": null, + "disable": "!viewModel.stateMachine['canSave']", + "visible": true, + "click": "Save1", + "visibleControlledByRules": true, + "disableControlledByRules": true, + "items": [], + "usageMode": "button", + "modalConfig": null + }, + { + "id": "button-cancel", + "type": "ToolBarItem", + "text": "取消", + "appearance": null, + "disable": "!viewModel.stateMachine['canCancel']", + "visible": true, + "click": "Cancel1", + "visibleControlledByRules": false, + "disableControlledByRules": false, + "items": [], + "usageMode": "button", + "modalConfig": null + }, + { + "id": "button-approve", + "type": "ToolBarItem", + "appearance": null, + "disable": "!viewModel.stateMachine['canApprove']", + "text": "提交审批", + "visible": true, + "click": "submitWithBizDefKey1", + "visibleControlledByRules": true, + "disableControlledByRules": true, + "items": [], + "usageMode": "button", + "modalConfig": null + }, + { + "id": "button-cancel-approve", + "type": "ToolBarItem", + "appearance": null, + "disable": "!viewModel.stateMachine['canCancelApprove']", + "text": "取消提交审批", + "visible": true, + "click": "cancelSubmitWithDataId1", + "visibleControlledByRules": true, + "disableControlledByRules": true, + "items": [], + "usageMode": "button", + "modalConfig": null + } + ], + "visible": true, + "buttonSize": "default", + "popDirection": "default" + } + ], + "visible": true, + "isScrollspyContainer": false, + "isLikeCardContainer": false + } + ], + "visible": true, + "isScrollspyContainer": false, + "isLikeCardContainer": false + }, + { + "id": "main-container", + "type": "ContentContainer", + "appearance": { + "class": "f-page-main" + }, + "size": null, + "contents": [ + { + "id": "like-card-container", + "type": "ContentContainer", + "appearance": { + "class": "f-struct-like-card" + }, + "size": null, + "contents": [ + { + "id": "basic-form-component-ref", + "type": "ComponentRef", + "component": "basic-form-component", + "visible": true + }, + { + "id": "container_8036", + "type": "ContentContainer", + "appearance": { + "class": "f-struct-wrapper" + }, + "visible": true, + "contents": [ + { + "id": "section_8036", + "type": "Section", + "appearance": { + "class": "f-section-in-mainsubcard" + }, + "visible": true, + "mainTitle": "运行时明细1", + "subTitle": "", + "headerClass": "", + "titleClass": "", + "extendedHeaderAreaClass": "", + "toolbarClass": "", + "extendedAreaClass": "", + "contentTemplateClass": "", + "fill": false, + "expanded": true, + "enableMaximize": false, + "enableAccordion": false, + "accordionMode": "default", + "showHeader": true, + "headerTemplate": "", + "titleTemplate": "", + "extendedHeaderAreaTemplate": "", + "toolbarTemplate": "", + "extendedAreaTemplate": "", + "contents": [ + { + "id": "runtimeitem1-vgy0-component-ref", + "type": "ComponentRef", + "component": "runtimeitem1-vgy0-component", + "visible": true + } + ], + "isScrollSpyItem": false, + "toolbar": { + "type": "SectionToolbar", + "position": "inHead", + "contents": [ + { + "id": "runtimeitem1-vgy0-component-button-add", + "type": "SectionToolbarItem", + "title": "新增", + "disable": "!viewModel.stateMachine['canAddDetail']", + "appearance": { + "class": "btn btn-secondary f-btn-ml" + }, + "visible": true, + "click": "root-viewModel.runtimeitem1-vgy0-component-viewmodel.runtimeitem1vgy0AddItem1", + "items": [], + "split": false, + "visibleControlledByRules": true, + "disableControlledByRules": true + }, + { + "id": "runtimeitem1-vgy0-component-button-remove", + "type": "SectionToolbarItem", + "title": "删除", + "disable": "!viewModel.stateMachine['canRemoveDetail']", + "appearance": { + "class": "btn btn-secondary f-btn-ml" + }, + "visible": true, + "click": "root-viewModel.runtimeitem1-vgy0-component-viewmodel.runtimeitem1vgy0RemoveItem1", + "items": [], + "split": false, + "visibleControlledByRules": true, + "disableControlledByRules": true + } + ] + } + } + ], + "isScrollspyContainer": false, + "isLikeCardContainer": false + }, + { + "id": "childattachment1-egs8-component-ref", + "type": "ComponentRef", + "component": "childattachment1-egs8-component", + "visible": true + } + ], + "visible": true, + "draggable": false, + "isLikeCardContainer": true, + "isScrollspyContainer": false + } + ], + "visible": true, + "isScrollspyContainer": false, + "isLikeCardContainer": false + } + ], + "visible": true, + "isScrollspyContainer": false, + "isLikeCardContainer": false + } + ], + "appearance": null, + "visible": true, + "afterViewInit": null + }, + { + "id": "basic-form-component", + "type": "Component", + "viewModel": "basic-form-viewmodel", + "componentType": "form-col-4", + "appearance": { + "class": "f-struct-wrapper" + }, + "onInit": "", + "contents": [ + { + "id": "basic-form-section", + "type": "Section", + "appearance": { + "class": "f-section-form f-section-in-mainsubcard" + }, + "visible": true, + "mainTitle": "基本信息", + "subTitle": "", + "headerClass": "", + "titleClass": "", + "extendedHeaderAreaClass": "", + "toolbarClass": "", + "extendedAreaClass": "", + "contentTemplateClass": "", + "fill": false, + "expanded": true, + "enableMaximize": false, + "enableAccordion": true, + "accordionMode": "default", + "showHeader": true, + "headerTemplate": "", + "titleTemplate": "", + "extendedHeaderAreaTemplate": "", + "toolbarTemplate": "", + "extendedAreaTemplate": "", + "contents": [ + { + "id": "basic-form-layout", + "type": "Form", + "appearance": { + "class": "f-form-layout farris-form farris-form-controls-inline" + }, + "size": null, + "contents": [ + { + "id": "id_668b9bfb_9kgu", + "type": "TextBox", + "titleSourceType": "static", + "title": "主键", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "id", + "field": "668b9bfb-9c29-46b7-862d-b391bb7602e2", + "fullPath": "ID" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": true, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "id", + "visibleControlledByRules": true, + "readonlyControlledByRules": false, + "requireControlledByRules": false, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500 + }, + { + "id": "version_30ba0d3e_s8rx", + "type": "DateBox", + "titleSourceType": "static", + "title": "版本", + "controlSource": "Farris", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "version", + "field": "30ba0d3e-e2d0-402f-a569-646b3b191297", + "fullPath": "Version" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "placeHolder": "", + "validation": null, + "value": null, + "editable": true, + "dateRange": false, + "showTime": true, + "showType": 1, + "dateFormat": "yyyy-MM-dd HH:mm:ss", + "returnFormat": "yyyy-MM-dd HH:mm:ss", + "maxValue": null, + "minValue": null, + "disableDates": [], + "showWeekNumbers": false, + "dateRangeDatesDelimiter": "~", + "shortcuts": [], + "fieldType": "DateTime", + "useDefault": false, + "holdPlace": false, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "isTextArea": true, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "localization": false, + "path": "version", + "localizationType": "DateTime", + "visibleControlledByRules": true, + "readonlyControlledByRules": false, + "requireControlledByRules": false, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "autoHeight": false, + "maxHeight": 500, + "hourStep": 1, + "minuteStep": 1, + "secondStep": 1, + "firstDayOfWeek": "mo" + }, + { + "id": "billStatus_BillState_a54c2230_pl5h", + "type": "EnumField", + "titleSourceType": "static", + "title": "状态1", + "controlSource": "Farris", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "billStatus_BillState", + "field": "a54c2230-0101-468f-ae3f-40c76c0f06b0", + "fullPath": "BillStatus.BillState" + }, + "placeHolder": "", + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "enumData": [ + { + "disabled": false, + "name": "制单", + "value": "Billing" + }, + { + "disabled": false, + "name": "提交审批", + "value": "SubmitApproval" + }, + { + "disabled": false, + "name": "审批通过", + "value": "Approved" + }, + { + "disabled": false, + "name": "审批不通过", + "value": "ApprovalNotPassed" + } + ], + "holdPlace": false, + "isTextArea": true, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "idField": "value", + "textField": "name", + "multiSelect": false, + "uri": "", + "autoWidth": true, + "enableClear": false, + "onClear": null, + "valueChanged": null, + "onShown": null, + "onHidden": null, + "editable": false, + "enableCancelSelected": false, + "beforeShow": null, + "beforeHide": null, + "dataSourceType": "static", + "path": "billStatus.billState", + "visibleControlledByRules": true, + "readonlyControlledByRules": false, + "requireControlledByRules": false, + "viewType": "text", + "noSearch": false, + "maxSearchLength": null, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "autoHeight": false, + "maxHeight": 500, + "showDisabledItem": true, + "labelAutoOverflow": false, + "updateOn": "change" + }, + { + "id": "processInstance_ProcessInstance_4c02d802_v27r", + "type": "TextBox", + "titleSourceType": "static", + "title": "流程实例", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "processInstance_ProcessInstance", + "field": "4c02d802-ad8f-4da3-a430-c8a7f2162135", + "fullPath": "ProcessInstance.ProcessInstance" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "processInstance.processInstance", + "visibleControlledByRules": true, + "readonlyControlledByRules": false, + "requireControlledByRules": false, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500 + }, + { + "id": "code_b86fa068_y9fz", + "type": "LookupEdit", + "titleSourceType": "static", + "title": "编号", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "code", + "field": "b86fa068-5985-419e-86f0-dbe862719192", + "fullPath": "code" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "placeHolder": "", + "dataSource": { + "uri": "RuntimeTestBe.code", + "displayName": "用户组织帮助", + "idField": "id", + "type": "ViewObject", + "helpCode": "UserOrgTest" + }, + "textField": "name", + "valueField": "id", + "displayType": "NavTreeList", + "multiSelect": false, + "pageList": "10,20,30,50", + "pageSize": 20, + "pageIndex": null, + "pagination": null, + "dialogTitle": "", + "showMaxButton": null, + "showCloseButton": null, + "resizable": null, + "buttonAlign": null, + "mapFields": "", + "lookupStyle": "popup", + "holdPlace": false, + "isTextArea": true, + "useTip": false, + "useFavorite": true, + "noSearch": false, + "maxSearchLength": 36, + "enableToSelect": true, + "isRecordSize": false, + "lookupPicking": null, + "lookupPicked": null, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "enableExtendLoadMethod": true, + "editable": false, + "enableFullTree": false, + "enableClear": true, + "clear": null, + "loadTreeDataType": "default", + "expandLevel": -1, + "enableCascade": false, + "cascadeStatus": "enable", + "onShown": null, + "onHidden": null, + "beforeShow": null, + "beforeHide": null, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "textAlign": "left", + "useExtendInfo": false, + "extInfoFields": null, + "extInfoFormatter": null, + "customFormatter": null, + "customNavFormatter": null, + "selectFirstInNav": false, + "loadDataWhenOpen": true, + "onlySelectLeaf": "default", + "viewType": "text", + "autoHeight": false, + "maxHeight": 500, + "autoWidth": true, + "showHeader": true, + "beforeSelectData": null, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "enableContextMenu": false, + "quickSelect": { + "enable": false, + "showItemsCount": 10, + "formatter": null, + "showMore": true + }, + "treeToList": false, + "navTreeToList": false, + "showNavigation": true, + "showCascadeControl": true, + "linkConfig": { + "enable": false, + "config": [] + }, + "showSelected": false, + "useNewLayout": false, + "enableMultiFieldSearch": false, + "separator": ",", + "path": "code", + "visibleControlledByRules": true, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "isRTControl": false, + "labelAutoOverflow": false, + "updateOn": "blur", + "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799" + }, + { + "id": "name_61595c14_rx8x", + "type": "TextBox", + "titleSourceType": "static", + "title": "名称", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "name", + "field": "61595c14-d06a-4f6c-977e-152aeb5f7b46", + "fullPath": "name" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "name", + "visibleControlledByRules": true, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500, + "labelAutoOverflow": false, + "updateOn": "blur" + }, + { + "id": "enumField_e77f1a5c_to85", + "type": "EnumField", + "titleSourceType": "static", + "title": "枚举字段", + "controlSource": "Farris", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "enumField", + "field": "e77f1a5c-3e36-4551-a157-e4903cff80fd", + "fullPath": "enumField" + }, + "placeHolder": "", + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "enumData": [ + { + "disabled": false, + "name": "值1", + "value": "value1" + }, + { + "disabled": false, + "name": "值2", + "value": "value2" + } + ], + "idField": "value", + "textField": "name", + "holdPlace": false, + "isTextArea": true, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "multiSelect": false, + "uri": "", + "autoWidth": true, + "enableClear": false, + "onClear": null, + "valueChanged": null, + "onShown": null, + "onHidden": null, + "editable": false, + "enableCancelSelected": false, + "beforeShow": null, + "beforeHide": null, + "dataSourceType": "static", + "viewType": "text", + "noSearch": false, + "maxSearchLength": null, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "autoHeight": false, + "maxHeight": 500, + "showDisabledItem": true, + "path": "enumField", + "visibleControlledByRules": true, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "labelAutoOverflow": false, + "updateOn": "change", + "fieldValueChanging": "", + "fieldValueChanged": "" + }, + { + "id": "numberField1_a53ae211_gle2", + "type": "NumericBox", + "titleSourceType": "static", + "title": "数值1", + "controlSource": "Farris", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "numberField1", + "field": "a53ae211-98d0-4606-a68b-fd5401c5dba5", + "fullPath": "numberField1" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "placeHolder": "", + "textAlign": "left", + "precisionSourceType": "static", + "precision": 0, + "validation": null, + "maxValue": 10, + "minValue": null, + "step": 1, + "useThousands": true, + "formatter": null, + "parser": null, + "canNull": true, + "bigNumber": false, + "maxLength": 0, + "holdPlace": false, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "isTextArea": true, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "showZero": true, + "showButton": true, + "path": "numberField1", + "visibleControlledByRules": true, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "localization": false, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "autoHeight": false, + "maxHeight": 500, + "labelAutoOverflow": false, + "updateOn": "blur" + }, + { + "id": "floatField_173f0950_91tt", + "type": "NumericBox", + "titleSourceType": "static", + "title": "浮点", + "controlSource": "Farris", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "binding": { + "type": "Form", + "path": "floatField", + "field": "173f0950-1ac6-4452-a92c-76e0189c56d7", + "fullPath": "floatField" + }, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "placeHolder": "", + "textAlign": "left", + "precisionSourceType": "static", + "precision": 2, + "validation": null, + "maxValue": null, + "minValue": null, + "step": 1, + "useThousands": true, + "formatter": null, + "parser": null, + "canNull": true, + "bigNumber": false, + "maxLength": 18, + "holdPlace": false, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "isTextArea": true, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "localization": false, + "showZero": true, + "showButton": true, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "autoHeight": false, + "maxHeight": 500, + "path": "floatField", + "visibleControlledByRules": true, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "labelAutoOverflow": false, + "updateOn": "blur" + } + ], + "controlsInline": true, + "formAutoIntl": true, + "visible": true, + "labelAutoOverflow": false + } + ], + "isScrollSpyItem": false, + "toolbar": { + "type": "SectionToolbar", + "position": "inHead", + "contents": [] + } + } + ], + "visible": true, + "afterViewInit": null + }, + { + "id": "childattachment1-egs8-component", + "type": "Component", + "viewModel": "childattachment1-egs8-component-viewmodel", + "componentType": "attachmentPanel", + "appearance": { + "class": "f-struct-wrapper" + }, + "visible": true, + "onInit": null, + "afterViewInit": null, + "contents": [ + { + "id": "childattachment1-egs8-section", + "type": "Section", + "appearance": { + "class": "f-section-form f-section-in-mainsubcard" + }, + "visible": true, + "mainTitle": "子表附件1", + "subTitle": "", + "headerClass": "", + "titleClass": "", + "extendedHeaderAreaClass": "", + "toolbarClass": "", + "extendedAreaClass": "", + "contentTemplateClass": "", + "fill": false, + "expanded": true, + "enableMaximize": false, + "enableAccordion": true, + "accordionMode": "default", + "showHeader": true, + "headerTemplate": "", + "titleTemplate": "", + "extendedHeaderAreaTemplate": "", + "toolbarTemplate": "", + "extendedAreaTemplate": "", + "contents": [ + { + "id": "childattachment1-egs8-file", + "type": "FileUploadPreview", + "appearance": { + "class": "d-block mx-3" + }, + "uploadSelectText": "上传附件", + "uploadEnableMulti": true, + "uploadVisible": "viewModel.stateMachine && viewModel.stateMachine['editable']", + "uploadDisabled": "viewModel.stateMachine && !viewModel.stateMachine['editable']", + "uploadOptions": { + "maxUploads": 3, + "maxFileSize": 12, + "allowedContentTypes": [ + ".pdf", + ".jpg", + ".png", + ".doc", + ".docx", + ".xls", + ".xlsx", + ".ppt", + ".pptx", + ".txt", + ".DOC", + ".DOCX", + ".XLS", + ".XLSX", + ".PPT", + ".PPTX", + ".wps", + ".et" + ], + "notAllowedCharsInFileName": null + }, + "rootId": "default-root", + "formId": "viewModel.bindingData && viewModel.bindingData['id']", + "enableUploadedCount": true, + "previewVisible": true, + "previewReadonly": "viewModel.stateMachine && !viewModel.stateMachine['editable']", + "previewEnableMulti": true, + "previewEnableRename": true, + "previewDefaultRename": "", + "previewShowType": "list", + "fieldIdKey": { + "type": "Form", + "path": "attachment_AttachmentId", + "field": "24040962-4fd6-49ff-a18a-f466a068f905", + "fullPath": "attachment.AttachmentId", + "bindingPath": "attachment.attachmentId" + }, + "fileNameKey": { + "type": "Form", + "path": "attachment_FileName", + "field": "24040962-1497-4526-86f9-290aab400e0b", + "fullPath": "attachment.FileName", + "bindingPath": "attachment.fileName" + }, + "fUploadDoneEvent": "childattachment1egs8AddFileRows", + "fUploadRemovedEvent": null, + "enableOrder": false, + "fileSortOrderKey": { + "type": "Form", + "path": "attachment_FileCreateTime", + "field": "24040962-a1f5-4f6c-9c82-ddb10864c652", + "fullPath": "attachment.FileCreateTime", + "bindingPath": "attachment.fileCreateTime" + }, + "fileRemoveEvent": "childattachment1egs8RemoveFileRows", + "contentFill": false, + "visible": true, + "showFileList": true, + "showHeader": true, + "disabled": false, + "noDownload": false, + "noPreview": false, + "previewEnableEditFile": false, + "previewEditFileDocMode": "normal", + "previewShowComments": false, + "previewDateFormat": "yyyy-MM-dd", + "enablePreviewColumns": false, + "enableSliceUpload": false, + "enablePreviewFileList": false, + "chunkSize": 1, + "orderType": "desc", + "noDelete": "default", + "previewModeless": false, + "attachmentFieldId": "attachment", + "allowEmpty": true + } + ], + "isScrollSpyItem": false, + "toolbar": { + "type": "SectionToolbar", + "position": "inHead", + "contents": [] + } + } + ] + }, + { + "id": "runtimeitem1-vgy0-component", + "type": "Component", + "viewModel": "runtimeitem1-vgy0-component-viewmodel", + "componentType": "dataGrid", + "appearance": { + "class": "f-struct-is-subgrid" + }, + "visible": true, + "onInit": null, + "afterViewInit": null, + "contents": [ + { + "id": "runtimeitem1-vgy0-component-layout", + "type": "ContentContainer", + "appearance": { + "class": "f-grid-is-sub f-utils-flex-column" + }, + "visible": true, + "contents": [ + { + "id": "runtimeitem1-vgy0-dataGrid", + "type": "DataGrid", + "controlSource": "Farris", + "appearance": { + "class": "f-component-grid f-utils-fill" + }, + "disable": false, + "dataSource": "runtimeItem1s", + "fields": [ + { + "id": "id_3df94820_clzf", + "type": "GridField", + "controlSource": "Farris", + "caption": "主键", + "binding": { + "type": "Form", + "path": "id", + "field": "3df94820-efa6-48a6-8d47-112ac47e3302", + "fullPath": "ID" + }, + "appearance": null, + "size": { + "width": 120 + }, + "readonly": false, + "dataField": "id", + "dataType": "string", + "displayTemplate": null, + "captionTemplate": null, + "editor": { + "id": "id_3df94820_67wq", + "type": "TextBox", + "titleSourceType": "static", + "title": "主键", + "appearance": { + "class": "" + }, + "size": null, + "binding": { + "type": "Form", + "path": "id", + "field": "3df94820-efa6-48a6-8d47-112ac47e3302", + "fullPath": "ID" + }, + "require": true, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "id", + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500, + "requireControlledByRules": false, + "updateOn": "blur" + }, + "draggable": false, + "frozen": "none", + "sortable": true, + "enumData": null, + "idField": "value", + "textField": "name", + "aggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "groupAggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "textAlign": "left", + "hAlign": "left", + "vAlign": "middle", + "formatter": { + "type": "none" + }, + "showTips": false, + "tipContent": null, + "multiLanguage": false, + "visible": true, + "enableFilter": false, + "headerStyler": "", + "styler": "", + "localization": false, + "allowGrouping": true, + "tipMode": "auto", + "captionTipContent": "", + "captionTipStyler": "", + "enableBatchEdit": false, + "localizationType": "Date", + "visibleControlledByRules": false, + "readonlyControlledByRules": false + }, + { + "id": "parentID_ee23f329_uzdm", + "type": "GridField", + "controlSource": "Farris", + "caption": "上级对象主键", + "binding": { + "type": "Form", + "path": "parentID", + "field": "ee23f329-c1d4-489e-b691-b39b6cd12302", + "fullPath": "ParentID" + }, + "appearance": null, + "size": { + "width": 120 + }, + "readonly": false, + "dataField": "parentID", + "dataType": "string", + "displayTemplate": null, + "captionTemplate": null, + "editor": { + "id": "parentID_ee23f329_p92l", + "type": "TextBox", + "titleSourceType": "static", + "title": "上级对象主键", + "appearance": { + "class": "" + }, + "size": null, + "binding": { + "type": "Form", + "path": "parentID", + "field": "ee23f329-c1d4-489e-b691-b39b6cd12302", + "fullPath": "ParentID" + }, + "require": true, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "parentID", + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500, + "requireControlledByRules": false + }, + "draggable": false, + "frozen": "none", + "sortable": true, + "enumData": null, + "idField": "value", + "textField": "name", + "aggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "groupAggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "textAlign": "left", + "hAlign": "left", + "vAlign": "middle", + "formatter": { + "type": "none" + }, + "showTips": false, + "tipContent": null, + "multiLanguage": false, + "visible": true, + "enableFilter": false, + "headerStyler": "", + "styler": "", + "localization": false, + "allowGrouping": true, + "tipMode": "auto", + "captionTipContent": "", + "captionTipStyler": "", + "enableBatchEdit": false, + "localizationType": "Date", + "visibleControlledByRules": false, + "readonlyControlledByRules": false + }, + { + "id": "code_c864358f_pvwg", + "type": "GridField", + "controlSource": "Farris", + "caption": "编号", + "binding": { + "type": "Form", + "path": "code", + "field": "c864358f-cb3c-4b2b-960e-423754e28ea8", + "fullPath": "code" + }, + "appearance": null, + "size": { + "width": 120 + }, + "readonly": false, + "dataField": "code", + "dataType": "string", + "displayTemplate": null, + "captionTemplate": null, + "editor": { + "id": "code_c864358f_btp2", + "type": "TextBox", + "titleSourceType": "static", + "title": "编号", + "appearance": { + "class": "" + }, + "size": null, + "binding": { + "type": "Form", + "path": "code", + "field": "c864358f-cb3c-4b2b-960e-423754e28ea8", + "fullPath": "code" + }, + "require": true, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "code", + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500, + "requireControlledByRules": true, + "updateOn": "blur" + }, + "draggable": false, + "frozen": "none", + "sortable": true, + "enumData": null, + "idField": "value", + "textField": "name", + "aggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "groupAggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "textAlign": "left", + "hAlign": "left", + "vAlign": "middle", + "formatter": { + "type": "none" + }, + "showTips": false, + "tipContent": null, + "multiLanguage": false, + "visible": true, + "enableFilter": false, + "headerStyler": "", + "styler": "", + "localization": false, + "allowGrouping": true, + "tipMode": "auto", + "captionTipContent": "", + "captionTipStyler": "", + "enableBatchEdit": false, + "localizationType": "Date", + "visibleControlledByRules": true, + "readonlyControlledByRules": true + }, + { + "id": "name_a6c40426_ywb9", + "type": "GridField", + "controlSource": "Farris", + "caption": "名称", + "binding": { + "type": "Form", + "path": "name", + "field": "a6c40426-7529-45e3-8c53-4ae973f28c09", + "fullPath": "name" + }, + "appearance": null, + "size": { + "width": 120 + }, + "readonly": false, + "dataField": "name", + "dataType": "string", + "displayTemplate": null, + "captionTemplate": null, + "editor": { + "id": "name_a6c40426_fds8", + "type": "TextBox", + "titleSourceType": "static", + "title": "名称", + "appearance": { + "class": "" + }, + "size": null, + "binding": { + "type": "Form", + "path": "name", + "field": "a6c40426-7529-45e3-8c53-4ae973f28c09", + "fullPath": "name" + }, + "require": false, + "disable": false, + "placeHolder": "", + "format": null, + "validation": null, + "value": null, + "maxLength": 36, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "holdPlace": false, + "isTextArea": true, + "isPassword": false, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableTips": true, + "path": "name", + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "formatValidation": { + "type": "none", + "expression": "", + "message": "" + }, + "autoHeight": false, + "maxHeight": 500, + "requireControlledByRules": true + }, + "draggable": false, + "frozen": "none", + "sortable": true, + "enumData": null, + "idField": "value", + "textField": "name", + "aggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "groupAggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "textAlign": "left", + "hAlign": "left", + "vAlign": "middle", + "formatter": { + "type": "none" + }, + "showTips": false, + "tipContent": null, + "multiLanguage": false, + "visible": true, + "enableFilter": false, + "headerStyler": "", + "styler": "", + "localization": false, + "allowGrouping": true, + "tipMode": "auto", + "captionTipContent": "", + "captionTipStyler": "", + "enableBatchEdit": false, + "localizationType": "Date", + "visibleControlledByRules": true, + "readonlyControlledByRules": true + }, + { + "id": "booleanField_e4f457e3_2q97", + "type": "GridField", + "controlSource": "Farris", + "caption": "布尔", + "binding": { + "type": "Form", + "path": "booleanField", + "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "fullPath": "booleanField" + }, + "appearance": null, + "size": { + "width": 120 + }, + "readonly": false, + "dataField": "booleanField", + "dataType": "boolean", + "displayTemplate": null, + "captionTemplate": null, + "editor": { + "id": "booleanField_e4f457e3_nzmm", + "type": "CheckBox", + "titleSourceType": "static", + "title": "布尔", + "require": false, + "disable": false, + "binding": { + "type": "Form", + "path": "booleanField", + "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "fullPath": "booleanField" + }, + "visible": true, + "appearance": { + "class": "" + }, + "size": null, + "holdPlace": false, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "path": "booleanField", + "requireControlledByRules": true, + "isRTControl": false, + "updateOn": "change" + }, + "draggable": false, + "frozen": "none", + "sortable": true, + "enumData": null, + "idField": "value", + "textField": "name", + "aggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "groupAggregate": { + "type": "none", + "formatter": { + "type": "none" + } + }, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "textAlign": "left", + "hAlign": "left", + "vAlign": "middle", + "formatter": { + "type": "boolean", + "trueText": "是", + "falseText": "否" + }, + "showTips": false, + "tipContent": null, + "multiLanguage": false, + "visible": true, + "enableFilter": false, + "headerStyler": "", + "styler": "", + "localization": false, + "allowGrouping": true, + "tipMode": "auto", + "captionTipContent": "", + "captionTipStyler": "", + "enableBatchEdit": true, + "visibleControlledByRules": true, + "readonlyControlledByRules": true + } + ], + "focusedItem": null, + "focusedIndex": null, + "pagination": false, + "lockPagination": "viewModel.stateMachine&&viewModel.stateMachine['editable']", + "showPageSize": false, + "identifyField": null, + "multiSelect": false, + "showCheckbox": false, + "selectable": null, + "itemTemplate": null, + "toolBar": null, + "summary": null, + "showAllCheckbox": false, + "fieldEditable": true, + "editable": null, + "groupable": false, + "group": null, + "showGroupColumn": true, + "groupFormatter": null, + "groupStyler": null, + "groupFooter": false, + "fitColumns": false, + "onSelectionChange": "", + "styler": "", + "fixedColumns": [], + "enableCommandColumn": false, + "onEditClicked": "", + "onDeleteClicked": "", + "commandColumnWidth": 120, + "showCommandColumn": true, + "checkedChange": null, + "disableRow": null, + "beforeSelect": null, + "beforeUnSelect": null, + "beforeCheck": null, + "beforeUnCheck": null, + "multiSort": false, + "autoFitColumns": false, + "showFooter": false, + "footerTemplate": "", + "footerDataFrom": "client", + "footerDataCommand": null, + "footerHeight": 29, + "filterType": "none", + "enableFilterRow": false, + "enableSmartFilter": false, + "remoteFilter": false, + "showFilterBar": false, + "showBorder": false, + "striped": true, + "showLineNumber": false, + "lineNumberTitle": "", + "appendRow": null, + "pageChange": null, + "dblClickRow": null, + "useControlPanel": false, + "autoHeight": false, + "rowClick": null, + "showSelectedList": false, + "selectedItemFormatter": null, + "lineNumberWidth": 36, + "enableMorePageSelect": false, + "headerWrap": false, + "emptyTemplate": null, + "emptyDataHeight": 240, + "maxHeight": 300, + "rowHeight": 30, + "enableHighlightCell": false, + "enableEditCellStyle": false, + "showRowGroupPanel": false, + "enableDragColumn": false, + "groupSummaryPosition": "groupFooterRow", + "clearSelectionsWhenDataIsEmpty": true, + "keepSelect": true, + "enableEditByCard": "none", + "pageSizeChanged": null, + "visible": true, + "showGotoInput": false, + "scrollBarShowMode": "auto", + "showScrollArrow": false, + "footerPosition": "bottom", + "footerStyler": null, + "selectOnEditing": true, + "selectionMode": "custom", + "enableContextMenu": false, + "disableGroupOnEditing": true, + "enableSimpleMode": false, + "enableScheme": false, + "beforeEdit": null, + "nowrap": true, + "mergeCell": false, + "remoteSort": false, + "columnSorted": null, + "checkOnSelect": false, + "selectOnCheck": false, + "enableHeaderGroup": false, + "headerGroup": null, + "AutoColumnWidthUseDblclick": true, + "virtualized": false, + "virtualizedAsyncLoad": false, + "scrollYLoad": null, + "pagerContentTemplate": null, + "expandGroupRows": true, + "useBlankWhenDataIsEmpty": false, + "checked": null, + "unChecked": null, + "checkAll": null, + "unCheckAll": null, + "filterChanged": null, + "enableEditStateFilterSorting": false, + "showConfirmWhenSchemeChanged": false, + "enableSetMultiHeaders": false, + "allowEmpty": true + } + ], + "isScrollspyContainer": false, + "isLikeCardContainer": false + } + ] + } + ], + "webcmds": [ + { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "path": "/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd", + "name": "CardController.webcmd", + "refedHandlers": [ + { + "host": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "handler": "Load" + }, + { + "host": "246a275c-88c9-4c8a-aa82-be6a950a4325", + "handler": "LoadAndAdd" + }, + { + "host": "70acc053-fa15-45be-851c-cf694e1bcaf7", + "handler": "LoadAndView" + }, + { + "host": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", + "handler": "LoadAndEdit" + }, + { + "host": "f90aadfa-988c-4da5-a5db-1416c3333794", + "handler": "Add" + }, + { + "host": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "handler": "Edit" + }, + { + "host": "31b814db-01e4-407d-8fad-0f08dbb01999", + "handler": "Save" + }, + { + "host": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "handler": "Cancel" + }, + { + "host": "c8504c24-33e8-487a-91ce-2218b803fe01", + "handler": "ChangeItem" + }, + { + "host": "4a0cfb1a-1262-41a2-aeb9-c8edd5c09683", + "handler": "ChangeItem" + }, + { + "host": "3a2f8aee-605b-4789-a971-43ba31c60b61", + "handler": "AddItem" + }, + { + "host": "5a844e51-0196-44e6-ac4c-e9c4d235a894", + "handler": "RemoveItem" + } + ], + "code": "CardController", + "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" + }, + { + "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "path": null, + "name": "ApproveController.webcmd", + "refedHandlers": [ + { + "host": "0d34f338-b601-4716-8530-493b0752483b", + "handler": "submitWithBizDefKey" + }, + { + "host": "e492063e-a22d-4f23-8aed-7fe139843220", + "handler": "cancelSubmitWithDataId" + } + ], + "code": "ApproveController", + "nameSpace": "Inspur.GS.Gsp.Web.WebApprove" + }, + { + "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "path": "Gsp/Web/AttachmentCmp/bo-attachmentcmp/metadata/webcmd", + "name": "FileController.webcmd", + "refedHandlers": [ + { + "host": "childattachment1egs8AddFileRows-id", + "handler": "addFileRows" + }, + { + "host": "childattachment1egs8RemoveFileRows-id", + "handler": "removeFileRows" + } + ], + "code": "FileController", + "nameSpace": "Inspur.GS.Gsp.Web.AttachmentCmp" + } + ], + "serviceRefs": [], + "projectName": "bo-runtimetest-front", + "showType": "page", + "toolbar": { + "items": {}, + "configs": {} + }, + "declarations": { + "events": [], + "commands": [], + "states": [] + }, + "subscriptions": [], + "extraImports": [], + "expressions": [], + "metadataId": "94540a61-e3c0-4220-ba13-e5a8dc52e79e", + "actions": [ + { + "sourceComponent": { + "id": "button-add", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "f90aadfa-988c-4da5-a5db-1416c3333794", + "label": "Add1", + "name": "新增一条数据", + "handlerName": "Add", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-edit", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "label": "Edit1", + "name": "编辑当前数据", + "handlerName": "Edit", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-save", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "31b814db-01e4-407d-8fad-0f08dbb01999", + "label": "Save1", + "name": "保存变更", + "handlerName": "Save", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "保存成功提示信息", + "value": "", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-cancel", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "label": "Cancel1", + "name": "取消变更", + "handlerName": "Cancel", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-approve", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "0d34f338-b601-4716-8530-493b0752483b", + "label": "submitWithBizDefKey1", + "name": "提交审批", + "handlerName": "submitWithBizDefKey", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/#{basic-form-component}/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "label": "ApproveController", + "name": "审批控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-cancel-approve", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "e492063e-a22d-4f23-8aed-7fe139843220", + "label": "cancelSubmitWithDataId1", + "name": "取消提交", + "handlerName": "cancelSubmitWithDataId", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/#{basic-form-component}/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "label": "ApproveController", + "name": "审批控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "runtimeitem1-vgy0-component-button-add", + "viewModelId": "runtimeitem1-vgy0-component-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "runtimeitem1-vgy0-component", + "viewModelId": "runtimeitem1-vgy0-component-viewmodel" + }, + "command": { + "id": "3a2f8aee-605b-4789-a971-43ba31c60b61", + "label": "runtimeitem1vgy0AddItem1", + "name": "增加一条子表数据1", + "handlerName": "AddItem", + "params": [], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "runtimeitem1-vgy0-component-button-remove", + "viewModelId": "runtimeitem1-vgy0-component-viewmodel", + "map": [ + { + "event": { + "label": "click", + "name": "点击事件" + }, + "targetComponent": { + "id": "runtimeitem1-vgy0-component", + "viewModelId": "runtimeitem1-vgy0-component-viewmodel" + }, + "command": { + "id": "5a844e51-0196-44e6-ac4c-e9c4d235a894", + "label": "runtimeitem1vgy0RemoveItem1", + "name": "删除一条子表数据1", + "handlerName": "RemoveItem", + "params": [ + { + "name": "id", + "shownName": "待删除子表数据的标识", + "value": "{DATA~/#{runtimeitem1-vgy0-component}/runtimeItem1s/id}" + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onInit", + "name": "初始化事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "label": "Load1", + "name": "执行加载页面后初始方法", + "handlerName": "Load", + "params": [ + { + "name": "action", + "shownName": "初始方法", + "value": "{UISTATE~/#{root-component}/action}", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "childattachment1-egs8-file", + "viewModelId": "childattachment1-egs8-component-viewmodel", + "map": [ + { + "event": { + "label": "fUploadDoneEvent", + "name": "附件上传后事件" + }, + "targetComponent": { + "id": "childattachment1-egs8-component", + "viewModelId": "childattachment1-egs8-component-viewmodel" + }, + "command": { + "id": "childattachment1egs8AddFileRows-id", + "label": "childattachment1egs8AddFileRows", + "name": "批量添加文件数据", + "handlerName": "addFileRows", + "params": [ + { + "name": "fileInfoFieldPath", + "shownName": "文件信息字段路径", + "value": "/childAttachment1s/attachment" + } + ], + "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "label": "FileController", + "name": "文件控制器" + } + }, + { + "event": { + "label": "fileRemoveEvent", + "name": "附件预览删除事件" + }, + "targetComponent": { + "id": "childattachment1-egs8-component", + "viewModelId": "childattachment1-egs8-component-viewmodel" + }, + "command": { + "id": "childattachment1egs8RemoveFileRows-id", + "label": "childattachment1egs8RemoveFileRows", + "name": "批量删除文件数据", + "handlerName": "removeFileRows", + "params": [ + { + "name": "fileInfoFieldPath", + "shownName": "文件信息字段路径", + "value": "/childAttachment1s/attachment" + } + ], + "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "label": "FileController", + "name": "文件控制器" + } + } + ] + } + } + ] + }, + "options": { + "enableTextArea": true, + "renderMode": "compile", + "enableDeleteSourceCode": true, + "changeSetPolicy": "valid", + "formRulePushMode": "pushToVO", + "combineFormMode": "strict", + "enableServerSideChangeDetection": true, + "mobileMetadataId": "726a19b1-263a-466e-a3e7-601f8b635410" + } +} \ No newline at end of file diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json new file mode 100644 index 00000000..b2c6a9ab --- /dev/null +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json @@ -0,0 +1,2275 @@ +{ + "module": { + "id": "58c44201-64df-436c-a57c-a36f94a2414b", + "code": "PCFormTest", + "name": "PC表单测试", + "type": "Module", + "creator": "lijiangkun", + "creationDate": "2025-04-12T07:59:57.479Z", + "templateId": "card-template", + "templateRule": "card-template", + "entity": [ + { + "eapiId": "bebb83f9-499d-4fda-8466-1b6a6f721353", + "eapiCode": "PCFormTest_frm", + "eapiName": "PC表单测试_frm", + "eapiNameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", + "voPath": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", + "voNameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", + "name": "PC表单测试_frm", + "id": "4801eb04-71d2-4420-813c-496ed48c65c0", + "sourceType": "vo", + "variables": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "表单流程配置", + "id": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "bffSysFormConfigId", + "originalId": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", + "label": "bffSysFormConfigId", + "bindingField": "bffSysFormConfigId", + "bindingPath": "bffSysFormConfigId", + "code": "bffSysFormConfigId" + } + ], + "entities": [ + { + "name": "Vue测试", + "id": "75e5f57b-3a02-4177-9846-1a5d0ba2c885", + "type": { + "$type": "EntityType", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": true, + "multiLanguage": false, + "readonly": false, + "name": "主键", + "id": "52fc4c0e-f155-4c01-9fe6-54fd08795ae0", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "ID", + "originalId": "52fc4c0e-f155-4c01-9fe6-54fd08795ae0", + "label": "id", + "bindingField": "id", + "bindingPath": "id", + "code": "ID" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "版本", + "id": "10b522a5-9dd3-437e-bd29-bf57a58b3fb3", + "type": { + "$type": "DateTimeType", + "name": "DateTime", + "displayName": "日期时间" + }, + "path": "Version", + "originalId": "10b522a5-9dd3-437e-bd29-bf57a58b3fb3", + "label": "version", + "bindingField": "version", + "bindingPath": "version", + "code": "Version" + }, + { + "$type": "ComplexField", + "name": "状态", + "id": "e7c488df-8456-48d8-be1c-2cc6cc1cba8b", + "type": { + "$type": "ObjectType", + "name": "BillStateE7c4", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "EnumField" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "状态", + "id": "e7c488df-0101-468f-ae3f-40c76c0f06b0", + "type": { + "$type": "EnumType", + "name": "Enum", + "displayName": "枚举", + "valueType": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "enumValues": [ + { + "disabled": false, + "name": "制单", + "value": "Billing" + }, + { + "disabled": false, + "name": "提交审批", + "value": "SubmitApproval" + }, + { + "disabled": false, + "name": "审批通过", + "value": "Approved" + }, + { + "disabled": false, + "name": "审批不通过", + "value": "ApprovalNotPassed" + } + ] + }, + "path": "BillStatus.BillState", + "originalId": "a0b19650-0101-468f-ae3f-40c76c0f06b0", + "label": "billState", + "bindingField": "billStatus_BillState", + "bindingPath": "billStatus.billState", + "code": "BillState" + } + ], + "displayName": "状态" + }, + "path": "BillStatus", + "originalId": "e7c488df-8456-48d8-be1c-2cc6cc1cba8b", + "label": "billStatus", + "bindingField": "billStatus", + "bindingPath": "billStatus", + "code": "BillStatus" + }, + { + "$type": "ComplexField", + "name": "流程实例", + "id": "5d3fd927-71bc-4687-9be1-55d94033dd47", + "type": { + "$type": "ObjectType", + "name": "ProcessInstance5d3f", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "流程实例", + "id": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "ProcessInstance.ProcessInstance", + "originalId": "2e1beb7d-ad8f-4da3-a430-c8a7f2162135", + "label": "processInstance", + "bindingField": "processInstance_ProcessInstance", + "bindingPath": "processInstance.processInstance", + "code": "ProcessInstance" + } + ], + "displayName": "流程实例" + }, + "path": "ProcessInstance", + "originalId": "5d3fd927-71bc-4687-9be1-55d94033dd47", + "label": "processInstance", + "bindingField": "processInstance", + "bindingPath": "processInstance", + "code": "ProcessInstance" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "编号", + "id": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "code", + "originalId": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", + "label": "code", + "bindingField": "code", + "bindingPath": "code", + "code": "code" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "名称", + "id": "3410f627-358c-4a1a-99b4-800e9d0211e0", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "name", + "originalId": "3410f627-358c-4a1a-99b4-800e9d0211e0", + "label": "name", + "bindingField": "name", + "bindingPath": "name", + "code": "name" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "CheckBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "布尔字段", + "id": "c419df06-d982-44ca-8e48-b366b778049a", + "type": { + "$type": "BooleanType", + "name": "Boolean", + "displayName": "布尔" + }, + "path": "booleanField", + "originalId": "c419df06-d982-44ca-8e48-b366b778049a", + "label": "booleanField", + "bindingField": "booleanField", + "bindingPath": "booleanField", + "code": "booleanField" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "NumericBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "数值字段", + "id": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", + "type": { + "$type": "NumericType", + "length": 0, + "name": "Number", + "displayName": "数字", + "precision": 0 + }, + "path": "numberField", + "originalId": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", + "label": "numberField", + "bindingField": "numberField", + "bindingPath": "numberField", + "code": "numberField" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "日期字段", + "id": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", + "type": { + "$type": "DateType", + "name": "Date", + "displayName": "日期" + }, + "path": "dateField", + "originalId": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", + "label": "dateField", + "bindingField": "dateField", + "bindingPath": "dateField", + "code": "dateField" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "defaultValue": "", + "editor": { + "$type": "EnumField" + }, + "readonly": false, + "originalId": "2092e529-c1cd-444d-98f5-6e11db8be5b7", + "name": "eumu1", + "id": "2092e529-c1cd-444d-98f5-6e11db8be5b7", + "type": { + "$type": "EnumType", + "displayName": "枚举", + "name": "Enum", + "enumValues": [ + { + "disabled": false, + "name": "testname", + "value": "test1" + } + ], + "valueType": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + } + }, + "path": "eumu1", + "code": "eumu1", + "label": "eumu1", + "bindingField": "eumu1", + "bindingPath": "eumu1" + }, + { + "$type": "ComplexField", + "originalId": "9652a7a9-5e65-41a8-a3c0-6d0da6a7504e", + "name": "ass1", + "id": "9652a7a9-5e65-41a8-a3c0-6d0da6a7504e", + "type": { + "$type": "EntityType", + "fields": [ + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "readonly": false, + "originalId": "8760c74c-9141-46ea-a9fb-408db9a41e61", + "name": "ass1", + "id": "8760c74c-9141-46ea-a9fb-408db9a41e61", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "path": "ass1.ass1", + "code": "ass1", + "label": "ass1", + "bindingField": "ass1", + "bindingPath": "ass1.ass1" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "readonly": false, + "originalId": "3c45b0e6-2695-4085-a861-e451ad139e0e", + "name": "编号", + "id": "3c45b0e6-2695-4085-a861-e451ad139e0e", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "path": "ass1.ass1_Code", + "code": "Code", + "label": "ass1_Code", + "bindingField": "ass1_ass1_Code", + "bindingPath": "ass1.ass1_Code" + }, + { + "$type": "SimpleField", + "multiLanguage": false, + "require": false, + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "readonly": false, + "originalId": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", + "name": "名称", + "id": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "path": "ass1.ass1_Name", + "code": "Name", + "label": "ass1_Name", + "bindingField": "ass1_ass1_Name", + "bindingPath": "ass1.ass1_Name" + } + ], + "primary": "ass1", + "entities": [], + "displayName": "用户", + "name": "GspUser8760" + }, + "path": "ass1", + "code": "ass1", + "label": "ass1", + "bindingField": "ass1", + "bindingPath": "ass1" + }, + { + "$type": "ComplexField", + "originalId": "46b400d4-0f47-42f2-9f6e-df6a95c21235", + "name": "dy1", + "id": "46b400d4-0f47-42f2-9f6e-df6a95c21235", + "type": { + "$type": "DynamicObjectType", + "name": "DynamicEntity", + "displayName": null + }, + "path": "dy1", + "code": "dy1", + "label": "dy1", + "bindingField": "dy1", + "bindingPath": "dy1" + } + ], + "primary": "id", + "entities": [ + { + "name": "子表1", + "id": "9b108121-4e38-42d7-bd2c-9c7647dd8d77", + "type": { + "$type": "EntityType", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": true, + "multiLanguage": false, + "readonly": false, + "name": "主键", + "id": "466e5a86-120a-44a1-8ca6-80e1bdfdc3eb", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "ID", + "originalId": "466e5a86-120a-44a1-8ca6-80e1bdfdc3eb", + "label": "id", + "bindingField": "id", + "bindingPath": "id", + "code": "ID" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": true, + "multiLanguage": false, + "readonly": false, + "name": "上级对象主键", + "id": "bec1003e-8a76-4ce2-b6cb-cebf0b426e6a", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "ParentID", + "originalId": "bec1003e-8a76-4ce2-b6cb-cebf0b426e6a", + "label": "parentID", + "bindingField": "parentID", + "bindingPath": "parentID", + "code": "ParentID" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "编号", + "id": "e5a6411a-c30e-4259-8682-53685c53e62a", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "code", + "originalId": "e5a6411a-c30e-4259-8682-53685c53e62a", + "label": "code", + "bindingField": "code", + "bindingPath": "code", + "code": "code" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "名称", + "id": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "name", + "originalId": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", + "label": "name", + "bindingField": "name", + "bindingPath": "name", + "code": "name" + } + ], + "primary": "id", + "entities": [], + "name": "Child1", + "displayName": "子表1" + }, + "label": "child1s", + "code": "Child1" + }, + { + "name": "子表2", + "id": "06d00b52-4477-4c7b-a63d-01654e195364", + "type": { + "$type": "EntityType", + "fields": [ + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": true, + "multiLanguage": false, + "readonly": false, + "name": "主键", + "id": "80fa5266-0fa2-4418-b225-61efcf2309ed", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "ID", + "originalId": "80fa5266-0fa2-4418-b225-61efcf2309ed", + "label": "id", + "bindingField": "id", + "bindingPath": "id", + "code": "ID" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": true, + "multiLanguage": false, + "readonly": false, + "name": "上级对象主键", + "id": "2292dc09-74d7-44fb-9a47-73d48c1e5831", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "ParentID", + "originalId": "2292dc09-74d7-44fb-9a47-73d48c1e5831", + "label": "parentID", + "bindingField": "parentID", + "bindingPath": "parentID", + "code": "ParentID" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "编号", + "id": "0fd1145f-2a5f-4080-aa65-b87d252515a5", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "code", + "originalId": "0fd1145f-2a5f-4080-aa65-b87d252515a5", + "label": "code", + "bindingField": "code", + "bindingPath": "code", + "code": "code" + }, + { + "$type": "SimpleField", + "defaultValue": "", + "editor": { + "$type": "TextBox" + }, + "require": false, + "multiLanguage": false, + "readonly": false, + "name": "名称", + "id": "52eb3ac2-decc-49f3-83b3-1549aec4b4d0", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "path": "name", + "originalId": "52eb3ac2-decc-49f3-83b3-1549aec4b4d0", + "label": "name", + "bindingField": "name", + "bindingPath": "name", + "code": "name" + } + ], + "primary": "id", + "entities": [], + "name": "Child2", + "displayName": "子表2" + }, + "label": "child2s", + "code": "Child2" + } + ], + "name": "VueTest", + "displayName": "Vue测试" + }, + "label": "vueTests", + "code": "VueTest" + } + ], + "extendProperties": { + "enableStdTimeFormat": true + }, + "code": "PCFormTest_frm", + "sourceUri": "api/mydev/farrisvuetest/v1.0/PCFormTest_frm" + } + ], + "states": [], + "stateMachines": [ + { + "id": "PCFormTest_state_machine", + "name": "PC表单测试", + "uri": "ef535e87-96b6-4024-a762-41ca0ae45d6a", + "code": "PCFormTest_frm", + "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front" + } + ], + "viewmodels": [ + { + "id": "root-viewmodel", + "code": "root-viewmodel", + "name": "Vue测试", + "fields": [], + "stateMachine": "PCFormTest_state_machine", + "commands": [ + { + "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "code": "Load1", + "name": "执行加载页面后初始方法", + "params": [ + { + "name": "action", + "shownName": "初始方法", + "value": "{UISTATE~/#{root-component}/action}", + "defaultValue": null + } + ], + "handlerName": "Load", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "246a275c-88c9-4c8a-aa82-be6a950a4325", + "code": "LoadAndAdd1", + "name": "加载并新增数据", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "handlerName": "LoadAndAdd", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "70acc053-fa15-45be-851c-cf694e1bcaf7", + "code": "LoadAndView1", + "name": "加载并查看数据", + "params": [ + { + "name": "id", + "shownName": "待查看数据的标识", + "value": "{UISTATE~/#{root-component}/id}", + "defaultValue": null + }, + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + }, + { + "name": "transitionActionParamName", + "shownName": "状态迁移动作参数编号", + "value": "", + "defaultValue": null + } + ], + "handlerName": "LoadAndView", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", + "code": "LoadAndEdit1", + "name": "加载并编辑数据", + "params": [ + { + "name": "id", + "shownName": "待编辑数据的标识", + "value": "{UISTATE~/#{root-component}/id}", + "defaultValue": null + }, + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + }, + { + "name": "transitionActionParamName", + "shownName": "状态迁移动作参数编号", + "value": "", + "defaultValue": null + } + ], + "handlerName": "LoadAndEdit", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "f90aadfa-988c-4da5-a5db-1416c3333794", + "code": "Add1", + "name": "新增一条数据", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "handlerName": "Add", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "code": "Edit1", + "name": "编辑当前数据", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + } + ], + "handlerName": "Edit", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "31b814db-01e4-407d-8fad-0f08dbb01999", + "code": "Save1", + "name": "保存变更", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "保存成功提示信息", + "value": "", + "defaultValue": null + } + ], + "handlerName": "Save", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "code": "Cancel1", + "name": "取消变更", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "handlerName": "Cancel", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "20dbc06c-6e46-46f0-b8f2-a7fd951d722e", + "code": "rootTest1", + "name": "test1", + "params": [], + "handlerName": "test", + "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false + }, + { + "id": "45e98f07-494f-4171-9129-817552fb91a8", + "code": "rootTest2", + "name": "test2", + "params": [], + "handlerName": "test", + "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "01760ad7-e092-4d91-88d8-89f9e13566fa", + "code": "rootTest3", + "name": "测试3", + "params": [], + "handlerName": "test", + "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", + "code": "rootTest4", + "name": "测试4", + "params": [], + "handlerName": "test", + "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + } + ], + "states": [ + { + "id": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", + "code": "bffSysFormConfigId", + "name": "表单流程配置", + "type": "String", + "category": "remote" + } + ], + "bindTo": "/", + "enableValidation": false, + "enableUnifiedSession": false + }, + { + "id": "basic-form-viewmodel", + "code": "basic-form-viewmodel", + "name": "Vue测试", + "fields": [ + { + "type": "Form", + "id": "e7c488df-0101-468f-ae3f-40c76c0f06b0", + "fieldName": "billStatus_BillState", + "groupId": null, + "groupName": null, + "updateOn": "change", + "fieldSchema": { + "name": "工单状态" + } + }, + { + "type": "Form", + "id": "3410f627-358c-4a1a-99b4-800e9d0211e0", + "fieldName": "name", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": { + "name": "工单编号", + "editor": { + "$type": "lookup" + } + } + }, + { + "type": "Form", + "id": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", + "fieldName": "numberField", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": { + "name": "工时" + } + }, + { + "type": "Form", + "id": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", + "fieldName": "dateField", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": { + "name": "制单日期" + } + }, + { + "type": "Form", + "id": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", + "fieldName": "processInstance_ProcessInstance", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "radio-group" + }, + "name": "工单类型" + } + }, + { + "type": "Form", + "id": "c419df06-d982-44ca-8e48-b366b778049a", + "fieldName": "booleanField", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "change", + "fieldSchema": { + "editor": { + "$type": "switch" + }, + "name": "是否处理" + } + }, + { + "type": "Form", + "id": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", + "fieldName": "code", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "time-picker" + }, + "name": "制单时间" + } + }, + { + "type": "Form", + "id": "2092e529-c1cd-444d-98f5-6e11db8be5b7", + "fieldName": "eumu1", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "change", + "fieldSchema": { + "editor": { + "$type": "combo-list" + } + } + }, + { + "type": "Form", + "id": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", + "fieldName": "ass1_ass1_Name", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "input-group" + } + } + } + ], + "serviceRefs": [], + "commands": [], + "states": [ + { + "id": "472eb525-a024-4a49-b51f-cdcfac1df8c8", + "category": "locale", + "code": "isCodeReadonly", + "name": "isCodeReadonly", + "type": "Object", + "value": { + "sssss": 22222 + } + } + ], + "bindTo": "/", + "parent": "root-viewmodel", + "enableValidation": true + }, + { + "id": "data-grid-z5vj-component-viewmodel", + "code": "data-grid-z5vj-component-viewmodel", + "name": "子表1", + "bindTo": "/child1s", + "parent": "root-viewmodel", + "fields": [ + { + "type": "Form", + "id": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", + "fieldName": "name", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": {} + }, + { + "type": "Form", + "id": "e5a6411a-c30e-4259-8682-53685c53e62a", + "fieldName": "code", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": {} + } + ], + "commands": [ + { + "id": "d0d339b9-958b-4426-a108-e863300e4151", + "code": "datagridz5vjAddItem1", + "name": "增加一条子表数据", + "params": [], + "handlerName": "AddItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "573952e2-118d-4773-8cf7-347e97e319ca", + "code": "datagridz5vjRemoveItem1", + "name": "删除一条子表数据", + "params": [ + { + "name": "id", + "shownName": "待删除子表数据的标识", + "value": "{DATA~/child1s/id}" + } + ], + "handlerName": "RemoveItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + } + ], + "states": [], + "enableValidation": true + } + ], + "components": [ + { + "id": "root-component", + "type": "component", + "viewModel": "root-viewmodel", + "componentType": "frame", + "onInit": "Load1", + "contents": [ + { + "id": "root-layout", + "type": "content-container", + "appearance": { + "class": "f-page f-page-card f-page-is-mainsubcard" + }, + "contents": [ + { + "id": "page-header", + "type": "page-header", + "appearance": { + "class": "f-page-header" + }, + "iconClass": "f-title-icon f-text-orna-bill", + "icon": "f-icon f-icon-page-title-record", + "title": "PC表单测试", + "toolbar": { + "type": "response-toolbar", + "buttons": [ + { + "id": "button-add", + "type": "response-toolbar-item", + "appearance": { + "class": "btn-primary" + }, + "disabled": { + "type": "StateMachine", + "status": false, + "field": "canAdd" + }, + "onClick": "Add1", + "text": "新增" + }, + { + "id": "button-edit", + "type": "response-toolbar-item", + "text": "编辑", + "disabled": "!viewModel.stateMachine['canEdit']", + "onClick": "Edit1" + }, + { + "id": "button-save", + "type": "response-toolbar-item", + "text": "保存", + "disabled": { + "type": "StateMachine", + "status": false, + "field": "canSave" + }, + "onClick": "Save1" + }, + { + "id": "button-cancel", + "type": "response-toolbar-item", + "text": "取消", + "disabled": "!viewModel.stateMachine['canCancel']", + "onClick": "Cancel1" + }, + { + "id": "toolbar_item_2362", + "type": "response-toolbar-item", + "text": "按钮", + "appearance": { + "class": "btn btn-secondary f-btn-ml" + }, + "onClick": "rootTest2" + }, + { + "id": "toolbar_item_4335", + "type": "response-toolbar-item", + "text": "触发组合表单", + "onClick": "rootTest4" + }, + { + "id": "toolbar_item_1125", + "type": "response-toolbar-item", + "text": "弹出帮助" + } + ] + } + }, + { + "id": "main-container", + "type": "content-container", + "appearance": { + "class": "f-page-main" + }, + "contents": [ + { + "id": "like-card-container", + "type": "content-container", + "appearance": { + "class": "f-struct-like-card" + }, + "contents": [ + { + "id": "basic-form-component-ref", + "type": "component-ref", + "component": "basic-form-component" + }, + { + "id": "container-0133", + "type": "content-container", + "contents": [ + { + "id": "section-0133", + "type": "section", + "contents": [ + { + "id": "data-grid-z5vj-component-ref", + "type": "component-ref", + "component": "data-grid-z5vj-component" + } + ], + "appearance": { + "class": "f-section-in-mainsubcard" + }, + "mainTitle": "子表1", + "toolbar": { + "id": "section-0133_toolbar", + "buttons": [ + { + "id": "button-add-data-grid-z5vj", + "type": "section-toolbar-item", + "text": "新增", + "disabled": "!viewModel.stateMachine['canAddDetail']", + "onClick": "root-viewModel.data-grid-z5vj-component-viewmodel.datagridz5vjAddItem1" + }, + { + "id": "button-remove-data-grid-z5vj", + "type": "section-toolbar-item", + "text": "删除", + "disabled": "!viewModel.stateMachine['canRemoveDetail']", + "onClick": "root-viewModel.data-grid-z5vj-component-viewmodel.datagridz5vjRemoveItem1" + } + ] + } + } + ], + "appearance": { + "class": "f-struct-wrapper" + } + } + ], + "isLikeCardContainer": true + } + ] + } + ] + } + ], + "name": "Vue测试", + "enableValidation": false, + "onAfterViewInit": null + }, + { + "id": "basic-form-component", + "type": "component", + "viewModel": "basic-form-viewmodel", + "componentType": "form", + "formColumns": 4, + "appearance": { + "class": "f-struct-wrapper" + }, + "contents": [ + { + "id": "basic-form-section", + "type": "section", + "appearance": { + "class": "f-section-form f-section-in-mainsubcard" + }, + "mainTitle": "基本信息", + "contents": [ + { + "id": "basic-form-layout", + "type": "response-form", + "appearance": { + "class": "f-form-layout farris-form farris-form-controls-inline" + }, + "contents": [ + { + "id": "name_3410f627_2m6a", + "type": "form-group", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2", + "style": "color:red" + }, + "label": "工单编号", + "binding": { + "type": "Form", + "path": "name", + "field": "3410f627-358c-4a1a-99b4-800e9d0211e0", + "fullPath": "name" + }, + "editor": { + "type": "lookup", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "maxLength": 36, + "dataSource": { + "displayName": "系统组织帮助(sysorghlp)", + "idField": "id", + "type": "ViewObject", + "uri": "lookup.name_3410f627_2m6a" + }, + "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", + "displayType": "TreeList", + "textField": "name", + "pagination": { + "enable": true, + "sizeLimits": [ + 10, + 20, + 30, + 50 + ], + "size": 20, + "showLimits": true, + "showGoto": false, + "mode": "server" + }, + "loadTreeDataType": "default", + "onlySelectLeaf": false, + "multiSelect": true, + "required": true + }, + "path": "name", + "updateOn": "blur" + }, + { + "id": "billStatus_BillState_e7c488df_x74m", + "type": "form-group", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2 pc-red" + }, + "label": "工单状态", + "binding": { + "type": "Form", + "path": "billStatus_BillState", + "field": "e7c488df-0101-468f-ae3f-40c76c0f06b0", + "fullPath": "BillStatus.BillState" + }, + "editor": { + "type": "combo-list", + "data": [ + { + "disabled": false, + "name": "制单", + "value": "Billing" + }, + { + "disabled": false, + "name": "提交审批", + "value": "SubmitApproval" + }, + { + "disabled": false, + "name": "审批通过", + "value": "Approved" + }, + { + "disabled": false, + "name": "审批不通过", + "value": "ApprovalNotPassed" + } + ], + "textField": "name", + "valueField": "value", + "idField": "value", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + } + }, + "path": "billStatus.billState", + "updateOn": "change" + }, + { + "id": "booleanField_c419df06_drqr", + "type": "form-group", + "editor": { + "type": "switch", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + } + }, + "label": "是否处理", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "booleanField", + "field": "c419df06-d982-44ca-8e48-b366b778049a", + "fullPath": "booleanField" + }, + "path": "booleanField", + "updateOn": "change" + }, + { + "id": "processInstance_ProcessInstance_5d3fd927_6mxv", + "type": "form-group", + "editor": { + "type": "radio-group", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "data": [], + "idField": "value", + "valueField": "value", + "textField": "name", + "maxLength": 36 + }, + "label": "工单类型", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "processInstance_ProcessInstance", + "field": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", + "fullPath": "ProcessInstance.ProcessInstance" + }, + "path": "processInstance.processInstance", + "updateOn": "blur" + }, + { + "id": "numberField_cc6b21b3_dyee", + "type": "form-group", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "label": "工时", + "binding": { + "type": "Form", + "path": "numberField", + "field": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", + "fullPath": "numberField" + }, + "editor": { + "type": "number-spinner", + "nullable": true, + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "precision": 0, + "maxLength": 0 + }, + "path": "numberField", + "updateOn": "blur" + }, + { + "id": "dateField_e18b1dc0_so35", + "type": "form-group", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "label": "制单日期", + "binding": { + "type": "Form", + "path": "dateField", + "field": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", + "fullPath": "dateField" + }, + "editor": { + "type": "date-picker", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "fieldType": "Date" + }, + "path": "dateField", + "updateOn": "blur" + }, + { + "id": "ass1_ass1_Name_63b04a7c_p63a", + "type": "form-group", + "editor": { + "type": "input-group", + "readonly": "!viewModel.stateMachine['editable']", + "maxLength": 36 + }, + "label": "名称", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "ass1_ass1_Name", + "field": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", + "fullPath": "ass1.ass1_Name" + }, + "path": "ass1.ass1_Name" + }, + { + "id": "code_d63b5e0f_nzbn", + "type": "form-group", + "editor": { + "type": "time-picker", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "maxLength": 36 + }, + "label": "制单时间", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "code", + "field": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", + "fullPath": "code" + }, + "path": "code", + "updateOn": "blur" + }, + { + "id": "eumu1_2092e529_k19l", + "type": "form-group", + "editor": { + "type": "combo-list", + "readonly": "!viewModel.stateMachine['editable']", + "data": [ + { + "disabled": false, + "name": "testname", + "value": "test1" + } + ], + "idField": "value", + "valueField": "value", + "textField": "name" + }, + "label": "eumu1", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "eumu1", + "field": "2092e529-c1cd-444d-98f5-6e11db8be5b7", + "fullPath": "eumu1" + }, + "path": "eumu1" + } + ], + "controlsInline": true, + "formAutoIntl": true + } + ], + "enableAccordion": "default" + } + ], + "name": "Vue测试" + }, + { + "id": "data-grid-z5vj-component", + "type": "component", + "contents": [ + { + "id": "data-grid-z5vj-container", + "type": "content-container", + "contents": [ + { + "id": "data-grid-z5vj-dataGrid", + "type": "data-grid", + "columns": [ + { + "id": "name_49fca8d8_r0yy", + "type": "data-grid-column", + "title": "名称", + "field": "name", + "binding": { + "type": "Form", + "path": "name", + "field": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", + "fullPath": "name" + }, + "dataType": "string", + "editor": { + "type": "input-group", + "readonly": "!viewModel.stateMachine['editable']", + "maxLength": 36 + }, + "filter": "", + "showSetting": false, + "actualWidth": 120 + }, + { + "id": "code_e5a6411a_lvjz", + "type": "data-grid-column", + "title": "编号", + "field": "code", + "binding": { + "type": "Form", + "path": "code", + "field": "e5a6411a-c30e-4259-8682-53685c53e62a", + "fullPath": "code" + }, + "dataType": "string", + "editor": { + "type": "input-group", + "readonly": "!viewModel.stateMachine['editable']", + "maxLength": 36 + }, + "filter": "", + "showSetting": true, + "actualWidth": 120 + } + ], + "appearance": { + "class": "f-component-grid" + }, + "fieldEditable": true, + "dataSource": "child1s", + "editable": "viewModel.stateMachine['editable']", + "pagination": { + "enable": false + } + } + ], + "appearance": { + "class": "f-grid-is-sub f-utils-flex-column" + } + } + ], + "viewModel": "data-grid-z5vj-component-viewmodel", + "componentType": "data-grid", + "appearance": { + "class": "f-struct-is-subgrid" + } + } + ], + "webcmds": [ + { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "path": "/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd", + "name": "CardController.webcmd", + "refedHandlers": [ + { + "host": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "handler": "Load" + }, + { + "host": "246a275c-88c9-4c8a-aa82-be6a950a4325", + "handler": "LoadAndAdd" + }, + { + "host": "70acc053-fa15-45be-851c-cf694e1bcaf7", + "handler": "LoadAndView" + }, + { + "host": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", + "handler": "LoadAndEdit" + }, + { + "host": "f90aadfa-988c-4da5-a5db-1416c3333794", + "handler": "Add" + }, + { + "host": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "handler": "Edit" + }, + { + "host": "31b814db-01e4-407d-8fad-0f08dbb01999", + "handler": "Save" + }, + { + "host": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "handler": "Cancel" + }, + { + "host": "d0d339b9-958b-4426-a108-e863300e4151", + "handler": "AddItem" + }, + { + "host": "573952e2-118d-4773-8cf7-347e97e319ca", + "handler": "RemoveItem" + } + ], + "code": "CardController", + "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" + }, + { + "id": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "path": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", + "name": "PCFormTest_frm_Controller.webcmd", + "refedHandlers": [ + { + "host": "20dbc06c-6e46-46f0-b8f2-a7fd951d722e", + "handler": "test" + }, + { + "host": "45e98f07-494f-4171-9129-817552fb91a8", + "handler": "test" + } + ], + "code": "PCFormTest_frm_Controller", + "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front" + }, + { + "id": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "path": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", + "name": "vuetest1_frm_Controller.webcmd", + "code": "vuetest1_frm_Controller", + "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", + "refedHandlers": [ + { + "host": "01760ad7-e092-4d91-88d8-89f9e13566fa", + "handler": "test" + }, + { + "host": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", + "handler": "test" + } + ] + } + ], + "projectName": "bo-vueformtest-front", + "customClass": { + "root-component": ".pc-red{\r\n color:red\r\n}", + "card-component": ".test{\r\n color:green\r\n}", + "basic-form-component": ".test2{\r\n color:black\r\n}", + "child1-component": "" + }, + "actions": [ + { + "sourceComponent": { + "id": "button-add", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "f90aadfa-988c-4da5-a5db-1416c3333794", + "label": "Add1", + "name": "新增一条数据", + "handlerName": "Add", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-edit", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "label": "Edit1", + "name": "编辑当前数据", + "handlerName": "Edit", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-save", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "31b814db-01e4-407d-8fad-0f08dbb01999", + "label": "Save1", + "name": "保存变更", + "handlerName": "Save", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "保存成功提示信息", + "value": "", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-cancel", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "label": "Cancel1", + "name": "取消变更", + "handlerName": "Cancel", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "toolbar_item_2362", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "45e98f07-494f-4171-9129-817552fb91a8", + "label": "rootTest2", + "name": "test2", + "handlerName": "test", + "params": [], + "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "label": "PCFormTest_frm_Controller", + "name": "PC卡片表单测试_frm_Controller" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "toolbar_item_4335", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", + "label": "rootTest4", + "name": "测试4", + "handlerName": "test", + "params": [], + "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "label": "vuetest1_frm_Controller", + "name": "vuetest1_frm_Controller" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-add-data-grid-z5vj", + "viewModelId": "data-grid-z5vj-component-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "data-grid-z5vj-component", + "viewModelId": "data-grid-z5vj-component-viewmodel" + }, + "command": { + "id": "d0d339b9-958b-4426-a108-e863300e4151", + "label": "datagridz5vjAddItem1", + "name": "增加一条子表数据", + "handlerName": "AddItem", + "params": [], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-remove-data-grid-z5vj", + "viewModelId": "data-grid-z5vj-component-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "data-grid-z5vj-component", + "viewModelId": "data-grid-z5vj-component-viewmodel" + }, + "command": { + "id": "573952e2-118d-4773-8cf7-347e97e319ca", + "label": "datagridz5vjRemoveItem1", + "name": "删除一条子表数据", + "handlerName": "RemoveItem", + "params": [ + { + "name": "id", + "shownName": "待删除子表数据的标识", + "value": "{DATA~/child1s/id}" + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onInit", + "name": "初始化事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "label": "Load1", + "name": "执行加载页面后初始方法", + "handlerName": "Load", + "params": [ + { + "name": "action", + "shownName": "初始方法", + "value": "{UISTATE~/#{root-component}/action}", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + } + ], + "communications": [], + "customStyleFile": "/apps/MyDev/FarrisVueTest/web/bo-vueformtest-front/PCFormTest/PCFormTest.css", + "externalComponents": [ + { + "id": "sysorghlp-5vsx", + "type": "lookup", + "enableToSelect": false, + "dataSource": { + "displayName": "系统组织帮助(sysorghlp)", + "idField": "id", + "type": "ViewObject", + "uri": "lookup.sysorghlp_5vsx" + }, + "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", + "displayType": "TreeList", + "textField": "name", + "pagination": { + "enable": true, + "sizeLimits": [ + 10, + 20, + 30, + 50 + ], + "size": 20, + "showLimits": true, + "showGoto": false, + "mode": "server" + }, + "loadTreeDataType": "default", + "onlySelectLeaf": false, + "dialog": { + "title": "系统组织帮助" + }, + "name": "系统组织帮助" + }, + { + "id": "vuetest1-02de", + "type": "modal", + "name": "vuetest1", + "title": "vuetest1", + "contents": [ + { + "id": "external-container-1e92e", + "type": "external-container", + "appearance": { + "class": "position-relative h-100" + }, + "externalComponent": { + "id": "7df43f6c-35ff-429c-ab17-737a3d673ba4", + "code": "vuetest1", + "name": "vuetest1", + "fileName": "vuetest1.frm", + "relativePath": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components" + }, + "onCommunication": "" + } + ] + }, + { + "id": "UserOrgTest-t8m3", + "type": "lookup", + "enableToSelect": false, + "dataSource": { + "displayName": "用户组织帮助(UserOrgTest)", + "idField": "id", + "type": "ViewObject", + "uri": "lookup.UserOrgTest_t8m3" + }, + "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799", + "displayType": "NavTreeList", + "textField": "name", + "pagination": { + "enable": true, + "sizeLimits": [ + 10, + 20, + 30, + 50 + ], + "size": 20, + "showLimits": true, + "showGoto": false, + "mode": "server" + }, + "loadTreeDataType": "default", + "onlySelectLeaf": false, + "dialog": { + "title": "用户组织帮助" + }, + "name": "用户组织帮助" + } + ], + "hiddenComponents": [] + } +} \ No newline at end of file diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java new file mode 100644 index 00000000..3cdde043 --- /dev/null +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java @@ -0,0 +1,40 @@ +/* + * 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.webservice; + +import com.fasterxml.jackson.databind.JsonNode; +import com.inspur.edp.web.common.io.FileUtility; +import com.inspur.edp.web.common.serialize.SerializeUtility; +import com.inspur.edp.web.formmetadata.api.entity.SmartFormEntity; +import com.inspur.edp.web.formmetadata.service.SmartFormServiceImpl; +import org.junit.jupiter.api.Test; + + +class SmartFormServiceImplTest { + + @Test + public void testExtract(){ + //String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); + String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-angular.json"); + + JsonNode jsonNode = SerializeUtility.getInstance().deserialize(jsonContent, JsonNode.class); + SmartFormServiceImpl SmartFormServiceImpl = new SmartFormServiceImpl(); + SmartFormEntity smartFormEntity = SmartFormServiceImpl.extract(jsonNode,false); + + System.out.println(smartFormEntity); + } +} -- Gitee From 3854ca0cad7335cc5097fcf842583c04d09d26d1 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 19 Dec 2025 08:45:24 +0800 Subject: [PATCH 11/48] =?UTF-8?q?Revert=20"Revert=20"=E6=8F=90=E5=8F=96?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=80=BC=E5=B1=9E=E6=80=A7""?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit df41529b16317cc37401af33c302a2c50ff43435. --- .../edp/web/formmetadata/service/SmartFormServiceImpl.java | 1 + .../inspur/edp/web/formmetadata/webservice/PCForm-angular.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java index bbd0881f..1095a79b 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java @@ -289,6 +289,7 @@ public class SmartFormServiceImpl implements SmartFormService { smartFormField.setDataType(getStringValue(fieldNode, "/type/valueType/$type")); } } + smartFormField.getProperties().put("defaultValue", getStringValue(fieldNode, "/defaultValue")); } private String getStringValue(JsonNode node, String key){ diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json index 2839e4a2..c80db8a7 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json @@ -462,7 +462,7 @@ "editor": { "$type": "TextBox" }, - "defaultValue": "", + "defaultValue": "2", "path": "ID", "type": { "$type": "StringType", -- Gitee From dc216b5c71fca7377f5f2bff3d75b94d018be3cc Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 19 Dec 2025 11:46:10 +0800 Subject: [PATCH 12/48] =?UTF-8?q?vue=E8=A1=A8=E6=A0=BC=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E5=88=97=E6=8C=87=E4=BB=A4=E8=B5=84=E6=BA=90=E9=A1=B9=E6=8F=90?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DataGridI18nResourceStrategy.java | 31 +++++++++++++++---- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java index 79cb8f6f..c0686795 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java @@ -23,6 +23,7 @@ import com.inspur.edp.web.formmetadata.i18n.I18nResourceItemManager; import com.inspur.edp.web.formmetadata.i18n.component.ComponentUtility; import com.inspur.edp.web.formmetadata.i18n.component.strategy.i18nresourcestrategy.CommonStrategy.GridCommonStrategy; import com.inspur.edp.web.formmetadata.i18n.constant.I18nResourceConstant; +import jodd.util.ObjectUtil; import java.util.ArrayList; import java.util.HashMap; @@ -72,22 +73,40 @@ public class DataGridI18nResourceStrategy extends GridCommonStrategy { } //提取columns里的行内容 - if(currentComponent.containsKey("columns")){ - I18nResourceItemCollection columnsI18nResourceItemCollection=extractedColumns( i18nResourceItemBaseId, currentComponent); + if (currentComponent.containsKey("columns")) { + I18nResourceItemCollection columnsI18nResourceItemCollection = extractedColumns(i18nResourceItemBaseId, currentComponent); if (columnsI18nResourceItemCollection != null && columnsI18nResourceItemCollection.size() > 0) { i18nResourceItemCollection.addRange(columnsI18nResourceItemCollection); } } //提取handing内的行号值 - if(currentComponent.containsKey("rowNumber")){ + if (currentComponent.containsKey("rowNumber")) { String currentComponentType = ComponentUtility.getInstance().getType(currentComponent); String currentComponentId = ComponentUtility.getInstance().getId(currentComponent); - HashMaprowNumber= (HashMap) currentComponent.get("rowNumber"); - String heading= (String) rowNumber.get("heading"); - String generatedComponentId = currentComponentId + "/rowNumber/heading"; + HashMap rowNumber = (HashMap) currentComponent.get("rowNumber"); + String heading = (String) rowNumber.get("heading"); + String generatedComponentId = currentComponentId + "/rowNumber/heading"; I18nResourceItem footerButtonI18nResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedComponentId, heading, heading); this.addInCollection(i18nResourceItemCollection, footerButtonI18nResourceItem); } + //提取command + if (currentComponent.containsKey("command")) { + String currentComponentId = ComponentUtility.getInstance().getId(currentComponent); + HashMap command = (HashMap) currentComponent.get("command"); + if (command.containsKey("commands")) { + List> commands = (List>) command.get("commands"); + if(command.containsKey("enableType") && "custom".equals((String) command.get("enableType"))){ + commands.forEach(cmd -> { + if (cmd.get("value") == null || StringUtility.isNullOrEmpty((String) cmd.get("value"))) { + return; + } + String generatedComponentId = currentComponentId + "/command/commands/" + (String) cmd.get("value"); + I18nResourceItem footerButtonI18nResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedComponentId, (String) cmd.get("text"), (String) cmd.get("text")); + this.addInCollection(i18nResourceItemCollection, footerButtonI18nResourceItem); + }); + } + } + } return i18nResourceItemCollection; } -- Gitee From ca349d5210c1d4651913bdcf9233250bb2ff14e4 Mon Sep 17 00:00:00 2001 From: lijiangkun Date: Wed, 7 Jan 2026 09:18:00 +0800 Subject: [PATCH 13/48] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=8F=90=E5=8F=96?= =?UTF-8?q?=E7=B2=BE=E5=BA=A6=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/SmartFormServiceImpl.java | 8 + .../webservice/PCForm-angular.json | 532 +-- .../formmetadata/webservice/PCForm-vue.json | 3931 ++++++++++++----- .../webservice/SmartFormServiceImplTest.java | 9 +- 4 files changed, 3165 insertions(+), 1315 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java index 399ca5f4..153058a2 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/service/SmartFormServiceImpl.java @@ -297,6 +297,14 @@ public class SmartFormServiceImpl implements SmartFormService { } } smartFormField.getProperties().put("defaultValue", getStringValue(fieldNode, "/defaultValue")); + + Object precision = smartFormField.getProperties().get("precision"); + if(precision == null){ + Integer defaultPrecision = getNumberValue(fieldNode, "/type/precision"); + if(defaultPrecision != null){ + smartFormField.getProperties().put("precision", defaultPrecision); + } + } } private String getStringValue(JsonNode node, String key){ diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json index 8f444c38..ea610671 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json @@ -462,7 +462,7 @@ "editor": { "$type": "TextBox" }, - "defaultValue": "2", + "defaultValue": "", "path": "ID", "type": { "$type": "StringType", @@ -1519,7 +1519,7 @@ "valueField": "id", "textField": "name", "displayType": "NavTreeList", - "mapFields": "", + "mapFields": "{'id':'version','code':'numberField1,name'}", "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799" }, "name": "编号", @@ -1574,6 +1574,36 @@ "valueChanged": "", "updateOn": "change", "fieldSchema": {} + }, + { + "type": "Form", + "id": "2bd38907-b2b6-4ff2-bcc4-5c4d5534d02c", + "fieldName": "treeField_ParentElement", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "CheckGroup" + } + } + }, + { + "type": "Form", + "id": "9d012316-1497-4526-86f9-290aab400e0b", + "fieldName": "attachmentFile_FileName", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "RadioGroup" + } + } } ], "serviceRefs": [], @@ -1595,15 +1625,16 @@ "id": "childattachment1egs8AddFileRows-id", "code": "childattachment1egs8AddFileRows", "name": "批量添加文件数据", - "handlerName": "addFileRows", - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", "params": [ { "name": "fileInfoFieldPath", "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" + "value": "/childAttachment1s/attachment", + "defaultValue": null } ], + "handlerName": "addFileRows", + "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", "shortcut": {}, "extensions": [], "isInvalid": false @@ -1612,15 +1643,16 @@ "id": "childattachment1egs8RemoveFileRows-id", "code": "childattachment1egs8RemoveFileRows", "name": "批量删除文件数据", - "handlerName": "removeFileRows", - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", "params": [ { "name": "fileInfoFieldPath", "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" + "value": "/childAttachment1s/attachment", + "defaultValue": null } ], + "handlerName": "childattachment1egs8RemoveFileRows", + "cmpId": "983da771-6610-4ebe-9517-8e9ac6e938f8", "shortcut": {}, "extensions": [], "isInvalid": false @@ -1634,16 +1666,16 @@ "allowEmpty": true }, { - "id": "runtimeitem1-vgy0-component-viewmodel", - "code": "runtimeitem1-vgy0-component-viewmodel", - "name": "{{'test' }}", + "id": "runtimeitem1-stae-component-viewmodel", + "code": "runtimeitem1-stae-component-viewmodel", + "name": "运行时明细1", "bindTo": "/runtimeItem1s", "parent": "root-viewmodel", "fields": [ { "type": "Form", - "id": "3df94820-efa6-48a6-8d47-112ac47e3302", - "fieldName": "id", + "id": "11bdf429-f332-475b-983b-ae82fba00e8f", + "fieldName": "noteField", "groupId": null, "groupName": null, "updateOn": "blur", @@ -1651,11 +1683,11 @@ }, { "type": "Form", - "id": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "fieldName": "parentID", + "id": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "fieldName": "booleanField", "groupId": null, "groupName": null, - "updateOn": "blur", + "updateOn": "change", "fieldSchema": {} }, { @@ -1665,9 +1697,7 @@ "groupId": null, "groupName": null, "updateOn": "blur", - "fieldSchema": { - "require": true - } + "fieldSchema": {} }, { "type": "Form", @@ -1677,28 +1707,12 @@ "groupName": null, "updateOn": "blur", "fieldSchema": {} - }, - { - "type": "Form", - "id": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "fieldName": "booleanField", - "groupId": null, - "groupName": null, - "updateOn": "change", - "fieldSchema": { - "editor": { - "$type": "CheckBox" - }, - "name": "布尔", - "require": false, - "readonly": false - } } ], "commands": [ { - "id": "3a2f8aee-605b-4789-a971-43ba31c60b61", - "code": "runtimeitem1vgy0AddItem1", + "id": "d7d5d33a-0b1b-4477-9c9f-bfdcc3a9b9d7", + "code": "runtimeitem1staeAddItem1", "name": "增加一条子表数据1", "params": [], "handlerName": "AddItem", @@ -1708,14 +1722,14 @@ "isInvalid": false }, { - "id": "5a844e51-0196-44e6-ac4c-e9c4d235a894", - "code": "runtimeitem1vgy0RemoveItem1", + "id": "1ec4653e-3b87-45aa-8a8e-e1a689b0ca9d", + "code": "runtimeitem1staeRemoveItem1", "name": "删除一条子表数据1", "params": [ { "name": "id", "shownName": "待删除子表数据的标识", - "value": "{DATA~/#{runtimeitem1-vgy0-component}/runtimeItem1s/id}" + "value": "{DATA~/#{runtimeitem1-stae-component}/runtimeItem1s/id}" } ], "handlerName": "RemoveItem", @@ -1729,8 +1743,7 @@ "enableValidation": true, "pagination": { "enable": false - }, - "allowEmpty": true + } } ], "components": [ @@ -1915,7 +1928,7 @@ "visible": true }, { - "id": "container_8036", + "id": "container_6845", "type": "ContentContainer", "appearance": { "class": "f-struct-wrapper" @@ -1923,7 +1936,7 @@ "visible": true, "contents": [ { - "id": "section_8036", + "id": "section_6845", "type": "Section", "appearance": { "class": "f-section-in-mainsubcard" @@ -1950,9 +1963,9 @@ "extendedAreaTemplate": "", "contents": [ { - "id": "runtimeitem1-vgy0-component-ref", + "id": "runtimeitem1-stae-component-ref", "type": "ComponentRef", - "component": "runtimeitem1-vgy0-component", + "component": "runtimeitem1-stae-component", "visible": true } ], @@ -1962,7 +1975,7 @@ "position": "inHead", "contents": [ { - "id": "runtimeitem1-vgy0-component-button-add", + "id": "runtimeitem1-stae-component-button-add", "type": "SectionToolbarItem", "title": "新增", "disable": "!viewModel.stateMachine['canAddDetail']", @@ -1970,14 +1983,14 @@ "class": "btn btn-secondary f-btn-ml" }, "visible": true, - "click": "root-viewModel.runtimeitem1-vgy0-component-viewmodel.runtimeitem1vgy0AddItem1", + "click": "root-viewModel.runtimeitem1-stae-component-viewmodel.runtimeitem1staeAddItem1", "items": [], "split": false, "visibleControlledByRules": true, "disableControlledByRules": true }, { - "id": "runtimeitem1-vgy0-component-button-remove", + "id": "runtimeitem1-stae-component-button-remove", "type": "SectionToolbarItem", "title": "删除", "disable": "!viewModel.stateMachine['canRemoveDetail']", @@ -1985,7 +1998,7 @@ "class": "btn btn-secondary f-btn-ml" }, "visible": true, - "click": "root-viewModel.runtimeitem1-vgy0-component-viewmodel.runtimeitem1vgy0RemoveItem1", + "click": "root-viewModel.runtimeitem1-stae-component-viewmodel.runtimeitem1staeRemoveItem1", "items": [], "split": false, "visibleControlledByRules": true, @@ -2178,7 +2191,9 @@ "hourStep": 1, "minuteStep": 1, "secondStep": 1, - "firstDayOfWeek": "mo" + "firstDayOfWeek": "mo", + "labelAutoOverflow": false, + "updateOn": "blur" }, { "id": "billStatus_BillState_a54c2230_pl5h", @@ -2309,7 +2324,9 @@ "message": "" }, "autoHeight": false, - "maxHeight": 500 + "maxHeight": 500, + "labelAutoOverflow": false, + "updateOn": "blur" }, { "id": "code_b86fa068_y9fz", @@ -2350,7 +2367,7 @@ "showCloseButton": null, "resizable": null, "buttonAlign": null, - "mapFields": "{'userType':'version','code':'version'}", + "mapFields": "{'id':'version','code':'numberField1,name'}", "lookupStyle": "popup", "holdPlace": false, "isTextArea": true, @@ -2553,6 +2570,54 @@ "fieldValueChanging": "", "fieldValueChanged": "" }, + { + "id": "treeField_ParentElement_2bd38907_g3u4", + "type": "CheckGroup", + "titleSourceType": "static", + "title": "父节点字段", + "controlSource": "Farris", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "checked": false, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "binding": { + "type": "Form", + "path": "treeField_ParentElement", + "field": "2bd38907-b2b6-4ff2-bcc4-5c4d5534d02c", + "fullPath": "treeField.ParentElement" + }, + "visible": true, + "size": null, + "holdPlace": false, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "setCheckboxData": "", + "items": null, + "isHorizontal": true, + "splitter": null, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "dataSourceType": "static", + "textField": "name", + "valueField": "value", + "enableAppend": false, + "inputAppendType": "button", + "inputAppendDisabled": false, + "changeValue": null, + "path": "treeField.parentElement", + "visibleControlledByRules": false, + "readonlyControlledByRules": false, + "requireControlledByRules": false, + "labelAutoOverflow": false, + "updateOn": "blur", + "fieldValueChanging": "", + "fieldValueChanged": "" + }, { "id": "numberField1_a53ae211_gle2", "type": "NumericBox", @@ -2610,6 +2675,45 @@ "labelAutoOverflow": false, "updateOn": "blur" }, + { + "id": "attachmentFile_FileName_9d012316_epmk", + "type": "RadioGroup", + "titleSourceType": "static", + "title": "附件名称", + "binding": { + "type": "Form", + "path": "attachmentFile_FileName", + "field": "9d012316-1497-4526-86f9-290aab400e0b", + "fullPath": "AttachmentFile.FileName" + }, + "placeHolder": "", + "enumData": null, + "isHorizontal": true, + "readonly": "!viewModel.stateMachine['editable']", + "require": false, + "disable": false, + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "size": null, + "holdPlace": false, + "linkedLabelEnabled": false, + "linkedLabelClick": null, + "visible": true, + "tabindex": -1, + "hasDefaultFocus": false, + "focusState": null, + "titleWidth": null, + "dataSourceType": "static", + "textField": "name", + "valueField": "value", + "path": "attachmentFile.fileName", + "visibleControlledByRules": false, + "readonlyControlledByRules": false, + "requireControlledByRules": false, + "labelAutoOverflow": false, + "updateOn": "blur" + }, { "id": "floatField_173f0950_91tt", "type": "NumericBox", @@ -2665,7 +2769,9 @@ "readonlyControlledByRules": true, "requireControlledByRules": true, "labelAutoOverflow": false, - "updateOn": "blur" + "updateOn": "blur", + "fieldValueChanging": "", + "fieldValueChanged": "" } ], "controlsInline": true, @@ -2825,9 +2931,9 @@ ] }, { - "id": "runtimeitem1-vgy0-component", + "id": "runtimeitem1-stae-component", "type": "Component", - "viewModel": "runtimeitem1-vgy0-component-viewmodel", + "viewModel": "runtimeitem1-stae-component-viewmodel", "componentType": "dataGrid", "appearance": { "class": "f-struct-is-subgrid" @@ -2837,7 +2943,7 @@ "afterViewInit": null, "contents": [ { - "id": "runtimeitem1-vgy0-component-layout", + "id": "runtimeitem1-stae-component-layout", "type": "ContentContainer", "appearance": { "class": "f-grid-is-sub f-utils-flex-column" @@ -2845,7 +2951,7 @@ "visible": true, "contents": [ { - "id": "runtimeitem1-vgy0-dataGrid", + "id": "runtimeitem1-stae-dataGrid", "type": "DataGrid", "controlSource": "Farris", "appearance": { @@ -2855,71 +2961,67 @@ "dataSource": "runtimeItem1s", "fields": [ { - "id": "id_3df94820_clzf", + "id": "noteField_11bdf429_uj96", "type": "GridField", "controlSource": "Farris", - "caption": "主键", + "caption": "备注", "binding": { "type": "Form", - "path": "id", - "field": "3df94820-efa6-48a6-8d47-112ac47e3302", - "fullPath": "ID" + "path": "noteField", + "field": "11bdf429-f332-475b-983b-ae82fba00e8f", + "fullPath": "noteField" }, "appearance": null, "size": { "width": 120 }, "readonly": false, - "dataField": "id", + "dataField": "noteField", "dataType": "string", "displayTemplate": null, "captionTemplate": null, "editor": { - "id": "id_3df94820_67wq", - "type": "TextBox", + "id": "noteField_11bdf429_h4yb", + "type": "MultiTextBox", "titleSourceType": "static", - "title": "主键", + "title": "备注", "appearance": { "class": "" }, "size": null, "binding": { "type": "Form", - "path": "id", - "field": "3df94820-efa6-48a6-8d47-112ac47e3302", - "fullPath": "ID" + "path": "noteField", + "field": "11bdf429-f332-475b-983b-ae82fba00e8f", + "fullPath": "noteField" }, - "require": true, + "require": false, "disable": false, "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, + "maxLength": 0, + "holdPlace": false, "linkedLabelEnabled": false, "linkedLabelClick": null, "visible": true, - "holdPlace": false, "isTextArea": true, - "isPassword": false, "tabindex": -1, "hasDefaultFocus": false, "focusState": null, "titleWidth": null, - "enableTips": true, - "path": "id", + "editType": "default", + "dialogWidth": 500, + "dialogHeight": 400, + "autoHeight": false, + "maxHeight": 500, + "enableWordCount": false, + "countType": "surplus", + "onlyShowInDialog": false, "enableAppend": false, "inputAppendType": "button", "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "requireControlledByRules": false, - "updateOn": "blur" + "useComments": false, + "path": "noteField", + "requireControlledByRules": true }, "draggable": false, "frozen": "none", @@ -2960,75 +3062,60 @@ "captionTipContent": "", "captionTipStyler": "", "enableBatchEdit": false, - "localizationType": "Date", - "visibleControlledByRules": false, - "readonlyControlledByRules": false + "visibleControlledByRules": true, + "readonlyControlledByRules": true, + "localizationType": "Date" }, { - "id": "parentID_ee23f329_uzdm", + "id": "booleanField_e4f457e3_zoer", "type": "GridField", "controlSource": "Farris", - "caption": "上级对象主键", + "caption": "布尔", "binding": { "type": "Form", - "path": "parentID", - "field": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "fullPath": "ParentID" + "path": "booleanField", + "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "fullPath": "booleanField" }, "appearance": null, "size": { "width": 120 }, "readonly": false, - "dataField": "parentID", - "dataType": "string", + "dataField": "booleanField", + "dataType": "boolean", "displayTemplate": null, "captionTemplate": null, "editor": { - "id": "parentID_ee23f329_p92l", - "type": "TextBox", + "id": "booleanField_e4f457e3_jxyk", + "type": "CheckBox", "titleSourceType": "static", - "title": "上级对象主键", + "title": "布尔", + "require": false, + "disable": false, + "binding": { + "type": "Form", + "path": "booleanField", + "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", + "fullPath": "booleanField" + }, + "visible": true, "appearance": { "class": "" }, "size": null, - "binding": { - "type": "Form", - "path": "parentID", - "field": "ee23f329-c1d4-489e-b691-b39b6cd12302", - "fullPath": "ParentID" - }, - "require": true, - "disable": false, - "placeHolder": "", - "format": null, - "validation": null, - "value": null, - "maxLength": 36, + "holdPlace": false, "linkedLabelEnabled": false, "linkedLabelClick": null, - "visible": true, - "holdPlace": false, - "isTextArea": true, - "isPassword": false, "tabindex": -1, "hasDefaultFocus": false, "focusState": null, "titleWidth": null, - "enableTips": true, - "path": "parentID", "enableAppend": false, "inputAppendType": "button", "inputAppendDisabled": false, - "formatValidation": { - "type": "none", - "expression": "", - "message": "" - }, - "autoHeight": false, - "maxHeight": 500, - "requireControlledByRules": false + "path": "booleanField", + "requireControlledByRules": true }, "draggable": false, "frozen": "none", @@ -3054,7 +3141,9 @@ "hAlign": "left", "vAlign": "middle", "formatter": { - "type": "none" + "type": "boolean", + "trueText": "是", + "falseText": "否" }, "showTips": false, "tipContent": null, @@ -3069,12 +3158,11 @@ "captionTipContent": "", "captionTipStyler": "", "enableBatchEdit": false, - "localizationType": "Date", - "visibleControlledByRules": false, - "readonlyControlledByRules": false + "visibleControlledByRules": true, + "readonlyControlledByRules": true }, { - "id": "code_c864358f_pvwg", + "id": "code_c864358f_52i4", "type": "GridField", "controlSource": "Farris", "caption": "编号", @@ -3094,7 +3182,7 @@ "displayTemplate": null, "captionTemplate": null, "editor": { - "id": "code_c864358f_btp2", + "id": "code_c864358f_wnzz", "type": "TextBox", "titleSourceType": "static", "title": "编号", @@ -3108,7 +3196,7 @@ "field": "c864358f-cb3c-4b2b-960e-423754e28ea8", "fullPath": "code" }, - "require": true, + "require": false, "disable": false, "placeHolder": "", "format": null, @@ -3137,8 +3225,7 @@ }, "autoHeight": false, "maxHeight": 500, - "requireControlledByRules": true, - "updateOn": "blur" + "requireControlledByRules": true }, "draggable": false, "frozen": "none", @@ -3184,7 +3271,7 @@ "readonlyControlledByRules": true }, { - "id": "name_a6c40426_ywb9", + "id": "name_a6c40426_wcj7", "type": "GridField", "controlSource": "Farris", "caption": "名称", @@ -3204,7 +3291,7 @@ "displayTemplate": null, "captionTemplate": null, "editor": { - "id": "name_a6c40426_fds8", + "id": "name_a6c40426_aly0", "type": "TextBox", "titleSourceType": "static", "title": "名称", @@ -3291,108 +3378,11 @@ "localizationType": "Date", "visibleControlledByRules": true, "readonlyControlledByRules": true - }, - { - "id": "booleanField_e4f457e3_2q97", - "type": "GridField", - "controlSource": "Farris", - "caption": "布尔", - "binding": { - "type": "Form", - "path": "booleanField", - "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "fullPath": "booleanField" - }, - "appearance": null, - "size": { - "width": 120 - }, - "readonly": false, - "dataField": "booleanField", - "dataType": "boolean", - "displayTemplate": null, - "captionTemplate": null, - "editor": { - "id": "booleanField_e4f457e3_nzmm", - "type": "CheckBox", - "titleSourceType": "static", - "title": "布尔", - "require": false, - "disable": false, - "binding": { - "type": "Form", - "path": "booleanField", - "field": "e4f457e3-add6-4df6-becd-26617dd1cb46", - "fullPath": "booleanField" - }, - "visible": true, - "appearance": { - "class": "" - }, - "size": null, - "holdPlace": false, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "tabindex": -1, - "hasDefaultFocus": false, - "focusState": null, - "titleWidth": null, - "enableAppend": false, - "inputAppendType": "button", - "inputAppendDisabled": false, - "path": "booleanField", - "requireControlledByRules": true, - "isRTControl": false, - "updateOn": "change" - }, - "draggable": false, - "frozen": "none", - "sortable": true, - "enumData": null, - "idField": "value", - "textField": "name", - "aggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "groupAggregate": { - "type": "none", - "formatter": { - "type": "none" - } - }, - "linkedLabelEnabled": false, - "linkedLabelClick": null, - "textAlign": "left", - "hAlign": "left", - "vAlign": "middle", - "formatter": { - "type": "boolean", - "trueText": "是", - "falseText": "否" - }, - "showTips": false, - "tipContent": null, - "multiLanguage": false, - "visible": true, - "enableFilter": false, - "headerStyler": "", - "styler": "", - "localization": false, - "allowGrouping": true, - "tipMode": "auto", - "captionTipContent": "", - "captionTipStyler": "", - "enableBatchEdit": true, - "visibleControlledByRules": true, - "readonlyControlledByRules": true } ], "focusedItem": null, "focusedIndex": null, - "pagination": false, + "pagination": true, "lockPagination": "viewModel.stateMachine&&viewModel.stateMachine['editable']", "showPageSize": false, "identifyField": null, @@ -3472,7 +3462,7 @@ "showScrollArrow": false, "footerPosition": "bottom", "footerStyler": null, - "selectOnEditing": true, + "selectOnEditing": false, "selectionMode": "custom", "enableContextMenu": false, "disableGroupOnEditing": true, @@ -3501,8 +3491,7 @@ "filterChanged": null, "enableEditStateFilterSorting": false, "showConfirmWhenSchemeChanged": false, - "enableSetMultiHeaders": false, - "allowEmpty": true + "enableSetMultiHeaders": false } ], "isScrollspyContainer": false, @@ -3558,11 +3547,11 @@ "handler": "ChangeItem" }, { - "host": "3a2f8aee-605b-4789-a971-43ba31c60b61", + "host": "d7d5d33a-0b1b-4477-9c9f-bfdcc3a9b9d7", "handler": "AddItem" }, { - "host": "5a844e51-0196-44e6-ac4c-e9c4d235a894", + "host": "1ec4653e-3b87-45aa-8a8e-e1a689b0ca9d", "handler": "RemoveItem" } ], @@ -3594,14 +3583,23 @@ { "host": "childattachment1egs8AddFileRows-id", "handler": "addFileRows" - }, - { - "host": "childattachment1egs8RemoveFileRows-id", - "handler": "removeFileRows" } ], "code": "FileController", "nameSpace": "Inspur.GS.Gsp.Web.AttachmentCmp" + }, + { + "id": "983da771-6610-4ebe-9517-8e9ac6e938f8", + "path": "MyDev/AngularTest/RuntimeTest/bo-runtimetest-front/metadata/components", + "name": "PC卡片测试_frm_Controller", + "refedHandlers": [ + { + "host": "childattachment1egs8RemoveFileRows-id", + "handler": "childattachment1egs8RemoveFileRows" + } + ], + "code": "PCCardFormTest_frm_Controller", + "nameSpace": "Inspur.GS.MyDev.AngularTest.RuntimeTest.RuntimeTest.Front" } ], "serviceRefs": [], @@ -3893,8 +3891,8 @@ }, { "sourceComponent": { - "id": "runtimeitem1-vgy0-component-button-add", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel", + "id": "runtimeitem1-stae-component-button-add", + "viewModelId": "runtimeitem1-stae-component-viewmodel", "map": [ { "event": { @@ -3902,12 +3900,12 @@ "name": "点击事件" }, "targetComponent": { - "id": "runtimeitem1-vgy0-component", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel" + "id": "runtimeitem1-stae-component", + "viewModelId": "runtimeitem1-stae-component-viewmodel" }, "command": { - "id": "3a2f8aee-605b-4789-a971-43ba31c60b61", - "label": "runtimeitem1vgy0AddItem1", + "id": "d7d5d33a-0b1b-4477-9c9f-bfdcc3a9b9d7", + "label": "runtimeitem1staeAddItem1", "name": "增加一条子表数据1", "handlerName": "AddItem", "params": [], @@ -3926,8 +3924,8 @@ }, { "sourceComponent": { - "id": "runtimeitem1-vgy0-component-button-remove", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel", + "id": "runtimeitem1-stae-component-button-remove", + "viewModelId": "runtimeitem1-stae-component-viewmodel", "map": [ { "event": { @@ -3935,19 +3933,19 @@ "name": "点击事件" }, "targetComponent": { - "id": "runtimeitem1-vgy0-component", - "viewModelId": "runtimeitem1-vgy0-component-viewmodel" + "id": "runtimeitem1-stae-component", + "viewModelId": "runtimeitem1-stae-component-viewmodel" }, "command": { - "id": "5a844e51-0196-44e6-ac4c-e9c4d235a894", - "label": "runtimeitem1vgy0RemoveItem1", + "id": "1ec4653e-3b87-45aa-8a8e-e1a689b0ca9d", + "label": "runtimeitem1staeRemoveItem1", "name": "删除一条子表数据1", "handlerName": "RemoveItem", "params": [ { "name": "id", "shownName": "待删除子表数据的标识", - "value": "{DATA~/#{runtimeitem1-vgy0-component}/runtimeItem1s/id}" + "value": "{DATA~/#{runtimeitem1-stae-component}/runtimeItem1s/id}" } ], "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", @@ -4026,7 +4024,8 @@ { "name": "fileInfoFieldPath", "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" + "value": "/childAttachment1s/attachment", + "defaultValue": null } ], "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", @@ -4052,22 +4051,23 @@ "id": "childattachment1egs8RemoveFileRows-id", "label": "childattachment1egs8RemoveFileRows", "name": "批量删除文件数据", - "handlerName": "removeFileRows", + "handlerName": "childattachment1egs8RemoveFileRows", "params": [ { "name": "fileInfoFieldPath", "shownName": "文件信息字段路径", - "value": "/childAttachment1s/attachment" + "value": "/childAttachment1s/attachment", + "defaultValue": null } ], - "cmpId": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", + "cmpId": "983da771-6610-4ebe-9517-8e9ac6e938f8", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "31c1022c-ab40-4e8d-bc31-85d539f1d36c", - "label": "FileController", - "name": "文件控制器" + "id": "983da771-6610-4ebe-9517-8e9ac6e938f8", + "label": "PCCardFormTest_frm_Controller", + "name": "PC卡片测试_frm_Controller" } } ] diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json index 883aaec3..d4ca348c 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json @@ -1,24 +1,26 @@ { "module": { - "id": "58c44201-64df-436c-a57c-a36f94a2414b", - "code": "PCFormTest", - "name": "PC表单测试", + "id": "ec4d57b1-4f66-459e-970c-2c1896f726f6", + "code": "ResponsiveCard", + "name": "响应式卡片", "type": "Module", "creator": "lijiangkun", - "creationDate": "2025-04-12T07:59:57.479Z", + "creationDate": "2025-12-03T00:48:05.678Z", "templateId": "card-template", "templateRule": "card-template", "entity": [ { - "eapiId": "bebb83f9-499d-4fda-8466-1b6a6f721353", - "eapiCode": "PCFormTest_frm", - "eapiName": "PC表单测试_frm", - "eapiNameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", - "voPath": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", - "voNameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", - "name": "PC表单测试_frm", - "id": "4801eb04-71d2-4420-813c-496ed48c65c0", + "eapiId": "b428a490-f1dd-4479-acb3-e5fb80fabfbf", + "eapiCode": "ResponsiveCard_frm", + "eapiName": "响应式卡片_frm", + "eapiNameSpace": "Inspur.GS.MyDev.FarrisVueTest.DesignTest.DesignTest.Front", + "voPath": "MyDev/FarrisVueTest/DesignTest/bo-designtest-front/metadata/components", + "voNameSpace": "Inspur.GS.MyDev.FarrisVueTest.DesignTest.DesignTest.Front", + "extendProperties": { + "enableStdTimeFormat": true + }, "sourceType": "vo", + "id": "a93e510f-0393-4f96-853a-b121828c82f0", "variables": [ { "$type": "SimpleField", @@ -26,11 +28,11 @@ "editor": { "$type": "TextBox" }, + "readonly": false, "require": false, "multiLanguage": false, - "readonly": false, "name": "表单流程配置", - "id": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", + "id": "c9826d69-88fd-4197-80cd-1261463a5310", "type": { "$type": "StringType", "length": 36, @@ -38,97 +40,92 @@ "displayName": "字符串" }, "path": "bffSysFormConfigId", - "originalId": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", + "originalId": "c9826d69-88fd-4197-80cd-1261463a5310", + "code": "bffSysFormConfigId", "label": "bffSysFormConfigId", - "bindingField": "bffSysFormConfigId", "bindingPath": "bffSysFormConfigId", - "code": "bffSysFormConfigId" + "bindingField": "bffSysFormConfigId" } ], + "code": "ResponsiveCard_frm", "entities": [ { - "name": "Vue测试", - "id": "75e5f57b-3a02-4177-9846-1a5d0ba2c885", + "label": "saleOrders", "type": { "$type": "EntityType", + "primary": "id", "fields": [ { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "TextBox" }, - "require": true, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "主键", - "id": "52fc4c0e-f155-4c01-9fe6-54fd08795ae0", + "multiLanguage": false, + "require": true, + "label": "id", + "originalId": "44938752-5fc9-4137-a0d0-391f7f0461c0", + "path": "ID", "type": { "$type": "StringType", + "displayName": "字符串", "length": 36, - "name": "String", - "displayName": "字符串" + "name": "String" }, - "path": "ID", - "originalId": "52fc4c0e-f155-4c01-9fe6-54fd08795ae0", - "label": "id", - "bindingField": "id", + "id": "44938752-5fc9-4137-a0d0-391f7f0461c0", + "code": "ID", "bindingPath": "id", - "code": "ID" + "bindingField": "id", + "name": "主键" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "DateBox", "format": "'yyyy-MM-dd'" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "版本", - "id": "10b522a5-9dd3-437e-bd29-bf57a58b3fb3", + "multiLanguage": false, + "require": false, + "label": "version", + "originalId": "fabd3a03-e121-406b-86ea-96f0e975fca5", + "path": "Version", "type": { "$type": "DateTimeType", - "name": "DateTime", - "displayName": "日期时间" + "displayName": "日期时间", + "name": "DateTime" }, - "path": "Version", - "originalId": "10b522a5-9dd3-437e-bd29-bf57a58b3fb3", - "label": "version", - "bindingField": "version", + "id": "fabd3a03-e121-406b-86ea-96f0e975fca5", + "code": "Version", "bindingPath": "version", - "code": "Version" + "bindingField": "version", + "name": "版本" }, { "$type": "ComplexField", - "name": "状态", - "id": "e7c488df-8456-48d8-be1c-2cc6cc1cba8b", + "label": "billStatus", + "originalId": "8ca89120-8222-4f05-8e16-6576128b7c07", + "path": "BillStatus", "type": { "$type": "ObjectType", - "name": "BillStateE7c4", "fields": [ { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "EnumField" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "状态", - "id": "e7c488df-0101-468f-ae3f-40c76c0f06b0", + "multiLanguage": false, + "require": false, + "label": "billState", + "originalId": "a0b19650-0101-468f-ae3f-40c76c0f06b0", + "path": "BillStatus.BillState", "type": { "$type": "EnumType", - "name": "Enum", "displayName": "枚举", - "valueType": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, "enumValues": [ { "disabled": false, @@ -150,208 +147,224 @@ "name": "审批不通过", "value": "ApprovalNotPassed" } - ] + ], + "valueType": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "name": "Enum" }, - "path": "BillStatus.BillState", - "originalId": "a0b19650-0101-468f-ae3f-40c76c0f06b0", - "label": "billState", - "bindingField": "billStatus_BillState", + "id": "8ca89120-0101-468f-ae3f-40c76c0f06b0", + "code": "BillState", "bindingPath": "billStatus.billState", - "code": "BillState" + "bindingField": "billStatus_BillState", + "name": "状态" } ], + "name": "BillState8ca8", "displayName": "状态" }, - "path": "BillStatus", - "originalId": "e7c488df-8456-48d8-be1c-2cc6cc1cba8b", - "label": "billStatus", - "bindingField": "billStatus", + "id": "8ca89120-8222-4f05-8e16-6576128b7c07", + "code": "BillStatus", "bindingPath": "billStatus", - "code": "BillStatus" + "bindingField": "billStatus", + "name": "状态" }, { "$type": "ComplexField", - "name": "流程实例", - "id": "5d3fd927-71bc-4687-9be1-55d94033dd47", + "label": "processInstance", + "originalId": "3eb2f7c4-d42b-4f29-b9a5-ca6a7eedba08", + "path": "ProcessInstance", "type": { "$type": "ObjectType", - "name": "ProcessInstance5d3f", "fields": [ { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "TextBox" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "流程实例", - "id": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", + "multiLanguage": false, + "require": false, + "label": "processInstance", + "originalId": "2e1beb7d-ad8f-4da3-a430-c8a7f2162135", + "path": "ProcessInstance.ProcessInstance", "type": { "$type": "StringType", + "displayName": "字符串", "length": 36, - "name": "String", - "displayName": "字符串" + "name": "String" }, - "path": "ProcessInstance.ProcessInstance", - "originalId": "2e1beb7d-ad8f-4da3-a430-c8a7f2162135", - "label": "processInstance", - "bindingField": "processInstance_ProcessInstance", + "id": "3eb2f7c4-ad8f-4da3-a430-c8a7f2162135", + "code": "ProcessInstance", "bindingPath": "processInstance.processInstance", - "code": "ProcessInstance" + "bindingField": "processInstance_ProcessInstance", + "name": "流程实例" } ], + "name": "ProcessInstance3eb2", "displayName": "流程实例" }, - "path": "ProcessInstance", - "originalId": "5d3fd927-71bc-4687-9be1-55d94033dd47", - "label": "processInstance", - "bindingField": "processInstance", + "id": "3eb2f7c4-d42b-4f29-b9a5-ca6a7eedba08", + "code": "ProcessInstance", "bindingPath": "processInstance", - "code": "ProcessInstance" + "bindingField": "processInstance", + "name": "流程实例" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "TextBox" }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "编号", - "id": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "code", - "originalId": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "label": "code", - "bindingField": "code", - "bindingPath": "code", - "code": "code" - }, - { - "$type": "SimpleField", "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": false, - "multiLanguage": false, "readonly": false, - "name": "名称", - "id": "3410f627-358c-4a1a-99b4-800e9d0211e0", + "multiLanguage": false, + "require": false, + "label": "orderCode", + "originalId": "320286b8-119a-43a9-ac4b-d627f64ee414", + "path": "OrderCode", "type": { "$type": "StringType", + "displayName": "字符串", "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "name", - "originalId": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "label": "name", - "bindingField": "name", - "bindingPath": "name", - "code": "name" - }, - { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "CheckBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "布尔字段", - "id": "c419df06-d982-44ca-8e48-b366b778049a", - "type": { - "$type": "BooleanType", - "name": "Boolean", - "displayName": "布尔" + "name": "String" }, - "path": "booleanField", - "originalId": "c419df06-d982-44ca-8e48-b366b778049a", - "label": "booleanField", - "bindingField": "booleanField", - "bindingPath": "booleanField", - "code": "booleanField" + "id": "320286b8-119a-43a9-ac4b-d627f64ee414", + "code": "OrderCode", + "bindingPath": "orderCode", + "bindingField": "orderCode", + "name": "订单编号" }, { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "NumericBox" - }, - "require": false, - "multiLanguage": false, - "readonly": false, - "name": "数值字段", - "id": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", + "$type": "ComplexField", + "label": "merchant", + "originalId": "2190dbc3-6a5b-4122-85b0-d9eea8d7a9cb", + "path": "Merchant", "type": { - "$type": "NumericType", - "length": 0, - "name": "Number", - "displayName": "数字", - "precision": 0 + "$type": "EntityType", + "primary": "merchant", + "fields": [ + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "merchant", + "originalId": "a3569dcd-ff8e-40ea-aaf7-3c81b417fcbc", + "path": "Merchant.Merchant", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "a3569dcd-ff8e-40ea-aaf7-3c81b417fcbc", + "code": "Merchant", + "bindingPath": "merchant.merchant", + "bindingField": "merchant", + "name": "商户" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "merchant_name", + "originalId": "ed091667-67f8-4aa2-8698-6f3d8dcf220f", + "path": "Merchant.Merchant_name", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 100, + "name": "String" + }, + "id": "ed091667-67f8-4aa2-8698-6f3d8dcf220f", + "code": "name", + "bindingPath": "merchant.merchant_name", + "bindingField": "merchant_Merchant_name", + "name": "名称" + } + ], + "entities": [], + "displayName": "系统组织", + "name": "SysOrgA356" }, - "path": "numberField", - "originalId": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "label": "numberField", - "bindingField": "numberField", - "bindingPath": "numberField", - "code": "numberField" + "id": "2190dbc3-6a5b-4122-85b0-d9eea8d7a9cb", + "code": "Merchant", + "bindingPath": "merchant", + "bindingField": "merchant", + "name": "商户" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "DateBox", "format": "'yyyy-MM-dd'" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "日期字段", - "id": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", + "multiLanguage": false, + "require": false, + "label": "orderTime", + "originalId": "619bf31e-346b-4675-abb7-5ccca90b2903", + "path": "OrderTime", "type": { - "$type": "DateType", - "name": "Date", - "displayName": "日期" + "$type": "DateTimeType", + "displayName": "日期时间", + "name": "DateTime" }, - "path": "dateField", - "originalId": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "label": "dateField", - "bindingField": "dateField", - "bindingPath": "dateField", - "code": "dateField" + "id": "619bf31e-346b-4675-abb7-5ccca90b2903", + "code": "OrderTime", + "bindingPath": "orderTime", + "bindingField": "orderTime", + "name": "下单时间" }, { "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", "editor": { "$type": "EnumField" }, + "defaultValue": "", "readonly": false, - "originalId": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "name": "eumu1", - "id": "2092e529-c1cd-444d-98f5-6e11db8be5b7", + "multiLanguage": false, + "require": false, + "label": "payMethod", + "originalId": "2cd7971c-a652-43b4-bfd8-c34eda8fd9a8", + "path": "PayMethod", "type": { "$type": "EnumType", "displayName": "枚举", - "name": "Enum", "enumValues": [ { "disabled": false, - "name": "testname", - "value": "test1" + "name": "现金", + "value": "Cash" + }, + { + "disabled": false, + "name": "银联", + "value": "Upay" + }, + { + "disabled": false, + "name": "微信", + "value": "WeChat" + }, + { + "disabled": false, + "name": "支付宝", + "value": "AiPay" } ], "valueType": { @@ -359,379 +372,923 @@ "displayName": "字符串", "length": 36, "name": "String" - } + }, + "name": "Enum" }, - "path": "eumu1", - "code": "eumu1", - "label": "eumu1", - "bindingField": "eumu1", - "bindingPath": "eumu1" + "id": "2cd7971c-a652-43b4-bfd8-c34eda8fd9a8", + "code": "PayMethod", + "bindingPath": "payMethod", + "bindingField": "payMethod", + "name": "支付方式" }, { "$type": "ComplexField", - "originalId": "9652a7a9-5e65-41a8-a3c0-6d0da6a7504e", - "name": "ass1", - "id": "9652a7a9-5e65-41a8-a3c0-6d0da6a7504e", + "label": "orderPerson", + "originalId": "a85de375-443e-4b63-bdfc-fc3864d31a08", + "path": "OrderPerson", "type": { "$type": "EntityType", + "primary": "orderPerson", "fields": [ { "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", "editor": { "$type": "TextBox" }, + "defaultValue": "", "readonly": false, - "originalId": "8760c74c-9141-46ea-a9fb-408db9a41e61", - "name": "ass1", - "id": "8760c74c-9141-46ea-a9fb-408db9a41e61", - "type": { - "$type": "StringType", - "displayName": "字符串", - "length": 36, - "name": "String" - }, - "path": "ass1.ass1", - "code": "ass1", - "label": "ass1", - "bindingField": "ass1", - "bindingPath": "ass1.ass1" - }, - { - "$type": "SimpleField", "multiLanguage": false, "require": false, - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "readonly": false, - "originalId": "3c45b0e6-2695-4085-a861-e451ad139e0e", - "name": "编号", - "id": "3c45b0e6-2695-4085-a861-e451ad139e0e", + "label": "orderPerson", + "originalId": "e4ecb7fa-65d4-4a06-9056-eedff8d6d554", + "path": "OrderPerson.OrderPerson", "type": { "$type": "StringType", "displayName": "字符串", "length": 36, "name": "String" }, - "path": "ass1.ass1_Code", - "code": "Code", - "label": "ass1_Code", - "bindingField": "ass1_ass1_Code", - "bindingPath": "ass1.ass1_Code" + "id": "e4ecb7fa-65d4-4a06-9056-eedff8d6d554", + "code": "OrderPerson", + "bindingPath": "orderPerson.orderPerson", + "bindingField": "orderPerson", + "name": "下单人" }, { "$type": "SimpleField", - "multiLanguage": false, - "require": false, - "defaultValue": "", "editor": { "$type": "TextBox" }, + "defaultValue": "", "readonly": false, - "originalId": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "name": "名称", - "id": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", + "multiLanguage": false, + "require": false, + "label": "orderPerson_Name", + "originalId": "301100df-cc10-4859-b645-db88538b3403", + "path": "OrderPerson.OrderPerson_Name", "type": { "$type": "StringType", "displayName": "字符串", "length": 36, "name": "String" }, - "path": "ass1.ass1_Name", + "id": "301100df-cc10-4859-b645-db88538b3403", "code": "Name", - "label": "ass1_Name", - "bindingField": "ass1_ass1_Name", - "bindingPath": "ass1.ass1_Name" + "bindingPath": "orderPerson.orderPerson_Name", + "bindingField": "orderPerson_OrderPerson_Name", + "name": "名称" } ], - "primary": "ass1", "entities": [], "displayName": "用户", - "name": "GspUser8760" + "name": "GspUserE4Ec" }, - "path": "ass1", - "code": "ass1", - "label": "ass1", - "bindingField": "ass1", - "bindingPath": "ass1" + "id": "a85de375-443e-4b63-bdfc-fc3864d31a08", + "code": "OrderPerson", + "bindingPath": "orderPerson", + "bindingField": "orderPerson", + "name": "下单人" }, { - "$type": "ComplexField", - "originalId": "46b400d4-0f47-42f2-9f6e-df6a95c21235", - "name": "dy1", - "id": "46b400d4-0f47-42f2-9f6e-df6a95c21235", + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "telephone", + "originalId": "67d14df7-b8d0-4679-b184-ee942a0d87c0", + "path": "Telephone", "type": { - "$type": "DynamicObjectType", - "name": "DynamicEntity", - "displayName": null + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" }, - "path": "dy1", - "code": "dy1", - "label": "dy1", - "bindingField": "dy1", - "bindingPath": "dy1" - } - ], - "primary": "id", - "entities": [ + "id": "67d14df7-b8d0-4679-b184-ee942a0d87c0", + "code": "Telephone", + "bindingPath": "telephone", + "bindingField": "telephone", + "name": "联系电话" + }, { - "name": "子表1", - "id": "9b108121-4e38-42d7-bd2c-9c7647dd8d77", + "$type": "SimpleField", + "editor": { + "$type": "EnumField" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "sendState", + "originalId": "3cd8435a-e667-495f-b08f-44f10b14a52d", + "path": "SendState", "type": { - "$type": "EntityType", - "fields": [ + "$type": "EnumType", + "displayName": "枚举", + "enumValues": [ { - "$type": "SimpleField", - "defaultValue": "", - "editor": { - "$type": "TextBox" - }, - "require": true, - "multiLanguage": false, - "readonly": false, - "name": "主键", - "id": "466e5a86-120a-44a1-8ca6-80e1bdfdc3eb", - "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" - }, - "path": "ID", - "originalId": "466e5a86-120a-44a1-8ca6-80e1bdfdc3eb", - "label": "id", - "bindingField": "id", - "bindingPath": "id", - "code": "ID" + "disabled": false, + "name": "未发货", + "value": "Unshipped" }, + { + "disabled": false, + "name": "已发货", + "value": "Shipped" + } + ], + "valueType": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "name": "Enum" + }, + "id": "3cd8435a-e667-495f-b08f-44f10b14a52d", + "code": "SendState", + "bindingPath": "sendState", + "bindingField": "sendState", + "name": "发货状态" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "MultiTextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "remark", + "originalId": "76f154be-7ded-43c6-8102-c523586acc6c", + "path": "Remark", + "type": { + "$type": "TextType", + "displayName": "文本", + "length": 100, + "name": "Text" + }, + "id": "76f154be-7ded-43c6-8102-c523586acc6c", + "code": "Remark", + "bindingPath": "remark", + "bindingField": "remark", + "name": "备注" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "totalPrice", + "originalId": "83491c18-d22f-4ded-b7a0-a730d863a8f9", + "path": "TotalPrice", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "83491c18-d22f-4ded-b7a0-a730d863a8f9", + "code": "TotalPrice", + "bindingPath": "totalPrice", + "bindingField": "totalPrice", + "name": "订单金额" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "totalDiscount", + "originalId": "6006c098-1d4b-41f6-8176-452bd2874885", + "path": "TotalDiscount", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "6006c098-1d4b-41f6-8176-452bd2874885", + "code": "TotalDiscount", + "bindingPath": "totalDiscount", + "bindingField": "totalDiscount", + "name": "折扣优惠" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "actualPay", + "originalId": "4b5b5386-65e3-4aec-8531-716991baca3f", + "path": "ActualPay", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "4b5b5386-65e3-4aec-8531-716991baca3f", + "code": "ActualPay", + "bindingPath": "actualPay", + "bindingField": "actualPay", + "name": "合计实付" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "orderSour", + "originalId": "61752adc-c793-46ad-8eab-af57fb89adf2", + "path": "OrderSour", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "61752adc-c793-46ad-8eab-af57fb89adf2", + "code": "OrderSour", + "bindingPath": "orderSour", + "bindingField": "orderSour", + "name": "订单来源" + }, + { + "$type": "SimpleField", + "multiLanguage": true, + "require": false, + "editor": { + "$type": "LanguageTextBox" + }, + "defaultValue": "", + "readonly": false, + "path": "name", + "id": "6fda293c-ea86-4af3-9e2f-4d7ca6d95180", + "type": { + "$type": "StringType", + "length": 36, + "name": "String", + "displayName": "字符串" + }, + "originalId": "6fda293c-ea86-4af3-9e2f-4d7ca6d95180", + "code": "name", + "label": "name", + "bindingPath": "name", + "bindingField": "name", + "name": "名称" + } + ], + "entities": [ + { + "label": "orderItems", + "type": { + "$type": "EntityType", + "primary": "id", + "fields": [ { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "TextBox" }, - "require": true, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "上级对象主键", - "id": "bec1003e-8a76-4ce2-b6cb-cebf0b426e6a", + "multiLanguage": false, + "require": true, + "label": "id", + "originalId": "cf59f388-3622-4703-a027-f878cc208f11", + "path": "ID", "type": { "$type": "StringType", + "displayName": "字符串", "length": 36, - "name": "String", - "displayName": "字符串" + "name": "String" }, - "path": "ParentID", - "originalId": "bec1003e-8a76-4ce2-b6cb-cebf0b426e6a", - "label": "parentID", - "bindingField": "parentID", - "bindingPath": "parentID", - "code": "ParentID" + "id": "cf59f388-3622-4703-a027-f878cc208f11", + "code": "ID", + "bindingPath": "id", + "bindingField": "id", + "name": "主键" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "TextBox" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "编号", - "id": "e5a6411a-c30e-4259-8682-53685c53e62a", + "multiLanguage": false, + "require": true, + "label": "parentID", + "originalId": "7810a313-0cf5-4e9e-bfba-4f14ecde70e3", + "path": "ParentID", "type": { "$type": "StringType", + "displayName": "字符串", "length": 36, - "name": "String", - "displayName": "字符串" + "name": "String" + }, + "id": "7810a313-0cf5-4e9e-bfba-4f14ecde70e3", + "code": "ParentID", + "bindingPath": "parentID", + "bindingField": "parentID", + "name": "上级对象主键" + }, + { + "$type": "ComplexField", + "label": "goods", + "originalId": "2faa2e50-b428-492e-8559-386688badcee", + "path": "Goods", + "type": { + "$type": "EntityType", + "primary": "goods", + "fields": [ + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "goods", + "originalId": "22eb42b9-0ed0-435b-9e3c-6cbe4de73d39", + "path": "Goods.Goods", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "22eb42b9-0ed0-435b-9e3c-6cbe4de73d39", + "code": "Goods", + "bindingPath": "goods.goods", + "bindingField": "goods", + "name": "商品" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "goods_GoodsName", + "originalId": "248c9dd6-58a5-4962-b07d-2942c18f0e34", + "path": "Goods.Goods_GoodsName", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "248c9dd6-58a5-4962-b07d-2942c18f0e34", + "code": "GoodsName", + "bindingPath": "goods.goods_GoodsName", + "bindingField": "goods_Goods_GoodsName", + "name": "商品名称" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "goods_Specification", + "originalId": "af2d7a80-bff4-4b05-ae8e-0d754a833e64", + "path": "Goods.Goods_Specification", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "af2d7a80-bff4-4b05-ae8e-0d754a833e64", + "code": "Specification", + "bindingPath": "goods.goods_Specification", + "bindingField": "goods_Goods_Specification", + "name": "规格型号" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "goods_Price", + "originalId": "e1a742ef-343b-479e-aa03-7a196d734ecf", + "path": "Goods.Goods_Price", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "e1a742ef-343b-479e-aa03-7a196d734ecf", + "code": "Price", + "bindingPath": "goods.goods_Price", + "bindingField": "goods_Goods_Price", + "name": "单价" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "goods_GoodsCode", + "originalId": "0a9983dd-c14d-4b6b-8fc0-07d64f11eaba", + "path": "Goods.Goods_GoodsCode", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "0a9983dd-c14d-4b6b-8fc0-07d64f11eaba", + "code": "GoodsCode", + "bindingPath": "goods.goods_GoodsCode", + "bindingField": "goods_Goods_GoodsCode", + "name": "商品编号" + } + ], + "entities": [], + "displayName": "商品", + "name": "Goods22eb" }, - "path": "code", - "originalId": "e5a6411a-c30e-4259-8682-53685c53e62a", - "label": "code", - "bindingField": "code", - "bindingPath": "code", - "code": "code" + "id": "2faa2e50-b428-492e-8559-386688badcee", + "code": "Goods", + "bindingPath": "goods", + "bindingField": "goods", + "name": "商品" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { "$type": "TextBox" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "名称", - "id": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", + "multiLanguage": false, + "require": false, + "label": "specification", + "originalId": "280090bf-5688-4809-92d7-81c54f1663df", + "path": "Specification", "type": { "$type": "StringType", + "displayName": "字符串", "length": 36, - "name": "String", - "displayName": "字符串" + "name": "String" }, - "path": "name", - "originalId": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "label": "name", - "bindingField": "name", - "bindingPath": "name", - "code": "name" - } - ], - "primary": "id", - "entities": [], - "name": "Child1", - "displayName": "子表1" - }, - "label": "child1s", - "code": "Child1" - }, - { - "name": "子表2", - "id": "06d00b52-4477-4c7b-a63d-01654e195364", - "type": { - "$type": "EntityType", - "fields": [ + "id": "280090bf-5688-4809-92d7-81c54f1663df", + "code": "Specification", + "bindingPath": "specification", + "bindingField": "specification", + "name": "规格型号" + }, { "$type": "SimpleField", - "defaultValue": "", "editor": { - "$type": "TextBox" + "$type": "NumericBox" }, - "require": true, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "主键", - "id": "80fa5266-0fa2-4418-b225-61efcf2309ed", + "multiLanguage": false, + "require": false, + "label": "quality", + "originalId": "1a3b1585-e749-418c-91c5-8ccb7ab30f71", + "path": "Quality", "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" + "$type": "NumericType", + "displayName": "数字", + "precision": 0, + "length": 0, + "name": "Number" }, - "path": "ID", - "originalId": "80fa5266-0fa2-4418-b225-61efcf2309ed", - "label": "id", - "bindingField": "id", - "bindingPath": "id", - "code": "ID" + "id": "1a3b1585-e749-418c-91c5-8ccb7ab30f71", + "code": "Quality", + "bindingPath": "quality", + "bindingField": "quality", + "name": "数量" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { - "$type": "TextBox" + "$type": "NumericBox" }, - "require": true, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "上级对象主键", - "id": "2292dc09-74d7-44fb-9a47-73d48c1e5831", + "multiLanguage": false, + "require": false, + "label": "price", + "originalId": "e36f2428-1373-4025-a4bd-2a2e8ec60cc5", + "path": "Price", "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" }, - "path": "ParentID", - "originalId": "2292dc09-74d7-44fb-9a47-73d48c1e5831", - "label": "parentID", - "bindingField": "parentID", - "bindingPath": "parentID", - "code": "ParentID" + "id": "e36f2428-1373-4025-a4bd-2a2e8ec60cc5", + "code": "Price", + "bindingPath": "price", + "bindingField": "price", + "name": "标价" }, { "$type": "SimpleField", - "defaultValue": "", "editor": { - "$type": "TextBox" + "$type": "NumericBox" }, - "require": false, - "multiLanguage": false, + "defaultValue": "", "readonly": false, - "name": "编号", - "id": "0fd1145f-2a5f-4080-aa65-b87d252515a5", + "multiLanguage": false, + "require": false, + "label": "amount", + "originalId": "e5a83e52-4e6d-4a11-9178-33f87ad54868", + "path": "Amount", "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" }, - "path": "code", - "originalId": "0fd1145f-2a5f-4080-aa65-b87d252515a5", - "label": "code", - "bindingField": "code", - "bindingPath": "code", - "code": "code" + "id": "e5a83e52-4e6d-4a11-9178-33f87ad54868", + "code": "Amount", + "bindingPath": "amount", + "bindingField": "amount", + "name": "金额" }, { "$type": "SimpleField", + "editor": { + "$type": "EnumField" + }, "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "discountType", + "originalId": "370df240-d24d-43d1-bb7a-a30a0ea86a84", + "path": "DiscountType", + "type": { + "$type": "EnumType", + "displayName": "枚举", + "enumValues": [ + { + "disabled": false, + "name": "折扣", + "value": "Dis" + }, + { + "disabled": false, + "name": "无折扣", + "value": "NoDis" + } + ], + "valueType": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "name": "Enum" + }, + "id": "370df240-d24d-43d1-bb7a-a30a0ea86a84", + "code": "DiscountType", + "bindingPath": "discountType", + "bindingField": "discountType", + "name": "折扣类型" + }, + { + "$type": "SimpleField", "editor": { - "$type": "TextBox" + "$type": "NumericBox" }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, "require": false, + "label": "discountAmount", + "originalId": "8a7ac89a-83d4-4fcd-8cd1-aef0c9283111", + "path": "DiscountAmount", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "8a7ac89a-83d4-4fcd-8cd1-aef0c9283111", + "code": "DiscountAmount", + "bindingPath": "discountAmount", + "bindingField": "discountAmount", + "name": "折扣金额" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "readonly": false, "multiLanguage": false, + "require": false, + "label": "actualAmount", + "originalId": "f3941d8f-9795-43f7-a50b-dd4c0a3c6bc7", + "path": "ActualAmount", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 2, + "length": 18, + "name": "Number" + }, + "id": "f3941d8f-9795-43f7-a50b-dd4c0a3c6bc7", + "code": "ActualAmount", + "bindingPath": "actualAmount", + "bindingField": "actualAmount", + "name": "实际结算金额" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "MultiTextBox" + }, + "defaultValue": "", "readonly": false, - "name": "名称", - "id": "52eb3ac2-decc-49f3-83b3-1549aec4b4d0", + "multiLanguage": false, + "require": false, + "label": "remark", + "originalId": "ada0c721-0da0-4eb9-8daa-86d6c070efbe", + "path": "Remark", "type": { - "$type": "StringType", - "length": 36, - "name": "String", - "displayName": "字符串" + "$type": "TextType", + "displayName": "文本", + "length": 100, + "name": "Text" }, - "path": "name", - "originalId": "52eb3ac2-decc-49f3-83b3-1549aec4b4d0", - "label": "name", - "bindingField": "name", - "bindingPath": "name", - "code": "name" + "id": "ada0c721-0da0-4eb9-8daa-86d6c070efbe", + "code": "Remark", + "bindingPath": "remark", + "bindingField": "remark", + "name": "备注" } ], - "primary": "id", "entities": [], - "name": "Child2", - "displayName": "子表2" + "displayName": "订单明细", + "name": "OrderItem" }, - "label": "child2s", - "code": "Child2" - } + "id": "5b9cd5c4-9da9-464e-8be4-754a9378a032", + "code": "OrderItem", + "name": "订单明细" + }, + { + "label": "orderFiles", + "type": { + "$type": "EntityType", + "primary": "id", + "fields": [ + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": true, + "label": "id", + "originalId": "ba2b75d9-1564-4e68-9c11-5f004674ab92", + "path": "ID", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "ba2b75d9-1564-4e68-9c11-5f004674ab92", + "code": "ID", + "bindingPath": "id", + "bindingField": "id", + "name": "主键" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": true, + "label": "parentID", + "originalId": "6eae1692-146d-4de6-bb98-dd342f7a30c1", + "path": "ParentID", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "6eae1692-146d-4de6-bb98-dd342f7a30c1", + "code": "ParentID", + "bindingPath": "parentID", + "bindingField": "parentID", + "name": "上级对象主键" + }, + { + "$type": "ComplexField", + "label": "fileInfo", + "originalId": "1b94179e-7fa2-462f-94a8-13f34e2ad826", + "path": "FileInfo", + "type": { + "$type": "ObjectType", + "fields": [ + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "attachmentId", + "originalId": "ff73a947-4fd6-49ff-a18a-f466a068f905", + "path": "FileInfo.AttachmentId", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 36, + "name": "String" + }, + "id": "1b94179e-4fd6-49ff-a18a-f466a068f905", + "code": "AttachmentId", + "bindingPath": "fileInfo.attachmentId", + "bindingField": "fileInfo_AttachmentId", + "name": "附件Id" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "TextBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "fileName", + "originalId": "026b07a9-1497-4526-86f9-290aab400e0b", + "path": "FileInfo.FileName", + "type": { + "$type": "StringType", + "displayName": "字符串", + "length": 512, + "name": "String" + }, + "id": "1b94179e-1497-4526-86f9-290aab400e0b", + "code": "FileName", + "bindingPath": "fileInfo.fileName", + "bindingField": "fileInfo_FileName", + "name": "附件名称" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "NumericBox" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "fileSize", + "originalId": "6369fb66-dd56-4cab-a54b-577a65f9eb6e", + "path": "FileInfo.FileSize", + "type": { + "$type": "NumericType", + "displayName": "数字", + "precision": 8, + "length": 128, + "name": "Number" + }, + "id": "1b94179e-dd56-4cab-a54b-577a65f9eb6e", + "code": "FileSize", + "bindingPath": "fileInfo.fileSize", + "bindingField": "fileInfo_FileSize", + "name": "附件大小" + }, + { + "$type": "SimpleField", + "editor": { + "$type": "DateBox", + "format": "'yyyy-MM-dd'" + }, + "defaultValue": "", + "readonly": false, + "multiLanguage": false, + "require": false, + "label": "fileCreateTime", + "originalId": "ff677864-a1f5-4f6c-9c82-ddb10864c652", + "path": "FileInfo.FileCreateTime", + "type": { + "$type": "DateTimeType", + "displayName": "日期时间", + "name": "DateTime" + }, + "id": "1b94179e-a1f5-4f6c-9c82-ddb10864c652", + "code": "FileCreateTime", + "bindingPath": "fileInfo.fileCreateTime", + "bindingField": "fileInfo_FileCreateTime", + "name": "附件上传时间" + } + ], + "name": "AttachmentInfo1b94", + "displayName": "附件信息" + }, + "id": "1b94179e-7fa2-462f-94a8-13f34e2ad826", + "code": "FileInfo", + "bindingPath": "fileInfo", + "bindingField": "fileInfo", + "name": "附件信息" + } + ], + "entities": [], + "displayName": "附件", + "name": "OrderFile" + }, + "id": "6073e3e2-5852-444a-a8b6-521de4394ea6", + "code": "OrderFile", + "name": "附件" + } ], - "name": "VueTest", - "displayName": "Vue测试" + "displayName": "销售订单", + "name": "SaleOrder" }, - "label": "vueTests", - "code": "VueTest" + "id": "2d5008ea-b109-43b2-beb6-a84076b033e2", + "code": "SaleOrder", + "name": "销售订单" } ], - "extendProperties": { - "enableStdTimeFormat": true - }, - "code": "PCFormTest_frm", - "sourceUri": "api/mydev/farrisvuetest/v1.0/PCFormTest_frm" + "sourceUri": "api/mydev/farrisvuetest/v1.0/ResponsiveCard_frm", + "name": "响应式卡片_frm" } ], "states": [], "stateMachines": [ { - "id": "PCFormTest_state_machine", - "name": "PC表单测试", - "uri": "ef535e87-96b6-4024-a762-41ca0ae45d6a", - "code": "PCFormTest_frm", - "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front" + "id": "ResponsiveCard_state_machine", + "name": "响应式卡片", + "uri": "e125566f-dae3-4613-a9ba-0da9dd7ded3e", + "code": "ResponsiveCard_frm", + "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.DesignTest.DesignTest.Front" } ], "viewmodels": [ { "id": "root-viewmodel", "code": "root-viewmodel", - "name": "Vue测试", + "name": "销售订单", "fields": [], - "stateMachine": "PCFormTest_state_machine", + "stateMachine": "ResponsiveCard_state_machine", "commands": [ { "id": "e05264fb-796d-43fb-b83b-9e2f3866c328", @@ -741,14 +1298,11 @@ { "name": "action", "shownName": "初始方法", - "value": "{UISTATE~/#{root-component}/action}", - "defaultValue": null + "value": "{UISTATE~/#{root-component}/action}" } ], "handlerName": "Load", "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", - "shortcut": {}, - "extensions": [], "isInvalid": false, "isNewGenerated": false, "targetComponent": "root-component" @@ -875,7 +1429,7 @@ { "name": "transitionAction", "shownName": "状态机动作", - "value": "Cancel", + "value": "Save", "defaultValue": null }, { @@ -910,24 +1464,163 @@ "isInvalid": false }, { - "id": "20dbc06c-6e46-46f0-b8f2-a7fd951d722e", - "code": "rootTest1", - "name": "test1", + "id": "efd106a7-bcf7-4525-958c-0a3fecac005b", + "code": "CheckAndGoBack1", + "name": "检查并返回", + "params": [], + "handlerName": "checkAndGoBack", + "cmpId": "65f0ba3f-8b72-49c4-8c0e-489bbf049d01", + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "195a477d-9773-4167-b631-383d272cb324", + "code": "rootSubmitWithBizDefKey1", + "name": "提交审批1", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "3ba1eba3-bfea-4d04-9034-8bba5e5348f6", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "handlerName": "submitWithBizDefKey", + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "363874c5-8b52-4c79-a12b-e3ed8d04423f", + "code": "rootCancelSubmitWithDataId1", + "name": "取消提交1", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "3ba1eba3-bfea-4d04-9034-8bba5e5348f6", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "handlerName": "cancelSubmitWithDataId", + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "c551e046-100a-4729-883b-fb68b7126fce", + "code": "rootGetLocation1", + "name": "获取定位1", + "params": [], + "handlerName": "getLocation", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "1bb9922c-5cf7-4535-bf13-5369266186e3", + "code": "rootTakePhoto1", + "name": "拍照1", + "params": [], + "handlerName": "takePhoto", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "00b95b0c-0855-4b01-869a-a265119da570", + "code": "rootCloseWindow1", + "name": "关闭窗口1", + "params": [], + "handlerName": "closeWindow", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "27f01205-e2cf-4383-9a8a-171d80a463bd", + "code": "rootSendSMS1", + "name": "发短信1", + "params": [], + "handlerName": "sendSMS", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "3f381db0-73d8-437c-b49f-da848049cafa", + "code": "rootTelephone1", + "name": "打电话1", + "params": [], + "handlerName": "telephone", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "shortcut": {}, + "extensions": [], + "isInvalid": false, + "isNewGenerated": false, + "targetComponent": "root-component" + }, + { + "id": "5680a40d-474b-439e-8028-da9bbd1714a3", + "code": "rootSelectPicture1", + "name": "选择照片1", "params": [], - "handlerName": "test", - "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "handlerName": "selectPicture", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "shortcut": {}, "extensions": [], "isInvalid": false, - "isNewGenerated": false + "isNewGenerated": false, + "targetComponent": "root-component" }, { - "id": "45e98f07-494f-4171-9129-817552fb91a8", - "code": "rootTest2", - "name": "test2", + "id": "9417d30c-c253-4f12-81e7-2bb47b893495", + "code": "rootDownloadFile1", + "name": "下载文件1", "params": [], - "handlerName": "test", - "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "handlerName": "downloadFile", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "shortcut": {}, "extensions": [], "isInvalid": false, @@ -935,12 +1628,12 @@ "targetComponent": "root-component" }, { - "id": "01760ad7-e092-4d91-88d8-89f9e13566fa", - "code": "rootTest3", - "name": "测试3", + "id": "3adc0e47-9629-4271-afdd-07d217949adb", + "code": "rootSelectFile1", + "name": "选择文件1", "params": [], - "handlerName": "test", - "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "handlerName": "selectFile", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "shortcut": {}, "extensions": [], "isInvalid": false, @@ -948,12 +1641,12 @@ "targetComponent": "root-component" }, { - "id": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", - "code": "rootTest4", - "name": "测试4", + "id": "d0149d3b-31f0-48bc-b223-0a9ae85c9301", + "code": "rootTakeVideo1", + "name": "拍摄视频1", "params": [], - "handlerName": "test", - "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "handlerName": "takeVideo", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "shortcut": {}, "extensions": [], "isInvalid": false, @@ -963,7 +1656,7 @@ ], "states": [ { - "id": "173719ae-8346-4a0f-bc8d-5fb82d0aed91", + "id": "c9826d69-88fd-4197-80cd-1261463a5310", "code": "bffSysFormConfigId", "name": "表单流程配置", "type": "String", @@ -971,97 +1664,138 @@ } ], "bindTo": "/", - "enableValidation": false, + "enableValidation": true, "enableUnifiedSession": false }, { "id": "basic-form-viewmodel", "code": "basic-form-viewmodel", - "name": "Vue测试", + "name": "销售订单", "fields": [ { "type": "Form", - "id": "e7c488df-0101-468f-ae3f-40c76c0f06b0", + "id": "76f154be-7ded-43c6-8102-c523586acc6c", + "fieldName": "remark", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "textarea" + } + } + }, + { + "type": "Form", + "id": "fabd3a03-e121-406b-86ea-96f0e975fca5", + "fieldName": "version", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "date-picker" + } + } + }, + { + "type": "Form", + "id": "8ca89120-0101-468f-ae3f-40c76c0f06b0", "fieldName": "billStatus_BillState", - "groupId": null, - "groupName": null, + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", "updateOn": "change", "fieldSchema": { - "name": "工单状态" + "editor": { + "$type": "combo-list" + } } }, { "type": "Form", - "id": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "fieldName": "name", - "groupId": null, - "groupName": null, + "id": "4b5b5386-65e3-4aec-8531-716991baca3f", + "fieldName": "actualPay", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", "updateOn": "blur", "fieldSchema": { - "name": "工单编号", "editor": { - "$type": "lookup" + "$type": "number-spinner" } } }, { "type": "Form", - "id": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "fieldName": "numberField", - "groupId": null, - "groupName": null, + "id": "6006c098-1d4b-41f6-8176-452bd2874885", + "fieldName": "totalDiscount", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", "updateOn": "blur", "fieldSchema": { - "name": "工时" + "editor": { + "$type": "check-box" + } } }, { "type": "Form", - "id": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "fieldName": "dateField", - "groupId": null, - "groupName": null, + "id": "61752adc-c793-46ad-8eab-af57fb89adf2", + "fieldName": "orderSour", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", "updateOn": "blur", "fieldSchema": { - "name": "制单日期" + "editor": { + "$type": "check-group" + } } }, { "type": "Form", - "id": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", - "fieldName": "processInstance_ProcessInstance", + "id": "3cd8435a-e667-495f-b08f-44f10b14a52d", + "fieldName": "sendState", "groupId": "", "groupName": "", "valueChanging": "", "valueChanged": "", - "updateOn": "blur", + "updateOn": "change", "fieldSchema": { "editor": { "$type": "radio-group" - }, - "name": "工单类型" + } } }, { "type": "Form", - "id": "c419df06-d982-44ca-8e48-b366b778049a", - "fieldName": "booleanField", + "id": "83491c18-d22f-4ded-b7a0-a730d863a8f9", + "fieldName": "totalPrice", "groupId": "", "groupName": "", "valueChanging": "", "valueChanged": "", - "updateOn": "change", + "updateOn": "blur", "fieldSchema": { "editor": { "$type": "switch" - }, - "name": "是否处理" + } } }, { "type": "Form", - "id": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "fieldName": "code", + "id": "67d14df7-b8d0-4679-b184-ee942a0d87c0", + "fieldName": "telephone", "groupId": "", "groupName": "", "valueChanging": "", @@ -1070,29 +1804,44 @@ "fieldSchema": { "editor": { "$type": "time-picker" + } + } + }, + { + "type": "Form", + "id": "ed091667-67f8-4aa2-8698-6f3d8dcf220f", + "fieldName": "merchant_Merchant_name", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "lookup" }, - "name": "制单时间" + "name": "商户" } }, { "type": "Form", - "id": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "fieldName": "eumu1", + "id": "320286b8-119a-43a9-ac4b-d627f64ee414", + "fieldName": "orderCode", "groupId": "", "groupName": "", "valueChanging": "", "valueChanged": "", - "updateOn": "change", + "updateOn": "blur", "fieldSchema": { "editor": { - "$type": "combo-list" + "$type": "input-group" } } }, { "type": "Form", - "id": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "fieldName": "ass1_ass1_Name", + "id": "a3569dcd-ff8e-40ea-aaf7-3c81b417fcbc", + "fieldName": "merchant", "groupId": "", "groupName": "", "valueChanging": "", @@ -1103,37 +1852,131 @@ "$type": "input-group" } } - } - ], - "serviceRefs": [], - "commands": [], - "states": [ + }, { - "id": "472eb525-a024-4a49-b51f-cdcfac1df8c8", - "category": "locale", - "code": "isCodeReadonly", - "name": "isCodeReadonly", - "type": "Object", - "value": { - "sssss": 22222 + "type": "Form", + "id": "301100df-cc10-4859-b645-db88538b3403", + "fieldName": "orderPerson_OrderPerson_Name", + "groupId": "", + "groupName": "", + "valueChanging": "", + "valueChanged": "", + "updateOn": "blur", + "fieldSchema": { + "editor": { + "$type": "lookup" + }, + "name": "下单人" } } ], + "serviceRefs": [], + "commands": [], + "states": [], "bindTo": "/", "parent": "root-viewmodel", "enableValidation": true }, { - "id": "data-grid-z5vj-component-viewmodel", - "code": "data-grid-z5vj-component-viewmodel", - "name": "子表1", - "bindTo": "/child1s", - "parent": "root-viewmodel", + "id": "orderitem-component-viewmodel", + "code": "orderitem-component-viewmodel", + "name": "订单明细", "fields": [ { "type": "Form", - "id": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "fieldName": "name", + "id": "370df240-d24d-43d1-bb7a-a30a0ea86a84", + "fieldName": "discountType", + "groupId": null, + "groupName": null, + "updateOn": "change" + }, + { + "type": "Form", + "id": "8a7ac89a-83d4-4fcd-8cd1-aef0c9283111", + "fieldName": "discountAmount", + "groupId": null, + "groupName": null, + "updateOn": "blur" + }, + { + "type": "Form", + "id": "f3941d8f-9795-43f7-a50b-dd4c0a3c6bc7", + "fieldName": "actualAmount", + "groupId": null, + "groupName": null, + "updateOn": "blur" + }, + { + "type": "Form", + "id": "ada0c721-0da0-4eb9-8daa-86d6c070efbe", + "fieldName": "remark", + "groupId": null, + "groupName": null, + "updateOn": "blur" + } + ], + "states": [], + "bindTo": "/orderItems", + "parent": "root-viewmodel", + "commands": [ + { + "id": "3da96a96-b620-4716-9a7a-ff81a3645454", + "code": "orderitemAddItem1", + "name": "增加一条子表数据", + "params": [], + "handlerName": "AddItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + }, + { + "id": "86697129-e440-44b4-a26d-a7d88d261641", + "code": "orderitemRemoveItem1", + "name": "删除一条子表数据", + "params": [ + { + "name": "id", + "shownName": "待删除子表数据的标识", + "value": "{DATA~/orderItems/id}", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "删除成功提示信息", + "value": "", + "defaultValue": null + } + ], + "handlerName": "RemoveItem", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "shortcut": {}, + "extensions": [], + "isInvalid": false + } + ], + "enableValidation": true + }, + { + "id": "data-grid-yu8f-component-viewmodel", + "code": "data-grid-yu8f-component-viewmodel", + "name": "订单明细", + "bindTo": "/orderItems", + "parent": "root-viewmodel", + "fields": [ + { + "type": "Form", + "id": "280090bf-5688-4809-92d7-81c54f1663df", + "fieldName": "specification", + "groupId": null, + "groupName": null, + "updateOn": "blur", + "fieldSchema": {} + }, + { + "type": "Form", + "id": "1a3b1585-e749-418c-91c5-8ccb7ab30f71", + "fieldName": "quality", "groupId": null, "groupName": null, "updateOn": "blur", @@ -1141,8 +1984,8 @@ }, { "type": "Form", - "id": "e5a6411a-c30e-4259-8682-53685c53e62a", - "fieldName": "code", + "id": "e36f2428-1373-4025-a4bd-2a2e8ec60cc5", + "fieldName": "price", "groupId": null, "groupName": null, "updateOn": "blur", @@ -1151,8 +1994,8 @@ ], "commands": [ { - "id": "d0d339b9-958b-4426-a108-e863300e4151", - "code": "datagridz5vjAddItem1", + "id": "0a972a53-04c9-4039-9d52-83fea52b0dd4", + "code": "datagridyu8fAddItem1", "name": "增加一条子表数据", "params": [], "handlerName": "AddItem", @@ -1162,14 +2005,14 @@ "isInvalid": false }, { - "id": "573952e2-118d-4773-8cf7-347e97e319ca", - "code": "datagridz5vjRemoveItem1", + "id": "d226931c-abdc-4ece-8192-fbaa9a5c8866", + "code": "datagridyu8fRemoveItem1", "name": "删除一条子表数据", "params": [ { "name": "id", "shownName": "待删除子表数据的标识", - "value": "{DATA~/child1s/id}" + "value": "{DATA~/orderItems/id}" } ], "handlerName": "RemoveItem", @@ -1190,6 +2033,7 @@ "viewModel": "root-viewmodel", "componentType": "frame", "onInit": "Load1", + "goBack": "CheckAndGoBack1", "contents": [ { "id": "root-layout", @@ -1206,8 +2050,9 @@ }, "iconClass": "f-title-icon f-text-orna-bill", "icon": "f-icon f-icon-page-title-record", - "title": "PC表单测试", + "title": "响应式卡片", "toolbar": { + "id": "page-header-toolbar", "type": "response-toolbar", "buttons": [ { @@ -1222,24 +2067,33 @@ "field": "canAdd" }, "onClick": "Add1", - "text": "新增" + "text": "新增", + "children": [ + { + "id": "response_toolbar_item_7866", + "type": "response-toolbar-item", + "text": "按钮1" + } + ] }, { "id": "button-edit", "type": "response-toolbar-item", "text": "编辑", - "disabled": "!viewModel.stateMachine['canEdit']", - "onClick": "Edit1" + "disabled": { + "type": "StateMachine", + "status": false, + "field": "canEdit" + }, + "onClick": "Edit1", + "visibleControlledByRules": true, + "disableControlledByRules": true }, { "id": "button-save", "type": "response-toolbar-item", "text": "保存", - "disabled": { - "type": "StateMachine", - "status": false, - "field": "canSave" - }, + "disabled": "!viewModel.stateMachine['canSave']", "onClick": "Save1" }, { @@ -1250,24 +2104,70 @@ "onClick": "Cancel1" }, { - "id": "toolbar_item_2362", + "id": "toolbar_item_1464", "type": "response-toolbar-item", - "text": "按钮", - "appearance": { - "class": "btn btn-secondary f-btn-ml" - }, - "onClick": "rootTest2" + "text": "提交", + "onClick": "rootSubmitWithBizDefKey1" + }, + { + "id": "toolbar_item_0223", + "type": "response-toolbar-item", + "text": "取消提交", + "onClick": "rootCancelSubmitWithDataId1" + }, + { + "id": "toolbar_item_3948", + "type": "response-toolbar-item", + "text": "定位", + "onClick": "rootGetLocation1" + }, + { + "id": "toolbar_item_0079", + "type": "response-toolbar-item", + "text": "拍照", + "onClick": "rootTakePhoto1" + }, + { + "id": "toolbar_item_3126", + "type": "response-toolbar-item", + "text": "拍摄视频", + "onClick": "rootTakeVideo1" + }, + { + "id": "toolbar_item_1073", + "type": "response-toolbar-item", + "text": "关闭窗口", + "onClick": "rootCloseWindow1" + }, + { + "id": "toolbar_item_3884", + "type": "response-toolbar-item", + "text": "发短信", + "onClick": "rootSendSMS1" }, { - "id": "toolbar_item_4335", + "id": "toolbar_item_2516", "type": "response-toolbar-item", - "text": "触发组合表单", - "onClick": "rootTest4" + "text": "打电话", + "onClick": "rootTelephone1" }, { - "id": "toolbar_item_1125", + "id": "toolbar_item_4679", "type": "response-toolbar-item", - "text": "弹出帮助" + "text": "选择图片", + "onClick": "rootSelectPicture1" + }, + { + "id": "toolbar_item_4173", + "type": "response-toolbar-item", + "text": "下载文件", + "onClick": "rootDownloadFile1" + }, + { + "id": "toolbar_item_9797", + "type": "response-toolbar-item", + "text": "选择文件", + "onClick": "rootSelectFile1" } ] } @@ -1292,41 +2192,111 @@ "component": "basic-form-component" }, { - "id": "container-0133", + "id": "detail-container", "type": "content-container", "contents": [ { - "id": "section-0133", + "id": "detail-section", "type": "section", + "appearance": { + "class": "f-section-tabs f-section-in-mainsubcard" + }, + "mainTitle": "", + "showHeader": false, "contents": [ { - "id": "data-grid-z5vj-component-ref", - "type": "component-ref", - "component": "data-grid-z5vj-component" + "id": "detail-tab", + "type": "tabs", + "appearance": { + "class": "f-component-tabs f-tabs-has-grid" + }, + "activeId": "orderitem-tab-page", + "contents": [ + { + "id": "orderitem-tab-page", + "type": "tab-page", + "title": "订单明细", + "contents": [ + { + "id": "orderitem-component-ref", + "type": "component-ref", + "component": "orderitem-component" + } + ], + "toolbar": { + "id": "orderitem-tab-toolbar", + "type": "tab-toolbar", + "position": "inHead", + "buttons": [ + { + "id": "orderitemAddButton", + "type": "tab-toolbar-item", + "text": "新增", + "onClick": "root-viewmodel.orderitem-component-viewmodel.orderitemAddItem1", + "disabled": { + "type": "StateMachine", + "status": false, + "field": "canAddDetail" + } + }, + { + "id": "orderitemRemoveButton", + "type": "tab-toolbar-item", + "text": "删除", + "onClick": "root-viewmodel.orderitem-component-viewmodel.orderitemRemoveItem1", + "disabled": "!viewModel.stateMachine['canRemoveDetail']" + } + ] + } + }, + { + "id": "tab_page_5718", + "type": "tab-page", + "contents": [ + { + "id": "data-grid-yu8f-component-ref", + "type": "component-ref", + "component": "data-grid-yu8f-component" + } + ], + "title": "商品详情", + "toolbar": { + "id": "tab_page_5718_toolbar", + "buttons": [ + { + "id": "button-add-data-grid-yu8f", + "type": "tab-toolbar-item", + "text": "新增", + "disabled": { + "type": "StateMachine", + "status": false, + "field": "canAddDetail" + }, + "onClick": "root-viewModel.data-grid-yu8f-component-viewmodel.datagridyu8fAddItem1" + }, + { + "id": "button-remove-data-grid-yu8f", + "type": "tab-toolbar-item", + "text": "删除", + "disabled": { + "type": "StateMachine", + "status": false, + "field": "canRemoveDetail" + }, + "onClick": "root-viewModel.data-grid-yu8f-component-viewmodel.datagridyu8fRemoveItem1" + } + ], + "type": "tab-toolbar" + } + } + ] } ], - "appearance": { - "class": "f-section-in-mainsubcard" - }, - "mainTitle": "子表1", "toolbar": { - "id": "section-0133_toolbar", - "buttons": [ - { - "id": "button-add-data-grid-z5vj", - "type": "section-toolbar-item", - "text": "新增", - "disabled": "!viewModel.stateMachine['canAddDetail']", - "onClick": "root-viewModel.data-grid-z5vj-component-viewmodel.datagridz5vjAddItem1" - }, - { - "id": "button-remove-data-grid-z5vj", - "type": "section-toolbar-item", - "text": "删除", - "disabled": "!viewModel.stateMachine['canRemoveDetail']", - "onClick": "root-viewModel.data-grid-z5vj-component-viewmodel.datagridz5vjRemoveItem1" - } - ] + "id": "detail-section-toolbar", + "type": "section-toolbar", + "position": "inHead", + "buttons": [] } } ], @@ -1342,9 +2312,7 @@ ] } ], - "name": "Vue测试", - "enableValidation": false, - "onAfterViewInit": null + "name": "销售订单" }, { "id": "basic-form-component", @@ -1372,74 +2340,154 @@ }, "contents": [ { - "id": "name_3410f627_2m6a", + "id": "orderCode_320286b8_bqwa", "type": "form-group", + "editor": { + "type": "input-group", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "maxLength": 36, + "formatValidation": { + "type": "none", + "expression": "", + "message": "请输入正确的无" + }, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "label": "订单编号", "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2", - "style": "color:red" + "class": "col-12 col-md-6 col-xl-3 col-el-2" }, - "label": "工单编号", "binding": { "type": "Form", - "path": "name", - "field": "3410f627-358c-4a1a-99b4-800e9d0211e0", - "fullPath": "name" + "path": "orderCode", + "field": "320286b8-119a-43a9-ac4b-d627f64ee414", + "fullPath": "OrderCode" }, + "path": "orderCode", + "updateOn": "blur", + "visibleControlledByRules": true + }, + { + "id": "merchant_a3569dcd_yyp7", + "type": "form-group", "editor": { - "type": "lookup", + "type": "input-group", "readonly": { "type": "StateMachine", "status": false, "field": "editable" }, "maxLength": 36, - "dataSource": { - "displayName": "系统组织帮助(sysorghlp)", - "idField": "id", - "type": "ViewObject", - "uri": "lookup.name_3410f627_2m6a" + "formatValidation": { + "type": "cellNumber", + "expression": "^1[0-9]{10}$", + "message": "请输入正确的手机号" }, - "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", - "displayType": "TreeList", - "textField": "name", - "pagination": { - "enable": true, - "sizeLimits": [ - 10, - 20, - 30, - 50 - ], - "size": 20, - "showLimits": true, - "showGoto": false, - "mode": "server" + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "label": "商户", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "merchant", + "field": "a3569dcd-ff8e-40ea-aaf7-3c81b417fcbc", + "fullPath": "Merchant.Merchant" + }, + "path": "merchant.merchant", + "updateOn": "blur", + "visibleControlledByRules": true + }, + { + "id": "language-textbox_p7a2", + "type": "form-group", + "editor": { + "type": "language-textbox" + }, + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": null, + "label": "多语输入框" + }, + { + "id": "remark_76f154be_e018", + "type": "form-group", + "editor": { + "type": "textarea", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" }, - "loadTreeDataType": "default", - "onlySelectLeaf": false, - "multiSelect": true, - "required": true, - "mappingFields": "{\"code\":\"processInstance.processInstance\"}" - + "resizable": true, + "maxLength": 100, + "readonlyControlledByRules": true, + "requireControlledByRules": true }, - "path": "name", - "updateOn": "blur" + "label": "备注", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "remark", + "field": "76f154be-7ded-43c6-8102-c523586acc6c", + "fullPath": "Remark" + }, + "path": "remark", + "updateOn": "blur", + "visibleControlledByRules": true }, { - "id": "billStatus_BillState_e7c488df_x74m", + "id": "version_fabd3a03_0cek", "type": "form-group", + "editor": { + "type": "date-picker", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "fieldType": "DateTime", + "showTime": true, + "displayFormat": "yyyy-MM-dd HH:mm:ss", + "valueFormat": "yyyy-MM-dd HH:mm:ss", + "selectMode": "day", + "readonlyControlledByRules": false, + "requireControlledByRules": false + }, + "label": "版本", "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2 pc-red" + "class": "col-12 col-md-6 col-xl-3 col-el-2" }, - "label": "工单状态", "binding": { "type": "Form", - "path": "billStatus_BillState", - "field": "e7c488df-0101-468f-ae3f-40c76c0f06b0", - "fullPath": "BillStatus.BillState" + "path": "version", + "field": "fabd3a03-e121-406b-86ea-96f0e975fca5", + "fullPath": "Version" }, + "path": "version", + "updateOn": "blur", + "visibleControlledByRules": true + }, + { + "id": "billStatus_BillState_8ca89120_gq2r", + "type": "form-group", "editor": { "type": "combo-list", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, "data": [ { "disabled": false, @@ -1462,145 +2510,214 @@ "value": "ApprovalNotPassed" } ], - "textField": "name", - "valueField": "value", "idField": "value", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - } - }, - "path": "billStatus.billState", - "updateOn": "change" - }, - { - "id": "booleanField_c419df06_drqr", - "type": "form-group", - "editor": { - "type": "switch", - "readonly": { - "type": "StateMachine", - "status": false, - "field": "editable" - } + "valueField": "value", + "textField": "name", + "readonlyControlledByRules": false, + "requireControlledByRules": false }, - "label": "是否处理", + "label": "状态", "appearance": { "class": "col-12 col-md-6 col-xl-3 col-el-2" }, "binding": { "type": "Form", - "path": "booleanField", - "field": "c419df06-d982-44ca-8e48-b366b778049a", - "fullPath": "booleanField" + "path": "billStatus_BillState", + "field": "8ca89120-0101-468f-ae3f-40c76c0f06b0", + "fullPath": "BillStatus.BillState" }, - "path": "booleanField", - "updateOn": "change" + "path": "billStatus.billState", + "updateOn": "change", + "fieldValueChanging": "", + "fieldValueChanged": "", + "visibleControlledByRules": true }, { - "id": "processInstance_ProcessInstance_5d3fd927_6mxv", + "id": "actualPay_4b5b5386_q8mm", "type": "form-group", "editor": { - "type": "radio-group", + "type": "number-spinner", "readonly": { "type": "StateMachine", "status": false, "field": "editable" }, - "data": [], - "idField": "value", - "valueField": "value", - "textField": "name", - "maxLength": 36 + "precision": 2, + "nullable": true, + "maxLength": 18, + "readonlyControlledByRules": true, + "requireControlledByRules": true }, - "label": "工单类型", + "label": "合计实付", "appearance": { "class": "col-12 col-md-6 col-xl-3 col-el-2" }, "binding": { "type": "Form", - "path": "processInstance_ProcessInstance", - "field": "5d3fd927-ad8f-4da3-a430-c8a7f2162135", - "fullPath": "ProcessInstance.ProcessInstance" + "path": "actualPay", + "field": "4b5b5386-65e3-4aec-8531-716991baca3f", + "fullPath": "ActualPay" }, - "path": "processInstance.processInstance", - "updateOn": "blur" + "path": "actualPay", + "updateOn": "blur", + "visibleControlledByRules": true, + "fieldValueChanging": "", + "fieldValueChanged": "" }, { - "id": "numberField_cc6b21b3_dyee", + "id": "totalDiscount_6006c098_zjm7", "type": "form-group", - "appearance": { - "class": "col-12 col-md-6 col-xl-3 col-el-2" - }, - "label": "工时", - "binding": { - "type": "Form", - "path": "numberField", - "field": "cc6b21b3-f721-493e-8a7d-5d0aa90b824c", - "fullPath": "numberField" - }, "editor": { - "type": "number-spinner", - "nullable": true, + "type": "check-box", "readonly": { "type": "StateMachine", "status": false, "field": "editable" }, - "precision": 0, - "maxLength": 0 + "trueValue": 1, + "falseValue": 0, + "maxLength": 18, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "label": "" }, - "path": "numberField", - "updateOn": "blur" - }, - { - "id": "dateField_e18b1dc0_so35", - "type": "form-group", + "label": "折扣优惠", "appearance": { "class": "col-12 col-md-6 col-xl-3 col-el-2" }, - "label": "制单日期", "binding": { "type": "Form", - "path": "dateField", - "field": "e18b1dc0-12c6-4c3e-95e6-c88f1405cfa2", - "fullPath": "dateField" + "path": "totalDiscount", + "field": "6006c098-1d4b-41f6-8176-452bd2874885", + "fullPath": "TotalDiscount" }, + "path": "totalDiscount", + "updateOn": "blur", + "visibleControlledByRules": true, + "fieldValueChanging": "", + "fieldValueChanged": "" + }, + { + "id": "orderSour_61752adc_yxgt", + "type": "form-group", "editor": { - "type": "date-picker", + "type": "check-group", "readonly": { "type": "StateMachine", "status": false, "field": "editable" }, - "fieldType": "Date" - }, - "path": "dateField", - "updateOn": "blur" - }, - { - "id": "ass1_ass1_Name_63b04a7c_p63a", - "type": "form-group", - "editor": { - "type": "input-group", - "readonly": "!viewModel.stateMachine['editable']", - "maxLength": 36 + "data": [ + { + "value": "key1", + "name": "淘宝" + }, + { + "value": "key2", + "name": "京东" + } + ], + "idField": "value", + "valueField": "value", + "textField": "name", + "maxLength": 36, + "readonlyControlledByRules": true, + "requireControlledByRules": true }, - "label": "名称", + "label": "订单来源", "appearance": { "class": "col-12 col-md-6 col-xl-3 col-el-2" }, "binding": { "type": "Form", - "path": "ass1_ass1_Name", - "field": "63b04a7c-b310-4a02-bd8b-c4d2e8ad87f4", - "fullPath": "ass1.ass1_Name" + "path": "orderSour", + "field": "61752adc-c793-46ad-8eab-af57fb89adf2", + "fullPath": "OrderSour" }, - "path": "ass1.ass1_Name" + "path": "orderSour", + "updateOn": "blur", + "visibleControlledByRules": true, + "fieldValueChanging": "", + "fieldValueChanged": "" }, { - "id": "code_d63b5e0f_nzbn", + "id": "sendState_3cd8435a_dkxg", + "type": "form-group", + "editor": { + "type": "radio-group", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "data": [ + { + "disabled": false, + "name": "未发货", + "value": "Unshipped" + }, + { + "disabled": false, + "name": "已发货", + "value": "Shipped" + } + ], + "idField": "value", + "valueField": "value", + "textField": "name", + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "label": "发货状态", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "sendState", + "field": "3cd8435a-e667-495f-b08f-44f10b14a52d", + "fullPath": "SendState" + }, + "path": "sendState", + "updateOn": "change", + "visibleControlledByRules": true, + "fieldValueChanging": "", + "fieldValueChanged": "" + }, + { + "id": "totalPrice_83491c18_gana", + "type": "form-group", + "editor": { + "type": "switch", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "trueValue": 1, + "falseValue": 0, + "maxLength": 18, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "label": "订单金额", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "totalPrice", + "field": "83491c18-d22f-4ded-b7a0-a730d863a8f9", + "fullPath": "TotalPrice" + }, + "path": "totalPrice", + "updateOn": "blur", + "visibleControlledByRules": true, + "fieldValueChanging": "", + "fieldValueChanged": "" + }, + { + "id": "telephone_67d14df7_3jf2", "type": "form-group", "editor": { "type": "time-picker", @@ -1609,49 +2726,139 @@ "status": false, "field": "editable" }, - "maxLength": 36 + "maxLength": 36, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "hourStep": 1, + "secondStep": 1, + "showHeader": false }, - "label": "制单时间", + "label": "联系电话", "appearance": { "class": "col-12 col-md-6 col-xl-3 col-el-2" }, "binding": { "type": "Form", - "path": "code", - "field": "d63b5e0f-ac69-486d-8dd7-9b0e154e9fc8", - "fullPath": "code" + "path": "telephone", + "field": "67d14df7-b8d0-4679-b184-ee942a0d87c0", + "fullPath": "Telephone" }, - "path": "code", - "updateOn": "blur" + "path": "telephone", + "updateOn": "blur", + "visibleControlledByRules": true, + "fieldValueChanging": "", + "fieldValueChanged": "" }, { - "id": "eumu1_2092e529_k19l", + "id": "merchant_Merchant_name_ed091667_g1bz", "type": "form-group", "editor": { - "type": "combo-list", - "readonly": "!viewModel.stateMachine['editable']", - "data": [ - { - "disabled": false, - "name": "testname", - "value": "test1" + "type": "lookup", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "maxLength": 100, + "dataSource": { + "displayName": "系统组织帮助(sysorghlp)", + "idField": "id", + "type": "ViewObject", + "uri": "lookup.merchant_Merchant_name_ed091667_g1bz" + }, + "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", + "displayType": "TreeList", + "textField": "name", + "enableEqualSearch": false, + "pagination": { + "enable": true, + "sizeLimits": [ + 10, + 20, + 30, + 50 + ], + "size": 20, + "showLimits": true, + "showGoto": false, + "mode": "server", + "pagination": { + "size": 10 } - ], - "idField": "value", - "valueField": "value", - "textField": "name" + }, + "loadTreeDataType": "default", + "onlySelectLeaf": false, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "mappingFields": "{\"code\":\"version\"}" + }, + "label": "商户", + "appearance": { + "class": "col-12 col-md-6 col-xl-3 col-el-2" + }, + "binding": { + "type": "Form", + "path": "merchant_Merchant_name", + "field": "ed091667-67f8-4aa2-8698-6f3d8dcf220f", + "fullPath": "Merchant.Merchant_name" + }, + "path": "merchant.merchant_name", + "updateOn": "blur", + "visibleControlledByRules": true + }, + { + "id": "orderPerson_OrderPerson_Name_301100df_zkan", + "type": "form-group", + "editor": { + "type": "lookup", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "maxLength": 36, + "dataSource": { + "displayName": "系统用户帮助(GspUserHelp)", + "idField": "id", + "type": "ViewObject", + "uri": "lookup.orderPerson_OrderPerson_Name_301100df_zkan" + }, + "helpId": "915a0b20-975a-4df1-8cfd-888c3dda0009", + "displayType": "List", + "textField": "name", + "enableEqualSearch": false, + "pagination": { + "enable": true, + "sizeLimits": [ + 10, + 20, + 30, + 50 + ], + "size": 20, + "showLimits": true, + "showGoto": false, + "mode": "server" + }, + "loadTreeDataType": "default", + "onlySelectLeaf": false, + "readonlyControlledByRules": true, + "requireControlledByRules": true, + "searchAnyField": false }, - "label": "eumu1", + "label": "下单人", "appearance": { "class": "col-12 col-md-6 col-xl-3 col-el-2" }, "binding": { "type": "Form", - "path": "eumu1", - "field": "2092e529-c1cd-444d-98f5-6e11db8be5b7", - "fullPath": "eumu1" + "path": "orderPerson_OrderPerson_Name", + "field": "301100df-cc10-4859-b645-db88538b3403", + "fullPath": "OrderPerson.OrderPerson_Name" }, - "path": "eumu1" + "path": "orderPerson.orderPerson_Name", + "updateOn": "blur", + "visibleControlledByRules": true } ], "controlsInline": true, @@ -1661,71 +2868,187 @@ "enableAccordion": "default" } ], - "name": "Vue测试" + "name": "销售订单" }, { - "id": "data-grid-z5vj-component", + "id": "orderitem-component", "type": "component", + "viewModel": "orderitem-component-viewmodel", "contents": [ { - "id": "data-grid-z5vj-container", + "id": "orderitem-component-layout", "type": "content-container", "contents": [ { - "id": "data-grid-z5vj-dataGrid", + "id": "dataGrid_orderitem", "type": "data-grid", + "dataSource": "orderItems", "columns": [ { - "id": "name_49fca8d8_r0yy", + "id": "discountType_370df240_6hb4", "type": "data-grid-column", - "title": "名称", - "field": "name", + "title": "折扣类型", + "field": "discountType", + "dataType": "enum", "binding": { "type": "Form", - "path": "name", - "field": "49fca8d8-e64a-4e8c-a619-f051cfdf72a5", - "fullPath": "name" + "path": "discountType", + "field": "370df240-d24d-43d1-bb7a-a30a0ea86a84", + "fullPath": "DiscountType" + }, + "width": 120, + "formatter": { + "type": "enum", + "data": [ + { + "disabled": false, + "name": "折扣", + "value": "Dis" + }, + { + "disabled": false, + "name": "无折扣", + "value": "NoDis" + } + ] }, - "dataType": "string", "editor": { - "type": "input-group", + "type": "combo-list", + "data": [ + { + "disabled": false, + "name": "折扣", + "value": "Dis" + }, + { + "disabled": false, + "name": "无折扣", + "value": "NoDis" + } + ], + "textField": "name", + "valueField": "value", + "idField": "value", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "filter": "", + "showSetting": false, + "actualWidth": 120, + "updateOn": "change", + "visibleControlledByRules": true + }, + { + "id": "discountAmount_8a7ac89a_59y2", + "type": "data-grid-column", + "title": "折扣金额", + "field": "discountAmount", + "dataType": "number", + "binding": { + "type": "Form", + "path": "discountAmount", + "field": "8a7ac89a-83d4-4fcd-8cd1-aef0c9283111", + "fullPath": "DiscountAmount" + }, + "width": 120, + "formatter": { + "type": "number", + "precision": 2, + "thousand": ",", + "decimal": "." + }, + "halign": "right", + "align": "right", + "editor": { + "type": "number-spinner", + "nullable": true, "readonly": "!viewModel.stateMachine['editable']", - "maxLength": 36 + "precision": 2, + "textAlign": "right", + "maxLength": 18, + "readonlyControlledByRules": true, + "requireControlledByRules": true }, "filter": "", "showSetting": false, - "actualWidth": 120 + "actualWidth": 120, + "visibleControlledByRules": true }, { - "id": "code_e5a6411a_lvjz", + "id": "actualAmount_f3941d8f_1wzb", "type": "data-grid-column", - "title": "编号", - "field": "code", + "title": "实际结算金额", + "field": "actualAmount", + "dataType": "number", "binding": { "type": "Form", - "path": "code", - "field": "e5a6411a-c30e-4259-8682-53685c53e62a", - "fullPath": "code" + "path": "actualAmount", + "field": "f3941d8f-9795-43f7-a50b-dd4c0a3c6bc7", + "fullPath": "ActualAmount" }, + "width": 120, + "formatter": { + "type": "number", + "precision": 2, + "thousand": ",", + "decimal": "." + }, + "halign": "right", + "align": "right", + "editor": { + "type": "number-spinner", + "nullable": true, + "readonly": "!viewModel.stateMachine['editable']", + "precision": 2, + "textAlign": "right", + "maxLength": 18, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "filter": "", + "showSetting": false, + "actualWidth": 120, + "visibleControlledByRules": true + }, + { + "id": "remark_ada0c721_sq9c", + "type": "data-grid-column", + "title": "备注", + "field": "remark", "dataType": "string", + "binding": { + "type": "Form", + "path": "remark", + "field": "ada0c721-0da0-4eb9-8daa-86d6c070efbe", + "fullPath": "Remark" + }, + "width": 120, "editor": { - "type": "input-group", + "type": "textarea", "readonly": "!viewModel.stateMachine['editable']", - "maxLength": 36 + "maxLength": 100, + "readonlyControlledByRules": true, + "requireControlledByRules": true }, "filter": "", "showSetting": true, - "actualWidth": 120 + "actualWidth": 120, + "visibleControlledByRules": true } ], - "appearance": { - "class": "f-component-grid" + "pagination": { + "enable": false, + "mode": "server" }, - "fieldEditable": true, - "dataSource": "child1s", "editable": "viewModel.stateMachine['editable']", - "pagination": { - "enable": false + "fieldEditable": true, + "appearance": { + "class": "f-component-grid f-utils-fill" } } ], @@ -1734,109 +3057,638 @@ } } ], - "viewModel": "data-grid-z5vj-component-viewmodel", "componentType": "data-grid", "appearance": { "class": "f-struct-is-subgrid" - } - } - ], - "webcmds": [ + }, + "name": "订单明细" + }, { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "path": "/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd", - "name": "CardController.webcmd", - "refedHandlers": [ - { - "host": "e05264fb-796d-43fb-b83b-9e2f3866c328", - "handler": "Load" - }, - { - "host": "246a275c-88c9-4c8a-aa82-be6a950a4325", - "handler": "LoadAndAdd" - }, - { - "host": "70acc053-fa15-45be-851c-cf694e1bcaf7", - "handler": "LoadAndView" - }, - { - "host": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", - "handler": "LoadAndEdit" - }, - { - "host": "f90aadfa-988c-4da5-a5db-1416c3333794", - "handler": "Add" - }, - { - "host": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "handler": "Edit" - }, - { - "host": "31b814db-01e4-407d-8fad-0f08dbb01999", - "handler": "Save" - }, - { - "host": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "handler": "Cancel" - }, - { - "host": "d0d339b9-958b-4426-a108-e863300e4151", - "handler": "AddItem" - }, + "id": "data-grid-yu8f-component", + "type": "component", + "contents": [ { - "host": "573952e2-118d-4773-8cf7-347e97e319ca", - "handler": "RemoveItem" - } - ], - "code": "CardController", - "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" + "id": "data-grid-yu8f-container", + "type": "content-container", + "contents": [ + { + "id": "data-grid-yu8f-dataGrid", + "type": "data-grid", + "columns": [ + { + "id": "specification_280090bf_lbtk", + "type": "data-grid-column", + "title": "规格型号", + "field": "specification", + "binding": { + "type": "Form", + "path": "specification", + "field": "280090bf-5688-4809-92d7-81c54f1663df", + "fullPath": "Specification" + }, + "dataType": "string", + "editor": { + "type": "input-group", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "maxLength": 36, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "filter": "", + "showSetting": false, + "actualWidth": 120, + "visibleControlledByRules": true + }, + { + "id": "quality_1a3b1585_398t", + "type": "data-grid-column", + "title": "数量", + "field": "quality", + "binding": { + "type": "Form", + "path": "quality", + "field": "1a3b1585-e749-418c-91c5-8ccb7ab30f71", + "fullPath": "Quality" + }, + "dataType": "number", + "halign": "right", + "align": "right", + "formatter": { + "type": "number", + "precision": 0, + "thousand": ",", + "decimal": "." + }, + "editor": { + "type": "number-spinner", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "precision": 0, + "nullable": true, + "textAlign": "right", + "maxLength": 0, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "filter": "", + "showSetting": false, + "actualWidth": 120, + "visibleControlledByRules": true + }, + { + "id": "price_e36f2428_b6ud", + "type": "data-grid-column", + "title": "标价", + "field": "price", + "binding": { + "type": "Form", + "path": "price", + "field": "e36f2428-1373-4025-a4bd-2a2e8ec60cc5", + "fullPath": "Price" + }, + "dataType": "number", + "halign": "right", + "align": "right", + "formatter": { + "type": "number", + "precision": 2, + "thousand": ",", + "decimal": "." + }, + "editor": { + "type": "number-spinner", + "readonly": { + "type": "StateMachine", + "status": false, + "field": "editable" + }, + "precision": 2, + "nullable": true, + "textAlign": "right", + "maxLength": 18, + "readonlyControlledByRules": true, + "requireControlledByRules": true + }, + "filter": "", + "showSetting": true, + "actualWidth": 120, + "visibleControlledByRules": true + } + ], + "appearance": { + "class": "f-component-grid" + }, + "fieldEditable": true, + "dataSource": "orderItems", + "editable": { + "type": "StateMachine", + "status": true, + "field": "editable" + }, + "pagination": { + "enable": false + } + } + ], + "appearance": { + "class": "f-grid-is-sub f-utils-flex-column" + } + } + ], + "viewModel": "data-grid-yu8f-component-viewmodel", + "componentType": "data-grid", + "appearance": { + "class": "f-struct-is-subgrid" + } + } + ], + "webcmds": [ + { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "path": "/projects/packages/Inspur.GS.Gsp.Web.WebCmp/webcmd", + "name": "CardController.webcmd", + "refedHandlers": [ + { + "host": "e05264fb-796d-43fb-b83b-9e2f3866c328", + "handler": "Load" + }, + { + "host": "246a275c-88c9-4c8a-aa82-be6a950a4325", + "handler": "LoadAndAdd" + }, + { + "host": "70acc053-fa15-45be-851c-cf694e1bcaf7", + "handler": "LoadAndView" + }, + { + "host": "3e72ee6f-8f7b-4f29-aa0e-5887f2861117", + "handler": "LoadAndEdit" + }, + { + "host": "f90aadfa-988c-4da5-a5db-1416c3333794", + "handler": "Add" + }, + { + "host": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "handler": "Edit" + }, + { + "host": "31b814db-01e4-407d-8fad-0f08dbb01999", + "handler": "Save" + }, + { + "host": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "handler": "Cancel" + }, + { + "host": "3da96a96-b620-4716-9a7a-ff81a3645454", + "handler": "AddItem" + }, + { + "host": "86697129-e440-44b4-a26d-a7d88d261641", + "handler": "RemoveItem" + }, + { + "host": "0a972a53-04c9-4039-9d52-83fea52b0dd4", + "handler": "AddItem" + }, + { + "host": "d226931c-abdc-4ece-8192-fbaa9a5c8866", + "handler": "RemoveItem" + } + ], + "code": "CardController", + "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" + }, + { + "id": "65f0ba3f-8b72-49c4-8c0e-489bbf049d01", + "path": "Gsp/Web/WebCmp/bo-webcmp/metadata/webcmd-vue", + "name": "NavigationController.webcmd", + "refedHandlers": [ + { + "host": "efd106a7-bcf7-4525-958c-0a3fecac005b", + "handler": "checkAndGoBack" + } + ], + "code": "NavigationController", + "nameSpace": "Inspur.GS.Gsp.Web.WebCmp" + }, + { + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "path": "MyDev/FarrisVueTest/DesignTest/bo-designtest-front/metadata/components", + "name": "ResponsiveCard_frm_Controller.webcmd", + "refedHandlers": [ + { + "host": "c551e046-100a-4729-883b-fb68b7126fce", + "handler": "getLocation" + }, + { + "host": "1bb9922c-5cf7-4535-bf13-5369266186e3", + "handler": "takePhoto" + }, + { + "host": "00b95b0c-0855-4b01-869a-a265119da570", + "handler": "closeWindow" + }, + { + "host": "27f01205-e2cf-4383-9a8a-171d80a463bd", + "handler": "sendSMS" + }, + { + "host": "3f381db0-73d8-437c-b49f-da848049cafa", + "handler": "telephone" + }, + { + "host": "5680a40d-474b-439e-8028-da9bbd1714a3", + "handler": "selectPicture" + }, + { + "host": "9417d30c-c253-4f12-81e7-2bb47b893495", + "handler": "downloadFile" + }, + { + "host": "3adc0e47-9629-4271-afdd-07d217949adb", + "handler": "selectFile" + }, + { + "host": "d0149d3b-31f0-48bc-b223-0a9ae85c9301", + "handler": "takeVideo" + } + ], + "code": "ResponsiveCard_frm_Controller", + "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.DesignTest.DesignTest.Front" + }, + { + "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "path": "MyDev/FarrisVueTest/DesignTest/bo-designtest-front/metadata/components", + "name": "ApproveController.webcmd", + "refedHandlers": [ + { + "host": "195a477d-9773-4167-b631-383d272cb324", + "handler": "submitWithBizDefKey" + }, + { + "host": "363874c5-8b52-4c79-a12b-e3ed8d04423f", + "handler": "cancelSubmitWithDataId" + } + ], + "code": "ApproveController", + "nameSpace": "Inspur.GS.Gsp.Web.WebApprove" + } + ], + "projectName": "bo-designtest-front", + "customClass": { + "root-component": "", + "basic-form-component": "", + "data-grid-yu8f-component": "" + }, + "actions": [ + { + "sourceComponent": { + "id": "button-add", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "f90aadfa-988c-4da5-a5db-1416c3333794", + "label": "Add1", + "name": "新增一条数据", + "handlerName": "Add", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Create", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-edit", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", + "label": "Edit1", + "name": "编辑当前数据", + "handlerName": "Edit", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Edit", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-save", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "31b814db-01e4-407d-8fad-0f08dbb01999", + "label": "Save1", + "name": "保存变更", + "handlerName": "Save", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Save", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "保存成功提示信息", + "value": "", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "button-cancel", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", + "label": "Cancel1", + "name": "取消变更", + "handlerName": "Cancel", + "params": [ + { + "name": "transitionAction", + "shownName": "状态机动作", + "value": "Cancel", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "toolbar_item_1464", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "195a477d-9773-4167-b631-383d272cb324", + "label": "rootSubmitWithBizDefKey1", + "name": "提交审批1", + "handlerName": "submitWithBizDefKey", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "3ba1eba3-bfea-4d04-9034-8bba5e5348f6", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "label": "ApproveController", + "name": "审批控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "toolbar_item_0223", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "363874c5-8b52-4c79-a12b-e3ed8d04423f", + "label": "rootCancelSubmitWithDataId1", + "name": "取消提交1", + "handlerName": "cancelSubmitWithDataId", + "params": [ + { + "name": "dataId", + "shownName": "表单数据id", + "value": "{DATA~/id}", + "defaultValue": null + }, + { + "name": "bizDefKey", + "shownName": "流程分类id", + "value": "3ba1eba3-bfea-4d04-9034-8bba5e5348f6", + "defaultValue": null + }, + { + "name": "action", + "shownName": "迁移动作(可选)", + "value": "", + "defaultValue": null + } + ], + "cmpId": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "a7cb7d01-9df1-4a32-8202-99c9d0f4c339", + "label": "ApproveController", + "name": "审批控制器" + } + } + ] + } }, { - "id": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "path": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", - "name": "PCFormTest_frm_Controller.webcmd", - "refedHandlers": [ - { - "host": "20dbc06c-6e46-46f0-b8f2-a7fd951d722e", - "handler": "test" - }, - { - "host": "45e98f07-494f-4171-9129-817552fb91a8", - "handler": "test" - } - ], - "code": "PCFormTest_frm_Controller", - "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front" + "sourceComponent": { + "id": "toolbar_item_3948", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "c551e046-100a-4729-883b-fb68b7126fce", + "label": "rootGetLocation1", + "name": "获取定位1", + "handlerName": "getLocation", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" + } + } + ] + } }, { - "id": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "path": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components", - "name": "vuetest1_frm_Controller.webcmd", - "code": "vuetest1_frm_Controller", - "nameSpace": "Inspur.GS.MyDev.FarrisVueTest.VueFormTest.VueFormTest.Front", - "refedHandlers": [ - { - "host": "01760ad7-e092-4d91-88d8-89f9e13566fa", - "handler": "test" - }, - { - "host": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", - "handler": "test" - } - ] - } - ], - "projectName": "bo-vueformtest-front", - "customClass": { - "root-component": ".pc-red{\r\n color:red\r\n}", - "card-component": ".test{\r\n color:green\r\n}", - "basic-form-component": ".test2{\r\n color:black\r\n}", - "child1-component": "" - }, - "actions": [ + "sourceComponent": { + "id": "toolbar_item_0079", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "1bb9922c-5cf7-4535-bf13-5369266186e3", + "label": "rootTakePhoto1", + "name": "拍照1", + "handlerName": "takePhoto", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" + } + } + ] + } + }, { "sourceComponent": { - "id": "button-add", + "id": "toolbar_item_3126", "viewModelId": "root-viewmodel", "map": [ { @@ -1849,26 +3701,19 @@ "viewModelId": "root-viewmodel" }, "command": { - "id": "f90aadfa-988c-4da5-a5db-1416c3333794", - "label": "Add1", - "name": "新增一条数据", - "handlerName": "Add", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Create", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "id": "d0149d3b-31f0-48bc-b223-0a9ae85c9301", + "label": "rootTakeVideo1", + "name": "拍摄视频1", + "handlerName": "takeVideo", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" } } ] @@ -1876,7 +3721,7 @@ }, { "sourceComponent": { - "id": "button-edit", + "id": "toolbar_item_1073", "viewModelId": "root-viewmodel", "map": [ { @@ -1889,26 +3734,19 @@ "viewModelId": "root-viewmodel" }, "command": { - "id": "a323e27b-b9c6-4848-93b9-f117403a94ff", - "label": "Edit1", - "name": "编辑当前数据", - "handlerName": "Edit", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Edit", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "id": "00b95b0c-0855-4b01-869a-a265119da570", + "label": "rootCloseWindow1", + "name": "关闭窗口1", + "handlerName": "closeWindow", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" } } ] @@ -1916,7 +3754,7 @@ }, { "sourceComponent": { - "id": "button-save", + "id": "toolbar_item_3884", "viewModelId": "root-viewmodel", "map": [ { @@ -1929,32 +3767,19 @@ "viewModelId": "root-viewmodel" }, "command": { - "id": "31b814db-01e4-407d-8fad-0f08dbb01999", - "label": "Save1", - "name": "保存变更", - "handlerName": "Save", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - }, - { - "name": "successMsg", - "shownName": "保存成功提示信息", - "value": "", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "id": "27f01205-e2cf-4383-9a8a-171d80a463bd", + "label": "rootSendSMS1", + "name": "发短信1", + "handlerName": "sendSMS", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" } } ] @@ -1962,7 +3787,7 @@ }, { "sourceComponent": { - "id": "button-cancel", + "id": "toolbar_item_2516", "viewModelId": "root-viewmodel", "map": [ { @@ -1975,26 +3800,52 @@ "viewModelId": "root-viewmodel" }, "command": { - "id": "4f5ed2ec-8def-4a3c-8e7b-397ea93010e8", - "label": "Cancel1", - "name": "取消变更", - "handlerName": "Cancel", - "params": [ - { - "name": "transitionAction", - "shownName": "状态机动作", - "value": "Cancel", - "defaultValue": null - } - ], - "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "id": "3f381db0-73d8-437c-b49f-da848049cafa", + "label": "rootTelephone1", + "name": "打电话1", + "handlerName": "telephone", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "8172a979-2c80-4637-ace7-b13074d3f393", - "label": "CardController", - "name": "卡片控制器" + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "toolbar_item_4679", + "viewModelId": "root-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "root-component", + "viewModelId": "root-viewmodel" + }, + "command": { + "id": "5680a40d-474b-439e-8028-da9bbd1714a3", + "label": "rootSelectPicture1", + "name": "选择照片1", + "handlerName": "selectPicture", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" } } ] @@ -2002,7 +3853,7 @@ }, { "sourceComponent": { - "id": "toolbar_item_2362", + "id": "toolbar_item_4173", "viewModelId": "root-viewmodel", "map": [ { @@ -2015,19 +3866,19 @@ "viewModelId": "root-viewmodel" }, "command": { - "id": "45e98f07-494f-4171-9129-817552fb91a8", - "label": "rootTest2", - "name": "test2", - "handlerName": "test", + "id": "9417d30c-c253-4f12-81e7-2bb47b893495", + "label": "rootDownloadFile1", + "name": "下载文件1", + "handlerName": "downloadFile", "params": [], - "cmpId": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "1fcadf37-b42e-4bd5-ba6f-69d97b82547e", - "label": "PCFormTest_frm_Controller", - "name": "PC卡片表单测试_frm_Controller" + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" } } ] @@ -2035,7 +3886,7 @@ }, { "sourceComponent": { - "id": "toolbar_item_4335", + "id": "toolbar_item_9797", "viewModelId": "root-viewmodel", "map": [ { @@ -2048,19 +3899,98 @@ "viewModelId": "root-viewmodel" }, "command": { - "id": "53e84e7e-ea7f-4b24-aef7-2454b9ce3f56", - "label": "rootTest4", - "name": "测试4", - "handlerName": "test", + "id": "3adc0e47-9629-4271-afdd-07d217949adb", + "label": "rootSelectFile1", + "name": "选择文件1", + "handlerName": "selectFile", + "params": [], + "cmpId": "67a774de-189e-4477-9f62-71c151f6768d", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "67a774de-189e-4477-9f62-71c151f6768d", + "label": "ResponsiveCard_frm_Controller", + "name": "响应式卡片_frm_Controller" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "orderitemAddButton", + "viewModelId": "orderitem-component-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "orderitem-component", + "viewModelId": "orderitem-component-viewmodel" + }, + "command": { + "id": "3da96a96-b620-4716-9a7a-ff81a3645454", + "label": "orderitemAddItem1", + "name": "增加一条子表数据", + "handlerName": "AddItem", "params": [], - "cmpId": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", + "isNewGenerated": false, + "isInvalid": false + }, + "controller": { + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" + } + } + ] + } + }, + { + "sourceComponent": { + "id": "orderitemRemoveButton", + "viewModelId": "orderitem-component-viewmodel", + "map": [ + { + "event": { + "label": "onClick", + "name": "点击事件" + }, + "targetComponent": { + "id": "orderitem-component", + "viewModelId": "orderitem-component-viewmodel" + }, + "command": { + "id": "86697129-e440-44b4-a26d-a7d88d261641", + "label": "orderitemRemoveItem1", + "name": "删除一条子表数据", + "handlerName": "RemoveItem", + "params": [ + { + "name": "id", + "shownName": "待删除子表数据的标识", + "value": "{DATA~/orderItems/id}", + "defaultValue": null + }, + { + "name": "successMsg", + "shownName": "删除成功提示信息", + "value": "", + "defaultValue": null + } + ], + "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", "isNewGenerated": false, "isInvalid": false }, "controller": { - "id": "71c01665-fe32-4539-bb68-1eb58a5e8fd9", - "label": "vuetest1_frm_Controller", - "name": "vuetest1_frm_Controller" + "id": "8172a979-2c80-4637-ace7-b13074d3f393", + "label": "CardController", + "name": "卡片控制器" } } ] @@ -2068,8 +3998,8 @@ }, { "sourceComponent": { - "id": "button-add-data-grid-z5vj", - "viewModelId": "data-grid-z5vj-component-viewmodel", + "id": "button-add-data-grid-yu8f", + "viewModelId": "data-grid-yu8f-component-viewmodel", "map": [ { "event": { @@ -2077,12 +4007,12 @@ "name": "点击事件" }, "targetComponent": { - "id": "data-grid-z5vj-component", - "viewModelId": "data-grid-z5vj-component-viewmodel" + "id": "data-grid-yu8f-component", + "viewModelId": "data-grid-yu8f-component-viewmodel" }, "command": { - "id": "d0d339b9-958b-4426-a108-e863300e4151", - "label": "datagridz5vjAddItem1", + "id": "0a972a53-04c9-4039-9d52-83fea52b0dd4", + "label": "datagridyu8fAddItem1", "name": "增加一条子表数据", "handlerName": "AddItem", "params": [], @@ -2101,8 +4031,8 @@ }, { "sourceComponent": { - "id": "button-remove-data-grid-z5vj", - "viewModelId": "data-grid-z5vj-component-viewmodel", + "id": "button-remove-data-grid-yu8f", + "viewModelId": "data-grid-yu8f-component-viewmodel", "map": [ { "event": { @@ -2110,19 +4040,19 @@ "name": "点击事件" }, "targetComponent": { - "id": "data-grid-z5vj-component", - "viewModelId": "data-grid-z5vj-component-viewmodel" + "id": "data-grid-yu8f-component", + "viewModelId": "data-grid-yu8f-component-viewmodel" }, "command": { - "id": "573952e2-118d-4773-8cf7-347e97e319ca", - "label": "datagridz5vjRemoveItem1", + "id": "d226931c-abdc-4ece-8192-fbaa9a5c8866", + "label": "datagridyu8fRemoveItem1", "name": "删除一条子表数据", "handlerName": "RemoveItem", "params": [ { "name": "id", "shownName": "待删除子表数据的标识", - "value": "{DATA~/child1s/id}" + "value": "{DATA~/orderItems/id}" } ], "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", @@ -2161,8 +4091,7 @@ { "name": "action", "shownName": "初始方法", - "value": "{UISTATE~/#{root-component}/action}", - "defaultValue": null + "value": "{UISTATE~/#{root-component}/action}" } ], "cmpId": "8172a979-2c80-4637-ace7-b13074d3f393", @@ -2178,100 +4107,10 @@ ] } } - ], - "communications": [], - "customStyleFile": "/apps/MyDev/FarrisVueTest/web/bo-vueformtest-front/PCFormTest/PCFormTest.css", - "externalComponents": [ - { - "id": "sysorghlp-5vsx", - "type": "lookup", - "enableToSelect": false, - "dataSource": { - "displayName": "系统组织帮助(sysorghlp)", - "idField": "id", - "type": "ViewObject", - "uri": "lookup.sysorghlp_5vsx" - }, - "helpId": "b524a702-7323-4d46-998e-5ba0c6abcd49", - "displayType": "TreeList", - "textField": "name", - "pagination": { - "enable": true, - "sizeLimits": [ - 10, - 20, - 30, - 50 - ], - "size": 20, - "showLimits": true, - "showGoto": false, - "mode": "server" - }, - "loadTreeDataType": "default", - "onlySelectLeaf": false, - "dialog": { - "title": "系统组织帮助" - }, - "name": "系统组织帮助" - }, - { - "id": "vuetest1-02de", - "type": "modal", - "name": "vuetest1", - "title": "vuetest1", - "contents": [ - { - "id": "external-container-1e92e", - "type": "external-container", - "appearance": { - "class": "position-relative h-100" - }, - "externalComponent": { - "id": "7df43f6c-35ff-429c-ab17-737a3d673ba4", - "code": "vuetest1", - "name": "vuetest1", - "fileName": "vuetest1.frm", - "relativePath": "MyDev/FarrisVueTest/VueFormTest/bo-vueformtest-front/metadata/components" - }, - "onCommunication": "" - } - ] - }, - { - "id": "UserOrgTest-t8m3", - "type": "lookup", - "enableToSelect": false, - "dataSource": { - "displayName": "用户组织帮助(UserOrgTest)", - "idField": "id", - "type": "ViewObject", - "uri": "lookup.UserOrgTest_t8m3" - }, - "helpId": "89f18b11-dd4f-4cd1-92c9-83d8038ef799", - "displayType": "NavTreeList", - "textField": "name", - "pagination": { - "enable": true, - "sizeLimits": [ - 10, - 20, - 30, - 50 - ], - "size": 20, - "showLimits": true, - "showGoto": false, - "mode": "server" - }, - "loadTreeDataType": "default", - "onlySelectLeaf": false, - "dialog": { - "title": "用户组织帮助" - }, - "name": "用户组织帮助" - } - ], - "hiddenComponents": [] + ] + }, + "options": { + "responsiveForm": true, + "formRulePushMode": "pushToVO" } } \ No newline at end of file diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java index 258b31e2..fa893181 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java @@ -28,12 +28,15 @@ class SmartFormServiceImplTest { @Test public void testExtract(){ - //String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); - String jsonContent = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); + String jsonContentVue = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); + String jsonContentAngular = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-angular.json"); + + boolean isVue = false; + String jsonContent = isVue ? jsonContentVue : jsonContentAngular; JsonNode jsonNode = SerializeUtility.getInstance().deserialize(jsonContent, JsonNode.class); SmartFormServiceImpl SmartFormServiceImpl = new SmartFormServiceImpl(); - SmartFormEntity smartFormEntity = SmartFormServiceImpl.extract(jsonNode,true); + SmartFormEntity smartFormEntity = SmartFormServiceImpl.extract(jsonNode,isVue); System.out.println(smartFormEntity); } -- Gitee From fff2a1722d539f27f90f65fabae28aec315d6494 Mon Sep 17 00:00:00 2001 From: lijiangkun Date: Thu, 8 Jan 2026 09:06:23 +0800 Subject: [PATCH 14/48] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8D=95=E5=85=83?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=9A=84=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/formmetadata/webservice/SmartFormServiceImplTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java index fa893181..55e83a5c 100644 --- a/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java +++ b/web-form-metadata/src/test/java/com/inspur/edp/web/formmetadata/webservice/SmartFormServiceImplTest.java @@ -28,8 +28,8 @@ class SmartFormServiceImplTest { @Test public void testExtract(){ - String jsonContentVue = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-vue.json"); - String jsonContentAngular = FileUtility.readAsString("D:\\WorkSpaces\\Projects\\Backed\\ui-model\\ui-model-ljk\\web-form-metadata\\src\\test\\java\\com\\inspur\\edp\\web\\formmetadata\\webservice\\PCForm-angular.json"); + String jsonContentVue = FileUtility.readAsString("src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-vue.json"); + String jsonContentAngular = FileUtility.readAsString("src/test/java/com/inspur/edp/web/formmetadata/webservice/PCForm-angular.json"); boolean isVue = false; String jsonContent = isVue ? jsonContentVue : jsonContentAngular; -- Gitee From 85142633bf079646278412159ae826ff95b40043 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Thu, 8 Jan 2026 10:34:40 +0800 Subject: [PATCH 15/48] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=8A=9B=E5=87=BA?= =?UTF-8?q?=E5=8E=9F=E7=94=9F=E5=BC=82=E5=B8=B8=E5=8E=86=E5=8F=B2=E9=81=97?= =?UTF-8?q?=E7=95=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/formmetadata/filter/LowCodeLanguagePackageFilter.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java index d3f06141..abf0631c 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/filter/LowCodeLanguagePackageFilter.java @@ -30,6 +30,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; +import com.inspur.edp.web.common.customexception.WebCustomException; import io.iec.edp.caf.boot.context.CAFContext; import io.iec.edp.caf.commons.exception.CAFRuntimeException; import io.iec.edp.caf.commons.utils.SpringBeanUtils; @@ -299,7 +300,7 @@ public class LowCodeLanguagePackageFilter extends OncePerRequestFilter { JsonNode mergedJsonNodes = mergeJsonNodes(originalJson, uiLanguagePackageJson); return objectMapper.writeValueAsString(mergedJsonNodes); } catch (JsonProcessingException e) { - throw new CAFRuntimeException("pfcommon", "", "", e); // todo: 换成多语的抛异常方式。 + throw new WebCustomException(e); // todo: 换成多语的抛异常方式。 } } -- Gitee From 08427b601edff9e3f000ca69567d34257687eada Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Thu, 8 Jan 2026 10:35:06 +0800 Subject: [PATCH 16/48] =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=93=8D=E4=BD=9C=E5=88=97=E8=B5=84=E6=BA=90=E9=A1=B9?= =?UTF-8?q?=E6=8F=90=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DataGridI18nResourceStrategy.java | 31 +++++++++++++++---- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java index 79cb8f6f..c0686795 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/DataGridI18nResourceStrategy.java @@ -23,6 +23,7 @@ import com.inspur.edp.web.formmetadata.i18n.I18nResourceItemManager; import com.inspur.edp.web.formmetadata.i18n.component.ComponentUtility; import com.inspur.edp.web.formmetadata.i18n.component.strategy.i18nresourcestrategy.CommonStrategy.GridCommonStrategy; import com.inspur.edp.web.formmetadata.i18n.constant.I18nResourceConstant; +import jodd.util.ObjectUtil; import java.util.ArrayList; import java.util.HashMap; @@ -72,22 +73,40 @@ public class DataGridI18nResourceStrategy extends GridCommonStrategy { } //提取columns里的行内容 - if(currentComponent.containsKey("columns")){ - I18nResourceItemCollection columnsI18nResourceItemCollection=extractedColumns( i18nResourceItemBaseId, currentComponent); + if (currentComponent.containsKey("columns")) { + I18nResourceItemCollection columnsI18nResourceItemCollection = extractedColumns(i18nResourceItemBaseId, currentComponent); if (columnsI18nResourceItemCollection != null && columnsI18nResourceItemCollection.size() > 0) { i18nResourceItemCollection.addRange(columnsI18nResourceItemCollection); } } //提取handing内的行号值 - if(currentComponent.containsKey("rowNumber")){ + if (currentComponent.containsKey("rowNumber")) { String currentComponentType = ComponentUtility.getInstance().getType(currentComponent); String currentComponentId = ComponentUtility.getInstance().getId(currentComponent); - HashMaprowNumber= (HashMap) currentComponent.get("rowNumber"); - String heading= (String) rowNumber.get("heading"); - String generatedComponentId = currentComponentId + "/rowNumber/heading"; + HashMap rowNumber = (HashMap) currentComponent.get("rowNumber"); + String heading = (String) rowNumber.get("heading"); + String generatedComponentId = currentComponentId + "/rowNumber/heading"; I18nResourceItem footerButtonI18nResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedComponentId, heading, heading); this.addInCollection(i18nResourceItemCollection, footerButtonI18nResourceItem); } + //提取command + if (currentComponent.containsKey("command")) { + String currentComponentId = ComponentUtility.getInstance().getId(currentComponent); + HashMap command = (HashMap) currentComponent.get("command"); + if (command.containsKey("commands")) { + List> commands = (List>) command.get("commands"); + if(command.containsKey("enableType") && "custom".equals((String) command.get("enableType"))){ + commands.forEach(cmd -> { + if (cmd.get("value") == null || StringUtility.isNullOrEmpty((String) cmd.get("value"))) { + return; + } + String generatedComponentId = currentComponentId + "/command/commands/" + (String) cmd.get("value"); + I18nResourceItem footerButtonI18nResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedComponentId, (String) cmd.get("text"), (String) cmd.get("text")); + this.addInCollection(i18nResourceItemCollection, footerButtonI18nResourceItem); + }); + } + } + } return i18nResourceItemCollection; } -- Gitee From ab44de413b3d7a8e327a25450535c98c4ffdda15 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Thu, 29 Jan 2026 16:35:07 +0800 Subject: [PATCH 17/48] =?UTF-8?q?=E6=94=AF=E6=8C=81=E4=BD=8E=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E5=BA=94=E7=94=A8=E5=A4=8D=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 + web-metadata-replication-core/pom.xml | 166 +++ .../config/WebReplicationConfiguration.java | 44 + .../formmetadata/FormCopyCommonUtility.java | 988 ++++++++++++++++++ .../formmetadata/FormMetadataCopyImpl.java | 33 + .../FormMetadataReferenceCollect.java | 258 +++++ .../MobileFormMetadataCopyImpl.java | 30 + .../MobilePageFlowCopyImpl.java | 28 + .../PageFlowCopyCommonUtility.java | 138 +++ .../pageflowmetadata/PageFlowCopyImpl.java | 27 + .../main/resources/META-INF/spring.factories | 2 + 11 files changed, 1715 insertions(+) create mode 100644 web-metadata-replication-core/pom.xml create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/config/WebReplicationConfiguration.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormCopyCommonUtility.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataCopyImpl.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataReferenceCollect.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/MobileFormMetadataCopyImpl.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/MobilePageFlowCopyImpl.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyCommonUtility.java create mode 100644 web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyImpl.java create mode 100644 web-metadata-replication-core/src/main/resources/META-INF/spring.factories diff --git a/pom.xml b/pom.xml index d9f87fe9..0cfcc4bd 100644 --- a/pom.xml +++ b/pom.xml @@ -60,6 +60,7 @@ form-process web-formmetadata-relycheck + web-metadata-replication-core diff --git a/web-metadata-replication-core/pom.xml b/web-metadata-replication-core/pom.xml new file mode 100644 index 00000000..97119253 --- /dev/null +++ b/web-metadata-replication-core/pom.xml @@ -0,0 +1,166 @@ + + + 4.0.0 + + com.inspur.edp + web + 1.0.2-SNAPSHOT + + + web-metadata-replication-core + + + 8 + 8 + UTF-8 + + + + io.iec.edp + caf-application-context-api + + + com.inspur.edp + metadata-service-dev-api + + + + com.inspur.edp + metadata-service-api + ${version.metadata} + + + com.inspur.edp + metadata-service-spi + + + io.iec.edp + caf-i18n-framework-api + + + io.iec.edp + caf-i18n-api + + + com.inspur.edp + i18n-resource-api + + + com.inspur.edp + lcm-metadata-api + + + + + com.inspur.edp + metadata-common + + + com.inspur.edp + lcm-metadata-api + + + + + com.inspur.edp + web-jitengine-common + + + com.inspur.edp + cdp-sgf-api + + + com.inspur.edp + web-jitengine-formmetadata + + + com.inspur.edp + web-pageflow-metadata + + + org.junit.jupiter + junit-jupiter-api + + + + io.iec.edp + caf-framework-licservice-api + + + com.inspur.edp + web-tsfile-api + + + com.inspur.edp + lcm-metadata-api + + + + + io.iec.edp + caf-boot-starter-context + compile + + + + + + + + io.iec.edp + caf-boot-core-context + compile + + + com.inspur.edp + view-object-api + 0.1.3 + + + com.inspur.edp + view-object-model + + + com.inspur.edp + view-object-manager + + + com.inspur.edp + wf-bizprocess-api + 0.3.2 + + + com.inspur.edp + lcm-metadata-api + + + + + com.inspur.edp + runtime-customize-api + + + com.inspur.edp + lcm-metadata-api + + + + + com.inspur.edp + runtime-customize-form + + + com.inspur.edp + lcm-replication-api + 1.0.0-rc.3 + + + com.inspur.edp + lcm-replication-spi + 1.0.0-rc.3 + + + + diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/config/WebReplicationConfiguration.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/config/WebReplicationConfiguration.java new file mode 100644 index 00000000..4bfcd0ef --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/config/WebReplicationConfiguration.java @@ -0,0 +1,44 @@ +package com.inspur.edp.web.appcopy.config; + + +import com.inspur.edp.lcm.replication.spi.MetadataCopySpi; +import com.inspur.edp.lcm.replication.spi.MetadataReferenceCollectSpi; +import com.inspur.edp.web.appcopy.formmetadata.FormMetadataCopyImpl; +import com.inspur.edp.web.appcopy.formmetadata.FormMetadataReferenceCollect; +import com.inspur.edp.web.appcopy.formmetadata.MobileFormMetadataCopyImpl; +import com.inspur.edp.web.appcopy.pageflowmetadata.MobilePageFlowCopyImpl; +import com.inspur.edp.web.appcopy.pageflowmetadata.PageFlowCopyImpl; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration("com.inspur.edp.web.appcopy.config.WebReplicationConfiguration") +public class WebReplicationConfiguration { + + + @Bean + public MetadataCopySpi getPageFlowMetadataCopySpi() { + return new PageFlowCopyImpl(); + } + + @Bean + public MetadataCopySpi getMobilePageFlowMetadataCopySpi() { + return new MobilePageFlowCopyImpl(); + } + + + @Bean + public MetadataCopySpi getFormMetadataCopy() { + return new FormMetadataCopyImpl(); + } + + @Bean + public MetadataCopySpi getMobileFormMetadataCopy() { + return new MobileFormMetadataCopyImpl(); + } + + @Bean + public MetadataReferenceCollectSpi getFormMetadataReferenceCollect() { + return new FormMetadataReferenceCollect(); + } +} + diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormCopyCommonUtility.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormCopyCommonUtility.java new file mode 100644 index 00000000..20dc824c --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormCopyCommonUtility.java @@ -0,0 +1,988 @@ +package com.inspur.edp.web.appcopy.formmetadata; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ArrayNode; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.inspur.edp.formserver.viewmodel.GspViewModel; +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.metadata.api.entity.MetadataDto; +import com.inspur.edp.lcm.metadata.common.MetadataDtoConverter; +import com.inspur.edp.lcm.replication.api.context.ReplicationServiceContext; +import com.inspur.edp.lcm.replication.api.entity.ReplicationParam; +import com.inspur.edp.sgf.api.entity.SgMetadata; +import com.inspur.edp.web.common.customexception.WebCustomException; +import com.inspur.edp.web.common.logger.WebLogger; +import com.inspur.edp.web.common.utility.StringUtility; +import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; +import io.iec.edp.caf.common.JSONSerializer; + +import java.nio.file.Paths; +import java.util.*; + +public class FormCopyCommonUtility { + + public static void updateFormContent(ReplicationParam replicationParam, GspMetadata formMetadata, + ReplicationServiceContext replicationServiceContext) { + FormMetadataContent formMetadataContent = (FormMetadataContent) formMetadata.getContent(); + updateProjectNameAndMetadataId(formMetadataContent, replicationParam, replicationServiceContext); + updateFormByEapi(formMetadataContent, replicationServiceContext); + updateFormByVo(formMetadataContent, replicationServiceContext, replicationParam); + updateFormByStateMachines(formMetadataContent, replicationServiceContext); + updateFormByExternalComponents(formMetadataContent, replicationServiceContext, replicationParam); + updateFormOptions(formMetadataContent, replicationServiceContext); + updateFormControllerCommandParam(formMetadataContent, replicationServiceContext); + updateComponentHelpId(formMetadataContent, replicationServiceContext, replicationParam); + updateCommunications(formMetadataContent, replicationServiceContext); + updateActionsNode(formMetadataContent, replicationServiceContext); + FormMetadataContent updateParamFormMdContent = updateDataIEOrWFCommand(formMetadataContent, replicationServiceContext); + FormMetadataContent formMdContent = updateFormByWebCommands(updateParamFormMdContent, replicationServiceContext, replicationParam); + updateQoInfo(formMdContent, replicationServiceContext, replicationParam, formMetadata); + formMetadata.setContent(formMdContent); + } + + private static void updateCommunications(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + JsonNode module = formMetadataContent.getModule(); + if (module == null || module.isMissingNode() || module.isNull()) { + return; + } + JsonNode communications = module.get("communications"); + if (isNullOrEmptyNode(communications)) { + return; + } + communications.forEach(communication -> { + if (!isNullOrEmptyNode(communication.at("/source/formId")) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(communication.at("/source/formId").asText()))) { + ObjectNode source = (ObjectNode) communication.get("source"); + source.put("formId", replicationServiceContext.findNewUUID(source.get("formId").asText())); + } + if (!isNullOrEmptyNode(communication.at("/target/formId")) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(communication.at("/target/formId").asText()))) { + ObjectNode target = (ObjectNode) communication.get("target"); + target.put("formId", replicationServiceContext.findNewUUID(target.get("formId").asText())); + } + }); + + } + + private static void updateQoInfo(FormMetadataContent formMdContent, ReplicationServiceContext replicationServiceContext, ReplicationParam replicationParam, GspMetadata formMetadata) { + JsonNode module = formMdContent.getModule(); + if (module == null || module.isMissingNode() || module.isNull()) { + return; + } + JsonNode qoInfo = module.get("qdpInfo"); + if (isNullOrEmptyNode(qoInfo) || isNullOrEmptyNode(qoInfo.get("qoMetadata"))) { + return; + } + JsonNode qoMetadata = qoInfo.get("qoMetadata"); + List newQoMetadataDtoList = new ArrayList<>(); + qoMetadata.forEach(qo -> { + if (isNullOrEmptyNode(qo.get("id")) || StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(qo.get("id").asText()))) { + return; + } + GspMetadata newQoMetadata = replicationServiceContext.findCopiedGspMetadata(qo.get("id").asText()); + if (newQoMetadata != null) { + MetadataDto dto = MetadataDtoConverter.asDto(newQoMetadata); + dto.setId(replicationServiceContext.findNewUUID(qo.get("id").asText())); + newQoMetadataDtoList.add(dto); + } + }); + try { + if (!newQoMetadataDtoList.isEmpty()) { + List metadataJsonList = new ArrayList<>(); + ObjectMapper mapper = new ObjectMapper(); + for (MetadataDto metadataDto : newQoMetadataDtoList) { + String content = metadataDto.getContent(); + JsonNode jsonNode = mapper.readTree(content); + JsonNode dtoJson = mapper.readTree(mapper.writeValueAsString(metadataDto)); + ObjectNode dtoObjectJson = (ObjectNode) dtoJson; + dtoObjectJson.put("content", jsonNode); + metadataJsonList.add(dtoObjectJson); + } + String newDtoListStr = mapper.writeValueAsString(metadataJsonList); + ((ObjectNode) qoInfo).set("qoMetadata", mapper.readTree(newDtoListStr)); + } + + replaceAllQoInfo(replicationServiceContext, module, replicationParam, formMetadata, formMdContent); + + + } catch (Exception e) { + throw new WebCustomException(e); + } + } + + private static void replaceAllQoInfo(ReplicationServiceContext context, JsonNode node, ReplicationParam replicationParam, GspMetadata formMetadata, FormMetadataContent formMdContent) { + if (isNullOrEmptyNode(node)) { + return; + } + try { + // 处理对象节点({...}) + if (node.isObject()) { + ObjectNode objectNode = (ObjectNode) node; // 转为可变的 ObjectNode + updateQdpFrameWorkProperty(objectNode, context, replicationParam, formMetadata, formMdContent); + Iterator> fields = objectNode.fields(); + + while (fields.hasNext()) { + Map.Entry field = fields.next(); + + // 递归遍历子节点 + replaceAllQoInfo(context, field.getValue(), replicationParam, formMetadata, formMdContent); + } + } + // 处理数组节点([...]) + else if (node.isArray()) { + for (JsonNode item : node) { + replaceAllQoInfo(context, item, replicationParam, formMetadata, formMdContent); + } + } + // 基本类型节点,无需处理 + } catch (Exception e) { + throw new WebCustomException(e); + + } + + } + + private static void updateQdpFrameWorkProperty(ObjectNode objectNode, ReplicationServiceContext context, ReplicationParam replicationParam, GspMetadata formMetadata, FormMetadataContent formMdContent) { + if (isNullOrEmptyNode(objectNode) || isNullOrEmptyNode(objectNode.get("type")) || !"QdpFramework".equals(objectNode.get("type").asText())) { + return; + } + updateQdpInformation(objectNode, context, replicationParam, formMetadata, formMdContent); + + + if (isNullOrEmptyNode(objectNode.get("contents"))) { + updateQdpSchema(formMdContent, replicationParam, formMetadata); + return; + } + objectNode.get("contents").forEach(content -> updateQdpInformation((ObjectNode) content, context, replicationParam, formMetadata, formMdContent)); + updateQdpSchema(formMdContent, replicationParam, formMetadata); + } + + private static void updateQdpSchema(FormMetadataContent formMdContent, ReplicationParam replicationParam, GspMetadata formMetadata) { + JsonNode schema = formMdContent.getSchema(); + if (isNullOrEmptyNode(schema)) { + return; + } + schema.forEach(node -> { + if (isNullOrEmptyNode(node.get("eapiId")) && !isNullOrEmptyNode(node.get("sourceUri"))) { + ((ObjectNode) node).put("sourceUri", assemblyRouter(replicationParam, node.get("sourceUri").asText(), formMetadata, 3)); + } + }); + } + + private static void updateQdpInformation(ObjectNode objectNode, ReplicationServiceContext context, ReplicationParam replicationParam, GspMetadata formMetadata, FormMetadataContent formMdContent) { + if (!isNullOrEmptyNode(objectNode.get("qoManagerCode")) && + !StringUtility.isNullOrEmpty(objectNode.get("qoManagerCode").asText()) && + !StringUtility.isNullOrEmpty(context.findNewUUID(objectNode.get("qoManagerCode").asText()))) { + objectNode.put("qoManagerCode", context.findNewUUID(objectNode.get("qoManagerCode").asText())); + } + if (!isNullOrEmptyNode(objectNode.get("qoId")) && + !StringUtility.isNullOrEmpty(objectNode.get("qoId").asText()) && + !StringUtility.isNullOrEmpty(context.findNewUUID(objectNode.get("qoId").asText()))) { + objectNode.put("qoId", context.findNewUUID(objectNode.get("qoId").asText())); + } + if (!isNullOrEmptyNode(objectNode.get("queryRelativeUrl")) && + !StringUtility.isNullOrEmpty(objectNode.get("queryRelativeUrl").asText())) { + String router = assemblyRouter(replicationParam, objectNode.get("queryRelativeUrl").asText(), formMetadata,4); + objectNode.put("queryRelativeUrl", "/" + router + "/service/"); + } + if (!isNullOrEmptyNode(objectNode.get("voId")) && + !StringUtility.isNullOrEmpty(objectNode.get("voId").asText())) { + + JsonNode schema = formMdContent.getSchema(); + if (isNullOrEmptyNode(schema) || + isNullOrEmptyNode(schema.get(0)) || + isNullOrEmptyNode(schema.get(0).get("id")) || + !context.getOldUUID2NewUUIDMap().containsValue(schema.get(0).get("id").asText())) { + return; + } + String oldUUID = ""; + for (Map.Entry stringStringEntry : context.getOldUUID2NewUUIDMap().entrySet()) { + if (Objects.equals(stringStringEntry.getValue(), schema.get(0).get("id").asText())) { + oldUUID = stringStringEntry.getKey(); + break;// 找到匹配的value,返回对应的key + } + } + if (StringUtility.isNullOrEmpty(oldUUID)) { + return; + } + GspMetadata voMetadata = context.findCopiedGspMetadata(oldUUID); + GspViewModel voContent = (GspViewModel) voMetadata.getContent(); + objectNode.put("voId", voContent.getGeneratingAssembly() + "." + voContent.getCode()); + } + } + + private static String assemblyRouter(ReplicationParam replicationParam, String oldRouter, GspMetadata formMetadata, int i) { + String targetSU = replicationParam.getTargetSU(); + String oldSu = getProperty(oldRouter, i); + + return targetSU.toLowerCase().equals(oldSu) ? "api/" + replicationParam.getTargetAppDomain().toLowerCase() + "/" + + replicationParam.getTargetSU().toLowerCase() + "/v1.0/" + replicationParam.getTargetBizObjCode().toLowerCase() + "-" + formMetadata.getHeader().getCode().toLowerCase() + "_frm" : + "api/" + replicationParam.getTargetAppDomain().toLowerCase() + "/" + + replicationParam.getTargetSU().toLowerCase() + "/v1.0/" + formMetadata.getHeader().getCode().toLowerCase() + "_frm"; + + } + + private static FormMetadataContent updateDataIEOrWFCommand(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + String contentsStr = JSONSerializer.serialize(formMetadataContent); + ArrayNode viewModels = (ArrayNode) formMetadataContent.getModule().at("/viewmodels"); + for (int i = 0; i < viewModels.size(); i++) { + JsonNode vm = viewModels.get(i); + if (vm.get("commands") != null) { + ArrayNode commands = (ArrayNode) vm.get("commands"); + if (!commands.isEmpty()) { + for (int j = 0; j < commands.size(); j++) { + JsonNode cmd = commands.get(j); + if (cmd.get("params") != null) { + ArrayNode submitAndSaveParams = (ArrayNode) cmd.get("params"); + for (int k = 0; k < submitAndSaveParams.size(); k++) { + JsonNode item = submitAndSaveParams.get(k); + //流程分类 + if (item.get("name") != null && "bizDefKey".equals(item.get("name").asText())) { + if (item.get("value") != null) { + String oldVal = item.get("value").asText(); + String newVal = getNewConfigData("gspwfflowform", "id", oldVal, replicationServiceContext); + contentsStr = contentsStr.replace(oldVal, newVal); + + } + } + //导入导出 + if (item.get("name") != null && "ruleID".equals(item.get("name").asText())) { + if (item.get("value") != null) { + String oldVal = item.get("value").asText(); + String newVal = getNewConfigData("gspdataierulemanage", "id", oldVal, replicationServiceContext); + contentsStr = contentsStr.replace(oldVal, newVal); + } + } + + } + } + } + } + } + } + return JSONSerializer.deserialize(contentsStr, FormMetadataContent.class); + + } + + private static void updateComponentHelpId(FormMetadataContent formMetadataContent, + ReplicationServiceContext replicationServiceContext, + ReplicationParam replicationParam) { + + if (isNullOrEmptyNode(formMetadataContent.getModule()) || isNullOrEmptyNode(formMetadataContent.getModule().get("components"))) { + return; + } + JsonNode components = formMetadataContent.getModule().get("components"); + replaceHelpId(components, replicationServiceContext); + } + + private static void updateActionsNode(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + JsonNode module = formMetadataContent.getModule(); + if (isNullOrEmptyNode(module) || isNullOrEmptyNode(module.get("actions"))) { + return; + } + ArrayNode actions = (ArrayNode) module.get("actions"); + actions.forEach(action -> { + if (!isNullOrEmptyNode(action.get("sourceComponent"))) { + action.get("sourceComponent").forEach(comp -> { + if (!isNullOrEmptyNode(comp.get("map"))) { + comp.get("map").forEach(map -> { + if (!isNullOrEmptyNode(map.get("command"))) { + map.get("command").forEach(command -> { + recognizeUpdateControllerCommand(command, replicationServiceContext); + }); + } + }); + } + }); + } + }); + } + + private static void updateFormOptions(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + JsonNode contents = formMetadataContent.getContents(); + if (isNullOrEmptyNode(contents) || isNullOrEmptyNode(contents.get("options"))) { + return; + } + JsonNode options = contents.get("options"); + if (!isNullOrEmptyNode(options.get("mobileMetadataId")) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(options.get("mobileMetadataId").asText()))) { + ObjectNode optionsNode = (ObjectNode) options; + optionsNode.put("mobileMetadataId", replicationServiceContext.findNewUUID(options.get("mobileMetadataId").asText())); + } + if (!isNullOrEmptyNode(options.get("pcMetadataId")) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(options.get("pcMetadataId").asText()))) { + ObjectNode optionsNode = (ObjectNode) options; + optionsNode.put("pcMetadataId", replicationServiceContext.findNewUUID(options.get("pcMetadataId").asText())); + } + if (!isNullOrEmptyNode(options.at("/vueMetadata/id")) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(options.at("/vueMetadata/id").asText()))) { + ObjectNode vueMetadata = (ObjectNode) options.get("vueMetadata"); + vueMetadata.put("id", replicationServiceContext.findNewUUID(vueMetadata.get("id").asText())); + } + } + + private static void updateFormByExternalComponents(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext, ReplicationParam replicationParam) { + JsonNode module = formMetadataContent.getModule(); + if (module == null) { + return; + } + JsonNode externalComponents = module.at("/externalComponents"); + if (isNullOrEmptyNode(externalComponents)) { + return; + } + ArrayNode externalComponentsArray = (ArrayNode) externalComponents; + externalComponentsArray.forEach(externalComponent -> { + updateFormByExternalComponent(externalComponent, replicationServiceContext, replicationParam); + }); + + } + + private static void updateFormByExternalComponent(JsonNode externalComponent, ReplicationServiceContext replicationServiceContext, ReplicationParam replicationParam) { + if (isNullOrEmptyNode(externalComponent) || isNullOrEmptyNode(externalComponent.get("uri"))) { + return; + } + String formId = externalComponent.get("uri").asText(); + ObjectNode extComponent = (ObjectNode) externalComponent; + extComponent.put("uri", StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(formId)) ? + formId : replicationServiceContext.findNewUUID(formId)); + GspMetadata copiedGspMetadata = replicationServiceContext.findCopiedGspMetadata(formId); + if (copiedGspMetadata == null) { + return; + } + if (!isNullOrEmptyNode(extComponent.at("/nameSpace"))) { + extComponent.put("nameSpace", copiedGspMetadata.getHeader().getNameSpace()); + } + if (!isNullOrEmptyNode(extComponent.at("/fileName"))) { + extComponent.put("fileName", copiedGspMetadata.getHeader().getFileName()); + } + if (!isNullOrEmptyNode(extComponent.at("/filePath"))) { + extComponent.put("filePath", StringUtility.isNullOrEmpty(extComponent.get("filePath").asText()) ? null : buildNewRelativePath(replicationParam, replicationServiceContext, extComponent.get("filePath").asText())); + } + if (!isNullOrEmptyNode(extComponent.at("/projectName"))) { + extComponent.put("projectName", replicationServiceContext.getProjectNameMap() != null && + !replicationServiceContext.getProjectNameMap().isEmpty() && + !StringUtility.isNullOrEmpty(replicationServiceContext.getProjectNameMap().get(extComponent.at("/projectName").asText())) ? + replicationServiceContext.getProjectNameMap().get(extComponent.at("/projectName").asText()).toLowerCase() : "bo-" + replicationParam.getTargetBizObjCode().toLowerCase() + "-front"); + } + if (!isNullOrEmptyNode(extComponent.at("/serviceUnitPath"))) { + extComponent.put("serviceUnitPath", replicationParam.getTargetAppDomain().toLowerCase() + "/" + replicationParam.getTargetSU().toLowerCase()); + } + if (!isNullOrEmptyNode(extComponent.at("/name"))) { + extComponent.put("name", copiedGspMetadata.getHeader().getName()); + } + if (!isNullOrEmptyNode(extComponent.at("/code"))) { + extComponent.put("code", copiedGspMetadata.getHeader().getCode()); + } + } + + private static FormMetadataContent updateFormByWebCommands(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext, ReplicationParam replicationParam) { + JsonNode module = formMetadataContent.getModule(); + if (module == null) { + return formMetadataContent; + } + JsonNode webCommandsNode = module.at("/webcmds"); + if (webCommandsNode == null || webCommandsNode.isNull() || webCommandsNode.isMissingNode()) { + return formMetadataContent; + } + ArrayNode webCommandsArray = (ArrayNode) webCommandsNode; + Map oldNewCmdIdMap = new HashMap<>(); + for (JsonNode jsonCmdNode : webCommandsArray) { + if (isNullOrEmptyNode(jsonCmdNode)) { + continue; + } + String webCmdId = jsonCmdNode.at("/id").asText(); + ObjectNode cmdNode = (ObjectNode) jsonCmdNode; + + cmdNode.put("id", StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(webCmdId)) ? webCmdId : replicationServiceContext.findNewUUID(webCmdId)); + if (replicationServiceContext.findCopiedGspMetadata(webCmdId) == null) { + continue; + } + GspMetadata copiedGspMetadata = replicationServiceContext.findCopiedGspMetadata(webCmdId); + + if (!isNullOrEmptyNode(cmdNode.at("/nameSpace"))) { + cmdNode.put("nameSpace", copiedGspMetadata.getHeader().getNameSpace()); + } + if (!isNullOrEmptyNode(cmdNode.at("/path"))) { + cmdNode.put("path", StringUtility.isNullOrEmpty(cmdNode.get("path").asText()) ? null : buildNewRelativePath(replicationParam, replicationServiceContext, cmdNode.get("path").asText())); + } + if (!isNullOrEmptyNode(cmdNode.at("/name"))) { + cmdNode.put("name", copiedGspMetadata.getHeader().getFileName()); + } + if (!isNullOrEmptyNode(cmdNode.at("/code"))) { + cmdNode.put("code", copiedGspMetadata.getHeader().getCode()); + } + oldNewCmdIdMap.put(webCmdId, replicationServiceContext.findNewUUID(webCmdId)); + } + //全局替换 + if (!oldNewCmdIdMap.isEmpty()) { + String contentStr = JSONSerializer.serialize(formMetadataContent); + for (Map.Entry entry : oldNewCmdIdMap.entrySet()) { + contentStr.replace(entry.getKey(), entry.getValue()); + } + return JSONSerializer.deserialize(contentStr, FormMetadataContent.class); + } + return formMetadataContent; + + } + + private static void updateFormByStateMachines(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + JsonNode module = formMetadataContent.getModule(); + if (module == null) { + return; + } + JsonNode stateMachines = module.at("/stateMachines"); + if (isNullOrEmptyNode(stateMachines)) { + return; + } + ArrayNode stateMachinesArray = (ArrayNode) stateMachines; + for (JsonNode stateMachine : stateMachinesArray) { + if (isNullOrEmptyNode(stateMachine.at("/uri"))) { + continue; + } + String smId = stateMachine.at("/uri").asText(); + ObjectNode smObjectNode = (ObjectNode) stateMachine; + smObjectNode.put("uri", StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(smId)) ? + smId : replicationServiceContext.findNewUUID(smId)); + GspMetadata copiedSmMetadata = replicationServiceContext.findCopiedGspMetadata(smId); + if (copiedSmMetadata == null) { + continue; + } + if (!isNullOrEmptyNode(smObjectNode.at("/nameSpace"))) { + smObjectNode.put("nameSpace", copiedSmMetadata.getHeader().getNameSpace()); + } + if (!isNullOrEmptyNode(smObjectNode.at("/id"))) { + smObjectNode.put("id", copiedSmMetadata.getHeader().getCode()); + } + if (!isNullOrEmptyNode(smObjectNode.at("/name"))) { + smObjectNode.put("name", copiedSmMetadata.getHeader().getName()); + } + } + } + + private static void updateProjectNameAndMetadataId(FormMetadataContent formMetadataContent, + ReplicationParam replicationParam, + ReplicationServiceContext replicationServiceContext) { + if (!StringUtility.isNullOrEmpty(formMetadataContent.getId()) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(formMetadataContent.getId()))) { + formMetadataContent.setId(replicationServiceContext.findNewUUID(formMetadataContent.getId())); + } + JsonNode module = formMetadataContent.getModule(); + if (module == null || module.isMissingNode() || module.isNull()) { + return; + } + String targetBizObjCode = replicationParam.getTargetBizObjCode(); + if (StringUtility.isNullOrEmpty(targetBizObjCode)) { + return; + } + ObjectNode objectContent = (ObjectNode) module; + if (!isNullOrEmptyNode(objectContent.at("/projectName"))) { + String project = objectContent.at("/projectName").asText(); + + objectContent.put("projectName", replicationServiceContext.getProjectNameMap() != null && + !replicationServiceContext.getProjectNameMap().isEmpty() && + !StringUtility.isNullOrEmpty(replicationServiceContext.getProjectNameMap().get(project)) ? + replicationServiceContext.getProjectNameMap().get(project).toLowerCase() : "bo-" + replicationParam.getTargetBizObjCode().toLowerCase() + "-front"); + } + if (!isNullOrEmptyNode(objectContent.at("/metadataId")) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(objectContent.get("metadataId").asText()))) { + objectContent.put("metadataId", replicationServiceContext.findNewUUID(objectContent.get("metadataId").asText())); + } + } + + private static void updateFormByVo(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext, ReplicationParam replicationParam) { + JsonNode schema = formMetadataContent.getSchema(); + if (isNullOrEmptyNode(schema)) { + return; + } + ArrayNode schemaArray = (ArrayNode) schema; + schemaArray.forEach(schemaNode -> { + if (schemaNode != null && schemaNode.get("id") != null) { + ObjectNode objectSchemaNode = (ObjectNode) schemaNode; + GspMetadata voMetadata = replicationServiceContext.findCopiedGspMetadata(schemaNode.get("id").asText()); + if (voMetadata != null) { + if (!isNullOrEmptyNode(objectSchemaNode.at("/voPath"))) { + objectSchemaNode.put("voPath", StringUtility.isNullOrEmpty(voMetadata.getRelativePath()) ? null : buildNewRelativePath(replicationParam, replicationServiceContext, voMetadata.getRelativePath())); + } + if (!isNullOrEmptyNode(objectSchemaNode.at("/voNameSpace"))) { + objectSchemaNode.put("voNameSpace", voMetadata.getHeader().getNameSpace()); + } + if (!StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(schemaNode.get("id").asText()))) { + objectSchemaNode.put("id", replicationServiceContext.findNewUUID(schemaNode.get("id").asText())); + } + } + } + + }); + + } + + private static void updateFormControllerCommandParam(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + ArrayNode viewModels = (ArrayNode) formMetadataContent.getModule().at("/viewmodels"); + for (int i = 0; i < viewModels.size(); i++) { + JsonNode vm = viewModels.get(i); + if (vm.get("commands") != null) { + ArrayNode commands = (ArrayNode) vm.get("commands"); + if (!commands.isEmpty()) { + for (int j = 0; j < commands.size(); j++) { + JsonNode cmd = commands.get(j); + recognizeUpdateControllerCommand(cmd, replicationServiceContext); + } + } + } + } + } + + + private static void recognizeUpdateControllerCommand(JsonNode cmd, ReplicationServiceContext replicationServiceContext) { + if (isListControllerCommand(cmd)) { + updateListAppCommand(cmd); + updateListFuncCommand(cmd); + updateListRtcCommand(cmd, replicationServiceContext); + } + if (isPrintCommand(cmd)) { + updatePrintCommand(cmd, replicationServiceContext); + } + if (isAdvancedListCardControllerCommand(cmd)) { + updateAdvancedListCardControllerCommand(cmd, replicationServiceContext); + } + if (isCardControllerCommand(cmd)) { + updateCardControllerCommand(cmd, replicationServiceContext); + } + if (isBatchEditCommand(cmd)) { + updateBatchEditCommand(cmd, replicationServiceContext); + } + if (isDoubleListControllerCommand(cmd)) { + updateDoubleListControllerCommand(cmd, replicationServiceContext); + } + if (isPopControllerCommand(cmd)) { + updatePopControllerCommand(cmd, replicationServiceContext); + } + if (isTreeListControllerCommand(cmd)) { + updateTreeListControllerCommand(cmd, replicationServiceContext); + } + } + + private static void updateListAppCommand(JsonNode item) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "appId".equals(paramNode.get("name").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + if (!isNullOrEmptyNode(paramNode.get("name")) && "appEntrance".equals(paramNode.get("name").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + }); + } + + private static void updateListRtcCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "funcId".equals(paramNode.get("name").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + if (!isNullOrEmptyNode(paramNode.get("name")) && "metadataId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(context.findNewUUID(paramNode.get("value").asText()))) { + ((ObjectNode) paramNode).put("value", context.findNewUUID(paramNode.get("value").asText())); + } + } + }); + } + + private static boolean isListControllerCommand(JsonNode item) { + return item.get("cmpId") != null && "70b4abd4-9f2c-4b7c-90e9-6ac6f4b74c72".equals(item.get("cmpId").asText()); + } + + private static boolean isCardControllerCommand(JsonNode item) { + return item.get("cmpId") != null && "8172a979-2c80-4637-ace7-b13074d3f393".equals(item.get("cmpId").asText()); + } + + private static void updateCardControllerCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "helpId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(context.findNewUUID(paramNode.get("value").asText()))) { + ((ObjectNode) paramNode).put("value", context.findNewUUID(paramNode.get("value").asText())); + } + } + if (!isNullOrEmptyNode(paramNode.get("name")) && "funcOrAppId".equals(paramNode.get("name").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + if (!isNullOrEmptyNode(paramNode.get("name")) && "appEntrance".equals(paramNode.get("name").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + }); + } + + + private static boolean isAdvancedListCardControllerCommand(JsonNode item) { + return item.get("cmpId") != null && "45be24f9-c1f7-44f7-b447-fe2ada458a61".equals(item.get("cmpId").asText()); + } + + private static void updateAdvancedListCardControllerCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "helpId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(context.findNewUUID(paramNode.get("value").asText()))) { + ((ObjectNode) paramNode).put("value", context.findNewUUID(paramNode.get("value").asText())); + } + } + }); + } + + private static boolean isPrintCommand(JsonNode item) { + return item.get("cmpId") != null && "e353b4e9-e073-4e18-b9f7-ec4cc8ac72b1".equals(item.get("cmpId").asText()); + } + + private static void updatePrintCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "beMetaId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(context.findNewUUID(paramNode.get("value").asText()))) { + ((ObjectNode) paramNode).put("value", context.findNewUUID(paramNode.get("value").asText())); + } + } + if (!isNullOrEmptyNode(paramNode.get("name")) && "billCategoryId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && + !StringUtility.isNullOrEmpty(getNewConfigData("bfbfconfigdefine", "id", paramNode.get("value").asText(), context))) { + ((ObjectNode) paramNode).put("value", getNewConfigData("bfbfconfigdefine", "id", paramNode.get("value").asText(), context)); + } + } + }); + } + + private static void updateListFuncCommand(JsonNode item) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "url".equals(paramNode.get("name").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + }); + } + + private static void updateFormByEapi(FormMetadataContent formMetadataContent, ReplicationServiceContext replicationServiceContext) { + JsonNode schema = formMetadataContent.getSchema(); + if (isNullOrEmptyNode(schema)) { + return; + } + ArrayNode schemaArray = (ArrayNode) schema; + schemaArray.forEach(schemaNode -> { + if (schemaNode != null && schemaNode.get("eapiId") != null) { + String eapiId = schemaNode.get("eapiId").asText(); + if (!StringUtility.isNullOrEmpty(eapiId)) { + GspMetadata newEapiMetadata = replicationServiceContext.findCopiedGspMetadata(eapiId); + if (newEapiMetadata != null) { + updateFormByEapi(schemaNode, newEapiMetadata, replicationServiceContext); + } + } + } + }); + } + + + private static String getNewConfigData(String tableName, String columnName, String oldValue, ReplicationServiceContext replicationServiceContext) { + String result = ""; + if (!StringUtility.isNullOrEmpty(tableName) && !StringUtility.isNullOrEmpty(columnName) && !StringUtility.isNullOrEmpty(oldValue)) { + String key = tableName + "_" + columnName + "_" + oldValue; + result = replicationServiceContext.findConfigDataNewValue(key); + if (StringUtility.isNullOrEmpty(result)) { + WebLogger.Instance.info("com.inspur.edp.web.formmetadata.formcopy.FormMetadataCopyImpl,key值为:" + key); + result = oldValue; + } + } + return result; + } + + private static void updateFormByEapi(JsonNode schema, GspMetadata eapiMetadata, ReplicationServiceContext replicationServiceContext) { + SgMetadata eapiMdContent = (SgMetadata) eapiMetadata.getContent(); + // 表单上回写eapi id和url + ObjectNode schemaNode = (ObjectNode) schema; + schemaNode.put("eapiId", StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(schemaNode.get("eapiId").asText())) ? + schemaNode.get("eapiId").asText() : replicationServiceContext.findNewUUID(schemaNode.get("eapiId").asText())); + String sourceUri = eapiMdContent.getRouter(); + if (sourceUri.startsWith("/")) { + sourceUri = sourceUri.substring(1); + } + if (!isNullOrEmptyNode(schemaNode.at("/sourceUri"))) { + schemaNode.put("sourceUri", sourceUri); + } + if (!isNullOrEmptyNode(schemaNode.at("/eapiCode"))) { + schemaNode.put("eapiCode", eapiMdContent.getCode()); + } + if (!isNullOrEmptyNode(schemaNode.at("/eapiName"))) { + schemaNode.put("eapiName", eapiMdContent.getName()); + } + if (!isNullOrEmptyNode(schemaNode.at("/eapiNameSpace"))) { + schemaNode.put("eapiNameSpace", eapiMetadata.getHeader().getNameSpace()); + } + } + + //同LCM给的规则保持一致, + private static String buildNewRelativePath(ReplicationParam replicationParam, ReplicationServiceContext context, String oldRelativePath) { + if (StringUtility.isNullOrEmpty(oldRelativePath)) { + return null; + } + // 获取新值 + String newAppDomain = replicationParam.getTargetAppDomain(); + String newServiceUnit = replicationParam.getTargetSU(); + String newBoCode = replicationParam.getTargetBizObjCode(); + String projectName = getProjectName(oldRelativePath); + if (StringUtility.isNullOrEmpty(projectName)) { + return null; + } + String result = Paths.get(newAppDomain, + newServiceUnit, + newBoCode, + context.getProjectNameMap() != null && + !context.getProjectNameMap().isEmpty() && + !StringUtility.isNullOrEmpty(context.getProjectNameMap().get(projectName)) ? + context.getProjectNameMap().get(projectName).toLowerCase() : "bo-" + replicationParam.getTargetBizObjCode().toLowerCase() + "-front", + getSecondLastProperty(oldRelativePath), + getFinalProperty(oldRelativePath) + ).toString().replace("\\", "/"); + return result; + + } + + public static String getProjectName(String oldRelativePath) { + // 1. 空值校验:避免NPE + if (StringUtility.isNullOrEmpty(oldRelativePath)) { + return null; // 或抛业务异常,根据实际需求调整 + } + + // 2. 分割路径 + 过滤空元素(处理连续/、首尾/的情况) + String[] pathSegments = oldRelativePath.split("/"); + List validSegments = new ArrayList<>(); + for (String segment : pathSegments) { + if (!StringUtility.isNullOrEmpty(segment)) { // 过滤空字符串/纯空格 + validSegments.add(segment); + } + } + + // 3. 数组长度校验:避免IndexOutOfBoundsException + if (validSegments.size() < 3) { + return null; // 路径层级不足,返回null/抛异常/返回默认值 + } + + // 4. 取倒数第三个元素 + return validSegments.get(validSegments.size() - 3); + } + + public static String getFinalProperty(String key) { + if (StringUtility.isNullOrEmpty(key)) { + return key; + } + String[] splitString = key.split("/"); + if (splitString.length < 1) { + return key; + } + return splitString[splitString.length - 1]; + } + + public static String getSecondLastProperty(String key) { + if (StringUtility.isNullOrEmpty(key)) { + return key; + } + String[] splitString = key.split("/"); + if (splitString.length < 2) { + return key; + } + return splitString[splitString.length - 2]; + + } + + public static String getProperty(String key, int length) { + if (StringUtility.isNullOrEmpty(key)) { + return key; + } + String[] splitString = key.split("/"); + if (splitString.length < length) { + return key; + } + return splitString[length - 1]; + + } + + + private static String buildNewRelativePath(ReplicationParam replicationParam, String oldRelativePath) { + + // 获取新值 + String newAppDomain = replicationParam.getTargetAppDomain(); + String newServiceUnit = replicationParam.getTargetSU(); + String newBoCode = replicationParam.getTargetBizObjCode(); + + String result = Paths.get(newAppDomain, + newServiceUnit, + newBoCode, + "bo-" + newBoCode.toLowerCase() + "-front", + "metadata", + "components" + ).toString().replace("\\", "/"); + + + return result; + + + } + + public static boolean isNullOrEmptyNode(JsonNode node) { + return node == null || + node.isNull() || + node.isArray() && node.isEmpty() || + node.isObject() && node.isEmpty() || + StringUtility.isNullOrEmpty(node.toString()); + } + + /** + * 提取JSON字符串中所有helpId的值 + * + * @param rootNode 目标JSON字符串 + * @return 所有helpId的值列表 + */ + public static void replaceHelpId(JsonNode rootNode, ReplicationServiceContext context) { + ; + // 递归遍历节点 + traverseJsonNodeToUpdateHelpId(rootNode, context); + } + + /** + * 递归遍历Jackson的JsonNode,替换helpId + * + * @param node 当前遍历的节点 + * @param context 替换上下文 + */ + private static void traverseJsonNodeToUpdateHelpId(JsonNode node, ReplicationServiceContext context) { + if (isNullOrEmptyNode(node)) { + return; + } + try { + // 处理对象节点({...}) + if (node.isObject()) { + ObjectNode objectNode = (ObjectNode) node; // 转为可变的 ObjectNode + Iterator> fields = objectNode.fields(); + + while (fields.hasNext()) { + Map.Entry field = fields.next(); + String key = field.getKey(); + JsonNode value = field.getValue(); + // 匹配helpId键,收集值 + if ("helpId".equals(key) && + !StringUtility.isNullOrEmpty(value.asText()) && + !StringUtility.isNullOrEmpty(context.findNewUUID(value.asText()))) { + objectNode.put(key, context.findNewUUID(value.asText())); + } + // 递归遍历子节点 + traverseJsonNodeToUpdateHelpId(value, context); + } + } + // 处理数组节点([...]) + else if (node.isArray()) { + for (JsonNode item : node) { + traverseJsonNodeToUpdateHelpId(item, context); + } + } + // 基本类型节点,无需处理 + } catch (Exception e) { + throw new WebCustomException(e); + + } + } + + + private static boolean isBatchEditCommand(JsonNode item) { + return item.get("cmpId") != null && "43f68561-eae4-4495-b318-d629615523f8".equals(item.get("cmpId").asText()); + } + + private static void updateBatchEditCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "helpId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(context.findNewUUID(paramNode.get("value").asText()))) { + ((ObjectNode) paramNode).put("value", context.findNewUUID(paramNode.get("value").asText())); + } + } + }); + } + + private static boolean isDoubleListControllerCommand(JsonNode item) { + return item.get("cmpId") != null && "26436aa8-88a7-4aee-bf0b-9843c1e8afbf".equals(item.get("cmpId").asText()); + } + + private static void updateDoubleListControllerCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "url".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(paramNode.get("value").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + } + }); + } + + private static boolean isPopControllerCommand(JsonNode item) { + return item.get("cmpId") != null && "8d21e69c-70b3-44f6-88b5-fd6a8d3ce11b".equals(item.get("cmpId").asText()); + } + + private static void updatePopControllerCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "funcOrAppId".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(paramNode.get("value").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + } + if (!isNullOrEmptyNode(paramNode.get("name")) && "appEntrance".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(paramNode.get("value").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + } + }); + } + + private static boolean isTreeListControllerCommand(JsonNode item) { + return item.get("cmpId") != null && "d7de1993-d500-44fd-9922-43c78d477aa3".equals(item.get("cmpId").asText()); + } + + private static void updateTreeListControllerCommand(JsonNode item, ReplicationServiceContext context) { + if (isNullOrEmptyNode(item.get("params"))) { + return; + } + ArrayNode params = (ArrayNode) item.get("params"); + params.forEach(paramNode -> { + if (!isNullOrEmptyNode(paramNode.get("name")) && "url".equals(paramNode.get("name").asText())) { + if (!isNullOrEmptyNode(paramNode.get("value")) && !StringUtility.isNullOrEmpty(paramNode.get("value").asText())) { + ((ObjectNode) paramNode).put("value", ""); + } + } + }); + } + + +} diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataCopyImpl.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataCopyImpl.java new file mode 100644 index 00000000..7fa7cec1 --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataCopyImpl.java @@ -0,0 +1,33 @@ +package com.inspur.edp.web.appcopy.formmetadata; + +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.replication.api.context.ReplicationServiceContext; +import com.inspur.edp.lcm.replication.api.entity.ReplicationParam; +import com.inspur.edp.lcm.replication.api.entity.ReplicationTypeEnum; +import com.inspur.edp.lcm.replication.spi.MetadataCopySpi; +import com.inspur.edp.web.common.utility.StringUtility; + + +public class FormMetadataCopyImpl implements MetadataCopySpi { + + @Override + public void metadataCopy(ReplicationParam replicationParam, GspMetadata formMetadata, ReplicationServiceContext replicationServiceContext) { + + String type = formMetadata.getHeader().getType(); + if (StringUtility.isNullOrEmpty(type) || !"Form".equals(type) ) { + return; + } + FormCopyCommonUtility.updateFormContent(replicationParam, formMetadata, replicationServiceContext); + } + + @Override + public String getMdType() { + return "Form"; + } + + @Override + public ReplicationTypeEnum getReplicationTypeEnum() { + return ReplicationTypeEnum.COMMON_APP_COPY; + } + +} diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataReferenceCollect.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataReferenceCollect.java new file mode 100644 index 00000000..84f9f2c5 --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/FormMetadataReferenceCollect.java @@ -0,0 +1,258 @@ +package com.inspur.edp.web.appcopy.formmetadata; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ArrayNode; +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.metadata.api.entity.MetadataHeader; +import com.inspur.edp.lcm.metadata.api.entity.MetadataReference; +import com.inspur.edp.lcm.replication.api.entity.ReplicationTypeEnum; +import com.inspur.edp.lcm.replication.spi.MetadataReferenceCollectSpi; +import com.inspur.edp.web.common.utility.StringUtility; +import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; + +import java.util.*; + +public class FormMetadataReferenceCollect implements MetadataReferenceCollectSpi { + + + @Override + public List collect(GspMetadata formMetadata) { + if (formMetadata == null || + formMetadata.getHeader() == null || + !("Form".equals(formMetadata.getHeader().getType()) || + "MobileForm".equals(formMetadata.getHeader().getType()))) { + return Collections.emptyList(); + } + List formMdReferences = new ArrayList<>(formMetadata.getRefs()); + FormMetadataContent formMdContent = (FormMetadataContent) formMetadata.getContent(); + JsonNode module = formMdContent.getModule(); + if (isNullOrEmptyNode(module)) { + return formMdReferences; + } + //获取vo和eapi + JsonNode schema = formMdContent.getSchema(); + if (!isNullOrEmptyNode(schema)) { + getReferenceBySchema((ArrayNode) schema, formMdReferences); + } + JsonNode stateMachines = formMdContent.getModule().get("stateMachines"); + //获取状态机 + if (!isNullOrEmptyNode(stateMachines)) { + getReferenceByStateMachines((ArrayNode) stateMachines, formMdReferences); + } + //获取构件元数据依赖 + JsonNode webCmds = formMdContent.getModule().get("webcmds"); + if (!isNullOrEmptyNode(webCmds)) { + getReferenceByWebCmd((ArrayNode) webCmds, formMdReferences); + } + //获取组合表单 + JsonNode externalComponents = formMdContent.getModule().get("externalComponents"); + if (!isNullOrEmptyNode(externalComponents)) { + getReferenceByExternalComponent((ArrayNode) externalComponents, formMdReferences); + } + //获取帮助依赖 + JsonNode components = formMdContent.getModule().get("components"); + if (!isNullOrEmptyNode(components)) { + extractHelpIds(components, formMdReferences); + } + //获取qo元数据依赖 + JsonNode qdpInfo = formMdContent.getModule().get("qdpInfo"); + if (!isNullOrEmptyNode(qdpInfo)) { + extractQueryInfoRefs(qdpInfo, formMdReferences); + } + + return formMdReferences; + } + + private void extractQueryInfoRefs(JsonNode qdpInfo, List formMdReferences) { + JsonNode qoMetadata = qdpInfo.get("qoMetadata"); + if (isNullOrEmptyNode(qoMetadata)) { + return; + } + qoMetadata.forEach(qo -> { + JsonNode idNode = qo.get("id"); + if (isNullOrEmptyNode(idNode)) { + return; + } + if (formMdReferences.stream().noneMatch(item -> idNode.asText().equals(item.getDependentMetadata().getId()))) { + MetadataReference ref = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(idNode.asText()); + dependentMetadata.setType("QueryObject"); + ref.setDependentMetadata(dependentMetadata); + formMdReferences.add(ref); + } + }); + } + + private void getReferenceByExternalComponent(ArrayNode externalComponent, List formMdReferences) { + externalComponent.forEach(cmp -> { + getReferenceByExternalForm(cmp, formMdReferences); + }); + } + + private void getReferenceByExternalForm(JsonNode cmp, List formMdReferences) { + JsonNode uri = cmp.get("uri"); + if (isNullOrEmptyNode(uri)) { + return; + } + + if (formMdReferences.stream().noneMatch(item -> uri.asText().equals(item.getDependentMetadata().getId()))) { + MetadataReference ref = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(uri.asText()); + ref.setDependentMetadata(dependentMetadata); + formMdReferences.add(ref); + } + } + + private void getReferenceByWebCmd(ArrayNode webCmds, List formMdReferences) { + webCmds.forEach(webCmd -> { + getReferenceByWebCmdNode(webCmd, formMdReferences); + }); + } + + private void getReferenceByWebCmdNode(JsonNode webCmd, List formMdReferences) { + if (isNullOrEmptyNode(webCmd.get("id"))) { + return; + } + + if (formMdReferences.stream().noneMatch(item -> webCmd.get("id").asText().equals(item.getDependentMetadata().getId()))) { + MetadataReference cmdReference = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(webCmd.get("id").asText()); + dependentMetadata.setType("WebCommand"); + cmdReference.setDependentMetadata(dependentMetadata); + formMdReferences.add(cmdReference); + } + + } + + private void getReferenceByStateMachines(ArrayNode stateMachines, List formMdReferences) { + stateMachines.forEach(stateMachineNode -> { + getReferenceBySM(stateMachineNode, formMdReferences); + }); + } + + private void getReferenceBySM(JsonNode stateMachineNode, List formMdReferences) { + if (isNullOrEmptyNode(stateMachineNode.get("uri"))) { + return; + } + String smId = stateMachineNode.get("uri").textValue(); + + if (formMdReferences.stream().noneMatch(item -> smId.equals(item.getDependentMetadata().getId()))) { + MetadataReference smReference = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(smId); + dependentMetadata.setType("StateMachine"); + smReference.setDependentMetadata(dependentMetadata); + formMdReferences.add(smReference); + } + } + + private void getReferenceBySchema(ArrayNode schema, List formMdReferences) { + schema.forEach(schemaNode -> { + getReferenceByEapi(schemaNode, formMdReferences); + getReferenceByVo(schemaNode, formMdReferences); + }); + } + + private void getReferenceByVo(JsonNode node, List formMdReferences) { + if (isNullOrEmptyNode(node.get("id"))) { + return; + } + String voId = node.get("id").asText(); + if (formMdReferences.stream().noneMatch(item -> voId.equals(item.getDependentMetadata().getId()))) { + MetadataReference voReference = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(voId); + dependentMetadata.setType("GSPViewModel"); + voReference.setDependentMetadata(dependentMetadata); + formMdReferences.add(voReference); + } + } + + private void getReferenceByEapi(JsonNode schemaNode, List formMdReferences) { + if (isNullOrEmptyNode(schemaNode.get("eapiId"))) { + return; + } + String eapiId = schemaNode.get("eapiId").asText(); + if (formMdReferences.stream().noneMatch(item -> eapiId.equals(item.getDependentMetadata().getId()))) { + MetadataReference eapiReference = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(eapiId); + dependentMetadata.setType("ExternalApi"); + eapiReference.setDependentMetadata(dependentMetadata); + formMdReferences.add(eapiReference); + } + } + + @Override + public ReplicationTypeEnum getReplicationTypeEnum() { + return ReplicationTypeEnum.COMMON_APP_COPY; + } + + public static boolean isNullOrEmptyNode(JsonNode node) { + return node == null || + node.isNull() || + node.isArray() && node.isEmpty() || + node.isObject() && node.isEmpty() || + StringUtility.isNullOrEmpty(node.toString()); + } + + /** + * 提取JSON字符串中所有helpId的值 + * + * @param rootNode 目标JSON字符串 + * @param formMdReferences + * @return 所有helpId的值列表 + */ + public static void extractHelpIds(JsonNode rootNode, List formMdReferences) { + List helpIdList = new ArrayList<>(); + // 递归遍历节点 + traverseJsonNode(rootNode, helpIdList); + helpIdList.forEach(helpId -> { + if (!StringUtility.isNullOrEmpty(helpId) && + formMdReferences.stream().noneMatch(item -> helpId.equals(item.getDependentMetadata().getId()))) { + MetadataReference helpReference = new MetadataReference(); + MetadataHeader dependentMetadata = new MetadataHeader(); + dependentMetadata.setId(helpId); + helpReference.setDependentMetadata(dependentMetadata); + formMdReferences.add(helpReference); + } + }); + } + + /** + * 递归遍历Jackson的JsonNode,提取helpId + * + * @param node 当前遍历的节点 + * @param helpIdList 收集helpId的列表 + */ + private static void traverseJsonNode(JsonNode node, List helpIdList) { + if (isNullOrEmptyNode(node)) { + return; + } + // 处理对象节点({...}) + if (node.isObject()) { + Iterator> fields = node.fields(); + while (fields.hasNext()) { + Map.Entry field = fields.next(); + String key = field.getKey(); + JsonNode value = field.getValue(); + // 匹配helpId键,收集值 + if ("helpId".equals(key)) { + helpIdList.add(value.isNull() ? null : value.asText()); + } + // 递归遍历子节点 + traverseJsonNode(value, helpIdList); + } + } + // 处理数组节点([...]) + else if (node.isArray()) { + for (JsonNode item : node) { + traverseJsonNode(item, helpIdList); + } + } + // 基本类型节点,无需处理 + } +} diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/MobileFormMetadataCopyImpl.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/MobileFormMetadataCopyImpl.java new file mode 100644 index 00000000..eadc4001 --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/formmetadata/MobileFormMetadataCopyImpl.java @@ -0,0 +1,30 @@ +package com.inspur.edp.web.appcopy.formmetadata; + +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.replication.api.context.ReplicationServiceContext; +import com.inspur.edp.lcm.replication.api.entity.ReplicationParam; +import com.inspur.edp.lcm.replication.api.entity.ReplicationTypeEnum; +import com.inspur.edp.lcm.replication.spi.MetadataCopySpi; +import com.inspur.edp.web.common.utility.StringUtility; + +public class MobileFormMetadataCopyImpl implements MetadataCopySpi { + @Override + public void metadataCopy(ReplicationParam replicationParam, GspMetadata formMetadata, ReplicationServiceContext replicationServiceContext) { + String type = formMetadata.getHeader().getType(); + if (StringUtility.isNullOrEmpty(type) || !"MobileForm".equals(type) ) { + return; + } + FormCopyCommonUtility.updateFormContent(replicationParam, formMetadata, replicationServiceContext); + + } + + @Override + public String getMdType() { + return "MobileForm"; + } + + @Override + public ReplicationTypeEnum getReplicationTypeEnum() { + return ReplicationTypeEnum.COMMON_APP_COPY; + } +} diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/MobilePageFlowCopyImpl.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/MobilePageFlowCopyImpl.java new file mode 100644 index 00000000..eed9f94b --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/MobilePageFlowCopyImpl.java @@ -0,0 +1,28 @@ +package com.inspur.edp.web.appcopy.pageflowmetadata; + +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.replication.api.context.ReplicationServiceContext; +import com.inspur.edp.lcm.replication.api.entity.ReplicationParam; +import com.inspur.edp.lcm.replication.api.entity.ReplicationTypeEnum; +import com.inspur.edp.lcm.replication.spi.MetadataCopySpi; + +public class MobilePageFlowCopyImpl implements MetadataCopySpi { + + @Override + public void metadataCopy(ReplicationParam replicationParam, GspMetadata gspMetadata, ReplicationServiceContext replicationServiceContext) { + if (gspMetadata == null || gspMetadata.getHeader() == null || !"MobilePageFlowMetadata".equals(gspMetadata.getHeader().getType())) { + return; + } + PageFlowCopyCommonUtility.updatePageFlowContent(replicationParam, gspMetadata, replicationServiceContext); + } + + @Override + public String getMdType() { + return "MobilePageFlowMetadata"; + } + + @Override + public ReplicationTypeEnum getReplicationTypeEnum() { + return ReplicationTypeEnum.COMMON_APP_COPY; + } +} diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyCommonUtility.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyCommonUtility.java new file mode 100644 index 00000000..c89931d1 --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyCommonUtility.java @@ -0,0 +1,138 @@ +package com.inspur.edp.web.appcopy.pageflowmetadata; + +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.replication.api.context.ReplicationServiceContext; +import com.inspur.edp.lcm.replication.api.entity.ReplicationParam; +import com.inspur.edp.web.common.utility.StringUtility; +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 java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; + +public class PageFlowCopyCommonUtility { + + public static void updatePageFlowContent(ReplicationParam replicationParam, GspMetadata pfMetadata, + ReplicationServiceContext replicationServiceContext) { + + PageFlowMetadataEntity pageFlowContent = (PageFlowMetadataEntity) pfMetadata.getContent(); + if (pageFlowContent == null) { + return; + } + //发布信息删了; + pageFlowContent.setPublishes(new ArrayList<>()); + //替换id + if (!StringUtility.isNullOrEmpty(pageFlowContent.getId()) && + !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(pageFlowContent.getId()))) { + pageFlowContent.setId(replicationServiceContext.findNewUUID(pageFlowContent.getId())); + } + //替换project + Project project = new Project(); + project.setName(pageFlowContent.getProject() != null && + !StringUtility.isNullOrEmpty(pageFlowContent.getProject().getName()) && + replicationServiceContext.getProjectNameMap() != null && + !replicationServiceContext.getProjectNameMap().isEmpty() && + !StringUtility.isNullOrEmpty(replicationServiceContext.getProjectNameMap().get(pageFlowContent.getProject().getName())) ? + replicationServiceContext.getProjectNameMap().get(pageFlowContent.getProject().getName()).toLowerCase() : "bo-" + replicationParam.getTargetBizObjCode().toLowerCase() + "-front"); + pageFlowContent.setProject(project); + //清空应用信息 + pageFlowContent.setEntry(null); + pageFlowContent.setRoutes(null); + pageFlowContent.setAppName(null); + pageFlowContent.setAppCode(null); + + if (pageFlowContent.hasEmptyPage()) { + pfMetadata.setContent(pageFlowContent); + return; + } + for (Page page : pageFlowContent.getPages()) { + updatePage(replicationParam, replicationServiceContext, page); + } + pfMetadata.setContent(pageFlowContent); + } + + private static void updatePage(ReplicationParam replicationParam, ReplicationServiceContext replicationServiceContext, Page page) { + if (!StringUtility.isNullOrEmpty(page.getId()) && !StringUtility.isNullOrEmpty(replicationServiceContext.findNewUUID(page.getId()))) { + page.setId(replicationServiceContext.findNewUUID(page.getId())); + } + if (!StringUtility.isNullOrEmpty(page.getRelativePath())) { + page.setRelativePath(buildNewRelativePath(replicationParam, replicationServiceContext, page.getRelativePath())); + } + } + + //同LCM给的规则保持一致, + private static String buildNewRelativePath(ReplicationParam replicationParam, ReplicationServiceContext context, String oldRelativePath) { + if (StringUtility.isNullOrEmpty(oldRelativePath)) { + return null; + } + // 获取新值 + String newAppDomain = replicationParam.getTargetAppDomain(); + String newServiceUnit = replicationParam.getTargetSU(); + String newBoCode = replicationParam.getTargetBizObjCode(); + String projectName = getProjectName(oldRelativePath); + if (StringUtility.isNullOrEmpty(projectName)) { + return null; + } + String result = Paths.get(newAppDomain, + newServiceUnit, + newBoCode, + context.getProjectNameMap() != null && + !context.getProjectNameMap().isEmpty() && + !StringUtility.isNullOrEmpty(context.getProjectNameMap().get(projectName)) ? + context.getProjectNameMap().get(projectName).toLowerCase() : "bo-" + replicationParam.getTargetBizObjCode().toLowerCase() + "-front", + getSecondLastProperty(oldRelativePath), + getFinalProperty(oldRelativePath) + ).toString().replace("\\", "/"); + return result; + + } + + public static String getProjectName(String oldRelativePath) { + // 1. 空值校验:避免NPE + if (StringUtility.isNullOrEmpty(oldRelativePath)) { + return null; // 或抛业务异常,根据实际需求调整 + } + + // 2. 分割路径 + 过滤空元素(处理连续/、首尾/的情况) + String[] pathSegments = oldRelativePath.split("/"); + List validSegments = new ArrayList<>(); + for (String segment : pathSegments) { + if (!StringUtility.isNullOrEmpty(segment)) { // 过滤空字符串/纯空格 + validSegments.add(segment); + } + } + + // 3. 数组长度校验:避免IndexOutOfBoundsException + if (validSegments.size() < 3) { + return null; // 路径层级不足,返回null/抛异常/返回默认值 + } + + // 4. 取倒数第三个元素 + return validSegments.get(validSegments.size() - 3); + } + + public static String getFinalProperty(String key) { + if (StringUtility.isNullOrEmpty(key)) { + return key; + } + String[] splitString = key.split("/"); + if (splitString.length < 1) { + return key; + } + return splitString[splitString.length - 1]; + } + + public static String getSecondLastProperty(String key) { + if (StringUtility.isNullOrEmpty(key)) { + return key; + } + String[] splitString = key.split("/"); + if (splitString.length < 2) { + return key; + } + return splitString[splitString.length - 2]; + + } +} diff --git a/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyImpl.java b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyImpl.java new file mode 100644 index 00000000..3a4176f6 --- /dev/null +++ b/web-metadata-replication-core/src/main/java/com/inspur/edp/web/appcopy/pageflowmetadata/PageFlowCopyImpl.java @@ -0,0 +1,27 @@ +package com.inspur.edp.web.appcopy.pageflowmetadata; + +import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; +import com.inspur.edp.lcm.replication.api.context.ReplicationServiceContext; +import com.inspur.edp.lcm.replication.api.entity.ReplicationParam; +import com.inspur.edp.lcm.replication.api.entity.ReplicationTypeEnum; +import com.inspur.edp.lcm.replication.spi.MetadataCopySpi; + +public class PageFlowCopyImpl implements MetadataCopySpi { + @Override + public void metadataCopy(ReplicationParam replicationParam, GspMetadata gspMetadata, ReplicationServiceContext replicationServiceContext) { + if (gspMetadata == null || gspMetadata.getHeader() == null || !"PageFlowMetadata".equals(gspMetadata.getHeader().getType())) { + return; + } + PageFlowCopyCommonUtility.updatePageFlowContent(replicationParam, gspMetadata, replicationServiceContext); + } + + @Override + public String getMdType() { + return "PageFlowMetadata"; + } + + @Override + public ReplicationTypeEnum getReplicationTypeEnum() { + return ReplicationTypeEnum.COMMON_APP_COPY; + } +} diff --git a/web-metadata-replication-core/src/main/resources/META-INF/spring.factories b/web-metadata-replication-core/src/main/resources/META-INF/spring.factories new file mode 100644 index 00000000..13863b80 --- /dev/null +++ b/web-metadata-replication-core/src/main/resources/META-INF/spring.factories @@ -0,0 +1,2 @@ +org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ +com.inspur.edp.web.appcopy.config.WebReplicationConfiguration -- Gitee From f0ceae3003fca3adb09e42c5b9f3ac2e144108a3 Mon Sep 17 00:00:00 2001 From: Wang Jason Date: Thu, 5 Feb 2026 09:14:03 +0800 Subject: [PATCH 18/48] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dng=E7=AD=9B=E9=80=89?= =?UTF-8?q?=E6=96=B9=E6=A1=88=E8=B5=84=E6=BA=90=E6=8F=90=E5=8F=96bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QuerySchemeI18nResourceStrategy.java | 39 ++++++++++++++++--- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/QuerySchemeI18nResourceStrategy.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/QuerySchemeI18nResourceStrategy.java index 26aea96f..42715939 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/QuerySchemeI18nResourceStrategy.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/i18n/component/strategy/i18nresourcestrategy/QuerySchemeI18nResourceStrategy.java @@ -69,7 +69,12 @@ public class QuerySchemeI18nResourceStrategy extends AbstractI18nResourceStrateg String currentComponentType = ComponentUtility.getInstance().getType(currentComponent); String currentComponentId = ComponentUtility.getInstance().getId(currentComponent); String filterTextValue = ComponentUtility.getInstance().getValue(currentComponent, filterTextKey); - String generatedComponentId = currentComponentId + "/filterText"; + String generatedComponentId; + if(i18nResourceItemBaseId.equals("")){ + generatedComponentId = currentComponentId + "/filterText"; + }else { + generatedComponentId = currentComponentType + "/" + currentComponentId + "/filterText"; + } I18nResourceItem i18nResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedComponentId, filterTextValue, "筛选按钮文本"); this.addInCollection(i18nResourceItemCollection, i18nResourceItem); } @@ -147,7 +152,13 @@ public class QuerySchemeI18nResourceStrategy extends AbstractI18nResourceStrateg String nameAtributeValue = ComponentUtility.getInstance().getName(childComponent); if (!StringUtility.isNullOrEmpty(idAtributeValue)) { String componentId = idAtributeValue; - String generatedComponentId = currentComponentId + "/" + componentId; + String generatedComponentId; + if(i18nResourceItemBaseId.equals("")){ + generatedComponentId = currentComponentId + "/" + componentId; + }else{ + generatedComponentId = currentComponentType + "/" + currentComponentId + "/" + componentId; + } + I18nResourceItem i18nResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedComponentId, nameAtributeValue, nameAtributeValue); this.addInCollection(i18nResourceItemCollection, i18nResourceItem); @@ -155,7 +166,13 @@ public class QuerySchemeI18nResourceStrategy extends AbstractI18nResourceStrateg //提取placeholder属性参数 String placeHolderName = ComponentUtility.getInstance().GetPlaceHolderName(childComponent); String placeHolderValue = ComponentUtility.getInstance().getPlaceHolder(childComponent); - String generatedPlaceHolderComponentId = currentComponentId + "/" + componentId + "/" + placeHolderName; + String generatedPlaceHolderComponentId; + if(i18nResourceItemBaseId.equals("")){ + generatedPlaceHolderComponentId = currentComponentId + "/" + componentId + "/" + placeHolderName; + }else{ + generatedPlaceHolderComponentId = currentComponentType + "/" + currentComponentId + "/" + componentId + "/" + placeHolderName; + } + I18nResourceItem i18nPlaceholderResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedPlaceHolderComponentId, placeHolderValue, placeHolderValue); this.addInCollection(i18nResourceItemCollection, i18nPlaceholderResourceItem); @@ -163,7 +180,13 @@ public class QuerySchemeI18nResourceStrategy extends AbstractI18nResourceStrateg String beginPlaceHolderName = ComponentUtility.getInstance().getBeginPlaceHolderName(childComponent); String beginplaceHolderValue = ComponentUtility.getInstance().getBeginPlaceHolder(childComponent); if (!StringUtility.isNullOrEmpty(beginplaceHolderValue)) { - String generatedBeginPlaceHolderComponentId = currentComponentId + "/" + componentId + "/" + beginPlaceHolderName; + String generatedBeginPlaceHolderComponentId; + if(i18nResourceItemBaseId.equals("")){ + generatedBeginPlaceHolderComponentId = currentComponentId + "/" + componentId + "/" + beginPlaceHolderName; + }else{ + generatedBeginPlaceHolderComponentId = currentComponentType + "/" + currentComponentId + "/" + componentId + "/" + beginPlaceHolderName; + } + I18nResourceItem i18nBeginPlaceholderResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedBeginPlaceHolderComponentId, beginplaceHolderValue, beginplaceHolderValue); this.addInCollection(i18nResourceItemCollection, i18nBeginPlaceholderResourceItem); } @@ -172,7 +195,13 @@ public class QuerySchemeI18nResourceStrategy extends AbstractI18nResourceStrateg String endPlaceHolderName = ComponentUtility.getInstance().getEndPlaceHolderName(childComponent); String endPlaceHolderValue = ComponentUtility.getInstance().getEndPlaceHolder(childComponent); if (!StringUtility.isNullOrEmpty(endPlaceHolderValue)) { - String generatedEndPlaceHolderComponentId = currentComponentId + "/" + componentId + "/" + endPlaceHolderName; + String generatedEndPlaceHolderComponentId; + if(i18nResourceItemBaseId.equals("")){ + generatedEndPlaceHolderComponentId = currentComponentId + "/" + componentId + "/" + endPlaceHolderName; + }else{ + generatedEndPlaceHolderComponentId = currentComponentType + "/" + currentComponentId + "/" + componentId + "/" + endPlaceHolderName; + } + I18nResourceItem i18nEndPlaceholderResourceItem = I18nResourceItemManager.createI18nResourceItem(i18nResourceItemBaseId, generatedEndPlaceHolderComponentId, endPlaceHolderValue, endPlaceHolderValue); this.addInCollection(i18nResourceItemCollection, i18nEndPlaceholderResourceItem); } -- Gitee From f3de40803abe93fd90fa65961889d223cd152ff2 Mon Sep 17 00:00:00 2001 From: lorcan <13231947+lorcan-lv@user.noreply.gitee.com> Date: Fri, 6 Feb 2026 15:28:33 +0800 Subject: [PATCH 19/48] =?UTF-8?q?=E6=8E=A8=E9=80=81=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E8=B7=A8=E6=9C=8D=E5=8A=A1=E5=8D=95=E5=85=83?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../formformat/FormFormatHandler.java | 1 + .../formformat/FormFormatRtcUtility.java | 38 +++ .../handler/WFFormFormatMobileHandler.java | 239 +++++++++--------- .../handler/WFFormFormatPcHandler.java | 10 +- 4 files changed, 166 insertions(+), 122 deletions(-) create mode 100644 web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatRtcUtility.java diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatHandler.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatHandler.java index 82726ee7..844442e6 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatHandler.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatHandler.java @@ -28,6 +28,7 @@ public abstract class FormFormatHandler { public abstract void pushFormFormat(GspMetadata formMetadata, String formatType, String formPath); + @Deprecated public abstract void pushRtcFormFormat(GspMetadata formMetadata, String formatType, DimensionExtendEntity dimension); public abstract void pushNoCodeFormFormat(GspMetadata formMetadata, String formatType); diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatRtcUtility.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatRtcUtility.java new file mode 100644 index 00000000..5cce4831 --- /dev/null +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/FormFormatRtcUtility.java @@ -0,0 +1,38 @@ +package com.inspur.edp.web.formmetadata.formformat; + +import com.inspur.edp.formserver.viewmodel.formentity.VoFormModel; +import com.inspur.edp.metadata.rtcustomization.api.entity.DimensionExtendEntity; +import com.inspur.edp.web.common.customexception.WebCustomException; +import io.iec.edp.caf.commons.utils.SpringBeanUtils; +import io.iec.edp.caf.rpc.api.service.RpcClient; + +import java.util.LinkedHashMap; + +public class FormFormatRtcUtility { + + public static boolean canPushFormFormat(String voId) { + try { + LinkedHashMap params = new LinkedHashMap<>(); + params.put("voId", voId); + RpcClient rpcClient = SpringBeanUtils.getBean(RpcClient.class); + return rpcClient.invoke(Boolean.TYPE, "com.inspur.edp.rtc.template.api.rpc.RtcTemplateRpcService.canPushFormFormat", "Bcc", params, null); + } catch (Exception e) { + throw new WebCustomException("failed to invoke the Rpc interface: com.inspur.edp.rtc.template.api.rpc.RtcTemplateRpcService.canPushFormFormat", e); + } + } + + public static void buildRtcFormFormat(VoFormModel voFormModel, DimensionExtendEntity dimension, String voId, String bizObjectID) { + try { + LinkedHashMap params = new LinkedHashMap<>(); + params.put("voFormModel", voFormModel); + params.put("dimensionExtendEntity", dimension); + params.put("voId", voId); + params.put("businessObjectId", bizObjectID); + RpcClient rpcClient = SpringBeanUtils.getBean(RpcClient.class); + rpcClient.invoke(Void.TYPE, "com.inspur.edp.rtc.template.api.rpc.RtcTemplateRpcService.buildRtcFormFormat", "Bcc", params, null); + } catch (Exception e) { + throw new WebCustomException("failed to invoke the Rpc interface: com.inspur.edp.rtc.template.api.rpc.RtcTemplateRpcService.buildRtcFormFormat", e); + } + + } +} diff --git a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/handler/WFFormFormatMobileHandler.java b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/handler/WFFormFormatMobileHandler.java index 95bd4643..7c3d375e 100644 --- a/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/handler/WFFormFormatMobileHandler.java +++ b/web-form-metadata/src/main/java/com/inspur/edp/web/formmetadata/formformat/handler/WFFormFormatMobileHandler.java @@ -2,8 +2,6 @@ package com.inspur.edp.web.formmetadata.formformat.handler; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.ArrayNode; -import com.inspur.edp.customize.form.api.RuntimeCheckVoFormVariableService; -import com.inspur.edp.customize.service.VoRuntimeBuildFormFormatService; import com.inspur.edp.formserver.viewmodel.formentity.*; import com.inspur.edp.formserver.vmapi.formconfig.VoBuildFormFormatService; import com.inspur.edp.lcm.metadata.api.entity.GspMetadata; @@ -14,6 +12,7 @@ import com.inspur.edp.lcm.metadata.api.service.MetadataService; import com.inspur.edp.metadata.rtcustomization.api.entity.DimensionExtendEntity; import com.inspur.edp.web.common.utility.StringUtility; import com.inspur.edp.web.formmetadata.formformat.FormFormatHandler; +import com.inspur.edp.web.formmetadata.formformat.FormFormatRtcUtility; import com.inspur.edp.web.formmetadata.metadata.FormMetadataContent; import io.iec.edp.caf.businessobject.api.entity.DevBasicBoInfo; import io.iec.edp.caf.businessobject.api.service.DevBasicInfoService; @@ -28,12 +27,13 @@ import java.util.*; /** * 向vo推送按钮、字段、命令,用于权限控制 */ -public class WFFormFormatMobileHandler extends FormFormatHandler { +public class WFFormFormatMobileHandler extends FormFormatHandler { - private final List controlsWithButton = Arrays.asList("ListView","Button","ButtonGroup","Card","Section"); + private final List controlsWithButton = Arrays.asList("ListView", "Button", "ButtonGroup", "Card", "Section"); /** * 表单类型 + * * @return */ @Override @@ -63,22 +63,20 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { FormMetadataContent formContents = (FormMetadataContent) formMetadata.getContent(); JsonNode content = formContents.getContents(); String voId = content.at("/module/schemas/0/id").textValue(); - RuntimeCheckVoFormVariableService runtimeCheckVoFormVariableService = SpringBeanUtils.getBean(RuntimeCheckVoFormVariableService.class); - boolean isPushRtcForm = runtimeCheckVoFormVariableService.checkVoFormVariable(voId); + boolean isPushRtcForm = FormFormatRtcUtility.canPushFormFormat(voId); if (!isPushRtcForm) { return; } - VoRuntimeBuildFormFormatService voRuntimeBuildFormFormatService = SpringBeanUtils.getBean(VoRuntimeBuildFormFormatService.class); - VoFormModel voFormModel = getVoFormModel(formMetadata, formatType, null,"LCDP"); - String dim1 = StringUtils.isNotBlank(dimension.getFirstDimension())?dimension.getFirstDimension():"public"; - String dim2 = StringUtils.isNotBlank(dimension.getSecondDimension())?dimension.getSecondDimension():"public"; + VoFormModel voFormModel = getVoFormModel(formMetadata, formatType, null, "LCDP"); + String dim1 = StringUtils.isNotBlank(dimension.getFirstDimension()) ? dimension.getFirstDimension() : "public"; + String dim2 = StringUtils.isNotBlank(dimension.getSecondDimension()) ? dimension.getSecondDimension() : "public"; generateParameters(voFormModel.getUrlParameters(), "dim1", "维度一", dim1); generateParameters(voFormModel.getUrlParameters(), "dim2", "维度二", dim2); generateParameters(voFormModel.getUrlParameters(), "metadataId", "元数据id", dimension.getBasicMetadataId()); - voRuntimeBuildFormFormatService.buildFormFormat(voFormModel, dimension, voId, formMetadata.getHeader().getBizobjectID()); + FormFormatRtcUtility.buildRtcFormFormat(voFormModel, dimension, voId, formMetadata.getHeader().getBizobjectID()); } @Override @@ -135,6 +133,7 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { /** * 获取实体信息 + * * @param formContent * @return */ @@ -167,39 +166,38 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { } - - /** * 提取按钮 + * * @param formContent 表单内容 * @return 按钮信息 */ @Override - public List getButtons(JsonNode formContent){ + public List getButtons(JsonNode formContent) { // 递归找Button JsonNode componentArr = formContent.at("/module/components"); JsonNode viewmodelArr = formContent.at("/module/viewmodels"); - List buttonGroupList = new ArrayList<>(); + List buttonGroupList = new ArrayList<>(); List cardPageviewModelIdList = new ArrayList<>(); - componentArr.forEach(component->{ - String componentType = getValue(component,"componentType",null); - String pageType = getValue(component,"pageType",null); - String viewModelId = getValue(component,"viewModel",null); + componentArr.forEach(component -> { + String componentType = getValue(component, "componentType", null); + String pageType = getValue(component, "pageType", null); + String viewModelId = getValue(component, "viewModel", null); //找到卡片页面的视图模型 - if( "Page".equals(componentType) && "Card".equals(pageType) && StringUtils.isNotBlank(viewModelId)){ + if ("Page".equals(componentType) && "Card".equals(pageType) && StringUtils.isNotBlank(viewModelId)) { cardPageviewModelIdList.add(viewModelId); } }); - for(JsonNode component :componentArr){ - String viewModelId = getValue(component,"viewModel",null); - JsonNode parentViewModel = findParentViewModelId( viewmodelArr, viewModelId); + for (JsonNode component : componentArr) { + String viewModelId = getValue(component, "viewModel", null); + JsonNode parentViewModel = findParentViewModelId(viewmodelArr, viewModelId); //只提取卡片页面及其子组件 - if( cardPageviewModelIdList.contains(getValue(parentViewModel,"id",null))){ + if (cardPageviewModelIdList.contains(getValue(parentViewModel, "id", null))) { searchComponentsForButton(component, buttonGroupList); } } @@ -207,16 +205,16 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { return buttonGroupList; } - private JsonNode findParentViewModelId(JsonNode viewmodelArr,String curViewmodelId){ + private JsonNode findParentViewModelId(JsonNode viewmodelArr, String curViewmodelId) { JsonNode result = null; - if(StringUtils.isNotBlank(curViewmodelId) ){ - for(JsonNode viewmodel :viewmodelArr){ - if(curViewmodelId.equals(getValue(viewmodel,"id",null))){ + if (StringUtils.isNotBlank(curViewmodelId)) { + for (JsonNode viewmodel : viewmodelArr) { + if (curViewmodelId.equals(getValue(viewmodel, "id", null))) { result = viewmodel; - String parentViewModelId = getValue(viewmodel,"parent",null); - if(StringUtils.isNotBlank(parentViewModelId)){ - JsonNode parentViewModel = findParentViewModelId( viewmodelArr, parentViewModelId); - if(parentViewModel != null ){ + String parentViewModelId = getValue(viewmodel, "parent", null); + if (StringUtils.isNotBlank(parentViewModelId)) { + JsonNode parentViewModel = findParentViewModelId(viewmodelArr, parentViewModelId); + if (parentViewModel != null) { result = parentViewModel; } @@ -230,6 +228,7 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { /** * 提取方法 + * * @param formContent * @return */ @@ -237,41 +236,41 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { // 1.遍历页面组件 JsonNode componentArr = formContent.at("/module/components"); String cardViewModelId = null; - for(JsonNode component:componentArr){ - String componentType = getValue(component,"componentType",null); - String pageType = getValue(component,"pageType",null); + for (JsonNode component : componentArr) { + String componentType = getValue(component, "componentType", null); + String pageType = getValue(component, "pageType", null); //找到卡片页面 - if( "Page".equals(componentType) && "Card".equals(pageType)){ - cardViewModelId = getValue(component,"viewModel",""); + if ("Page".equals(componentType) && "Card".equals(pageType)) { + cardViewModelId = getValue(component, "viewModel", ""); break; } } List methodGroupList = new ArrayList<>(); - if(StringUtils.isNotBlank(cardViewModelId)){ + if (StringUtils.isNotBlank(cardViewModelId)) { JsonNode viewModelArr = formContent.at("/module/viewmodels"); //2.遍历视图模型 - for(JsonNode viewModel:viewModelArr){ - String viewModelId = getValue(viewModel,"id",null); - if(StringUtils.isNotBlank(viewModelId) && cardViewModelId.equals(viewModelId)){ + for (JsonNode viewModel : viewModelArr) { + String viewModelId = getValue(viewModel, "id", null); + if (StringUtils.isNotBlank(viewModelId) && cardViewModelId.equals(viewModelId)) { JsonNode commands = viewModel.get("commands"); //3.遍历命令 - if(commands != null && commands.size() > 0){ - commands.forEach(command->{ + if (commands != null && commands.size() > 0) { + commands.forEach(command -> { MethodGroup methodGroup = new MethodGroup(); - methodGroup.setId(getValue(command,"id",null)); - methodGroup.setMethodCode(getValue(command,"code",null)); - methodGroup.setMethodName(getValue(command,"name",null)); + methodGroup.setId(getValue(command, "id", null)); + methodGroup.setMethodCode(getValue(command, "code", null)); + methodGroup.setMethodName(getValue(command, "name", null)); //4.遍历命令参数 JsonNode params = command.get("params"); - if(params != null && params.size() > 0){ + if (params != null && params.size() > 0) { List methodParamList = new ArrayList<>(); - params.forEach(param->{ + params.forEach(param -> { MethodParam methodParam = new MethodParam(); - methodParam.setCode(getValue(param,"name",null)); - methodParam.setName(getValue(param,"shownName",null)); + methodParam.setCode(getValue(param, "name", null)); + methodParam.setName(getValue(param, "shownName", null)); methodParam.setValue(null); methodParamList.add(methodParam); @@ -292,25 +291,26 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { /** * 查找带按钮的组件 - * @param root 页面组件 + * + * @param root 页面组件 * @param buttonGroupList 按钮组列表 */ private void searchComponentsForButton(JsonNode root, List buttonGroupList) { - if(root.isArray()) { + if (root.isArray()) { for (JsonNode jsonNode : root) { searchComponentsForButton(jsonNode, buttonGroupList); } } - if(root.isObject()){ + if (root.isObject()) { JsonNode type = root.get("type"); - if(type != null && controlsWithButton.contains(type.asText())){ + if (type != null && controlsWithButton.contains(type.asText())) { this.findButtons(root, buttonGroupList); - }else { + } else { Iterator fieldNames = root.fieldNames(); - while(fieldNames.hasNext()) { + while (fieldNames.hasNext()) { String fieldName = fieldNames.next(); JsonNode fieldValue = root.get(fieldName); - if(fieldValue.isArray() || fieldValue.isObject()){ + if (fieldValue.isArray() || fieldValue.isObject()) { searchComponentsForButton(fieldValue, buttonGroupList); } } @@ -320,13 +320,14 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { /** * 查找控件中按钮 - * @param node 组件节点 + * + * @param node 组件节点 * @param buttonGroupList 按钮组列表 */ - private void findButtons(JsonNode node,List buttonGroupList){ + private void findButtons(JsonNode node, List buttonGroupList) { String type = node.get("type").asText(); - switch (type){ - case "NavigationBar":{ + switch (type) { + case "NavigationBar": { //在流程中会隐藏头部和尾部,不需要提取导航栏的按钮。 break; // JsonNode toolbar = node.get("toolbar"); @@ -339,52 +340,52 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { // } // break; } - case "ListView":{ + case "ListView": { //删除 - JsonNode swipeToolbar = node.get("swipeToolbar"); - if(swipeToolbar != null){ + JsonNode swipeToolbar = node.get("swipeToolbar"); + if (swipeToolbar != null) { ArrayNode items = (ArrayNode) swipeToolbar.get("items"); - if(items != null && items.size() > 0 ){ - this.findComplexButtons( items, node , buttonGroupList); + if (items != null && items.size() > 0) { + this.findComplexButtons(items, node, buttonGroupList); } } //多选 - JsonNode toolbar = node.get("toolbar"); - if(toolbar != null){ + JsonNode toolbar = node.get("toolbar"); + if (toolbar != null) { ArrayNode items = (ArrayNode) toolbar.get("items"); - if(items != null && items.size() > 0 ){ - this.findComplexButtons( items, node , buttonGroupList); + if (items != null && items.size() > 0) { + this.findComplexButtons(items, node, buttonGroupList); } } break; } - case "Button":{ + case "Button": { findSingleButton(node, buttonGroupList); break; } - case "ButtonGroup":{ + case "ButtonGroup": { ArrayNode items = (ArrayNode) node.get("items"); - if(items != null && items.size() > 0 ){ - this.findComplexButtons( items, node , buttonGroupList); + if (items != null && items.size() > 0) { + this.findComplexButtons(items, node, buttonGroupList); } break; } - case "Card":{ + case "Card": { ArrayNode items = (ArrayNode) node.get("actions"); - if(items != null && items.size() > 0 ){ - this.findComplexButtons( items, node , buttonGroupList); + if (items != null && items.size() > 0) { + this.findComplexButtons(items, node, buttonGroupList); } break; } - case "Section":{ - JsonNode footerToolbar = node.get("footerToolbar"); - if(null == footerToolbar){ + case "Section": { + JsonNode footerToolbar = node.get("footerToolbar"); + if (null == footerToolbar) { break; } ArrayNode items = (ArrayNode) footerToolbar.get("items"); - if(items !=null && items.size() > 0 ){ - this.findComplexButtons( items, node , buttonGroupList); + if (items != null && items.size() > 0) { + this.findComplexButtons(items, node, buttonGroupList); } break; } @@ -393,7 +394,8 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { /** * 查找简单按钮 - * @param node 组件节点 + * + * @param node 组件节点 * @param buttonGroupList 按钮组列表 */ private void findSingleButton(JsonNode node, List buttonGroupList) { @@ -412,11 +414,11 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { //3.创建按钮 List configAbleAttrs = getConfigAbleAttrs(node); if (!configAbleAttrs.isEmpty()) { - Button button = new Button(); + Button button = new Button(); button.setId(node.get("id").asText()); button.setCode(node.get("id").asText()); button.setType(node.get("type").asText()); - button.setName(getName(node,"按钮")); + button.setName(getName(node, "按钮")); button.setConfigurableAttrs(configAbleAttrs); buttonGroup.setButtons(Collections.singletonList(button)); @@ -427,16 +429,17 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { /** * 查找复杂按钮 - * @param childNodes 按钮项 - * @param parentNode 按钮父级信息 + * + * @param childNodes 按钮项 + * @param parentNode 按钮父级信息 * @param buttonGroupList 按钮组列表 */ - private void findComplexButtons(ArrayNode childNodes, JsonNode parentNode , List buttonGroupList){ + private void findComplexButtons(ArrayNode childNodes, JsonNode parentNode, List buttonGroupList) { // 1.创建按钮组。button 当前没有分组信息,用方法名暂时做分组名 ButtonGroup buttonGroup = new ButtonGroup(); buttonGroup.setId(parentNode.get("id").asText()); buttonGroup.setCode(parentNode.get("id").asText()); - String name= getName(parentNode,"按钮"); + String name = getName(parentNode, "按钮"); String id = ""; if (parentNode.get("id") != null) { id = parentNode.get("id").asText(); @@ -444,16 +447,16 @@ public class WFFormFormatMobileHandler extends FormFormatHandler { name += "[" + id + "]"; buttonGroup.setName(name); - List