From 3a610424bdfc1d4fda61c955b68b48a7e1f4813f Mon Sep 17 00:00:00 2001 From: wangshaoping Date: Mon, 30 Jun 2025 14:46:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=A1=86=E6=9E=B6=E5=8F=91?= =?UTF-8?q?=E5=B8=83:=208.2.21=20=20=201)=20=E8=A7=84=E5=88=99=E5=BC=95?= =?UTF-8?q?=E6=93=8E=E4=B8=AD=EF=BC=8C=E7=A7=BB=E9=99=A4=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E6=88=96=E5=AD=90=E6=A8=A1=E5=9E=8B=E7=B1=BB=E5=9E=8B"?= =?UTF-8?q?=E5=AE=9A=E9=87=8F(=E8=BE=93=E5=85=A5)"=20=20=202)=20=E8=A7=84?= =?UTF-8?q?=E5=88=99=E5=BC=95=E6=93=8E=E4=B8=AD=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E5=88=AB=E5=90=8D=EF=BC=8C=E6=98=AF=E5=90=A6?= =?UTF-8?q?=E4=BD=9C=E4=B8=BA=E6=8C=87=E6=A0=87=E6=8C=81=E4=B9=85=E5=8C=96?= =?UTF-8?q?=EF=BC=8C=E9=99=84=E5=8A=A0=E5=B1=9E=E6=80=A7=20=20=203?= =?UTF-8?q?=EF=BC=89=E8=A7=84=E5=88=99=E5=BC=95=E6=93=8E=E4=B8=AD=EF=BC=8C?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=BB=A3=E7=A0=81=E7=BC=96=E8=BE=91=E5=99=A8?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=EF=BC=8C=E6=98=BE=E7=A4=BA=E5=BD=93=E5=89=8D?= =?UTF-8?q?=E6=A8=A1=E5=9E=8B=E5=89=8D=E9=9D=A2=E6=A8=A1=E5=9E=8B=E7=9A=84?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E5=8F=82=E6=95=B0=20=20=204=EF=BC=89?= =?UTF-8?q?=E8=A7=84=E5=88=99=E5=BC=95=E6=93=8E=E4=B8=AD=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=9C=8D=E5=8A=A1=E5=99=A8=E6=89=A7=E8=A1=8C=E5=99=A8?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=EF=BC=8C=E6=94=AF=E6=8C=81=E8=BF=9C=E7=A8=8B?= =?UTF-8?q?=E8=B0=83=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.platform/build.gradle | 12 +- build.gradle | 2 +- gradle.properties | 2 +- .../AutoCompileDeployedModelInitializer.java | 2 +- .../service/ExecutorFactoryService.java | 12 +- .../ExecutorFactoryService_structure.puml | 10585 ---------------- .../impl/ExecutorFactoryServiceImpl.java | 137 +- .../spring/service/impl/LocalLoaderImpl.java | 73 +- .../io/sc/engine/rule/client/Executor.java | 18 +- .../engine/rule/client/ExecutorFactory.java | 2 +- .../rule/client/local/LocalExecutor.java | 18 +- .../rule/client/remote/RemoteExecutor.java | 40 +- .../rule/client/remote/RemoteLoader.java | 71 +- .../rule/client/runtime/EngineRuntime.java | 22 +- .../runtime/impl/GroovyEngineRuntime.java | 115 +- .../io/sc/engine/rule/client/test/Test.java | 74 +- .../src/test/resources/logback-test.xml | 12 + .../sc/engine/rule/core/ResourceResult.java | 100 - .../sc/engine/rule/core/code/ExecuteUnit.java | 11 +- .../rule/core/code/ExecuteUnit4Resource.java | 2 +- .../engine/rule/core/enums/ModelCategory.java | 1 - .../core/enums/ParameterPropertiesName.java | 6 + .../engine/rule/core/po/model/Parameter.java | 25 +- .../rule/core/po/resource/ModelResource.java | 18 +- .../core/code/template/argument_render.tpl | 6 +- .../rule/core/code/template/impl/resource.tpl | 10 +- .../rule/core/code/template/import_render.tpl | 2 +- .../sc/engine/rule/core/i18n/enums.properties | 7 +- .../rule/core/i18n/enums_tw_CN.properties | 7 +- .../rule/core/i18n/enums_zh_CN.properties | 7 +- .../src/i18n/messages.json | 8 +- .../src/i18n/messages_tw_CN.json | 8 +- .../src/i18n/messages_zh_CN.json | 8 +- .../src/views/resources/Resources.vue | 41 +- .../views/resources/designer/Parameter.vue | 128 +- .../src/views/shared/AutoCompletionManager.ts | 28 +- .../src/views/shared/enums/EngineEnums.ts | 3 + .../ParameterAndValueTypeServiceImpl.java | 105 +- .../controller/ExecuteUnitWebController.java | 51 +- .../service/ExecuteUnitService.java | 14 +- .../service/impl/ExecuteUnitServiceImpl.java | 140 +- .../server/lib/repository/LibRepository.java | 1 + .../converter/ParameterEntityConverter.java | 4 +- .../server/model/entity/ParameterEntity.java | 101 +- .../rule/server/model/vo/ParameterVo.java | 34 +- .../controller/ResourceWebController.java | 199 +- .../resource/entity/ModelResourceEntity.java | 12 + .../repository/ResourceRepository.java | 9 + .../resource/service/ResourceService.java | 54 +- .../service/impl/ResourceServiceImpl.java | 203 +- .../server/resource/vo/ModelResourceVo.java | 9 + .../service/impl/TestCaseServiceImpl.java | 21 +- .../META-INF/platform/plugins/parameters.json | 32 + ...20515__Rule Engine Database Schema DDL.xml | 5 +- .../io/sc/platform/core/i18n/words.properties | 1 + .../platform/core/i18n/words_tw_CN.properties | 1 + .../platform/core/i18n/words_zh_CN.properties | 1 + 57 files changed, 1240 insertions(+), 11380 deletions(-) delete mode 100644 io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService_structure.puml create mode 100644 io.sc.engine.rule.client/src/test/resources/logback-test.xml delete mode 100644 io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/ResourceResult.java create mode 100644 io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ParameterPropertiesName.java diff --git a/app.platform/build.gradle b/app.platform/build.gradle index d898be0f..b9f0b5fe 100644 --- a/app.platform/build.gradle +++ b/app.platform/build.gradle @@ -40,16 +40,16 @@ dependencies { project(":io.sc.engine.st.frontend"), // 全面风险 - project(":erm"), - project(":erm.frontend"), + //project(":erm"), + //project(":erm.frontend"), // cips - project(":cips"), - project(":cips.frontend"), + //project(":cips"), + //project(":cips.frontend"), // 风险预警分析 - project(":wra.report"), - project(":wra.report.frontend"), + //project(":wra.report"), + //project(":wra.report.frontend"), ) } diff --git a/build.gradle b/build.gradle index fa8128dd..bcbb5291 100644 --- a/build.gradle +++ b/build.gradle @@ -57,7 +57,7 @@ subprojects { //排除不需要的外部依赖 // exclude group: "org.apache.logging.log4j", module: "log4j-api" // exclude group: "org.apache.logging.log4j", module: "log4j-to-slf4j" -// exclude group: "org.slf4j", module: "slf4j-jdk14" + exclude group: "org.slf4j", module: "slf4j-jdk14" exclude group: "org.slf4j", module: "slf4j-nop" exclude group: "org.slf4j", module: "slf4j-reload4j" //exclude group: "com.mysql", module: "mysql-connector-j" diff --git a/gradle.properties b/gradle.properties index afaec93e..6b766a9e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -37,7 +37,7 @@ application_version=1.0.0 # platform ########################################################### platform_group=io.sc -platform_version=8.2.20 +platform_version=8.2.21 platform_plugin_version=8.2.10 platform_core_frontend_version=8.2.82 diff --git a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/initializer/AutoCompileDeployedModelInitializer.java b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/initializer/AutoCompileDeployedModelInitializer.java index e6822f52..15350088 100644 --- a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/initializer/AutoCompileDeployedModelInitializer.java +++ b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/initializer/AutoCompileDeployedModelInitializer.java @@ -52,7 +52,7 @@ public class AutoCompileDeployedModelInitializer implements ApplicationInitializ } if(executorFactoryService!=null) { - Executor executor=executorFactoryService.getExecutor(); + Executor executor=executorFactoryService.getServerExecutor(); if(executor!=null) { try { List resources =new ArrayList<>();//executor.getLoader().getAllReleasableResourceAbstract(); diff --git a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService.java b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService.java index 5b89b457..b0303ed2 100644 --- a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService.java +++ b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService.java @@ -7,8 +7,14 @@ import io.sc.engine.rule.client.Executor; */ public interface ExecutorFactoryService { /** - * 获取执行器 - * @return 执行器 + * 获取客户端执行器 + * @return 客户端执行器 */ - public Executor getExecutor(); + public Executor getClientExecutor(); + + /** + * 获取服务器端执行器 + * @return 服务器端执行器 + */ + public Executor getServerExecutor(); } diff --git a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService_structure.puml b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService_structure.puml deleted file mode 100644 index ab0d6c5d..00000000 --- a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/ExecutorFactoryService_structure.puml +++ /dev/null @@ -1,10585 +0,0 @@ -@startuml - -/' diagram meta data start -config=StructureConfiguration; -{ - "projectClassification": { - "searchMode": "OpenProject", // OpenProject, AllProjects - "includedProjects": "", - "pathEndKeywords": "*.impl", - "isClientPath": "", - "isClientName": "", - "isTestPath": "", - "isTestName": "", - "isMappingPath": "", - "isMappingName": "", - "isDataAccessPath": "", - "isDataAccessName": "", - "isDataStructurePath": "", - "isDataStructureName": "", - "isInterfaceStructuresPath": "", - "isInterfaceStructuresName": "", - "isEntryPointPath": "", - "isEntryPointName": "", - "treatFinalFieldsAsMandatory": false - }, - "graphRestriction": { - "classPackageExcludeFilter": "", - "classPackageIncludeFilter": "", - "classNameExcludeFilter": "", - "classNameIncludeFilter": "", - "methodNameExcludeFilter": "", - "methodNameIncludeFilter": "", - "removeByInheritance": "", // inheritance/annotation based filtering is done in a second step - "removeByAnnotation": "", - "removeByClassPackage": "", // cleanup the graph after inheritance/annotation based filtering is done - "removeByClassName": "", - "cutMappings": false, - "cutEnum": true, - "cutTests": true, - "cutClient": true, - "cutDataAccess": false, - "cutInterfaceStructures": false, - "cutDataStructures": false, - "cutGetterAndSetter": true, - "cutConstructors": true - }, - "graphTraversal": { - "forwardDepth": 6, - "backwardDepth": 6, - "classPackageExcludeFilter": "", - "classPackageIncludeFilter": "", - "classNameExcludeFilter": "", - "classNameIncludeFilter": "", - "methodNameExcludeFilter": "", - "methodNameIncludeFilter": "", - "hideMappings": false, - "hideDataStructures": false, - "hidePrivateMethods": true, - "hideInterfaceCalls": true, // indirection: implementation -> interface (is hidden) -> implementation - "onlyShowApplicationEntryPoints": false, // root node is included - "useMethodCallsForStructureDiagram": "ForwardOnly" // ForwardOnly, BothDirections, No - }, - "details": { - "aggregation": "GroupByClass", // ByClass, GroupByClass, None - "showClassGenericTypes": true, - "showMethods": true, - "showMethodParameterNames": true, - "showMethodParameterTypes": true, - "showMethodReturnType": true, - "showPackageLevels": 2, - "showDetailedClassStructure": true - }, - "rootClass": "io.sc.engine.rule.client.spring.service.ExecutorFactoryService", - "extensionCallbackMethod": "" // qualified.class.name#methodName - signature: public static String method(String) -} -diagram meta data end '/ - - - -digraph g { - rankdir="TB" - splines=polyline - - -'nodes -subgraph cluster_106404 { - label=kpi - labeljust=l - fillcolor="#ececec" - style=filled - - subgraph cluster_209949291 { - label=service - labeljust=l - fillcolor="#d8d8d8" - style=filled - - IndicatorServiceImpl1402215057[ - label=< - -
- - - - -
(C)IndicatorServiceImpl
+ findByCategory(category: String): List<IndicatorEntity>
+ findByUniqueKey(entity: IndicatorEntity): IndicatorEntity
+ queryIndicatorsByLib(libId: String, queryParameter: QueryParameter): Page<IndicatorEntity>
+ queryOtherIndicatorsByLib(libId: String, queryParameter: QueryParameter): Page<IndicatorEntity>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibServiceImpl1402215057[ - label=< - -
- -
- - - - - - - -
(C)LibServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ addAllIndicators(libId: String)
+ addIndicators(libId: String, indicatorIds: Set<String>)
+ listAllLibsWithSelectedStatusByIndicator(indicatorId: String, queryParameter: QueryParameter): List<LibVo>
+ listLibsByIndicator(indicatorId: String, queryParameter: QueryParameter): List<LibEntity>
+ removeAllIndicators(libId: String)
+ removeIndicators(libId: String, indicatorIds: Set<String>)
+ updateIndicators(libId: String, indicatorIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_516443503 { - label=jpa - labeljust=l - fillcolor="#d8d8d8" - style=filled - - IndicatorEntity396450770[ - label=< - -
- - - - - - - - - - - - - - - - - - -
- - - -
(C)IndicatorEntity
- category: String [0..1]
- categoryBusiness: String [0..1]
- categoryCal: String [0..1]
- categoryRisk: String [0..1]
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- formula: String [0..1]
- frequency: String [0..1]
- id: String [0..1]
- libs: List<LibEntity> [0..*]
- name: String [0..1]
- source: String [0..1]
- sql: String [0..1]
- superviseCondition: String [0..1]
- superviseSource: String [0..1]
- superviseValue: BigDecimal [0..1]
- unit: String [0..1]
+ addLibs(libs: LibEntity...)
+ removeLibs(libs: LibEntity...)
+ toVo(): IndicatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibEntity396450770[ - label=< - -
- - - - - - - - -
- - - - - - -
(C)LibEntity
- children: List<LibEntity> [0..*]
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- indicators: List<IndicatorEntity> [0..*]
- name: String [0..1]
- parent: LibEntity [0..1]
+ addChildren(children: LibEntity...)
+ addIndicators(indicators: IndicatorEntity...)
+ removeChildren(children: LibEntity...)
+ removeIndicators(indicators: IndicatorEntity...)
+ resetParent(parent: LibEntity)
+ toVo(): LibVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_805735386 { - label=controller - labeljust=l - fillcolor="#d8d8d8" - style=filled - - IndicatorWebController2041910900[ - label=< - -
- - - -
(C)IndicatorWebController
+ queryByCategory(category: String, parameter: QueryParameter): List<IndicatorVo>
+ queryIndicatorsByLib(libId: String, parameter: QueryParameter): Page<IndicatorVo>
+ queryOtherIndicatorsByLib(libId: String, parameter: QueryParameter): Page<IndicatorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibWebController2041910900[ - label=< - -
- - - - - - - - -
(C)LibWebController
+ addAllIndicators(wrapper: One2Many<String, String>)
+ addUsers(wrapper: One2Many<String, String>)
+ listAllLibsWithSelectedStatusByIndicator(indicatorId: String, queryParameter: QueryParameter): List<LibVo>
+ listLibsByIndicator(indicatorId: String, queryParameter: QueryParameter): List<LibVo>
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<LibVo>
+ removeAllIndicators(wrapper: One2Many<String, String>)
+ removeIndicators(wrapper: One2Many<String, String>)
+ updateIndicators(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} -} - -subgraph cluster_1099978897 { - label=capitalplan - labeljust=l - fillcolor="#ececec" - style=filled - - subgraph cluster_1395986008 { - label=service - labeljust=l - fillcolor="#d8d8d8" - style=filled - - StrategicTargetServiceImpl177251132[ - label=< - -
(C)StrategicTargetServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_2013123865 { - label=controller - labeljust=l - fillcolor="#d8d8d8" - style=filled - - StrategicTargetWebController1311684249[ - label=< - -
(C)StrategicTargetWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_642372354 { - label=jpa - labeljust=l - fillcolor="#d8d8d8" - style=filled - - StrategicTargetEntity544921377[ - label=< - -
- - - - - - - - - -
- -
(C)StrategicTargetEntity
- category: String [0..1]
- code: String [0..1]
- id: String [0..1]
- name: String [0..1]
- order: Integer [0..1]
- t: Double [0..1]
- t1: Double [0..1]
- t2: Double [0..1]
- t3: Double [0..1]
+ toVo(): StrategicTargetVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} -} - -subgraph cluster_1173376010 { - label=appetite - labeljust=l - fillcolor="#ececec" - style=filled - - subgraph cluster_1792070656 { - label=controller - labeljust=l - fillcolor="#d8d8d8" - style=filled - - CrossValidateWebController1098724750[ - label=< - -
(C)CrossValidateWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadBusinessObjectWebController1098724750[ - label=< - -
- -
(C)SpreadBusinessObjectWebController
+ findBySpreadId(spreadId: String): List<SpreadBusinessObjectVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadCoreIndicatorWebController1098724750[ - label=< - -
- -
(C)SpreadCoreIndicatorWebController
+ findBySpreadId(spreadId: String): List<SpreadCoreIndicatorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadIndustryWebController1098724750[ - label=< - -
- -
(C)SpreadIndustryWebController
+ findBySpreadId(spreadId: String): List<SpreadIndustryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadShareholderWebController1098724750[ - label=< - -
- -
(C)SpreadShareholderWebController
+ findBySpreadId(spreadId: String): List<SpreadShareholderVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadSupervisionWebController1098724750[ - label=< - -
- -
(C)SpreadSupervisionWebController
+ findBySpreadId(spreadId: String): List<SpreadSupervisionVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadWebController1098724750[ - label=< - -
(C)SpreadWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_1840613167 { - label=service - labeljust=l - fillcolor="#d8d8d8" - style=filled - - CrossValidateServiceImpl1681602801[ - label=< - -
(C)CrossValidateServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadBusinessObjectServiceImpl1681602801[ - label=< - -
- - - -
(C)SpreadBusinessObjectServiceImpl
+ add(entity: SpreadBusinessObjectEntity): SpreadBusinessObjectEntity
+ findBySpreadId(spreadId: String): List<SpreadBusinessObjectVo>
+ update(s: String, entity: SpreadBusinessObjectEntity): SpreadBusinessObjectEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadCoreIndicatorServiceImpl1681602801[ - label=< - -
- -
(C)SpreadCoreIndicatorServiceImpl
+ findBySpreadId(spreadId: String): List<SpreadCoreIndicatorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadIndustryServiceImpl1681602801[ - label=< - -
- - - -
(C)SpreadIndustryServiceImpl
+ add(entity: SpreadIndustryEntity): SpreadIndustryEntity
+ findBySpreadId(spreadId: String): List<SpreadIndustryVo>
+ update(s: String, entity: SpreadIndustryEntity): SpreadIndustryEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadServiceImpl1681602801[ - label=< - -
(C)SpreadServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadShareholderServiceImpl1681602801[ - label=< - -
- -
(C)SpreadShareholderServiceImpl
+ findBySpreadId(spreadId: String): List<SpreadShareholderVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadSupervisionServiceImpl1681602801[ - label=< - -
- -
(C)SpreadSupervisionServiceImpl
+ findBySpreadId(spreadId: String): List<SpreadSupervisionVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_41042953 { - label=jpa - labeljust=l - fillcolor="#d8d8d8" - style=filled - - CrossValidateEntity757880876[ - label=< - -
- - - - - -
- -
(C)CrossValidateEntity
- code: String [0..1]
- description: String [0..1]
- id: String [0..1]
- name: String [0..1]
- year: String [0..1]
+ toVo(): CrossValidateVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadBusinessObjectEntity757880876[ - label=< - -
- - - - - - - - - - -
- -
(C)SpreadBusinessObjectEntity
- business: String [0..1]
- growthPercent: Double [0..1]
- id: String [0..1]
- lastYearLoanBalance: Double [0..1]
- lastYearNpl: Double [0..1]
- policy: RiskPolicy [0..1]
- predictLoanBalance: Double [0..1]
- predictNpl: Double [0..1]
- range: String [0..1]
- spread: SpreadEntity [0..1]
+ toVo(): SpreadBusinessObjectVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadCoreIndicatorEntity757880876[ - label=< - -
- - - - - - - -
- -
(C)SpreadCoreIndicatorEntity
- expectValue: Double [0..1]
- id: String [0..1]
- indicator: IndicatorEntity [0..1]
- lastYearValue: Double [0..1]
- referenceValue: Double [0..1]
- spread: SpreadEntity [0..1]
- supervisionMinValue: Double [0..1]
+ toVo(): SpreadCoreIndicatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadEntity757880876[ - label=< - -
- - - - - - -
- -
(C)SpreadEntity
- code: String [0..1]
- crossValidate: CrossValidateEntity [0..1]
- description: String [0..1]
- id: String [0..1]
- name: String [0..1]
- year: String [0..1]
+ toVo(): SpreadVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadIndustryEntity757880876[ - label=< - -
- - - - - - - - - - -
- -
(C)SpreadIndustryEntity
- growthPercent: Double [0..1]
- id: String [0..1]
- industry: String [0..1]
- lastYearLoanBalance: Double [0..1]
- lastYearNpl: Double [0..1]
- policy: RiskPolicy [0..1]
- predictLoanBalance: Double [0..1]
- predictNpl: Double [0..1]
- range: String [0..1]
- spread: SpreadEntity [0..1]
+ toVo(): SpreadIndustryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadShareholderEntity757880876[ - label=< - -
- - - - - -
- -
(C)SpreadShareholderEntity
- condition: String [0..1]
- id: String [0..1]
- indicator: IndicatorEntity [0..1]
- spread: SpreadEntity [0..1]
- stakeHolder: StakeHolder [0..1]
+ toVo(): SpreadShareholderVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SpreadSupervisionEntity757880876[ - label=< - -
- - - - - -
- -
(C)SpreadSupervisionEntity
- condition: String [0..1]
- id: String [0..1]
- indicator: IndicatorEntity [0..1]
- spread: SpreadEntity [0..1]
- stakeHolder: StakeHolder [0..1]
+ toVo(): SpreadSupervisionVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} -} - -subgraph cluster_3664 { - label=sc - labeljust=l - fillcolor="#ececec" - style=filled - - subgraph cluster_1303125147 { - label=standard - labeljust=l - fillcolor="#d8d8d8" - style=filled - - AdminDivisionEntity325081519[ - label=< - -
- - - - - - - -
- -
(C)AdminDivisionEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
# parent: AdminDivisionEntity [0..1]
+ toVo(): AdminDivisionVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AdminDivisionServiceImpl1268588532[ - label=< - -
(C)AdminDivisionServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AdminDivisionWebController2113280151[ - label=< - -
- -
(C)AdminDivisionWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<AdminDivisionVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BondEntity325081519[ - label=< - -
- - - - - - - - - -
- -
(C)BondEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- mappingType: String [0..1]
- name: String [0..1]
# parent: BondEntity [0..1]
- type: String [0..1]
+ toVo(): BondVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BondServiceImpl1268588532[ - label=< - -
(C)BondServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BondWebController2113280151[ - label=< - -
- -
(C)BondWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<BondVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BussinessProductEntity325081519[ - label=< - -
- - - - - - - -
- -
(C)BussinessProductEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
# parent: BussinessProductEntity [0..1]
+ toVo(): BussinessProductVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BussinessProductServiceImpl1268588532[ - label=< - -
(C)BussinessProductServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BussinessProductWebController2113280151[ - label=< - -
- -
(C)BussinessProductWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<BussinessProductVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CollateralEntity325081519[ - label=< - -
- - - - - - - - -
- -
(C)CollateralEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
# parent: CollateralEntity [0..1]
- superviseName: String [0..1]
+ toVo(): CollateralVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CollateralServiceImpl1268588532[ - label=< - -
(C)CollateralServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CollateralWebController2113280151[ - label=< - -
- -
(C)CollateralWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<CollateralVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CounterpartyEntity325081519[ - label=< - -
- - - - - - -
- -
(C)CounterpartyEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
+ toVo(): CounterpartyVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CounterpartyServiceImpl1268588532[ - label=< - -
(C)CounterpartyServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CounterpartyWebController2113280151[ - label=< - -
- -
(C)CounterpartyWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<CounterpartyVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CountryEntity325081519[ - label=< - -
- - - - - - - - - - - - - - -
- -
(C)CountryEntity
- code: String [0..1]
- codeLatin2: String [0..1]
- codeLatin3: String [0..1]
- currency: CurrencyEntity [0..1]
- isIndependent: Boolean [0..1]
- languageCode2: String [0..1]
- languageCode3: String [0..1]
- nameChinese: String [0..1]
- nameChineseFull: String [0..1]
- nameEnglish: String [0..1]
- nameEnglishFull: String [0..1]
- nameLocalShort: String [0..1]
- remarkChinese: String [0..1]
- remarkEnglish: String [0..1]
+ toVo(): CountryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CountryServiceImpl1268588532[ - label=< - -
(C)CountryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CountryWebController2113280151[ - label=< - -
- -
(C)CountryWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<CountryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CurrencyEntity325081519[ - label=< - -
- - - - - -
- -
(C)CurrencyEntity
- code: String [0..1]
- codeLatin: String [0..1]
- nameChinese: String [0..1]
- nameEnglish: String [0..1]
- precision: String [0..1]
+ toVo(): CurrencyVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CurrencyServiceImpl1268588532[ - label=< - -
(C)CurrencyServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CurrencyWebController2113280151[ - label=< - -
- -
(C)CurrencyWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<CurrencyVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndustryEntity325081519[ - label=< - -
- - - - - - - -
- -
(C)IndustryEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
# parent: IndustryEntity [0..1]
+ toVo(): IndustryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndustryServiceImpl1268588532[ - label=< - -
(C)IndustryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndustryWebController2113280151[ - label=< - -
- -
(C)IndustryWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<IndustryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LoanProductEntity325081519[ - label=< - -
- - - - - - - -
- -
(C)LoanProductEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
# parent: LoanProductEntity [0..1]
+ toVo(): LoanProductVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LoanProductServiceImpl1268588532[ - label=< - -
(C)LoanProductServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LoanProductWebController2113280151[ - label=< - -
- -
(C)LoanProductWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<LoanProductVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PerformanceStatusEntity325081519[ - label=< - -
- - - - - - -
- -
(C)PerformanceStatusEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
+ toVo(): PerformanceStatusVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PerformanceStatusServiceImpl1268588532[ - label=< - -
(C)PerformanceStatusServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PerformanceStatusWebController2113280151[ - label=< - -
- -
(C)PerformanceStatusWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<PerformanceStatusVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TradeFinanceProductEntity325081519[ - label=< - -
- - - - - - - -
- -
(C)TradeFinanceProductEntity
- code: String [0..1]
- description: String [0..1]
- mappingCode: String [0..1]
- mappingDescription: String [0..1]
- mappingName: String [0..1]
- name: String [0..1]
# parent: TradeFinanceProductEntity [0..1]
+ toVo(): TradeFinanceProductVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TradeFinanceProductServiceImpl1268588532[ - label=< - -
(C)TradeFinanceProductServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TradeFinanceProductWebController2113280151[ - label=< - -
- -
(C)TradeFinanceProductWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<TradeFinanceProductVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_1865180753 { - label=platform - labeljust=l - fillcolor="#d8d8d8" - style=filled - - AbstractFlowableDaoServiceImpl1477149626[ - label=< - -
- -
- - - - - - - -
(C)AbstractFlowableDaoServiceImpl<T,ID extends Serializable,R extends DaoRepository<T,ID>>
# processOperationService: ProcessOperationService [1]
+ claimTask(taskId: String)
+ completeTask(taskId: String, variables: Map<String, Object>, transientVariables: Map<String, Object>)
+ getGobacks(taskId: String): List<Goback>
+ startProcessById(processDefinitionId: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>): ProcessInstance
+ startProcessById(processDefinitionId: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>, skipFirst: boolean): ProcessInstance
+ startProcessByKey(processDefinitionKey: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>): ProcessInstance
+ startProcessByKey(processDefinitionKey: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>, skipFirst: boolean): ProcessInstance
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AbstractJpaEntityPersistentEventHandler1344511795[ - label=< - -
- - - - - - -
(C)AbstractJpaEntityPersistentEventHandler<T>
# afterAdd(newEntity: T)
# beforeDelete(oldEntity: T)
# beforeDelete(iterable: Iterable<T>)
# beforeDeleteAll()
# beforeUpdate(oldEntity: T, newEntity: T)
+ handler(event: JpaEntityPersistentEvent)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AgentEntity20954217[ - label=< - -
- - - - - - - - - - -
- -
(C)AgentEntity
- agentLoginName: String [0..1]
- agentUserName: String [0..1]
- comments: String [0..1]
- effective: Boolean [0..1]
- endDate: Date [0..1]
- id: String [0..1]
- loginName: String [0..1]
- reasons: String [0..1]
- startDate: Date [0..1]
- userName: String [0..1]
+ toVo(): AgentVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AgentServiceImpl1477149626[ - label=< - -
- - -
- - - - -
(C)AgentServiceImpl
- roleService: RoleService [1]
- userService: UserService [1]
+ agree(agentId: String): AgentEntity
+ getAgents(loginName: String): List<AgentEntity>
+ listAvailableAgentByUserId(userId: String): List<UserVo>
+ reject(agentId: String, comments: String): AgentEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AgentWebController1877559843[ - label=< - -
- - -
(C)AgentWebController
+ agree(id: String): AgentEntity
+ reject(id: String, data: Map<String, String>): AgentEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -And1929946674[ - label=< - -
- - -
(C)And<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AnnouncementEntity1024010915[ - label=< - -
- - - -
- -
(C)AnnouncementEntity
- content: String [0..1]
- id: String [0..1]
- title: String [0..1]
+ toVo(): AnnouncementVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AnnouncementServiceImpl666294214[ - label=< - -
(C)AnnouncementServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AnnouncementWebController832594711[ - label=< - -
(C)AnnouncementWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ApplicationEntity809857618[ - label=< - -
- - - - - - - -
- - - -
(C)ApplicationEntity
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- menus: List<MenuEntity> [0..*]
- name: String [0..1]
- order: Integer [0..1]
+ addMenus(menus: MenuEntity...)
+ removeMenus(menus: MenuEntity...)
+ toVo(): ApplicationVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ApplicationInitializeServiceImpl563206525[ - label=< - -
- - - -
- - -
(C)ApplicationInitializeServiceImpl
- applicationContext: ApplicationContext [1]
- initializers: List<ApplicationInitializer> [0..*]
- runtimeService: RuntimeService [1]
+ initialize()
+ run(args: ApplicationArguments)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ApplicationLauncher600058652[ - label=< - -
- - - - -
(C)ApplicationLauncher
+ afterApplicationReady()
+ restart()
+ run(primarySource: Class<?>, args: String...): ConfigurableApplicationContext
- start()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ApplicationServiceImpl744774639[ - label=< - -
- -
- - - - - - - - - -
(C)ApplicationServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ add(entity: ApplicationEntity): ApplicationEntity
+ addAllMenus(applicationId: String)
+ addMenus(applicationId: String, menuIds: Set<String>)
+ queryApplicationsByCodeOrName(filter: String, queryParameter: QueryParameter): Page<ApplicationEntity>
+ queryApplicationsByMenu(menuId: String, queryParameter: QueryParameter): Page<ApplicationEntity>
+ queryOtherApplicationsByMenu(menuId: String, queryParameter: QueryParameter): Page<ApplicationEntity>
+ removeAllMenus(applicationId: String)
+ removeMenus(applicationId: String, menuIds: Set<String>)
+ updateMenus(applicationId: String, menuIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ApplicationWebController1628504052[ - label=< - -
- - - - - - - -
(C)ApplicationWebController
+ addAllMenus(wrapper: One2Many<String, String>)
+ addMenus(wrapper: One2Many<String, String>)
+ queryApplicationsByMenu(menuId: String, queryParameter: QueryParameter): Page<ApplicationVo>
+ queryOtherApplicationsByMenu(menuId: String, queryParameter: QueryParameter): Page<ApplicationVo>
+ removeAllMenus(wrapper: One2Many<String, String>)
+ removeMenus(wrapper: One2Many<String, String>)
+ updateMenus(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AssigneeQueryServiceImpl1477149626[ - label=< - -
- - -
- - -
(C)AssigneeQueryServiceImpl
- roleService: RoleService [1]
- userService: UserService [1]
+ query(task: Task, newTask: Task, newUserTaskDefinition: UserTask): List<Assignee>
+ query(newUserTaskDefinition: UserTask): List<Assignee>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AttachmentEntity449060956[ - label=< - -
- - - - - - -
- -
(C)AttachmentEntity
# bussinessKey: String [0..1]
# description: String [0..1]
# extName: String [0..1]
# id: String [0..1]
# name: String [0..1]
# type: PersistenceType [0..1]
+ toVo(vo: AttachmentVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AttachmentServiceImpl2104802497[ - label=< - -
- - -
- - - - - - -
(C)AttachmentServiceImpl
- jdbcTemplate: JdbcTemplate [1]
- systemParameterService: SystemParameterService [1]
+ download(request: HttpServletRequest, response: HttpServletResponse, id: String)
+ findByBussinessKey(bussinessKey: String): List<AttachmentVo>
+ findByBussinessKeys(bussinessKeys: Set<String>): Map<String, List<AttachmentVo>>
+ getDiskAttachmentFilePath(entity: DiskAttachmentEntity): String
- persistence2Disk(entity: DiskAttachmentEntity, inputStream: InputStream)
+ upload(bussinessKey: String, name: String, description: String, multipartFile: MultipartFile, locale: Locale)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AttachmentWebController1407544670[ - label=< - -
- - - -
(C)AttachmentWebController
+ add(request: HttpServletRequest, bussinessKey: String, multipartFile: MultipartFile, locale: Locale)
+ download(request: HttpServletRequest, response: HttpServletResponse, id: String)
+ findByBussinessKey(bussinessKey: String): List<AttachmentVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AuditLogAspectorBean686209983[ - label=< - -
- - - -
- - - - - - - - - - -
(C)AuditLogAspectorBean
- manager: AuditLogPersistenterManager [1]
- messageSource: MessageSource [1]
- objectMapper: ObjectMapper [1]
+ around(joinPoint: ProceedingJoinPoint): Object
+ auditLogPointCut()
- buildAuditLog(joinPoint: JoinPoint, e: Throwable): AuditLog
+ exception(joinPoint: JoinPoint, e: Throwable)
- getAuditorEntity(args: Object[]): AuditorEntity
- getBindingResult(args: Object[]): BindingResult
- getFieldName(field: String): String
- getHttpServletRequest(args: Object[]): HttpServletRequest
- getQueryParameter(args: Object[]): QueryParameter
- validationError(bindingResult: BindingResult): List<ValidationError>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AuditLogEntity1512343519[ - label=< - -
- - - - - - - - - - - - - - - - -
- -
(C)AuditLogEntity
- action: String [0..1]
- className: String [0..1]
- exception: String [0..1]
- exceptionMessage: String [0..1]
- exceptionStackTrace: String [0..1]
- executeTime: Long [0..1]
- httpMethod: String [0..1]
- id: String [0..1]
- ip: String [0..1]
- loginName: String [0..1]
- methodName: String [0..1]
- newValue: String [0..1]
- oldValue: String [0..1]
- startDate: Date [0..1]
- status: String [0..1]
- url: String [0..1]
+ toVo(): AuditLogVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AuditLogPersistenterManagerAutoConfiguration1046861171[ - label=< - -
- - -
- - -
(C)AuditLogPersistenterManagerAutoConfiguration
- manager: AuditLogPersistenterManager [0..1]
- properties: AuditLogPersistenterProperties [1]
+ auditLogPersistenterManager(): AuditLogPersistenterManager
+ environmentChangeEventHandle(event: EnvironmentChangeEvent)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AuditLogServiceImpl1523860028[ - label=< - -
- -
(C)AuditLogServiceImpl
- jdbcTemplate: JdbcTemplate [1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AuditLogWebController926018151[ - label=< - -
(C)AuditLogWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AuditorEntity937853716[ - label=< - -
- - - - - -
- -
(C)AuditorEntity<V extends AuditorVo>
# createDate: Date [0..1]
# creator: String [0..1]
- dataComeFrom: DataComeFrom [0..1]
# lastModifier: String [0..1]
# lastModifyDate: Date [0..1]
+ toVo(vo: AuditorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BaseEntity937853716[ - label=< - -
- - -
(C)BaseEntity<V extends BaseVo>
+ toVo(vo: V)
+ toVo(): V
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BeanTaskEntity1853113301[ - label=< - -
- -
- -
(C)BeanTaskEntity
- bean: String [0..1]
+ toVo(): BeanTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Between1929946674[ - label=< - -
- - -
- - -
(C)Between<E>
# end: String [0..1]
# start: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -BpmnConverterUtil780551939[ - label=< - -
- - - - - - -
(C)BpmnConverterUtil
+ bpmnModel2json(model: BpmnModel): String
+ bpmnModel2xml(model: BpmnModel): String
+ json2BpmnModel(json: String): BpmnModel
+ json2xml(json: String): String
+ xml2BpmnModel(xml: String): BpmnModel
+ xml2json(xml: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CommandLineArgsHandler600058652[ - label=< - -
- - - - -
- - - -
(C)CommandLineArgsHandler
- decrypt: String [0..1]
- encrypt: String [0..1]
- help: boolean [1]
- version: boolean [1]
- decrypt(str: String)
- encrypt(str: String)
+ handle(): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CompositeMessageSource1224636738[ - label=< - -
- -
- - - - - - - -
(C)CompositeMessageSource
- messageSources: List<MessageSource> [0..*]
+ addMessageSource(messageSource: MessageSource)
+ getMessage(code: String, args: Object[], defaultMessage: String, locale: Locale): String
+ getMessage(code: String, args: Object[], locale: Locale): String
+ getMessage(resolvable: MessageSourceResolvable, locale: Locale): String
+ getMessages(messageKeys: String...): Map<Language, Map<String, String>>
+ getMessages(language: Language): Map<String, String>
+ reload()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConfigureController1849825354[ - label=< - -
- -
(C)ConfigureController
+ activeConfigure(id: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConfigureEntity588536316[ - label=< - -
- - - - - -
- -
(C)ConfigureEntity
- active: Boolean [0..1]
- id: String [0..1]
- name: String [0..1]
- setting: Setting [0..1]
- theme: Theme [0..1]
+ toVo(): ConfigureVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConfigureInitializer163612660[ - label=< - -
- - -
- - -
(C)ConfigureInitializer
- configureService: ConfigureService [0..1]
- isInitialized: Boolean [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConfigureServiceImpl1491599079[ - label=< - -
- - - -
- - -
(C)ConfigureServiceImpl
- environment: Environment [1]
- jdbcTemplate: JdbcTemplate [1]
- systemParameterService: SystemParameterService [1]
+ activeConfigure(id: String)
+ add(entity: ConfigureEntity): ConfigureEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Contains1929946674[ - label=< - -
- -
- - -
(C)Contains<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ContainsField1929946674[ - label=< - -
- -
- - -
(C)ContainsField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CorporationAuditorEntity937853716[ - label=< - -
- -
- -
(C)CorporationAuditorEntity<V extends CorporationAuditorVo>
# corporationCode: String [0..1]
+ toVo(vo: CorporationAuditorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CorporationEntity729386998[ - label=< - -
- - - - - - - -
- -
(C)CorporationEntity
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- name: String [0..1]
- order: Integer [0..1]
- parent: CorporationEntity [0..1]
+ toVo(): CorporationVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CorporationServiceImpl1000551513[ - label=< - -
- -
- - - - - -
(C)CorporationServiceImpl
- namedParameterJdbcTemplate: NamedParameterJdbcTemplate [1]
+ add(entity: CorporationEntity): CorporationEntity
+ addAllUsers(corporationCode: String)
+ addUsers(corporationCode: String, userIds: Set<String>)
+ removeAllUsers(corporationCode: String)
+ removeUsers(corporationCode: String, userIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CorporationWebController1127218628[ - label=< - -
- - - - -
(C)CorporationWebController
+ addAllUsers(wrapper: One2Many<String, String>)
+ addCorporations(wrapper: One2Many<String, String>)
+ removeAllUsers(wrapper: One2Many<String, String>)
+ removeUsers(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Criteria1597689472[ - label=< - -
- - - - - -
- - - - -
(C)Criteria<E>
# conversionService: ConversionService [0..1]
# criteria: List<Criteria<E>> [0..*]
# fieldName: String [0..1]
# operator: OperatorType [0..1]
# repositories: Repositories [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
# getPathInformation(root: Root<?>): PathInformation
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
+ parse(criteriaJsonString: String): List<Criteria>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DaoRepositoryImpl572539045[ - label=< - -
- - - -
- - - - - - - - - - - -
(C)DaoRepositoryImpl<E,ID extends Serializable>
- applicationContext: ApplicationContext [0..1]
- entityManager: EntityManager [0..1]
- jpaEntityInformation: JpaEntityInformation<E, ID> [0..1]
+ delete(entity: E)
+ delete(entity: E, isSendEvent: boolean)
+ deleteAllByIdInBatch(ids: Iterable<ID>, isSendEvent: boolean)
+ deleteAllInBatch(entities: Iterable<E>, isSendEvent: boolean)
+ deleteAllInBatch(isSendEvent: boolean)
+ getId(entity: E): ID
+ getManagedType(domainClass: Class<?>): ManagedType<?>
+ getManagedTypeAttributes(domainClass: Class<?>): ManagedTypeAttributes
+ save(entity: S): S
+ save(entity: S, isSendEvent: boolean): S
+ saveAll(entities: Iterable<S>, isSendEvent: boolean): List<S>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DaoServiceImpl1434168322[ - label=< - -
- - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
(C)DaoServiceImpl<E,ID extends Serializable,R extends DaoRepository<E,ID>>
# applicationContext: ApplicationContext [1]
# conversionService: ConversionService [1]
# desensitizerAuthorizerService: DesensitizerAuthorizerService [1]
# exceptionProvider: DaoExceptionProvider<E, ID> [0..1]
# repositories: Repositories [1]
# repository: R [1]
+ add(entity: E): E
+ add(entities: List<E>): List<E>
+ andCorporationSpecification(specification: Specification<E>): Specification<E>
+ buildCriteriaFromEntity(parameterNames: Enumeration<String>, entity: E): List<Criteria>
- buildDefaultSortBy(queryParameter: QueryParameter)
+ buildSpecification(queryParameter: QueryParameter): Specification<E>
+ canRemove(entity: E): boolean
# copyEntityValues(oldEntity: E, newEntity: E)
+ findById(id: ID): E
+ findByUniqueKey(entity: E): E
+ list(queryParameter: QueryParameter): List<E>
+ list(queryParameter: QueryParameter, specification: Specification<E>): List<E>
+ list(specification: Specification<E>, sort: Sort): List<E>
- newRemovedEntity(entity: E): E
+ query(queryParameter: QueryParameter): Page<E>
+ query(queryParameter: QueryParameter, specification: Specification<E>): Page<E>
+ query(specification: Specification<E>, pageable: Pageable, sort: Sort): Page<E>
+ remove(id: ID): ID
+ remove(ids: List<ID>): List<ID>
+ remove(entity: E): E
+ removeAll()
+ resetDefaultValues()
- standardizeAssociationAttributes(entity: E)
- standardizePluralAssociationAttributes(wrapper: DirectFieldAccessFallbackBeanWrapper, managedTypeAttributes: ManagedTypeAttributes)
- standardizeSingularAssociationAttributes(wrapper: DirectFieldAccessFallbackBeanWrapper, managedTypeAttributes: ManagedTypeAttributes)
+ update(id: ID, entity: E): E
+ update(entities: List<E>): List<E>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DashboardServiceImpl647483541[ - label=< - -
- - - -
- -
(C)DashboardServiceImpl
- executorRegistryService: ExecutorRegistryService [1]
- taskLogService: TaskLogService [1]
- taskService: TaskService [1]
+ dashboard(): Dashboard
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DashboardWebController883123762[ - label=< - -
- -
- -
(C)DashboardWebController
- service: DashboardService [1]
+ dashboard(): Dashboard
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DatabaseAttachmentEntity449060956[ - label=< - -
- -
(C)DatabaseAttachmentEntity
+ toVo(): AttachmentVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DatabaseAuditLogPersistenter1523860028[ - label=< - -
- - -
- - -
(C)DatabaseAuditLogPersistenter
- auditLogService: AuditLogService [1]
- manager: AuditLogPersistenterManager [1]
+ databaseAuditLogPersistenterInit()
+ log(auditLog: AuditLog)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DatabaseSystemParameterServiceImpl1224636738[ - label=< - -
- -
- - - - -
(C)DatabaseSystemParameterServiceImpl
- parameterService: ParameterService [0..1]
+ containsParameter(code: String): boolean
+ getParameter(code: String): String
+ getParameter(code: String, defaultValue: String): String
+ getParameters(codes: String[]): Map<String, String>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DateUtil606551348[ - label=< - -
- - - - - - - - - - - - - - - - - -
(C)DateUtil
+ addOneDay(date: Date): Date
+ cleanTime(date: Date): Date
+ formatDate(time: long): String
+ formatDate(date: Date): String
+ formatDate(time: long, format: String): String
+ formatDate(date: Date, format: String): String
+ from(time: long): Date
+ fromLocalDateTime(localDateTime: LocalDateTime): Date
+ getDateFormat(format: String): DateFormat
+ parseDate(str: String): Date
+ parseDate(str: String, format: String): Date
+ sqlDate(): Date
+ subOneDay(date: Date): Date
+ toLocalDateTime(date: Date): LocalDateTime
+ toSqlDate(date: Date): Date
+ tryParseDate(str: String): Date
+ tryParseDates(strs: String[]): Date[]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DefaultQueryResultSorter511814995[ - label=< - -
- -
(C)DefaultQueryResultSorter<T>
+ getComparator(propertyName: String, isAscending: boolean): Comparator<T>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepartmentEntity609315128[ - label=< - -
- - - - - - - - -
- - - - - - -
(C)DepartmentEntity
- children: List<DepartmentEntity> [0..*]
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- name: String [0..1]
- parent: DepartmentEntity [0..1]
- users: List<UserEntity> [0..*]
+ addChildren(children: DepartmentEntity...)
+ addUsers(users: UserEntity...)
+ removeChildren(children: DepartmentEntity...)
+ removeUsers(users: UserEntity...)
+ resetParent(parent: DepartmentEntity)
+ toVo(): DepartmentVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepartmentServiceImpl1575601435[ - label=< - -
- -
- - - - - - - -
(C)DepartmentServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ addAllUsers(DepartmentId: String)
+ addUsers(DepartmentId: String, userIds: Set<String>)
+ listAllDepartmentsWithSelectedStatusByUser(userId: String, queryParameter: QueryParameter): List<DepartmentVo>
+ listDepartmentsByUser(userId: String, queryParameter: QueryParameter): List<DepartmentEntity>
+ removeAllUsers(DepartmentId: String)
+ removeUsers(DepartmentId: String, userIds: Set<String>)
+ updateUsers(DepartmentId: String, userIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepartmentWebController1247290498[ - label=< - -
- - - - - - - - -
(C)DepartmentWebController
+ addAllUsers(wrapper: One2Many<String, String>)
+ addUsers(wrapper: One2Many<String, String>)
+ listAllDepartmentsWithSelectedStatusByUser(userId: String, queryParameter: QueryParameter): List<DepartmentVo>
+ listDepartmentsByUser(userId: String, queryParameter: QueryParameter): List<DepartmentVo>
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<DepartmentVo>
+ removeAllUsers(wrapper: One2Many<String, String>)
+ removeUsers(wrapper: One2Many<String, String>)
+ updateDepartmentByUser(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DesensitizeFieldEntity1810751287[ - label=< - -
- - - - -
- -
(C)DesensitizeFieldEntity
- className: String [0..1]
- fieldName: String [0..1]
- id: String [0..1]
- roles: List<RoleEntity> [0..*]
+ toVo(): DesensitizeFieldVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DesensitizeFieldServiceImpl530916244[ - label=< - -
- -
- - - - - -
(C)DesensitizeFieldServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ addAllRoles(desensitizeFieldId: String)
+ addRoles(desensitizeFieldId: String, roleIds: Set<String>)
+ initialize()
+ removeAllRoles(desensitizeFieldId: String)
+ removeRoles(desensitizeFieldId: String, roleIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DesensitizeFieldWebController627610383[ - label=< - -
- - - - -
(C)DesensitizeFieldWebController
+ addAllRoles(wrapper: One2Many<String, String>)
+ addRoles(wrapper: One2Many<String, String>)
+ removeAllRoles(wrapper: One2Many<String, String>)
+ removeRoles(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DesensitizerAuthorizerServiceImpl1434168322[ - label=< - -
- - -
(C)DesensitizerAuthorizerServiceImpl
+ authorize(entityClassName: String, fieldName: String): boolean
+ authorize(key: String): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DesensitizerAuthorizerServiceImpl530916244[ - label=< - -
- -
- - -
(C)DesensitizerAuthorizerServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ authorize(className: String, fieldName: String): boolean
+ authorize(key: String): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DesensitizerInitializer11204056[ - label=< - -
- -
- - -
(C)DesensitizerInitializer
- desensitizerService: DesensitizeFieldService [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryApiWebController294487110[ - label=< - -
- -
- - -
(C)DictionaryApiWebController
- dictionaryService: DictionaryService [1]
+ list(code: String): Option[]
+ list(codes: Set<String>): Map<String, Option[]>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryEntity1562118516[ - label=< - -
- - - - -
- -
(C)DictionaryEntity
- code: String [0..1]
- id: String [0..1]
- order: Integer [0..1]
- value: String [0..1]
+ toVo(): DictionaryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryServiceImpl1903344041[ - label=< - -
- - -
- - - - - -
(C)DictionaryServiceImpl
- jdbcTemplate: JdbcTemplate [1]
- messageSource: MessageSource [1]
+ getValuesByCode(code: String): List<String>
+ getValuesByCodeWithMessage(code: String, locale: Locale): List<KeyValue<String, String>>
+ getValuesByCodes(codes: Set<String>): Map<String, List<String>>
+ getValuesByCodesWithMessage(codes: Set<String>, locale: Locale): Map<String, Set<KeyValue<String, String>>>
+ updateDictionariesOrder(orderItems: List<OrderItem<String, Integer>>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryWebController294487110[ - label=< - -
- - -
(C)DictionaryWebController
+ getValuesByCodeWithMessage(code: String, locale: Locale): List<KeyValue<String, String>>
+ updateDictionariesOrder(orderItems: List<OrderItem<String, Integer>>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DirectoryManager600058652[ - label=< - -
- - -
- - -
(C)DirectoryManager
- directoryMap: Map<String, String> [0..*]
- homeDir: String [0..1]
+ getByName(name: String): String
+ init(environment: ConfigurableEnvironment)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DiskAttachmentEntity449060956[ - label=< - -
- -
- -
(C)DiskAttachmentEntity
# path: String [0..1]
+ toVo(): DiskAttachmentVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DsEntity1463258587[ - label=< - -
- - - - -
- -
(C)DsEntity
- description: String [0..1]
- id: String [0..1]
- name: String [0..1]
# type: String [0..1]
+ toVo(vo: DsVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DsServiceImpl1876511998[ - label=< - -
- - - -
(C)DsServiceImpl
+ findByUniqueKey(entity: DsEntity): DsEntity
+ getConnectionPropertiesById(datasourceId: String): Map<String, String>
+ saveConnectionPropertiesById(datasourceId: String, properties: Map<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DsWebController393347039[ - label=< - -
- - -
(C)DsWebController
+ getConnectionProperties(datasourceId: String): Map<String, String>
+ saveConnectionProperties(datasourceId: String, properties: Map<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EndWith1929946674[ - label=< - -
- -
- - -
(C)EndWith<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EndWithField1929946674[ - label=< - -
- -
- - -
(C)EndWithField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EntityVoUtil1890006859[ - label=< - -
- - - - - -
(C)EntityVoUtil
+ detach(repository: DaoRepository, entity: E)
+ detach(repository: DaoRepository, entities: List<E>)
+ sort(page: Page<T>, comparator: Comparator<T>): Page<T>
+ toVo(page: Page<E>): Page<V>
+ toVo(entities: List<E>): List<V>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Environment600058652[ - label=< - -
- - - - - - -
- - -
(C)Environment
- applicationContext: ApplicationContext [0..1]
- applicationName: String [0..1]
- isMultiCorportationMode: boolean [1]
- isRunningInDevelopment: boolean [1]
- isRunningInWebContainer: boolean [1]
- runtimeStatus: RuntimeStatus [0..1]
+ init(mainClass: Class<?>)
+ init(mainClass: Class<?>, isRunningInWebContainer: boolean)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Equals1929946674[ - label=< - -
- -
- - -
(C)Equals<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EqualsField1929946674[ - label=< - -
- -
- - -
(C)EqualsField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorEntity973481864[ - label=< - -
- - - - - - -
- -
(C)ExecutorEntity
- applicationName: String [0..1]
- description: String [0..1]
- id: String [0..1]
- name: String [0..1]
- permitStrategy: PermitStrategy [0..1]
- permitStrategyUrls: Set<String> [0..*]
+ toVo(): Executor
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorRegistryEntity973481864[ - label=< - -
- - - - - - -
- - -
(C)ExecutorRegistryEntity
- applicationName: String [0..1]
- id: String [0..1]
- name: String [0..1]
- now: Date [0..1]
- registDate: Date [0..1]
- url: String [0..1]
+ fromVo(vo: ExecutorRegistry): ExecutorRegistryEntity
+ toVo(): ExecutorRegistry
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorRegistryServiceImpl647483541[ - label=< - -
- - - - - - - -
- - - - - -
(C)ExecutorRegistryServiceImpl
- dataSource: DataSource [1]
- deleteSql: String [0..1]
- insertSql: String [0..1]
- jdbcTemplate: JdbcTemplate [1]
- querySql: String [0..1]
- sqlDialect: Dialect [1]
- updateSql: String [0..1]
+ findAllExecutors(): List<ExecutorRegistryEntity>
+ findOnlineExecutors(): List<ExecutorRegistryEntity>
+ initExecutorRegistryServiceImpl()
+ registry(registry: ExecutorRegistry)
+ unRegistry(registry: ExecutorRegistry)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorRegistryWebController883123762[ - label=< - -
- -
- - -
(C)ExecutorRegistryWebController
- executorRegistryService: ExecutorRegistryService [1]
+ registry(executorRegistry: ExecutorRegistry)
+ unRegistry(executorRegistry: ExecutorRegistry)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorServiceImpl647483541[ - label=< - -
- - -
- - - - - - - -
(C)ExecutorServiceImpl
- executorRegistryService: ExecutorRegistryService [1]
- jdbcTemplate: JdbcTemplate [1]
+ addFromRegistry(executorRegistry: ExecutorRegistry): ExecutorEntity
- buildAllDetails(executor: Executor, registries: List<ExecutorRegistry>): Set<ExecutorDetail>
- buildDetails(executor: Executor, executorRegistries: List<ExecutorRegistry>): Set<ExecutorDetail>
- buildExcludeDetails(executor: Executor, registries: List<ExecutorRegistry>): Set<ExecutorDetail>
- buildIncludeDetails(executor: Executor, registries: List<ExecutorRegistry>): Set<ExecutorDetail>
- buildNoneDetails(executor: Executor, registries: List<ExecutorRegistry>): Set<ExecutorDetail>
+ queryWithDetail(queryParameter: QueryParameter): Page<Executor>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorWebController883123762[ - label=< - -
- - -
(C)ExecutorWebController
+ addFromRegistry(executorRegistry: ExecutorRegistry)
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<Executor>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FileDownloader135925974[ - label=< - -
- - -
(C)FileDownloader
+ download(request: HttpServletRequest, response: HttpServletResponse, name: String, resource: Resource)
+ download(request: HttpServletRequest, response: HttpServletResponse, name: String, inputStream: InputStream)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FileUtil606551348[ - label=< - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(C)FileUtil
+ copyFile(src: String, target: String)
+ copyFile(src: File, target: File)
+ copyFile(inputStream: InputStream, target: String)
+ copyFile(inputStream: InputStream, target: File)
+ copyFile(inputStream: InputStream, outputStream: OutputStream)
+ createFixSizeFile(file: String, size: long)
+ createFixSizeFile(file: File, size: long)
+ deldirs(dir: String)
+ deldirs(dir: File)
+ exists(url: String): boolean
+ getFileBaseName(name: String): String
+ getFileExtName(name: String): String
+ getFileName(filePath: String): String
+ getInputStream(url: String): InputStream
+ listAllFile(dir: File, includes: String[]): List<File>
+ mkdirs(dir: String)
+ readString(url: String): String
+ readString(url: String, encoding: String): String
+ readString(url: String, encoding: String, newLine: String): String
+ readString(inputStream: InputStream): String
+ readString(inputStream: InputStream, encoding: String): String
+ readString(inputStream: InputStream, encoding: String, newLine: String): String
+ readString(urls: String[]): String
+ readString(urls: String[], encoding: String): String
+ readStringAsLastRow(file: String, row: int): String
+ readStringAsLastRow(file: File, count: int): String
+ readStringAsList(url: String): List<String>
+ readStringAsList(url: String, encoding: String): List<String>
+ readStringAsList(inputStream: InputStream): List<String>
+ readStringAsList(inputStream: InputStream, encoding: String): List<String>
+ removePathEndSeparator(path: String): String
+ writeString(file: String, content: String)
+ writeString(file: String, content: String, encoding: String)
+ writeString(file: String, content: String, overwrite: boolean)
+ writeString(file: String, content: String, encoding: String, overwrite: boolean)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FlowableModelerEditorWebController1877559843[ - label=< - -
- - - -
- - - - - - - -
(C)FlowableModelerEditorWebController
- flowableModelerService: FlowableModelerService [1]
- roleService: RoleService [1]
- userService: UserService [1]
+ account(): FlowableUser
+ editorGroups(filter: String, queryParameter: QueryParameter): FlowableGroupList
+ editorUsers(filter: String, queryParameter: QueryParameter): FlowableUserList
+ getEditorJson(id: String): BpmnModelWrapper
+ saveModel(id: String, values: Map<String, String>)
+ stencilsets(): String
+ validate(body: JsonNode): List<ValidationError>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FlowableModelerServiceImpl1477149626[ - label=< - -
- -
- - - -
(C)FlowableModelerServiceImpl
- processEntityService: ProcessEntityService [1]
+ getModelJson(id: String): BpmnModelWrapper
- getModifiedBpmnModelXml(entity: ProcessEntity, jsonXml: String): String
+ saveModelJson(id: String, values: Map<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FrontEndRouteTreeBuilder1860635603[ - label=< - -
- - - -
(C)FrontEndRouteTreeBuilder
+ getId(item: FrontEndRoute): String
+ getParentId(item: FrontEndRoute): String
+ resetParent(item: FrontEndRoute, parent: FrontEndRoute)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GreaterOrEquals1929946674[ - label=< - -
- -
- - -
(C)GreaterOrEquals<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GreaterOrEqualsField1929946674[ - label=< - -
- -
- - -
(C)GreaterOrEqualsField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GreaterThan1929946674[ - label=< - -
- -
- - -
(C)GreaterThan<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GreaterThanField1929946674[ - label=< - -
- -
- - -
(C)GreaterThanField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyScriptExecutor1013535725[ - label=< - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(C)GroovyScriptExecutor
- compilableEngine: Compilable [0..1]
+ eval(script: String): Object
+ eval(script: String, key: String, value: Object): Object
+ eval(script: String, context: Map<String, Object>): Object
+ eval(script: String, binding: Binding): Object
+ evalResources(resources: String[]): Object
+ evalResources(resources: List<String>): Object
+ evalResources(resources: String[], key: String, value: Object): Object
+ evalResources(resources: List<String>, key: String, value: Object): Object
+ evalResources(resources: String[], context: Map<String, Object>): Object
+ evalResources(resources: List<String>, context: Map<String, Object>): Object
+ evalResources(resources: String[], binding: Binding): Object
+ evalResources(resources: List<String>, binding: Binding): Object
+ execute(script: String): Map<String, Object>
+ execute(script: String, key: String, value: Object): Map<String, Object>
+ execute(script: String, context: Map<String, Object>): Map<String, Object>
+ execute(script: String, binding: Binding): Map<String, Object>
+ executeResources(resources: String[]): Map<String, Object>
+ executeResources(resources: List<String>): Map<String, Object>
+ executeResources(resources: String[], key: String, value: Object): Map<String, Object>
+ executeResources(resources: List<String>, key: String, value: Object): Map<String, Object>
+ executeResources(resources: String[], context: Map<String, Object>): Map<String, Object>
+ executeResources(resources: List<String>, context: Map<String, Object>): Map<String, Object>
+ executeResources(resources: String[], binding: Binding): Map<String, Object>
+ executeResources(resources: List<String>, binding: Binding): Map<String, Object>
- getCompiledScript(script: String): CompiledScript
+ getResourceScript(resources: String[]): String
+ getResourceScript(resources: List<String>): String
+ validate(script: String): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyTaskEntity1853113301[ - label=< - -
- -
- -
(C)GroovyTaskEntity
- groovy: String [0..1]
+ toVo(): GroovyTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -I18nEntity664205460[ - label=< - -
- - - - -
- -
(C)I18nEntity
- code: String [0..1]
- id: String [0..1]
- lang: Language [0..1]
- message: String [0..1]
+ toVo(): I18nVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -I18nServiceImpl1787995727[ - label=< - -
- -
- - -
(C)I18nServiceImpl
- compositeMessageSource: CompositeMessageSource [1]
+ importMessages(overwrite: boolean)
+ removeMessages()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -I18nWebController1774156210[ - label=< - -
- -
- - - -
(C)I18nWebController
- messageSourceService: MessageSourceService [1]
+ importMessages()
+ removeAll()
+ removeMessages()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IBetween1929946674[ - label=< - -
- -
- - -
(C)IBetween<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IBetweenInclusive1929946674[ - label=< - -
- - -
(C)IBetweenInclusive<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IEndWithField1929946674[ - label=< - -
- - -
(C)IEndWithField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotContains1929946674[ - label=< - -
- - -
(C)INotContains<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotContainsField1929946674[ - label=< - -
- - -
(C)INotContainsField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotEndWith1929946674[ - label=< - -
- - -
(C)INotEndWith<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotEndWithField1929946674[ - label=< - -
- - -
(C)INotEndWithField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotEquals1929946674[ - label=< - -
- - -
(C)INotEquals<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotEqualsField1929946674[ - label=< - -
- - -
(C)INotEqualsField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotStartWith1929946674[ - label=< - -
- - -
(C)INotStartWith<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -INotStartWithField1929946674[ - label=< - -
- - -
(C)INotStartWithField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IStartWith1929946674[ - label=< - -
- - -
(C)IStartWith<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IStartWithField1929946674[ - label=< - -
- - -
(C)IStartWithField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -InSet1929946674[ - label=< - -
- -
- - - -
(C)InSet<E>
# value: String[] [0..*]
- convert(clazz: Class<?>): Object[]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndexWebController467951925[ - label=< - -
- - -
- - -
(C)IndexWebController
- frontEndService: FrontEndService [1]
- systemParameterService: SystemParameterService [1]
+ configureJs(): String
+ index(request: HttpServletRequest): ModelAndView
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IsBlank1929946674[ - label=< - -
- - -
(C)IsBlank<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IsNotNull1929946674[ - label=< - -
- - -
(C)IsNotNull<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IsNull1929946674[ - label=< - -
- - -
(C)IsNull<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -JdbcDsEntity1463258587[ - label=< - -
- - - - - - -
- -
(C)JdbcDsEntity
- databaseType: String [0..1]
- jdbcDriver: String [0..1]
- jdbcUrl: String [0..1]
- password: String [0..1]
- properties: Map<String, String> [0..*]
- username: String [0..1]
+ toVo(): DsVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -JndiDsEntity1463258587[ - label=< - -
- -
- -
(C)JndiDsEntity
- jndiName: String [0..1]
+ toVo(): DsVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -KeepApplicationNotCloseThread305656038[ - label=< - -
- -
- - -
(C)KeepApplicationNotCloseThread
- interrupted: boolean [1]
+ interrupt()
+ run()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LessOrEquals1929946674[ - label=< - -
- -
- - -
(C)LessOrEquals<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LessOrEqualsField1929946674[ - label=< - -
- -
- - -
(C)LessOrEqualsField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LessThan1929946674[ - label=< - -
- -
- - -
(C)LessThan<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LessThanField1929946674[ - label=< - -
- -
- - -
(C)LessThanField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuEntity1503491701[ - label=< - -
- - - - - - - - - - - - -
- - - - - - - - - -
(C)MenuEntity
# applications: List<ApplicationEntity> [0..*]
# authorizeExpression: String [0..1]
# enable: Boolean [0..1]
# icon: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# orgs: List<OrgEntity> [0..*]
# parent: MenuGroupEntity [0..1]
# roles: List<RoleEntity> [0..*]
# titleI18nKey: String [0..1]
# type: MenuType [0..1]
+ addApplications(applications: ApplicationEntity...)
+ addOrgs(orgs: OrgEntity...)
+ addRoles(roles: RoleEntity...)
+ clearId()
+ removeApplications(applications: ApplicationEntity...)
+ removeOrgs(orgs: OrgEntity...)
+ removeRoles(roles: RoleEntity...)
+ resetParent(parent: MenuGroupEntity)
+ toVo(vo: MenuVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuEntityPluginConvertor1045338113[ - label=< - -
- - -
(C)MenuEntityPluginConvertor
+ fromVo(vos: List<MenuItem>): List<MenuEntity>
+ fromVo(vo: MenuItem): MenuEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuEntityTreeBuilder788402817[ - label=< - -
- - - -
(C)MenuEntityTreeBuilder
+ getId(entity: MenuEntity): String
+ getParentId(entity: MenuEntity): String
+ resetParent(entity: MenuEntity, parent: MenuEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuGroupEntity1503491701[ - label=< - -
- - -
- - - -
(C)MenuGroupEntity
# asRoot: boolean [1]
# children: List<MenuEntity> [0..*]
+ addChildren(children: MenuEntity...)
+ removeChildren(children: MenuEntity...)
+ toVo(): MenuVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuInitializer11204056[ - label=< - -
- - -
- - -
(C)MenuInitializer
- isInitialized: Boolean [0..1]
- menuService: MenuService [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuItemTreeBuilder50211118[ - label=< - -
- - - -
(C)MenuItemTreeBuilder
+ getId(item: MenuItem): String
+ getParentId(item: MenuItem): String
+ resetParent(item: MenuItem, parent: MenuItem)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuJavascriptEntity1503491701[ - label=< - -
- -
- -
(C)MenuJavascriptEntity
- javaScript: String [0..1]
+ toVo(): MenuVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuRouteEntity1503491701[ - label=< - -
- - -
- -
(C)MenuRouteEntity
- routeName: String [0..1]
- routeQuery: Map<String, String> [0..*]
+ toVo(): MenuVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuSeparatorEntity1503491701[ - label=< - -
- -
(C)MenuSeparatorEntity
+ toVo(): MenuVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuServiceImpl1607197522[ - label=< - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
(C)MenuServiceImpl
- jdbcTemplate: JdbcTemplate [1]
- namedParameterJdbcTemplate: NamedParameterJdbcTemplate [1]
- pluginConverter: MenuEntityPluginConvertor [0..1]
- treeBuilder: TreeBuilder<MenuEntity, String> [0..1]
+ addAllApplications(wrapper: CascadeMany2Many<String, String>)
+ addAllRoles(wrapper: CascadeMany2Many<String, String>)
+ addApplications(wrapper: CascadeMany2Many<String, String>)
+ addRoles(wrapper: CascadeMany2Many<String, String>)
+ getMenusByUser(userId: String): List<MenuEntity>
+ importAllMenuPlugins()
+ importMenuPlugins(pluginIds: List<String>)
+ listAllMenusWithSelectedStatusByApplication(applicationId: String, queryParameter: QueryParameter): List<MenuVo>
+ listAllMenusWithSelectedStatusByOrg(orgId: String, queryParameter: QueryParameter): List<MenuVo>
+ listAllMenusWithSelectedStatusByRole(roleId: String, queryParameter: QueryParameter): List<MenuVo>
+ listMenusByApplication(applicationId: String, queryParameter: QueryParameter): List<MenuEntity>
+ listMenusByOrg(orgId: String, queryParameter: QueryParameter): List<MenuEntity>
+ listMenusByRole(roleId: String, queryParameter: QueryParameter): List<MenuEntity>
- recursiveGetChildren(entity: MenuEntity, ids: List<String>)
- recursiveGetParent(entity: MenuEntity, ids: List<String>)
+ removeAllApplications(wrapper: CascadeMany2Many<String, String>)
+ removeAllRoles(wrapper: CascadeMany2Many<String, String>)
+ removeApplications(wrapper: CascadeMany2Many<String, String>)
+ removeRoles(wrapper: CascadeMany2Many<String, String>)
- standardMenuAndApplicationTable()
- standardMenuAndOrgTable()
- standardMenuAndRoleTable()
+ update(s: String, entity: MenuEntity): MenuEntity
+ updateOrgs(wrapper: CascadeMany2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuUrlEntity1503491701[ - label=< - -
- - -
- -
(C)MenuUrlEntity
- url: String [0..1]
- urlOpenType: UrlOpenType [0..1]
+ toVo(): MenuVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MenuWebController934869969[ - label=< - -
- - - - - - - - - - - - - - - -
(C)MenuWebController
+ addAllApplications(wrapper: CascadeMany2Many<String, String>)
+ addAllRoles(wrapper: CascadeMany2Many<String, String>)
+ addApplications(wrapper: CascadeMany2Many<String, String>)
+ addRoles(wrapper: CascadeMany2Many<String, String>)
+ importAllMenuPlugins()
+ importMenuPlugins(pluginIds: List<String>)
+ listAllMenusWithSelectedStatusByApplication(applicationId: String, queryParameter: QueryParameter): List<MenuVo>
+ listAllMenusWithSelectedStatusByOrg(orgId: String, queryParameter: QueryParameter): List<MenuVo>
+ listAllMenusWithSelectedStatusByRole(roleId: String, queryParameter: QueryParameter): List<MenuVo>
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<MenuVo>
+ removeAllApplications(wrapper: CascadeMany2Many<String, String>)
+ removeAllRoles(wrapper: CascadeMany2Many<String, String>)
+ removeApplications(wrapper: CascadeMany2Many<String, String>)
+ removeRoles(wrapper: CascadeMany2Many<String, String>)
+ updateOrgs(wrapper: CascadeMany2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MetricsWebController1825092950[ - label=< - -
- -
- -
(C)MetricsWebController
- auditLogService: AuditLogService [1]
+ metrics(): ServerInfo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NodeJsTaskEntity1853113301[ - label=< - -
- -
- -
(C)NodeJsTaskEntity
- nodejs: String [0..1]
+ toVo(): NodeJsTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -None1929946674[ - label=< - -
- - -
(C)None<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Not1929946674[ - label=< - -
- - -
(C)Not<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotBlank1929946674[ - label=< - -
- - -
(C)NotBlank<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotContains1929946674[ - label=< - -
- -
- - -
(C)NotContains<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotContainsField1929946674[ - label=< - -
- -
- - -
(C)NotContainsField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotEndWith1929946674[ - label=< - -
- -
- - -
(C)NotEndWith<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotEndWithField1929946674[ - label=< - -
- -
- - -
(C)NotEndWithField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotEquals1929946674[ - label=< - -
- -
- - -
(C)NotEquals<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotEqualsField1929946674[ - label=< - -
- -
- - -
(C)NotEqualsField<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotInSet1929946674[ - label=< - -
- -
- - -
(C)NotInSet<E>
# value: String[] [0..*]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotStartWith1929946674[ - label=< - -
- -
- - -
(C)NotStartWith<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotStartWithField1929946674[ - label=< - -
- - -
(C)NotStartWithField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotificationEntity1198391169[ - label=< - -
- - - - - - - -
- -
(C)NotificationEntity
- content: String [0..1]
- id: String [0..1]
- receiveDate: Date [0..1]
- receiver: String [0..1]
# sendDate: Date [0..1]
- sender: String [0..1]
- title: String [0..1]
+ toVo(): NotificationVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotificationManagerWebController1239970501[ - label=< - -
(C)NotificationManagerWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotificationServiceImpl463362398[ - label=< - -
- -
(C)NotificationServiceImpl
+ add(entity: NotificationEntity): NotificationEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Or1929946674[ - label=< - -
- - -
(C)Or<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OrgEntity1639348634[ - label=< - -
- - - - - - - - - - -
- - - - - - - - -
(C)OrgEntity
- children: List<OrgEntity> [0..*]
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- isDepartment: Boolean [0..1]
- menus: List<MenuEntity> [0..*]
- name: String [0..1]
- parent: OrgEntity [0..1]
- users: List<UserEntity> [0..*]
+ addChildren(children: OrgEntity...)
+ addMenus(resources: MenuEntity...)
+ addUsers(users: UserEntity...)
+ removeChildren(children: OrgEntity...)
+ removeMenus(resources: MenuEntity...)
+ removeUsers(users: UserEntity...)
+ resetParent(parent: OrgEntity)
+ toVo(): OrgVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OrgInitializer11204056[ - label=< - -
- - - -
- - -
(C)OrgInitializer
- isInitialized: Boolean [0..1]
- jdbcTemplate: JdbcTemplate [0..1]
- orgService: OrgService [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OrgServiceImpl699644675[ - label=< - -
- -
- - - - - - - - - - - - - - -
(C)OrgServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ addAllMenus(orgId: String)
+ addAllUsers(orgId: String)
+ addMenus(orgId: String, menuIds: Set<String>)
+ addUsers(orgId: String, userIds: Set<String>)
+ listAllOrgsWithSelectedStatusByMenu(menuId: String, queryParameter: QueryParameter): List<OrgVo>
+ listAllOrgsWithSelectedStatusByUser(userId: String, queryParameter: QueryParameter): List<OrgVo>
+ listOrgsByMenu(menuId: String, queryParameter: QueryParameter): List<OrgEntity>
+ listOrgsByUser(userId: String, queryParameter: QueryParameter): List<OrgEntity>
+ removeAllMenus(orgId: String)
+ removeAllUsers(orgId: String)
+ removeMenus(orgId: String, menuIds: Set<String>)
+ removeUsers(orgId: String, userIds: Set<String>)
+ updateMenus(orgId: String, menuIds: Set<String>)
+ updateUsers(orgId: String, userIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OrgWebController217256992[ - label=< - -
- - - - - - - - - - - - - - - -
(C)OrgWebController
+ addAllMenus(wrapper: One2Many<String, String>)
+ addAllUsers(wrapper: One2Many<String, String>)
+ addMenus(wrapper: One2Many<String, String>)
+ addUsers(wrapper: One2Many<String, String>)
+ listAllOrgsWithSelectedStatusByMenu(menuId: String, queryParameter: QueryParameter): List<OrgVo>
+ listAllOrgsWithSelectedStatusByUser(userId: String, queryParameter: QueryParameter): List<OrgVo>
+ listOrgsByMenu(menuId: String, queryParameter: QueryParameter): List<OrgVo>
+ listOrgsByUser(userId: String, queryParameter: QueryParameter): List<OrgVo>
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<OrgVo>
+ removeAllMenus(wrapper: One2Many<String, String>)
+ removeAllUsers(wrapper: One2Many<String, String>)
+ removeMenus(wrapper: One2Many<String, String>)
+ removeUsers(wrapper: One2Many<String, String>)
+ updateMenus(wrapper: One2Many<String, String>)
+ updateOrgByUser(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterApiWebController1347615109[ - label=< - -
- -
- - -
(C)ParameterApiWebController
- parameterService: ParameterService [1]
+ list(code: String): String
+ list(codes: Set<String>): Map<String, String>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterEntity508990517[ - label=< - -
- - - - - - -
- - - - -
(C)ParameterEntity
# children: List<ParameterEntity> [0..*]
- code: String [0..1]
- id: String [0..1]
# order: Integer [0..1]
- parent: ParameterEntity [0..1]
- value: String [0..1]
+ clearId()
+ from(parameter: Parameter): ParameterEntity
+ resetParent(parent: ParameterEntity)
+ toVo(): ParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterEntityTreeBuilder1860002174[ - label=< - -
- - - -
(C)ParameterEntityTreeBuilder
+ getId(entity: ParameterEntity): String
+ getParentId(entity: ParameterEntity): String
+ resetParent(entity: ParameterEntity, parent: ParameterEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterInitializer11204056[ - label=< - -
- - -
- - -
(C)ParameterInitializer
- isInitialized: Boolean [0..1]
- parameterService: ParameterService [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterServiceImpl347069224[ - label=< - -
- - - - - -
(C)ParameterServiceImpl
+ containsParameter(code: String): boolean
+ getParameter(code: String): String
+ getParameter(code: String, defaultValue: String): String
+ getParameters(codes: String[]): Map<String, String>
+ init()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterWebController1347615109[ - label=< - -
- -
(C)ParameterWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<ParameterVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PhpTaskEntity1853113301[ - label=< - -
- -
- -
(C)PhpTaskEntity
- php: String [0..1]
+ toVo(): PhpTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PlatformAuditLogPersistenterManager2053706728[ - label=< - -
- - - -
- -
(C)PlatformAuditLogPersistenterManager
- persistenter: AuditLogPersistenter [0..1]
- persisterMap: Map<String, AuditLogPersistenter> [0..*]
- properties: AuditLogPersistenterProperties [1]
+ regist(persistenter: AuditLogPersistenter)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PlatformAuthenticationFailureHandler1529412511[ - label=< - -
- - -
- -
(C)PlatformAuthenticationFailureHandler
- auditLogPersistenterManager: AuditLogPersistenterManager [0..1]
- securityProperties: SecurityProperties [0..1]
+ onAuthenticationFailure(request: HttpServletRequest, response: HttpServletResponse, exception: AuthenticationException)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PlatformAuthenticationSuccessHandler1529412511[ - label=< - -
- - -
- -
(C)PlatformAuthenticationSuccessHandler
- auditLogPersistenterManager: AuditLogPersistenterManager [0..1]
- securityProperties: SecurityProperties [0..1]
+ onAuthenticationSuccess(request: HttpServletRequest, response: HttpServletResponse, authentication: Authentication)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PlatformLogoutSuccessHandler1529412511[ - label=< - -
- -
- -
(C)PlatformLogoutSuccessHandler
- auditLogPersistenterManager: AuditLogPersistenterManager [0..1]
+ onLogoutSuccess(request: HttpServletRequest, response: HttpServletResponse, authentication: Authentication)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PluginSystemParameterServiceImpl686209983[ - label=< - -
- -
- - - - -
(C)PluginSystemParameterServiceImpl
- systemParameterDefaultValueMap: Map<String, String> [0..*]
+ containsParameter(code: String): boolean
+ getParameter(code: String): String
+ getParameter(code: String, defaultValue: String): String
+ getParameters(codes: String[]): Map<String, String>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PowerShellTaskEntity1853113301[ - label=< - -
- -
- -
(C)PowerShellTaskEntity
- powershell: String [0..1]
+ toVo(): PowerShellTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessEntity20954217[ - label=< - -
- - - - - - - - - - -
- -
(C)ProcessEntity
- canClaimTask: Boolean [0..1]
- category: String [0..1]
- deployedId: String [0..1]
- description: String [0..1]
- id: String [0..1]
- key: String [0..1]
- name: String [0..1]
- status: ProcessStatus [0..1]
- version: Integer [0..1]
- xml: String [0..1]
+ toVo(): ProcessVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessEntityServiceImpl1477149626[ - label=< - -
- -
- - - - - - - - -
(C)ProcessEntityServiceImpl
- repositoryService: RepositoryService [1]
+ add(entity: ProcessEntity): ProcessEntity
+ canClaimTask(deployedId: String): boolean
+ deploy(id: String)
+ findByUniqueKey(entity: ProcessEntity): ProcessEntity
+ getEngineDeployedId(category: String): String
+ getEngineDeployedKey(category: String): String
+ getSampleResource(category: String): Resource
+ update(primaryKey: String, entity: ProcessEntity): ProcessEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessEntityWebController1877559843[ - label=< - -
- -
(C)ProcessEntityWebController
+ deploy(id: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessOperationServiceImpl1477149626[ - label=< - -
- - - - - - - - - - -
- - - - - - - - - - - - - - - -
(C)ProcessOperationServiceImpl
- agentService: AgentService [1]
- applicationContext: ApplicationContext [1]
- historyService: HistoryService [1]
- jsonMapper: ObjectMapper [1]
- managementService: ManagementService [1]
- objectMapper: ObjectMapper [1]
- processEntityService: ProcessEntityService [1]
- repositoryService: RepositoryService [1]
- runtimeService: RuntimeService [1]
- taskService: TaskService [1]
+ claimTask(taskId: String)
+ completeTask(taskId: String, variables: Map<String, Object>, transientVariables: Map<String, Object>)
- convertTransientVariables(variables: Map<String, Object>, transientVariables: Map<String, Object>): Map<String, Object>
- getAgent(loginName: String): AgentEntity
- getAssignmentStrategySpringBean(model: BpmnModel, processInstance: ProcessInstance, taskDefine: UserTask): AssigneeQueryService
+ getGobacks(taskId: String): List<Goback>
+ jumpTask(taskId: String, targetActivityId: String, targetAssignee: String)
- parseGobackVariableValue(conditionExpression: String): Integer
- startProcess(processInstance: ProcessInstance, variables: Map<String, Object>, transientVariables: Map<String, Object>, autoCompleteFirstTask: boolean): ProcessInstance
+ startProcessById(processDefinitionId: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>): ProcessInstance
+ startProcessById(processDefinitionId: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>, autoCompleteFirstTask: boolean): ProcessInstance
+ startProcessByKey(processDefinitionKey: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>): ProcessInstance
+ startProcessByKey(processDefinitionKey: String, bussinessKey: String, variables: Map<String, Object>, transientVariables: Map<String, Object>, autoCompleteFirstTask: boolean): ProcessInstance
+ terminateProcessInstance(taskId: String, deleteReason: String)
+ unClaimTask(taskId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessOperationWebController1877559843[ - label=< - -
- -
- - - - - - - - -
(C)ProcessOperationWebController
- processOperationService: ProcessOperationService [1]
+ claimTask(taskId: String)
+ completeTask(taskId: String, properties: ProcessProperties): CompleteTaskResponse
+ getGobacks(taskId: String): List<Goback>
+ goback(taskId: String, properties: ProcessProperties): CompleteTaskResponse
+ start(processDefinitionKey: String, properties: ProcessProperties): CompleteTaskResponse
+ terminateProcessInstance(taskId: String)
+ terminateTask(parameters: Map<String, String>)
+ unClaimTask(taskId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessQueryServiceImpl1477149626[ - label=< - -
- - - - - - -
- - - - - - - - - - - -
(C)ProcessQueryServiceImpl
- assigneeQueryService: AssigneeQueryService [1]
- dialect: Dialect [1]
- jdbcTemplate: JdbcTemplate [1]
- processEntityService: ProcessEntityService [1]
- repositoryService: RepositoryService [1]
- taskService: TaskService [1]
- getHighLightedActivities(model: BpmnModel, taskDefinitionKeys: List<String>): List<String>
- getOrderSql(pageable: Pageable): String
+ queryCandidate(taskId: String, activityId: String): List<Assignee>
+ queryProcessDefinition(processDefinitionId: String): ProcessDefinition
+ queryProcessInstances(queryParameter: QueryParameter): Page<ProcessInstanceWrapper>
+ queryProcessTasks(processInstanceId: String, queryParameter: QueryParameter): List<ProcessTaskWrapper>
+ queryUserTaskDefinition(taskId: String): List<UserTaskDefinitionWrapper>
+ queryVariables(processInstId: String): List<VariableWrapper>
- showProcessDiagram(tasks: List<Task>): InputStream
+ showProcessDiagramByInstanceId(processInstanceId: String): InputStream
+ showProcessDiagramByTaskId(taskId: String): InputStream
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ProcessQueryWebController1877559843[ - label=< - -
- -
- - - - - - - -
(C)ProcessQueryWebController
- service: ProcessQueryService [1]
+ activityQuery(taskId: String): List<UserTaskDefinitionWrapper>
+ candidateQuery(taskId: String, activityId: String): List<Assignee>
+ processInstanceQuery(queryParameter: QueryParameter): Page<ProcessInstanceWrapper>
+ showProcessDiagramByInstanceId(processInstanceId: String, request: HttpServletRequest, response: HttpServletResponse)
+ showProcessDiagramByTaskId(taskId: String, request: HttpServletRequest, response: HttpServletResponse)
+ taskQuery(queryParameter: QueryParameter): List<ProcessTaskWrapper>
+ variableQuery(procInstId: String): List<VariableWrapper>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Properties606551348[ - label=< - -
- -
- - -
(C)Properties
- innerProperties: Properties [0..*]
+ getProperty(key: String): String
+ getProperty(key: String, targetType: Class<T>, defaultValue: T): T
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PythonTaskEntity1853113301[ - label=< - -
- -
- -
(C)PythonTaskEntity
- python: String [0..1]
+ toVo(): PythonTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -QueryParameter511814995[ - label=< - -
- - - - - - - - - -
- - - - - - - -
(C)QueryParameter
# criteria: String [0..1]
# criterias: List<Criteria> [0..*]
# exportFilename: String [0..1]
# firstPage: Integer [0..1]
# operator: OperatorType [0..1]
# page: Integer [0..1]
# pageable: Boolean [0..1]
# size: Integer [0..1]
# sortBy: List<String> [0..*]
+ addCorporationCondition(corporationCode: String)
+ addCriteria(criteria: Criteria)
+ addCriterias(criterias: List<Criteria>)
+ addSortBy(sortBy: String)
+ existsCriteria(): boolean
+ existsSortBy(): boolean
+ getCriteriaByFieldName(fieldName: String): Criteria
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -QueryResult511814995[ - label=< - -
- - - - - - - - -
(C)QueryResult
- copyContent(page: Page<T>): List<T>
+ emptyList(): List<T>
+ emptyPage(): Page<T>
+ page(list: List<T>): Page<T>
+ page(list: List<T>, queryParameter: QueryParameter): Page<T>
+ page(list: List<T>, queryParameter: QueryParameter, sorter: QueryResultSorter): Page<T>
+ page(page: Page<T>, queryParameter: QueryParameter): Page<T>
+ page(page: Page<T>, queryParameter: QueryParameter, sorter: QueryResultSorter): Page<T>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RestCrudController737743850[ - label=< - -
- -
- - - - - - - - - - - - - - -
(C)RestCrudController<V extends BaseVo, E extends BaseEntity<V>, ID extends Serializable, R extends DaoRepository<E,ID>, S extends DaoService<E,ID,R>>
# service: S [1]
+ _add(request: HttpServletRequest, response: HttpServletResponse, entity: E, bindingResult: BindingResult): V
+ _findById(request: HttpServletRequest, response: HttpServletResponse, id: ID): V
+ _query(request: HttpServletRequest, response: HttpServletResponse, entity: E, queryParameter: QueryParameter): Page<V>
+ _remove(request: HttpServletRequest, response: HttpServletResponse, id: ID): ID
+ _removes(request: HttpServletRequest, response: HttpServletResponse, ids: List<ID>): List<ID>
+ _update(request: HttpServletRequest, response: HttpServletResponse, id: ID, entity: E, bindingResult: BindingResult): V
# add(request: HttpServletRequest, response: HttpServletResponse, entity: E): V
# findById(request: HttpServletRequest, response: HttpServletResponse, id: ID): V
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<V>
# remove(request: HttpServletRequest, response: HttpServletResponse, id: ID): ID
# removes(request: HttpServletRequest, response: HttpServletResponse, ids: List<ID>): List<ID>
+ resetDefaultValues(request: HttpServletRequest, response: HttpServletResponse)
# update(request: HttpServletRequest, response: HttpServletResponse, id: ID, entity: E): V
+ updates(request: HttpServletRequest, response: HttpServletResponse, entities: List<E>): List<V>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RoleAndMenuInitializer11204056[ - label=< - -
- - -
- - - - - - -
(C)RoleAndMenuInitializer
- isInitialized: Boolean [0..1]
- jdbcTemplate: JdbcTemplate [0..1]
- countRoleAndMenu(): int
+ execute()
- findAdminRole(): Role
- findMenus(): List<MenuEntity>
+ init(applicationContext: ApplicationContext)
- insertRoleAndMenu(roleId: String, menuId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RoleAndUserInitializer1900089223[ - label=< - -
- - - -
- - - - - - - - -
(C)RoleAndUserInitializer
- isInitialized: Boolean [0..1]
- jdbcTemplate: JdbcTemplate [0..1]
- passwordEncoder: PasswordEncoder [0..1]
- countUserAndRole(userId: String, roleId: String): int
+ execute()
- findAdminRole(): Role
- findAdminUser(): User
+ init(applicationContext: ApplicationContext)
- insertAdminRole(roleId: String)
- insertAdminUser(userId: String)
- insertUserAndRole(userId: String, roleId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RoleEntity499836396[ - label=< - -
- - - - - - - - - -
- - - - - - - -
(C)RoleEntity
- code: String [0..1]
- description: String [0..1]
- desensitizeFields: List<DesensitizeFieldEntity> [0..*]
- enable: Boolean [0..1]
- id: String [0..1]
- indexPageUrl: String [0..1]
- menus: List<MenuEntity> [0..*]
- name: String [0..1]
- users: List<UserEntity> [0..*]
+ addDesensitizeFields(desensitizeFields: DesensitizeFieldEntity...)
+ addMenus(menus: MenuEntity...)
+ addUsers(users: UserEntity...)
+ removeDesensitizeFields(desensitizeFields: DesensitizeFieldEntity...)
+ removeMenus(menus: MenuEntity...)
+ removeUsers(users: UserEntity...)
+ toVo(): RoleVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RoleServiceImpl832876279[ - label=< - -
- -
- - - - - - - - - - - - - - - - - - -
(C)RoleServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ addAllMenus(roleId: String)
+ addAllUsers(roleId: String)
+ addMenus(roleId: String, menuIds: Set<String>)
+ addUsers(roleId: String, userIds: Set<String>)
+ listRolesByUser(userId: String): List<RoleEntity>
+ queryOtherRolesByDesensitizeField(desensitizeField: String, queryParameter: QueryParameter): Page<RoleEntity>
+ queryOtherRolesByMenu(menuId: String, queryParameter: QueryParameter): Page<RoleEntity>
+ queryOtherRolesByUser(userId: String, queryParameter: QueryParameter): Page<RoleEntity>
+ queryRolesByCodeOrName(filter: String, queryParameter: QueryParameter): Page<RoleEntity>
+ queryRolesByDesensitizeField(desensitizeField: String, queryParameter: QueryParameter): Page<RoleEntity>
+ queryRolesByMenu(menuId: String, queryParameter: QueryParameter): Page<RoleEntity>
+ queryRolesByUser(userId: String, queryParameter: QueryParameter): Page<RoleEntity>
+ removeAllMenus(roleId: String)
+ removeAllUsers(roleId: String)
+ removeMenus(roleId: String, menuIds: Set<String>)
+ removeUsers(roleId: String, userIds: Set<String>)
+ updateMenus(roleId: String, menuIds: Set<String>)
+ updateUsers(roleId: String, userIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RoleWebController1938525274[ - label=< - -
- - - - - - - - - - - - - - - - -
(C)RoleWebController
+ addAllMenus(wrapper: One2Many<String, String>)
+ addAllUsers(wrapper: One2Many<String, String>)
+ addMenus(wrapper: One2Many<String, String>)
+ addUsers(wrapper: One2Many<String, String>)
+ queryOtherRolesByDesensitizeField(desensitizeField: String, queryParameter: QueryParameter): Page<RoleVo>
+ queryOtherRolesByMenu(menuId: String, queryParameter: QueryParameter): Page<RoleVo>
+ queryOtherRolesByUser(userId: String, queryParameter: QueryParameter): Page<RoleVo>
+ queryRolesByDesensitizeField(desensitizeField: String, queryParameter: QueryParameter): Page<RoleVo>
+ queryRolesByMenu(menuId: String, queryParameter: QueryParameter): Page<RoleVo>
+ queryRolesByUser(userId: String, queryParameter: QueryParameter): Page<RoleVo>
+ removeAllMenus(wrapper: One2Many<String, String>)
+ removeAllUsers(wrapper: One2Many<String, String>)
+ removeMenus(wrapper: One2Many<String, String>)
+ removeUsers(wrapper: One2Many<String, String>)
+ updateMenus(wrapper: One2Many<String, String>)
+ updateUsers(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuntimeServiceImpl563206525[ - label=< - -
- - -
- - -
(C)RuntimeServiceImpl
- applicationContext: ApplicationContext [1]
- license: String [0..1]
+ applicationReadyEventListener(event: ApplicationReadyEvent)
+ runtimeServiceImplInit()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ShellTaskEntity1853113301[ - label=< - -
- -
- -
(C)ShellTaskEntity
- shell: String [0..1]
+ toVo(): ShellTask
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Slf4jAuditLogPersistenter563206525[ - label=< - -
- -
- - -
(C)Slf4jAuditLogPersistenter
- manager: AuditLogPersistenterManager [1]
+ log(auditLog: AuditLog)
+ slf4jAuditLogPersistenterInit()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SqlBatcher557676784[ - label=< - -
- - -
- - - -
(C)SqlBatcher
- batchArgs: List<Object[]> [0..*]
- sql: String [0..1]
+ addArg(args: Object...)
+ clear()
+ execute(jdbctemplate: JdbcTemplate)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -StartWith1929946674[ - label=< - -
- -
- - -
(C)StartWith<E>
# value: String [0..1]
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -StartWithField1929946674[ - label=< - -
- - -
(C)StartWithField<E>
+ getCondition(typeMapping: Map<String, Class<?>>): Condition
+ getPredicate(root: Root<E>, query: CriteriaQuery<?>, builder: CriteriaBuilder): Predicate
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -StringEncryptorUtil606551348[ - label=< - -
- - -
(C)StringEncryptorUtil
+ decrypt(str: String): String
+ encrypt(str: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TaskEntity973481864[ - label=< - -
- - - - - - - - - - - - - - - - - - - - - -
- -
(C)TaskEntity
- alarmEmail: String [0..1]
- author: String [0..1]
- blockStrategy: BlockStrategy [0..1]
- description: String [0..1]
- executor: ExecutorEntity [0..1]
- expirationPolicy: ExpirationPolicy [0..1]
- failRetryCount: int [1]
- id: String [0..1]
- name: String [0..1]
- parameter: String [0..1]
- parent: TaskEntity [0..1]
- routeStrategy: RouteStrategy [0..1]
- scheduleCron: String [0..1]
- scheduleFixDelay: Integer [0..1]
- scheduleFixRate: Integer [0..1]
- scheduleType: ScheduleType [0..1]
- status: TaskStatus [0..1]
- timeout: int [1]
- triggerLastTime: Date [0..1]
- triggerNextTime: Date [0..1]
- type: TaskType [0..1]
+ toVo(vo: Task)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TaskLogEntity973481864[ - label=< - -
- - - - - - - - - - - - -
- - -
(C)TaskLogEntity
- executor: ExecutorEntity [0..1]
- executorUrl: String [0..1]
- handleDateTime: Date [0..1]
- handleMessage: String [0..1]
- handleStatus: RunningStatus [0..1]
- id: String [0..1]
- parameter: String [0..1]
- retryCount: int [1]
- task: TaskEntity [0..1]
- triggerDateTime: Date [0..1]
- triggerMessage: String [0..1]
- triggerResult: ResultStatus [0..1]
+ fromVo(taskLog: TaskLog): TaskLogEntity
+ toVo(): TaskLog
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TaskLogServiceImpl647483541[ - label=< - -
- -
- - -
(C)TaskLogServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ callback(taskLog: TaskLog)
+ insert(entity: TaskLogEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TaskLogWebController883123762[ - label=< - -
- -
- - -
(C)TaskLogWebController
- taskLogService: TaskLogService [1]
+ callback(taskLog: TaskLog)
+ removeAll()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TaskServiceImpl647483541[ - label=< - -
- -
- - -
(C)TaskServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ trigger(taskId: String)
+ updateNextDatetime(taskId: String, nextDatetime: Date)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TaskWebController883123762[ - label=< - -
- -
(C)TaskWebController
+ trigger(taskId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TreeBuilder606551348[ - label=< - -
- - - - - - -
(C)TreeBuilder<T,ID>
+ build(list: List<T>)
+ buildAndGetAll(list: List<T>): List<T>
+ buildAndGetRoots(list: List<T>): List<T>
+ getId(item: T): ID
+ getParentId(item: T): ID
+ resetParent(item: T, parent: T)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TypeConvertor606551348[ - label=< - -
- - -
(C)TypeConvertor
+ getValue(string: String, targetType: Class<T>): T
+ getValue(string: String, targetType: Class<T>, defaultValue: T): T
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserEntity1437513631[ - label=< - -
- - - - - - - - - - - - - - - - - - - - -
- - - - - - - -
(C)UserEntity
- accountExpired: Boolean [0..1]
- accountLocked: Boolean [0..1]
- credentialsExpired: Boolean [0..1]
- defaultDepartmentId: String [0..1]
- defaultOrgId: String [0..1]
- defaultRoleId: String [0..1]
- departments: List<DepartmentEntity> [0..*]
- description: String [0..1]
- email: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- loginName: String [1]
- mobile: String [0..1]
- orgs: List<OrgEntity> [0..*]
- password: String [0..1]
- phone: String [0..1]
- qq: String [0..1]
- roles: List<RoleEntity> [0..*]
- userName: String [1]
- weixin: String [0..1]
+ addDepartments(departments: DepartmentEntity...)
+ addOrgs(orgs: OrgEntity...)
+ addRoles(roles: RoleEntity...)
+ removeDepartments(departments: DepartmentEntity...)
+ removeOrgs(orgs: OrgEntity...)
+ removeRoles(roles: RoleEntity...)
+ toVo(): UserVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserServiceImpl1389554238[ - label=< - -
- - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(C)UserServiceImpl
- environment: Environment [1]
- i18nService: I18nService [1]
- jdbcTemplate: JdbcTemplate [1]
- menuService: MenuService [1]
- objectMapper: ObjectMapper [1]
- orgService: OrgService [1]
- passwordEncoder: PasswordEncoder [1]
- roleService: RoleService [1]
- securityProperties: SecurityProperties [1]
- systemParameterService: SystemParameterService [1]
+ add(entity: UserEntity): UserEntity
+ addAllOrgs(userId: String)
+ addAllRoles(userId: String)
+ addOrgs(userId: String, orgIds: Set<String>)
+ addRoles(userId: String, roleIds: Set<String>)
+ changPassword(userId: String, rawPassword: String, newPassword: String)
# copyEntityValues(oldEntity: UserEntity, newEntity: UserEntity)
+ findByUniqueKey(entity: UserEntity): UserEntity
- getFrontEndRoutes(menus: List<MenuVo>): List<FrontEndRoute>
+ getUserSession(request: HttpServletRequest): UserSession
+ listUsersByOrgs(orgIds: List<String>): List<UserEntity>
+ listUsersByRoles(roleIds: List<String>): List<UserEntity>
+ queryOtherUsersByCorporation(corporationCode: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryOtherUsersByDepartment(departmentId: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryOtherUsersByOrg(orgId: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryOtherUsersByRole(roleId: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryUsersByCorporation(corporationCode: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryUsersByDepartment(departmentId: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryUsersByOrg(orgId: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryUsersByOrgAndQueryParameter(orgId: String, queryParameter: QueryParameter): Page<UserEntity>
+ queryUsersByRole(roleId: String, queryParameter: QueryParameter): Page<UserEntity>
+ removeAllOrgs(userId: String)
+ removeAllRoles(userId: String)
+ removeOrgs(userId: String, orgIds: Set<String>)
+ removeRoles(userId: String, roleIds: Set<String>)
+ resetAllPassword()
+ resetPassword(userIds: List<String>)
+ updateOrgs(userId: String, orgIds: Set<String>)
+ updateRoles(userId: String, roleIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserWebController419091995[ - label=< - -
- - -
- - - - - - - - - - - - - - - - - - - - - - - -
(C)UserWebController
- messageSource: MessageSource [1]
- passwordValidator: PasswordValidator [1]
+ addAllOrgs(wrapper: One2Many<String, String>)
+ addAllRoles(wrapper: One2Many<String, String>)
+ addOrgs(wrapper: One2Many<String, String>)
+ addRoles(wrapper: One2Many<String, String>)
+ changePassword(changePassword: ChangePassword, bindingResult: BindingResult, principal: Principal, locale: Locale)
+ queryOtherUsersByCorporation(corporationCode: String, parameter: QueryParameter): Page<UserVo>
+ queryOtherUsersByDepartment(departmentId: String, parameter: QueryParameter): Page<UserVo>
+ queryOtherUsersByOrg(orgId: String, parameter: QueryParameter): Page<UserVo>
+ queryOtherUsersByRole(roleId: String, parameter: QueryParameter): Page<UserVo>
+ queryUsersByCorporation(corporationCode: String, parameter: QueryParameter): Page<UserVo>
+ queryUsersByDepartment(departmentId: String, parameter: QueryParameter): Page<UserVo>
+ queryUsersByOrg(orgId: String, parameter: QueryParameter): Page<UserVo>
+ queryUsersByOrgAndQueryParameter(orgId: String, parameter: QueryParameter): Page<UserVo>
+ queryUsersByRole(roleId: String, parameter: QueryParameter): Page<UserVo>
+ removeAllOrgs(wrapper: One2Many<String, String>)
+ removeAllRoles(wrapper: One2Many<String, String>)
+ removeOrgs(wrapper: One2Many<String, String>)
+ removeRoles(wrapper: One2Many<String, String>)
+ resetAllPassword()
+ resetPassword(userIds: List<String>)
+ session(request: HttpServletRequest): UserSession
+ updateOrgs(wrapper: One2Many<String, String>)
+ updateRoles(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -VersionEntity937853716[ - label=< - -
- -
- -
(C)VersionEntity<V extends VersionVo>
# jpaVersion: Integer [0..1]
+ toVo(vo: VersionVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -WebSecurityAutoConfiguration784465747[ - label=< - -
- - - - - - - - -
- - - - - - - - - -
(C)WebSecurityAutoConfiguration
- applicationContext: ApplicationContext [1]
- auditLogPersistenterManager: AuditLogPersistenterManager [1]
- authenticationProvider: AuthenticationProvider [1]
- passwordEncoder: PasswordEncoder [1]
- runtimeService: RuntimeService [1]
- securityConfigureService: SecurityConfigureService [1]
- securityProperties: SecurityProperties [1]
- userDetailsService: UserDetailsService [1]
+ accessDeniedHandler(): AccessDeniedHandler
+ authenticationEntryPoint(): AuthenticationEntryPoint
+ authenticationFailureHandler(): AuthenticationFailureHandler
+ authenticationSuccessHandler(): AuthenticationSuccessHandler
+ jwkSource(): JWKSource<SecurityContext>
+ jwtDecoder(jwkSource: JWKSource<SecurityContext>): JwtDecoder
+ jwtEncoder(jwkSource: JWKSource<SecurityContext>): JwtEncoder
+ loginFormWebSecurityFilterChain(http: HttpSecurity): SecurityFilterChain
+ logoutSuccessHandler(): LogoutSuccessHandler
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_69111215 { - label=algorithm - labeljust=l - fillcolor="#d8d8d8" - style=filled - - WekaInitializer1768930355[ - label=< - -
- -
- - -
(C)WekaInitializer
- isInitialized: Boolean [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} - -subgraph cluster_87500896 { - label=engine - labeljust=l - fillcolor="#d8d8d8" - style=filled - - ArithmeticIndicatorProcessorEntity933953727[ - label=< - -
- -
- - -
(C)ArithmeticIndicatorProcessorEntity
- arithmetic: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ArithmeticIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ArithmeticParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)ArithmeticParameterProcessorEntity
- arithmetic: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ArithmeticParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -AutoCompileDeployedModelInitializer627004136[ - label=< - -
- - -
- - - - -
(C)AutoCompileDeployedModelInitializer
- executorFactoryService: ExecutorFactoryService [0..1]
- systemParameterService: SystemParameterService [0..1]
- autoCompileDeployed(executor: Executor, resources: List<ResourceAbstract>)
- autoCompileLast(executor: Executor, resources: List<ResourceAbstract>)
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgBinomial1908110995[ - label=< - -
- - - - - -
- -
(C)CfgBinomial
- confidenceLevel: Double [0..1]
- id: String [0..1]
- significanceLevel: Double [0..1]
- zLower: Double [0..1]
- zUpper: Double [0..1]
+ toVo(): CfgBinomialVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgBinomialServiceImpl395684880[ - label=< - -
- -
(C)CfgBinomialServiceImpl
+ findByUniqueKey(entity: CfgBinomial): CfgBinomial
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgBinomialWebController530250675[ - label=< - -
- -
(C)CfgBinomialWebController
+ significanceLevels(): List<Double>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgChiSquare1908110995[ - label=< - -
- - - - -
- -
(C)CfgChiSquare
- criticalValue: Double [0..1]
- dof: Integer [0..1]
- id: String [0..1]
- significanceLevel: Double [0..1]
+ toVo(): CfgChiSquareVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgChiSquareServiceImpl395684880[ - label=< - -
- -
(C)CfgChiSquareServiceImpl
+ findByUniqueKey(entity: CfgChiSquare): CfgChiSquare
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgChiSquareWebController530250675[ - label=< - -
- -
(C)CfgChiSquareWebController
+ significanceLevels(): List<Double>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgCustomerDistribution1908110995[ - label=< - -
- - - - - - -
- -
(C)CfgCustomerDistribution
- count: Long [0..1]
- id: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- scoreSegEnd: Double [0..1]
- scoreSegStart: Double [0..1]
+ toVo(): CfgCustomerDistributionVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgCustomerDistributionServiceImpl395684880[ - label=< - -
- -
(C)CfgCustomerDistributionServiceImpl
+ findByUniqueKey(entity: CfgCustomerDistribution): CfgCustomerDistribution
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgCustomerDistributionWebController530250675[ - label=< - -
(C)CfgCustomerDistributionWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgCutOffPoint1908110995[ - label=< - -
- - - - - - - -
- -
(C)CfgCutOffPoint
- from: String [0..1]
- id: String [0..1]
- name: String [0..1]
- roundingMode: RoundingMode [0..1]
- scale: Integer [0..1]
- step: String [0..1]
- to: String [0..1]
+ toVo(): CfgCutOffPointVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgCutOffPointServiceImpl395684880[ - label=< - -
- -
(C)CfgCutOffPointServiceImpl
+ findByUniqueKey(entity: CfgCutOffPoint): CfgCutOffPoint
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgCutOffPointWebController530250675[ - label=< - -
(C)CfgCutOffPointWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgDataExtractor1908110995[ - label=< - -
- - - - - - - -
- -
(C)CfgDataExtractor
- datasourceName: String [0..1]
- enable: Boolean [0..1]
- executeTimeWeight: Integer [0..1]
- groovyScript: String [0..1]
- id: String [0..1]
- name: String [0..1]
- order: Integer [0..1]
+ toVo(): CfgDataExtractorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgDataExtractorServiceImpl395684880[ - label=< - -
- - -
- - - -
(C)CfgDataExtractorServiceImpl
- dataExtractorManager: DataExtractorManager [1]
- resourceLoader: ResourceLoader [1]
+ findByUniqueKey(entity: CfgDataExtractor): CfgDataExtractor
+ generateSample()
+ test(object: CfgDataExtractor)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgDataExtractorWebController530250675[ - label=< - -
- -
- - -
(C)CfgDataExtractorWebController
- dsRepository: DsRepository [1]
+ generateSample()
+ test(object: CfgDataExtractor)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgModel1908110995[ - label=< - -
- - - - -
- -
(C)CfgModel
- id: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- type: ModelType [0..1]
+ toVo(): CfgModelVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgModelServiceImpl395684880[ - label=< - -
- -
- - -
(C)CfgModelServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ findByUniqueKey(entity: CfgModel): CfgModel
+ importFromScoreRecord()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgModelWebController530250675[ - label=< - -
- -
- -
(C)CfgModelWebController
- service: CfgModelService [1]
+ importFromScoreRecord()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgScale1908110995[ - label=< - -
- - - - - - -
- -
(C)CfgScale
- id: String [0..1]
- level: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- order: Integer [0..1]
- pd: Double [0..1]
+ toVo(): CfgScaleVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgScaleServiceImpl395684880[ - label=< - -
- -
(C)CfgScaleServiceImpl
+ findByUniqueKey(entity: CfgScale): CfgScale
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgScaleWebController530250675[ - label=< - -
- -
(C)CfgScaleWebController
+ getScaleLevelByModel(modelId: String): List<String>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgThreshold1908110995[ - label=< - -
- - - - - - - -
- -
(C)CfgThreshold
- color: String [0..1]
- id: String [0..1]
- level: Integer [0..1]
- name: String [0..1]
- qualitativeRange: String [0..1]
- quantitativeRange: String [0..1]
- range: String [0..1]
+ toVo(): CfgThresholdVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgThresholdServiceImpl395684880[ - label=< - -
- -
(C)CfgThresholdServiceImpl
+ findByUniqueKey(entity: CfgThreshold): CfgThreshold
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CfgThresholdWebController530250675[ - label=< - -
(C)CfgThresholdWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CodeAndNameMapping1890783695[ - label=< - -
- - -
- - - -
(C)CodeAndNameMapping
- code2NameMapping: Map<String, String> [0..*]
- name2CodeMapping: Map<String, String> [0..*]
+ addCode2Name(code: String, name: String)
+ addName2Code(name: String, code: String)
- createOrderableMap(): Map<String, String>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CoeBinomialHistory448837373[ - label=< - -
- - - - - - - - - - - - - - - - - -
- -
(C)CoeBinomialHistory
- cl: Double [0..1]
- count: Long [0..1]
- dLower: Double [0..1]
- dUpper: Double [0..1]
- defaultCount: Long [0..1]
- geLower: Double [0..1]
- leUpper: Double [0..1]
- level: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- ndAvg: Double [0..1]
- ndSd: Double [0..1]
- pd: Double [0..1]
- sl: Double [0..1]
- validateDate: String [0..1]
- zLower: Double [0..1]
- zUpper: Double [0..1]
+ toVo(): CoeBinomialHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CoeBinomialHistoryServiceImpl1696670170[ - label=< - -
(C)CoeBinomialHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CoeBinomialHistoryWebController1989524297[ - label=< - -
- -
- -
(C)CoeBinomialHistoryWebController
- coeBinomialHistoryRepository: CoeBinomialHistoryRepository [1]
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<CoeBinomialHistoryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CoeChiSquareHistory448837373[ - label=< - -
- - - - - - - - -
- -
(C)CoeChiSquareHistory
- chiSquare: Double [0..1]
- count: Long [0..1]
- defaultCount: Long [0..1]
- level: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- pd: Double [0..1]
- validateDate: String [0..1]
+ toVo(): CoeChiSquareHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CoeChiSquareHistoryServiceImpl1696670170[ - label=< - -
(C)CoeChiSquareHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -CoeChiSquareHistoryWebController1989524297[ - label=< - -
- -
- -
(C)CoeChiSquareHistoryWebController
- coeChiSquareHistoryRepository: CoeChiSquareHistoryRepository [1]
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<CoeChiSquareHistoryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConditionRangeIndicatorProcessorEntity933953727[ - label=< - -
- -
- - -
(C)ConditionRangeIndicatorProcessorEntity
- conditionRange: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ConditionRangeIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConditionRangeParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)ConditionRangeParameterProcessorEntity
- conditionRange: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ConditionRangeParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConfigurationInitializer1784937997[ - label=< - -
- - - - - -
- - -
(C)ConfigurationInitializer
- binomialService: CfgBinomialService [1]
- chiSquareService: CfgChiSquareService [1]
- cutOffPointService: CfgCutOffPointService [1]
- isInitialized: Boolean [0..1]
- thresholdService: CfgThresholdService [1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ConstantParameterEntity1765317618[ - label=< - -
- -
(C)ConstantParameterEntity
+ toVo(): ConstantParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DataExtractorManager1703384935[ - label=< - -
- - - -
- - - - -
(C)DataExtractorManager
- applicationContext: ApplicationContext [1]
- datasourceService: DatasourceService [1]
- repository: CfgDataExtractorRepository [1]
+ execute(runtimeContext: RuntimeContext, progressInfo: ProgressInfo)
+ execute(dataExtractor: CfgDataExtractor, runtimeContext: RuntimeContext, progressInfo: ProgressInfo)
- executeGroovyScript(dataExtractor: CfgDataExtractor, runtimeContext: RuntimeContext)
+ getTotalWeight(runtimeContext: RuntimeContext): int
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DateRangeIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)DateRangeIndicatorValidatorEntity
+ toVo(): DateRangeIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DateRangeParameterValidatorEntity1298926693[ - label=< - -
- -
(C)DateRangeParameterValidatorEntity
+ toVo(): DateRangeParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DecimalRangeIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)DecimalRangeIndicatorValidatorEntity
+ toVo(): DecimalRangeIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DecimalRangeParameterValidatorEntity1298926693[ - label=< - -
- -
(C)DecimalRangeParameterValidatorEntity
+ toVo(): DecimalRangeParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DecisionTable2CParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)DecisionTable2CParameterProcessorEntity
- decisionTable2C: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): DecisionTable2CParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DecisionTableParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)DecisionTableParameterProcessorEntity
- decisionTable: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): DecisionTableParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DecisionTreeParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)DecisionTreeParameterProcessorEntity
- decisionTree: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): DecisionTreeParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DefaultRecord448837373[ - label=< - -
- - -
- -
(C)DefaultRecord
- customId: String [0..1]
- defaultConfirmDate: Date [0..1]
+ toVo(): DefaultRecordVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DefaultRecordServiceImpl1696670170[ - label=< - -
(C)DefaultRecordServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DefaultRecordWebController1989524297[ - label=< - -
(C)DefaultRecordWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepArithmeticFactorDefineEntity227079487[ - label=< - -
- - -
- -
(C)DepArithmeticFactorDefineEntity
# formula: String [0..1]
# reverseFormula: String [0..1]
+ toVo(): DepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepDelayFactorDefineEntity227079487[ - label=< - -
- - -
- -
(C)DepDelayFactorDefineEntity
# delayFactorDefine: DepFactorDefineEntity [0..1]
# delayIssue: Integer [0..1]
+ toVo(): DepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepDifferentialFactorDefineEntity227079487[ - label=< - -
- - -
- -
(C)DepDifferentialFactorDefineEntity
# differentialDegree: Integer [0..1]
# differentialFactorDefine: DepFactorDefineEntity [0..1]
+ toVo(): DepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorDefineEntity730313619[ - label=< - -
- - - - - - - - - - -
- - -
(C)DepFactorDefineEntity
# code: String [0..1]
# description: String [0..1]
# factors: List<DepFactorEntity> [0..*]
# id: String [0..1]
# name: String [1]
# order: Integer [0..1]
# parent: DepFactorDefineEntity [0..1]
# period: Period [0..1]
# type: FactorDefineType [0..1]
# valueType: ValueType [0..1]
+ convertValue(value: String): Object
+ toVo(vo: DepFactorDefineVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorDefineServiceImpl1612402928[ - label=< - -
- -
(C)DepFactorDefineServiceImpl
+ findAllWithoutById(defineId: String): List<DepFactorDefineVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorDefineWebController1708048051[ - label=< - -
- -
(C)DepFactorDefineWebController
+ findAllWithoutById(defineId: String): List<DepFactorDefineVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorEntity730313619[ - label=< - -
- - - - - - -
- - -
(C)DepFactorEntity
# define: DepFactorDefineEntity [0..1]
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# value: String [0..1]
# year: Integer [0..1]
+ calUniqueKey(): PeriodWrapper
+ toVo(): DepFactorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorServiceImpl1612402928[ - label=< - -
- -
- - - - - -
(C)DepFactorServiceImpl
- depFactorDefineService: DepFactorDefineService [1]
- cal(selfEntity: DepArithmeticFactorDefineEntity): List<DepFactorVo>
- cal(selfEntity: DepDelayFactorDefineEntity): List<DepFactorVo>
- cal(selfEntity: DepDifferentialFactorDefineEntity): List<DepFactorVo>
+ findByFactorDefineId(defineId: String): List<DepFactorVo>
- isSamePeroid(factorDefineEntities: List<DepFactorDefineEntity>, period: Period): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorVo1490259760[ - label=< - -
- - - - - - -
- -
(C)DepFactorVo
# define: String [0..1]
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# value: String [0..1]
# year: Integer [0..1]
+ calUniqueKey(): PeriodWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFactorWebController1708048051[ - label=< - -
- -
(C)DepFactorWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<DepFactorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepFolderEntity227079487[ - label=< - -
- -
(C)DepFolderEntity
+ toVo(): DepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DepOriginalFactorDefineEntity227079487[ - label=< - -
- -
(C)DepOriginalFactorDefineEntity
+ toVo(): DepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Dictionary239479026[ - label=< - -
- - - - - - -
(C)Dictionary
- children: List<Dictionary> [0..*]
# code: String [0..1]
# description: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryEntity135801452[ - label=< - -
- - - - - - - - -
- - - - - - -
(C)DictionaryEntity
- children: List<DictionaryEntity> [0..*]
# code: String [0..1]
# description: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
- parent: DictionaryEntity [0..1]
# type: DictionaryType [0..1]
+ addChildren(children: DictionaryEntity...)
+ clearId()
+ deepClone(): Object
+ removeChildren(children: DictionaryEntity...)
+ resetParent(parent: DictionaryEntity)
+ toVo(vo: DictionaryVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryEntityEventHandler923004430[ - label=< - -
- - - - -
- - - - - - - - - -
(C)DictionaryEntityEventHandler
- dictionaryService: DictionaryService [1]
- indicatorService: IndicatorService [1]
- parameterService: ParameterService [1]
- userDefinedJavaClassFieldService: UserDefinedJavaClassFieldService [1]
# afterAdd(newEntity: DictionaryEntity)
# beforeDelete(oldEntity: DictionaryEntity)
# beforeDelete(iterable: Iterable<DictionaryEntity>)
# beforeUpdate(oldEntity: DictionaryEntity, newEntity: DictionaryEntity)
- updateDictionaryCodeAndName(oldEntity: ReleasableDictionaryEntity, newEntity: ReleasableDictionaryEntity)
- updateIndicatorValueType(oldEntity: ReleasableDictionaryEntity, newEntity: ReleasableDictionaryEntity)
- updateParameterValueType(oldEntity: ReleasableDictionaryEntity, newEntity: ReleasableDictionaryEntity)
- updateParentDictionaryEntityLastModifyDate(entity: DictionaryEntity)
- updateUserDefinedJavaClassFieldValueType(oldEntity: ReleasableDictionaryEntity, newEntity: ReleasableDictionaryEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -DictionaryServiceImpl673331586[ - label=< - -
- - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - -
(C)DictionaryServiceImpl
- applicationContext: ApplicationContext [1]
- dictionaryService: DictionaryService [1]
- jdbcTemplate: JdbcTemplate [1]
- jsonObjectMapper: ObjectMapper [1]
- libService: LibService [1]
- messageSource: MessageSource [1]
- modelService: ModelService [1]
- resourceService: ResourceService [1]
+ add(entity: DictionaryEntity): DictionaryEntity
- checkConstraint(action: AuditLogAction, entity: DictionaryEntity)
- checkSameCodeOrNameConstraint(action: AuditLogAction, entity: DictionaryEntity): boolean
+ createExample(contributionIds: Set<String>)
+ createExample(contributionId: String)
+ deepClone(id: String): DictionaryEntity
+ deepCloneNew(id: String): DictionaryEntity
+ deploy(id: String): DictionaryVo
+ exports(id: String): Dictionary
+ findReleasableDictionaryByCodeAndVersion(code: String, version: Integer): ReleasableDictionaryEntity
+ findReleasableDictionaryEntitiesByLibId(libId: String): List<ReleasableDictionaryEntity>
+ findReleasableDictionaryEntitiesByResourceId(resourceId: String): List<ReleasableDictionaryEntity>
+ generateUserDefinedJavaClassDictionarySampleJsonCode(dictionaryId: String): SourceCode
+ getAllDictionaryMap(locale: Locale): Map<String, String>
+ getAllDictionaryMapJsonString(locale: Locale): String
+ getVersionsByCode(code: String): Map<Integer, Integer>
+ imports(entity: DictionaryEntity)
- isSameNameFolderInParentFolder(action: AuditLogAction, entity: DictionaryEntity): boolean
+ listParemterHintsByUserDefinedJavaClassDictionaryId(dictionaryId: String): ParemterHints
+ loadCodeAndNameMappingByUserDefinedJavaClassDictionaryId(dictionaryId: String): CodeAndNameMapping
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: DictionaryEntity): DictionaryEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EmailIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)EmailIndicatorValidatorEntity
+ toVo(): EmailIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EmailParameterValidatorEntity1298926693[ - label=< - -
- -
(C)EmailParameterValidatorEntity
+ toVo(): EmailParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EmptyIndicatorProcessorEntity933953727[ - label=< - -
- -
(C)EmptyIndicatorProcessorEntity
+ toVo(): EmptyIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EmptyIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)EmptyIndicatorValidatorEntity
+ toVo(): EmptyIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EmptyParameterProcessorEntity1283902245[ - label=< - -
- -
(C)EmptyParameterProcessorEntity
+ toVo(): EmptyParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EmptyParameterValidatorEntity1298926693[ - label=< - -
- -
(C)EmptyParameterValidatorEntity
+ toVo(): EmptyParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EngineRuntime1798319057[ - label=< - -
- - - - - - - - - - - -
(C)EngineRuntime
+ compileByCode(resourceCode: String, version: Integer, wrapper: ResourceWrapper)
+ compileById(resourceId: String, wrapper: ResourceWrapper)
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, json: String): ResourceResult
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, subModelCode: String, json: String): ResourceResult
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, map: Map<String, Object>): ResourceResult
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, json: String): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, subModelCode: String, json: String): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, map: Map<String, Object>): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, subModelCode: String, map: Map<String, Object>): ResourceResult
+ getInstance(lang: String): EngineRuntime
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EnumDictionaryEntity135801452[ - label=< - -
- -
- - - -
(C)EnumDictionaryEntity
# items: List<EnumItemEntity> [0..*]
+ clearId()
+ deepClone(): Object
+ toVo(): EnumDictionaryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EnumItemEntity135801452[ - label=< - -
- - - - - - - -
- - - -
(C)EnumItemEntity
# config: String [0..1]
# description: String [0..1]
# dictionary: DictionaryEntity [0..1]
# id: String [0..1]
# order: Integer [0..1]
# title: String [0..1]
# value: String [0..1]
+ clearId()
+ deepClone(): Object
+ toVo(): EnumItemVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EnumItemServiceImpl673331586[ - label=< - -
- -
- - -
(C)EnumItemServiceImpl
- enumDictionaryRepository: EnumDictionaryRepository [1]
+ add(entity: EnumItemEntity): EnumItemEntity
+ update(primaryKey: String, entity: EnumItemEntity): EnumItemEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -EnumItemWebController275791269[ - label=< - -
(C)EnumItemWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutionFlowParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)ExecutionFlowParameterProcessorEntity
- executionFlow: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ExecutionFlowParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorBuilder305519897[ - label=< - -
- - - -
- - - - - -
(C)ExecutorBuilder
- executorMode: ExecutorMode [0..1]
- loaderMode: LoaderMode [0..1]
- url: String [0..1]
+ build(executorMode: ExecutorMode, loaderMode: LoaderMode, url: String): Executor
+ build(): Executor
+ executor(executorMode: ExecutorMode): ExecutorBuilder
+ loader(loaderMode: LoaderMode): ExecutorBuilder
+ url(url: String): ExecutorBuilder
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExecutorFactoryService1557633605[ - label=< - -
- -
(I)ExecutorFactoryService
+ getExecutor(): Executor
> - style=filled - margin=0 - shape=plaintext - fillcolor="#F1E5FD" -]; - -ExecutorFactoryServiceImpl1323134349[ - label=< - -
- - - - - - - - -
- - -
(C)ExecutorFactoryServiceImpl
- applicationContext: ApplicationContext [1]
- executor: Executor [0..1]
- lastExecutorMode: ExecutorMode [0..1]
- lastLoaderMode: LoaderMode [0..1]
- lastRemoteApiUrl: String [0..1]
- localLoader: LocalLoader [1]
- runtimeService: RuntimeService [1]
- systemParameterService: SystemParameterService [1]
- buildExecutor(): Executor
+ init()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ExpressionReplacer435449771[ - label=< - -
- - - - - - - -
(C)ExpressionReplacer
- _replace(expression: String): String
+ groovy(expression: String, valueType: String): String
+ groovyWithNoArgumentName(expression: String, valueType: String): String
+ placeholder(varName: String, fieldName: String): String
+ replace(expression: String, target: String, replacement: String): String
+ replace(expression: String, mapping: Map<String, String>): String
- replaceHolder(expression: String, wrapperPrefix: String, wrapperSufix: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FalseIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)FalseIndicatorValidatorEntity
+ toVo(): FalseIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FalseParameterValidatorEntity1298926693[ - label=< - -
- -
(C)FalseParameterValidatorEntity
+ toVo(): FalseParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FolderDictionaryEntity135801452[ - label=< - -
- -
(C)FolderDictionaryEntity
+ toVo(): FolderDictionaryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FolderLibEntity664884827[ - label=< - -
- -
(C)FolderLibEntity
+ toVo(): FolderLibVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FormulaUtil403516392[ - label=< - -
- - -
(C)FormulaUtil
+ extractVariableNames(expression: String): List<String>
+ getGroovyScript(expression: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Function339383092[ - label=< - -
- - - - - - - -
(C)Function
- body: String [0..1]
# description: String [0..1]
- enable: Boolean [0..1]
# id: String [0..1]
- mathXml: String [0..1]
# name: String [0..1]
# signature: String [0..1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FunctionEntity1787809494[ - label=< - -
- - - - - - - -
- - - -
(C)FunctionEntity
- body: String [0..1]
# description: String [0..1]
- enable: Boolean [0..1]
# id: String [0..1]
- mathXml: String [0..1]
# name: String [0..1]
- signature: String [0..1]
+ clearId()
+ deepClone(): Object
+ toVo(): FunctionVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FunctionEntityConverter1647731449[ - label=< - -
- - - - -
(C)FunctionEntityConverter
+ fromPo(po: Function): FunctionEntity
+ fromPo(pos: List<Function>): List<FunctionEntity>
+ toPo(entity: FunctionEntity): Function
+ toPo(entities: List<? extends FunctionEntity>): List<Function>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FunctionServiceImpl71452224[ - label=< - -
- - -
(C)FunctionServiceImpl
+ exports(): List<Function>
+ imports(entities: List<FunctionEntity>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -FunctionWebController1865763485[ - label=< - -
- - -
(C)FunctionWebController
+ exports(request: HttpServletRequest, response: HttpServletResponse)
+ imports(multipartFile: MultipartFile, locale: Locale)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GeneralResultHistory448837373[ - label=< - -
- - - - - - - - - - - - - - - - - - - - -
- -
(C)GeneralResultHistory
- ar: Double [0..1]
- arQualitative: Double [0..1]
- arQuantitative: Double [0..1]
- auc: Double [0..1]
- aucQualitative: Double [0..1]
- aucQuantitative: Double [0..1]
- binomial: CoeResult [0..1]
- chiSquare: CoeResult [0..1]
- defaultSampleCount: Long [0..1]
- executeMode: ExecuteMode [0..1]
- ks: Double [0..1]
- ksQualitative: Double [0..1]
- ksQuantitative: Double [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- psi: Double [0..1]
- runtimeParameters: List<RuntimeParameter> [0..*]
- svd: Double [0..1]
- totalSampleCount: Long [0..1]
- validateDate: String [0..1]
+ toVo(): GeneralResultHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GeneralResultHistoryServiceImpl1696670170[ - label=< - -
(C)GeneralResultHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GeneralResultHistoryWebController1989524297[ - label=< - -
- - -
- -
(C)GeneralResultHistoryWebController
- generalResultHistoryRepository: GeneralResultHistoryRepository [1]
- runtimeParameterRepository: RuntimeParameterRepository [1]
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<GeneralResultHistoryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GeneralSampleHistory448837373[ - label=< - -
- - - - - - - - - - - - - - -
- -
(C)GeneralSampleHistory
- beginDate: Date [0..1]
- customId: String [0..1]
- customName: String [0..1]
- defaultConfirmDate: Date [0..1]
- endDate: Date [0..1]
- level: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- pd: BigDecimal [0..1]
- score: BigDecimal [0..1]
- scoreQualitative: BigDecimal [0..1]
- scoreQuantitative: BigDecimal [0..1]
- status: String [0..1]
- validateDate: String [0..1]
+ toVo(): GeneralSampleHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GeneralSampleHistoryServiceImpl1696670170[ - label=< - -
(C)GeneralSampleHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GeneralSampleHistoryWebController1989524297[ - label=< - -
- -
(C)GeneralSampleHistoryWebController
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<GeneralSampleHistoryVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyEngineRuntime628020707[ - label=< - -
- - -
- - - - - - - - - - - -
(C)GroovyEngineRuntime
- codeGenerator: CodeGenerator [0..1]
- service: GroovyScriptEngineService [0..1]
+ compileByCode(resourceCode: String, version: Integer, wrapper: ResourceWrapper)
+ compileById(resourceId: String, wrapper: ResourceWrapper)
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, json: String): ResourceResult
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, subModelCode: String, json: String): ResourceResult
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, map: Map<String, Object>): ResourceResult
+ executeByCode(executor: Executor, resourceCode: String, version: Integer, wrapper: ResourceWrapper, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, json: String): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, subModelCode: String, json: String): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, map: Map<String, Object>): ResourceResult
+ executeById(executor: Executor, resourceId: String, wrapper: ResourceWrapper, subModelCode: String, map: Map<String, Object>): ResourceResult
- prepareParameter(executor: Executor, subModelCode: String, argument: Object): Map<String, Object>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyScriptEngineServiceImpl1036653823[ - label=< - -
- -
- - - - - - - - - -
(C)GroovyScriptEngineServiceImpl
- engine: GroovyScriptExecutor [0..1]
+ eval(script: String): Object
+ eval(script: String, key: String, value: Object): Object
+ eval(script: String, context: Map<String, Object>): Object
+ eval(script: String, binding: Binding): Object
+ execute(script: String): Map<String, Object>
+ execute(script: String, key: String, value: Object): Map<String, Object>
+ execute(script: String, context: Map<String, Object>): Map<String, Object>
+ execute(script: String, binding: Binding): Map<String, Object>
+ validate(script: String): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyScriptExecutor1036653823[ - label=< - -
- -
- - - - - - - - - - -
(C)GroovyScriptExecutor
- compilableEngine: Compilable [0..1]
+ eval(script: String): Object
+ eval(script: String, key: String, value: Object): Object
+ eval(script: String, context: Map<String, Object>): Object
+ eval(script: String, binding: Binding): Object
+ execute(script: String): Map<String, Object>
+ execute(script: String, key: String, value: Object): Map<String, Object>
+ execute(script: String, context: Map<String, Object>): Map<String, Object>
+ execute(script: String, binding: Binding): Map<String, Object>
- getCompiledScript(script: String): CompiledScript
+ validate(script: String): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyScriptIndicatorProcessorEntity933953727[ - label=< - -
- -
- - -
(C)GroovyScriptIndicatorProcessorEntity
- groovyScript: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): GroovyScriptIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovyScriptParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)GroovyScriptParameterProcessorEntity
- groovyScript: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): GroovyScriptParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -GroovySourceCodeGenerator305318642[ - label=< - -
- -
- - - - - -
(C)GroovySourceCodeGenerator
- cache: Map<String, SourceCode> [0..*]
- _generateSourceCode(wrapper: ResourceWrapper): SourceCode
+ generateSourceCodeByCode(resourceCode: String, version: Integer, wrapper: ResourceWrapper): SourceCode
+ generateSourceCodeById(resourceId: String, wrapper: ResourceWrapper): SourceCode
- getCacheKey(code: String, version: Integer): String
- getStaticMethod(className: String): TemplateHashModel
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -HttpRequestIndicatorProcessorEntity933953727[ - label=< - -
- - - - - - - - - - - - -
- - -
(C)HttpRequestIndicatorProcessorEntity
- httpAuthApiAddTo: String [0..1]
- httpAuthApiValue: String [0..1]
- httpAuthApikey: String [0..1]
- httpAuthBasicPassword: String [0..1]
- httpAuthBasicUsername: String [0..1]
- httpAuthBearerToken: String [0..1]
- httpAuthType: HttpAuthorizationType [0..1]
- httpBody: String [0..1]
- httpMethod: HttpMethodType [0..1]
- httpParams: String [0..1]
- httpResponseMapping: String [0..1]
- httpUrl: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): HttpRequestIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -HttpRequestParameterProcessorEntity1283902245[ - label=< - -
- - - - - - - - - - - - -
- - -
(C)HttpRequestParameterProcessorEntity
- httpAuthApiAddTo: String [0..1]
- httpAuthApiValue: String [0..1]
- httpAuthApikey: String [0..1]
- httpAuthBasicPassword: String [0..1]
- httpAuthBasicUsername: String [0..1]
- httpAuthBearerToken: String [0..1]
- httpAuthType: HttpAuthorizationType [0..1]
- httpBody: String [0..1]
- httpMethod: HttpMethodType [0..1]
- httpParams: String [0..1]
- httpResponseMapping: String [0..1]
- httpUrl: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): HttpRequestParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -HttpRequestUtil435449771[ - label=< - -
- - - - - - - - -
(C)HttpRequestUtil
+ get(url: String): String
+ get(url: String, key: String, value: String): String
+ get(url: String, parameters: Map<String, String>): String
+ get(url: String, encodedParametersString: String): String
- getEncodedUrl(url: String, encodedParametersString: String): URL
+ post(url: String, key: String, value: String, data: String): String
+ post(url: String, parameters: Map<String, String>, data: String): String
+ post(url: String, encodedParametersString: String, data: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -InOptionParameterEntity1765317618[ - label=< - -
- -
- - - -
(C)InOptionParameterEntity
# options: List<ParameterInOptionItemEntity> [0..*]
+ clearId()
+ deepClone(): Object
+ toVo(): InOptionParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -InParameterEntity1765317618[ - label=< - -
- -
(C)InParameterEntity
+ toVo(): InParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -InSubOutParameterEntity1765317618[ - label=< - -
- -
(C)InSubOutParameterEntity
+ toVo(): InSubOutParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepArithmeticFactorDefineEntity227079487[ - label=< - -
- -
- -
(C)IndepArithmeticFactorDefineEntity
# formula: String [0..1]
+ toVo(): IndepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepDelayFactorDefineEntity227079487[ - label=< - -
- - -
- -
(C)IndepDelayFactorDefineEntity
# delayFactorDefine: IndepFactorDefineEntity [0..1]
# delayIssue: Integer [0..1]
+ toVo(): IndepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepDifferentialFactorDefineEntity227079487[ - label=< - -
- - -
- -
(C)IndepDifferentialFactorDefineEntity
# differentialDegree: Integer [0..1]
# differentialFactorDefine: IndepFactorDefineEntity [0..1]
+ toVo(): IndepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorDefineEntity730313619[ - label=< - -
- - - - - - - - - - -
- - -
(C)IndepFactorDefineEntity
# code: String [0..1]
# description: String [0..1]
# factors: List<IndepFactorEntity> [0..*]
# id: String [0..1]
# name: String [1]
# order: Integer [0..1]
# parent: IndepFactorDefineEntity [0..1]
# period: Period [0..1]
# type: FactorDefineType [0..1]
# valueType: ValueType [0..1]
+ convertValue(value: String): Object
+ toVo(vo: IndepFactorDefineVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorDefineServiceImpl1612402928[ - label=< - -
- -
(C)IndepFactorDefineServiceImpl
+ findAllWithoutById(defineId: String): List<IndepFactorDefineVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorDefineWebController1708048051[ - label=< - -
- -
(C)IndepFactorDefineWebController
+ findAllWithoutById(defineId: String): List<IndepFactorDefineVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorEntity730313619[ - label=< - -
- - - - - - -
- - -
(C)IndepFactorEntity
# define: IndepFactorDefineEntity [0..1]
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# value: String [0..1]
# year: Integer [0..1]
+ calUniqueKey(): PeriodWrapper
+ toVo(): IndepFactorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorServiceImpl1612402928[ - label=< - -
- -
- - - - - -
(C)IndepFactorServiceImpl
- indepFactorDefineService: IndepFactorDefineService [1]
- cal(selfEntity: IndepArithmeticFactorDefineEntity): List<IndepFactorVo>
- cal(selfEntity: IndepDelayFactorDefineEntity): List<IndepFactorVo>
- cal(selfEntity: IndepDifferentialFactorDefineEntity): List<IndepFactorVo>
+ findByDefineId(defineId: String): List<IndepFactorVo>
- isSamePeroid(factorDefineEntities: List<IndepFactorDefineEntity>, period: Period): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorVo1490259760[ - label=< - -
- - - - - - -
- -
(C)IndepFactorVo
# define: String [0..1]
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# value: String [0..1]
# year: Integer [0..1]
+ calUniqueKey(): PeriodWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFactorWebController1708048051[ - label=< - -
- -
(C)IndepFactorWebController
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<IndepFactorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepFolderEntity227079487[ - label=< - -
- -
(C)IndepFolderEntity
+ toVo(): IndepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndepOriginalFactorDefineEntity227079487[ - label=< - -
- -
(C)IndepOriginalFactorDefineEntity
+ toVo(): IndepFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorEntity664884827[ - label=< - -
- - - - - - - - - - - - - - - -
- - - - -
(C)IndicatorEntity
# code: String [0..1]
# defaultValue: String [0..1]
# description: String [0..1]
# id: String [0..1]
# lib: LibEntity [0..1]
# name: String [0..1]
# order: Integer [0..1]
# processors: List<IndicatorProcessorEntity> [0..*]
# type: IndicatorType [0..1]
# validators: List<IndicatorValidatorEntity> [0..*]
# valueRoundingMode: RoundingMode [0..1]
# valueScale: Integer [0..1]
# valueType: String [0..1]
# valueTypeIsList: Boolean [0..1]
# valueTypeVersion: Integer [0..1]
+ clearId()
+ deepClone(): Object
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(vo: IndicatorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorEntityEventHandler923004430[ - label=< - -
- - - - -
- - - - - - - - -
(C)IndicatorEntityEventHandler
- indicatorProcessorService: IndicatorProcessorService [1]
- libService: LibService [1]
- parameterService: ParameterService [1]
- scoreCardVarService: ScoreCardVarService [1]
# afterAdd(newEntity: IndicatorEntity)
# beforeDelete(oldEntity: IndicatorEntity)
# beforeDelete(iterable: Iterable<IndicatorEntity>)
# beforeUpdate(oldEntity: IndicatorEntity, newEntity: IndicatorEntity)
- updateIndicatorProcessor(oldEntity: IndicatorEntity, newEntity: IndicatorEntity)
- updateLibEntityLastModifyDate(entity: IndicatorEntity)
- updateParameterIndicatorCode(oldEntity: IndicatorEntity, newEntity: IndicatorEntity)
- updateScoreCardVarIndicatorCode(oldEntity: IndicatorEntity, newEntity: IndicatorEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorIndicatorEntity1316713020[ - label=< - -
- -
(C)IndicatorIndicatorEntity
+ toVo(): IndicatorIndicatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorLibEntity664884827[ - label=< - -
- -
- - - -
(C)IndicatorLibEntity
# indicators: List<IndicatorEntity> [0..*]
+ clearId()
+ deepClone(): Object
+ toVo(): IndicatorLibVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorParameterEntity1765317618[ - label=< - -
- - - -
- -
(C)IndicatorParameterEntity
# indicatorCode: String [0..1]
# libCode: String [0..1]
# libVersion: Integer [0..1]
+ toVo(): IndicatorParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorProcessorEntity664884827[ - label=< - -
- - - - - -
- - - - -
(C)IndicatorProcessorEntity
# description: String [0..1]
# id: String [0..1]
# indicator: IndicatorEntity [0..1]
# order: Integer [0..1]
# type: ProcessorType [0..1]
+ clearId()
+ deepClone(): Object
+ replace(mapping: Map<String, String>): boolean
+ toVo(vo: IndicatorProcessorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorProcessorEntityEventHandler923004430[ - label=< - -
- -
- - - - - -
(C)IndicatorProcessorEntityEventHandler
- indicatorService: IndicatorService [1]
# afterAdd(newEntity: IndicatorProcessorEntity)
# beforeDelete(oldEntity: IndicatorProcessorEntity)
# beforeDelete(iterable: Iterable<IndicatorProcessorEntity>)
# beforeUpdate(oldEntity: IndicatorProcessorEntity, newEntity: IndicatorProcessorEntity)
- updateIndicatorEntityLastModifyDate(entity: IndicatorProcessorEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorProcessorServiceImpl875530703[ - label=< - -
- - - -
- - - - - - - - -
(C)IndicatorProcessorServiceImpl
- dictionaryService: DictionaryService [1]
- indicatorService: IndicatorService [1]
- jdbcTemplate: JdbcTemplate [1]
+ add(entity: IndicatorProcessorEntity): IndicatorProcessorEntity
+ autoMatch(autoMatchObjectProperties: AutoMatchObjectProperties): List<ObjectProperty>
+ executeSql(request: SqlQueryRequest): SqlQueryResult
+ listObejctPropertiesByProcessorId(processorId: String): List<ObjectProperty>
- matchName(name: String, cache: Map<String, String>): String
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: IndicatorProcessorEntity): IndicatorProcessorEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorProcessorWebController1366042092[ - label=< - -
- -
- - - - -
(C)IndicatorProcessorWebController
- indicatorService: IndicatorService [1]
+ autoMatch(autoMatchObjectProperties: AutoMatchObjectProperties): List<ObjectProperty>
+ executeSql(request: SqlQueryRequest): SqlQueryResult
+ listObejctPropertiesByProcessorId(processorId: String): List<ObjectProperty>
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<IndicatorProcessorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorServiceImpl875530703[ - label=< - -
- - - - -
- - - - - - - - - - - - - - -
(C)IndicatorServiceImpl
- applicationContext: ApplicationContext [1]
- dictionaryService: DictionaryService [1]
- indicatorProcessorService: IndicatorProcessorService [1]
- libService: LibService [1]
+ add(entity: IndicatorEntity): IndicatorEntity
+ deepClone(indicatorId: String): IndicatorEntity
+ findByLibCodeAndVersion(libCode: String, libVersion: Integer): List<IndicatorEntity>
+ findByLibCodeAndVersionAndIndicatorCode(libCode: String, libVersion: Integer, indicatorCode: String): IndicatorEntity
+ findIndicatorsByIndicatorId(indicatorId: String): List<IndicatorEntity>
+ importFromCsv(libId: String, csvContent: String, splitChar: String)
+ importFromDictionary(libId: String, dictionaryId: String)
+ listObejctPropertiesByIndicatorId(indicatorId: String): List<ObjectProperty>
+ listParemterHintsByIndicatorId(indicatorId: String): ParemterHints
+ loadCodeAndNameMappingByIndicatorId(indicatorId: String): CodeAndNameMapping
- normalize(entity: IndicatorEntity)
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: IndicatorEntity): IndicatorEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorValidatorEntity664884827[ - label=< - -
- - - - - - -
- - - -
(C)IndicatorValidatorEntity
# description: String [0..1]
# id: String [0..1]
# indicator: IndicatorEntity [0..1]
# order: Integer [0..1]
# tip: String [0..1]
# type: ValidatorType [0..1]
+ clearId()
+ deepClone(): Object
+ toVo(vo: IndicatorValidatorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorValidatorEntityEventHandler923004430[ - label=< - -
- -
- - - - - -
(C)IndicatorValidatorEntityEventHandler
- indicatorService: IndicatorService [1]
# afterAdd(newEntity: IndicatorValidatorEntity)
# beforeDelete(oldEntity: IndicatorValidatorEntity)
# beforeDelete(iterable: Iterable<IndicatorValidatorEntity>)
# beforeUpdate(oldEntity: IndicatorValidatorEntity, newEntity: IndicatorValidatorEntity)
- updateIndicatorEntityLastModifyDate(entity: IndicatorValidatorEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorValidatorServiceImpl875530703[ - label=< - -
- -
(C)IndicatorValidatorServiceImpl
+ add(entity: IndicatorValidatorEntity): IndicatorValidatorEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IndicatorValidatorWebController1366042092[ - label=< - -
(C)IndicatorValidatorWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IntegerRangeIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)IntegerRangeIndicatorValidatorEntity
+ toVo(): IntegerRangeIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IntegerRangeParameterValidatorEntity1298926693[ - label=< - -
- -
(C)IntegerRangeParameterValidatorEntity
+ toVo(): IntegerRangeParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -InterfaceIndicatorEntity1316713020[ - label=< - -
- -
(C)InterfaceIndicatorEntity
+ toVo(): InterfaceIndicatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -IntermediateParameterEntity1765317618[ - label=< - -
- -
(C)IntermediateParameterEntity
+ toVo(): IntermediateParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -JavaClassDictionaryEntity135801452[ - label=< - -
- -
- - -
(C)JavaClassDictionaryEntity
- javaClassName: String [0..1]
+ deepClone(): Object
+ toVo(): JavaClassDictionaryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -JpaEntityPersistentEventListener1597923178[ - label=< - -
- - - - - - - - - - - - -
- - -
(C)JpaEntityPersistentEventListener
- dictionaryEntityEventHandler: DictionaryEntityEventHandler [1]
- handlers: Map<Class<?>, AbstractJpaEntityPersistentEventHandler<?>> [0..*]
- indicatorEntityEventHandler: IndicatorEntityEventHandler [1]
- indicatorProcessorEntityEventHandler: IndicatorProcessorEntityEventHandler [1]
- indicatorValidatorEntityEventHandler: IndicatorValidatorEntityEventHandler [1]
- libEntityEventHandler: LibEntityEventHandler [1]
- modelEntityEventHandler: ModelEntityEventHandler [1]
- parameterEntityEventHandler: ParameterEntityEventHandler [1]
- parameterProcessorEntityEventHandler: ParameterProcessorEntityEventHandler [1]
- parameterValidatorEntityEventHandler: ParameterValidatorEntityEventHandler [1]
- resourceEntityEventHandler: ResourceEntityEventHandler [1]
- userDefinedJavaClassFieldEntityEventHandler: UserDefinedJavaClassFieldEntityEventHandler [1]
+ init()
+ jpaEntityPersistentEventListener(event: JpaEntityPersistentEvent)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LengthRangeIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)LengthRangeIndicatorValidatorEntity
+ toVo(): LengthRangeIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LengthRangeParameterValidatorEntity1298926693[ - label=< - -
- -
(C)LengthRangeParameterValidatorEntity
+ toVo(): LengthRangeParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Lib2004919895[ - label=< - -
- - - - - - - -
(C)Lib
- children: List<Lib> [0..*]
# code: String [0..1]
# description: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# testCases: List<LibTestCase> [0..*]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibEntity664884827[ - label=< - -
- - - - - - - - - -
- - - - - - -
(C)LibEntity
- children: List<LibEntity> [0..*]
# code: String [0..1]
# description: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
- parent: LibEntity [0..1]
# testCases: List<LibTestCaseEntity> [0..*]
# type: LibType [0..1]
+ addChildren(children: LibEntity...)
+ clearId()
+ deepClone(): Object
+ removeChildren(children: LibEntity...)
+ resetParent(parent: LibEntity)
+ toVo(vo: LibVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibEntityEventHandler923004430[ - label=< - -
- - - - -
- - - - - - - - - -
(C)LibEntityEventHandler
- jdbcTemplate: JdbcTemplate [1]
- libService: LibService [1]
- parameterService: ParameterService [1]
- scoreCardVarService: ScoreCardVarService [1]
# afterAdd(newEntity: LibEntity)
# beforeDelete(oldEntity: LibEntity)
# beforeDelete(iterable: Iterable<LibEntity>)
# beforeUpdate(oldEntity: LibEntity, newEntity: LibEntity)
- deleteTestCase(oldEntity: LibEntity)
- updateIndicatorParameterLibCode(oldEntity: LibEntity, newEntity: LibEntity)
- updateLibCodeAndName(oldEntity: LibEntity, newEntity: LibEntity)
- updateParentLibEntityLastModifyDate(entity: LibEntity)
- updateScoreCardIndicatorVarLibCode(oldEntity: LibEntity, newEntity: LibEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibServiceImpl875530703[ - label=< - -
- - - - -
- - - - - - - - - - - - - - - - - - -
(C)LibServiceImpl
- applicationContext: ApplicationContext [1]
- indicatorService: IndicatorService [1]
- modelService: ModelService [1]
- resourceService: ResourceService [1]
+ add(entity: LibEntity): LibEntity
- checkConstraint(action: AuditLogAction, entity: LibEntity)
- checkSameCodeOrNameConstraint(action: AuditLogAction, entity: LibEntity): boolean
+ createExample(contributionIds: Set<String>)
+ createExample(contributionId: String)
+ deepClone(id: String): LibEntity
+ deepCloneNew(id: String): LibEntity
+ deploy(id: String): LibEntity
+ exports(id: String): Lib
+ findIndicatorLibByIndicatorId(indicatorId: String): IndicatorLibEntity
+ findReleasableLibEntitiesByResourceId(resourceId: String): List<ReleasableLibEntity>
+ getByCodeAndVersion(code: String, version: Integer): ReleasableLibEntity
+ getVersionsByCode(code: String): Map<Integer, Integer>
+ imports(entity: LibEntity)
- isSameNameFolderInParentFolder(action: AuditLogAction, entity: LibEntity): boolean
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: LibEntity): LibEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibTestCaseEntity1315290368[ - label=< - -
- -
- -
(C)LibTestCaseEntity
# owner: LibEntity [0..1]
+ toVo(): LibTestCaseVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibTestCaseParameterBuilder637638157[ - label=< - -
- - -
- - - -
(C)LibTestCaseParameterBuilder
# indicatorService: IndicatorService [1]
- testCaseParameterService: TestCaseParameterService [1]
- buildTestCaseParameterList(list: List<TestCaseParameterWrapper>, parentNode: TestCaseParameterWrapper, indicators: List<IndicatorEntity>)
+ buildTestCaseParameterWrappers(ownerId: String, testCaseId: String): List<TestCaseParameterWrapper>
- mergeTestCaseParameterList(testCaseId: String, wrappers: List<TestCaseParameterWrapper>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LibWebController1366042092[ - label=< - -
- - -
- - - - - - - - - -
(C)LibWebController
- indicatorService: IndicatorService [1]
- messageSource: MessageSource [1]
+ createExample(contributionIds: Set<String>)
+ deepClone(id: String)
+ deepCloneNew(id: String)
+ deploy(id: String): LibVo
+ exports(id: String, request: HttpServletRequest, response: HttpServletResponse)
+ getVersionsByCode(code: String): List<VersionWarpper>
+ imports(multipartFile: MultipartFile, locale: Locale)
+ listLibExampleContributionItems(request: HttpServletRequest, response: HttpServletResponse, locale: Locale): List<LibExampleWrapper>
- updateLibExampleContributionItemTitle(items: List<LibExampleWrapper>, locale: Locale)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LocalExecutor1836259932[ - label=< - -
- -
- - - - - - - - - - - - - - - - -
(C)LocalExecutor
- loader: Loader [0..1]
+ compileByCode(resourceCode: String, version: Integer)
+ compileByCodeForTest(resourceCode: String, version: Integer)
+ compileById(resourceId: String)
+ compileByIdForTest(resourceId: String)
+ executeByCode(resourceCode: String, version: Integer, json: String): ResourceResult
+ executeByCode(resourceCode: String, version: Integer, subModelCode: String, json: String): ResourceResult
+ executeByCode(resourceCode: String, version: Integer, map: Map<String, Object>): ResourceResult
+ executeByCode(resourceCode: String, version: Integer, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeByCodeForTest(resourceCode: String, version: Integer, map: Map<String, Object>): ResourceResult
+ executeByCodeForTest(resourceCode: String, version: Integer, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeById(resourceId: String, json: String): ResourceResult
+ executeById(resourceId: String, subModelCode: String, json: String): ResourceResult
+ executeById(resourceId: String, map: Map<String, Object>): ResourceResult
+ executeById(resourceId: String, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeByIdForTest(resourceId: String, map: Map<String, Object>): ResourceResult
+ executeByIdForTest(resourceId: String, subModelCode: String, map: Map<String, Object>): ResourceResult
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -LocalLoaderImpl1323134349[ - label=< - -
- - -
- - - - -
(C)LocalLoaderImpl
- applicationContext: ApplicationContext [1]
- cache: Map<String, ResourceWrapper> [0..*]
+ cleanCache()
- getCacheKey(code: String, version: Integer): String
+ getResourceByCode(resourceCode: String, version: Integer): ResourceWrapper
+ getResourceById(resourceId: String): ResourceWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MathFormulaIndicatorProcessorEntity933953727[ - label=< - -
- -
- - -
(C)MathFormulaIndicatorProcessorEntity
- mathFormula: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): MathFormulaIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MathFormulaParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)MathFormulaParameterProcessorEntity
- mathFormula: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): MathFormulaParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MigrationServiceImpl1536246856[ - label=< - -
- - - - - -
- - - -
(C)MigrationServiceImpl
- dictionaryService: DictionaryService [1]
- libService: LibService [1]
- modelService: ModelService [1]
- resourceService: ResourceService [1]
- testCaseService: TestCaseService [1]
+ export(): AllInOne
+ imports(allInOne: AllInOne)
+ removeAll()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -MigrationWebController1886436885[ - label=< - -
- -
- - - - - -
(C)MigrationWebController
- migrationService: MigrationService [1]
+ createExample(locale: Locale)
+ export(request: HttpServletRequest, response: HttpServletResponse)
+ imports(multipartFile: MultipartFile, locale: Locale)
+ imports(filePath: String, locale: Locale)
+ removeAll()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Model1713404237[ - label=< - -
- - - - - - - - - - - -
- - - - - -
(C)Model
# category: ModelCategory [0..1]
# children: List<Model> [0..*]
# code: String [0..1]
# description: String [0..1]
# enable: Boolean [0..1]
# executeMode: ExecuteMode [0..1]
# fullName: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# parameters: List<Parameter> [0..*]
+ buildFullName()
+ buildFullName(prefix: String)
+ getParameterByOptionParameterCode(code: String): Parameter
+ getParameterOptionsByOptionParameterCode(code: String): List<ParameterInOptionItem>
- getRecursiveParameters(model: Model): List<Parameter>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelAnalysisFactorEntity730313619[ - label=< - -
- - - - - - - -
- -
(C)ModelAnalysisFactorEntity
# coefficient: Double [0..1]
# coefficientSe: Double [0..1]
# id: String [0..1]
# model: ModelEntity [0..1]
# order: Integer [0..1]
# t: Double [0..1]
# variable: String [0..1]
+ toVo(): ModelAnalysisFactorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelAnalysisFactorServiceImpl1612402928[ - label=< - -
(C)ModelAnalysisFactorServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelAnalysisFactorWebController1708048051[ - label=< - -
(C)ModelAnalysisFactorWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelEntity1858028169[ - label=< - -
- - - - - - - - - - - - -
- - - - - - - -
(C)ModelEntity
# category: ModelCategory [0..1]
# children: List<ModelEntity> [0..*]
# code: String [0..1]
# description: String [0..1]
- enable: Boolean [0..1]
# executeMode: ExecuteMode [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# parameters: List<ParameterEntity> [0..*]
# parent: ModelEntity [0..1]
# resource: ResourceEntity [0..1]
+ addChildren(children: ModelEntity...)
+ clearId()
+ deepClone(): Object
+ removeChildren(children: ModelEntity...)
+ resetParent(parent: ModelEntity)
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(): ModelVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelEntityEventHandler923004430[ - label=< - -
- - -
- - - - - -
(C)ModelEntityEventHandler
- modelService: ModelService [1]
- resourceService: ResourceService [1]
# afterAdd(newEntity: ModelEntity)
# beforeDelete(oldEntity: ModelEntity)
# beforeDelete(iterable: Iterable<ModelEntity>)
# beforeUpdate(oldEntity: ModelEntity, newEntity: ModelEntity)
- updateParentModelEntityLastModifyDate(entity: ModelEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelServiceImpl1389029299[ - label=< - -
- -
- - - - - - - - - - - - - - - - - - -
(C)ModelServiceImpl
- applicationContext: ApplicationContext [1]
+ add(entity: ModelEntity): ModelEntity
+ deepClone(modelId: String): ModelEntity
+ findModelByParameterId(parameterId: String): ModelEntity
+ findModelByParameterProcessorId(processorId: String): ModelEntity
+ findModelByParentIdAndCodeOrName(parentId: String, code: String, name: String): List<ModelEntity>
+ findModelWithSubModelsByResourceId(resourceId: String): List<ModelVo>
+ findRootModelByModelId(modelId: String): ModelEntity
+ findRootModelByParameterId(parameterId: String): ModelEntity
+ findRootModelByParameterProcessorId(processorId: String): ModelEntity
+ findRootModelByResourceId(resourceId: String): ModelEntity
+ findSubModels(modelId: String): List<ModelEntity>
+ getAllParameters(modelId: String): List<ParameterEntity>
+ getModeAbstractByParameterProcessor(parameterProcessorId: String): List<ModelAbstract>
+ getModelWithSubModels(modelId: String): List<ModelEntity>
- recursiveGetSubModels(model: ModelEntity, result: List<ModelEntity>)
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: ModelEntity): ModelEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelServiceImpl1612402928[ - label=< - -
- - - - - - -
- - - - - - - - - - -
(C)ModelServiceImpl
- depFactorService: DepFactorService [1]
- indepFactorDefineService: IndepFactorDefineService [1]
- indepFactorService: IndepFactorService [1]
- jdbcTemplate: JdbcTemplate [1]
- modelAnalysisFactorService: ModelAnalysisFactorService [1]
- namedParameterJdbcTemplate: NamedParameterJdbcTemplate [1]
+ addIndepFactorDefines(modelId: String, indepFactorDefineIds: Set<String>)
- buildArffString(modelCode: String, columns: List<Column>, records: Map<PeriodWrapper, Map<String, Object>>): String
+ buildModel(modelId: String)
+ doBuildModel(modelEntity: ModelEntity): String
+ findIndepFactorDefinesByModelId(modelId: String): List<IndepFactorDefineVo>
+ findModelAnalysisFactorByModelId(modelId: String): List<ModelAnalysisFactorVo>
- parseFormula(output: String): String
- parseModelAnalysisEntity(output: String): ModelEntity
- parseModelAnalysisFactorEntity(output: String): List<ModelAnalysisFactorEntity>
+ removeIndepFactorDefines(modelId: String, indepFactorDefineIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelTestCaseEntity1315290368[ - label=< - -
- -
(C)ModelTestCaseEntity
+ toVo(): ModelTestCaseVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelTestCaseParameterBuilder637638157[ - label=< - -
- - - -
- - - -
(C)ModelTestCaseParameterBuilder
# indicatorService: IndicatorService [1]
- modelService: ModelService [1]
- testCaseParameterService: TestCaseParameterService [1]
- buildTestCaseParameterTree(tree: List<TestCaseParameterWrapper>, parentNode: TestCaseParameterWrapper, modelEntity: ModelEntity)
+ buildTestCaseParameterWrappers(ownerId: String, testCaseId: String): List<TestCaseParameterWrapper>
- mergeTestCaseParameterTree(testCaseId: String, wrappers: List<TestCaseParameterWrapper>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ModelWebController1708048051[ - label=< - -
- - - - - -
(C)ModelWebController
+ addIndepFactors(wrapper: One2Many<String, String>)
+ buildModel(modelId: String)
+ findIndepFactorDefinesByModelId(modelId: String): List<IndepFactorDefineVo>
+ findModelAnalysisFactorByModelId(modelId: String): List<ModelAnalysisFactorVo>
+ removeIndepFactors(wrapper: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotEmptyIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)NotEmptyIndicatorValidatorEntity
+ toVo(): NotEmptyIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NotEmptyParameterValidatorEntity1298926693[ - label=< - -
- -
(C)NotEmptyParameterValidatorEntity
+ toVo(): NotEmptyParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NumberRangeIndicatorProcessorEntity933953727[ - label=< - -
- - -
- - -
(C)NumberRangeIndicatorProcessorEntity
- numberRange: String [0..1]
- numberRangeVar: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): NumberRangeIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NumberRangeParameterProcessorEntity1283902245[ - label=< - -
- - -
- - -
(C)NumberRangeParameterProcessorEntity
- numberRange: String [0..1]
- numberRangeVar: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): NumberRangeParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -NumberRangeScoreCardVarEntity1748894114[ - label=< - -
- -
- - -
(C)NumberRangeScoreCardVarEntity
- numberRange: String [0..1]
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(): NumberRangeScoreCardVarVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ObjectPropertiesIndicatorProcessorEntity933953727[ - label=< - -
- - -
- - -
(C)ObjectPropertiesIndicatorProcessorEntity
- objectCondition: String [0..1]
- objectProperties: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ObjectPropertiesIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ObjectPropertiesParameterProcessorEntity1283902245[ - label=< - -
- - -
- - -
(C)ObjectPropertiesParameterProcessorEntity
- objectCondition: String [0..1]
- objectProperties: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): ObjectPropertiesParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ObjectProperty1952415362[ - label=< - -
- - - -
- -
(C)ObjectProperty
- code: String [0..1]
- expression: String [0..1]
- name: String [0..1]
+ replace(mapping: Map<String, String>): boolean
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OptionScoreCardVarEntity1748894114[ - label=< - -
- -
- - -
(C)OptionScoreCardVarEntity
- option: String [0..1]
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(): OptionScoreCardVarVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OptionValueParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)OptionValueParameterProcessorEntity
- optionCode: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): OptionValueParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -OutParameterEntity1765317618[ - label=< - -
- - -
(C)OutParameterEntity
+ toInSubOutParameterEntity(): InSubOutParameterEntity
+ toVo(): OutParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterAndValueTypeServiceImpl25391821[ - label=< - -
- - - - - - -
- - - - - - - -
(C)ParameterAndValueTypeServiceImpl
- dictionaryService: DictionaryService [1]
- indicatorService: IndicatorService [1]
- libService: LibService [1]
- messageSource: MessageSource [1]
- parameterProcessorService: ParameterProcessorService [1]
- parameterService: ParameterService [1]
- buildParameters(parameterAndValueType: ParameterAndValueType, modelEntity: ModelEntity)
- buildPrimaryValueTypes(parameterAndValueType: ParameterAndValueType, locale: Locale)
- buildUserDefinedJavaClassDictionaryValueTypes(parameterAndValueType: ParameterAndValueType)
+ listParameterAndValueTypeByIndicatorId(indicatorId: String, locale: Locale): ParameterAndValueType
+ listParameterAndValueTypeByParameterId(parameterId: String, locale: Locale): ParameterAndValueType
+ listParameterAndValueTypeByProcessorId(processorId: String, locale: Locale): ParameterAndValueType
- recursionListParameterNames(parentModelEntity: ModelEntity, parameterAndValueType: ParameterAndValueType)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterAndValueTypeWebController288010832[ - label=< - -
- -
- - - -
(C)ParameterAndValueTypeWebController
- service: ParameterAndValueTypeService [1]
+ listParameterAndValueTypeByIndicatorId(indicatorId: String, locale: Locale): ParameterAndValueType
+ listParameterAndValueTypeByParameterId(parameterId: String, locale: Locale): ParameterAndValueType
+ listParameterAndValueTypeByProcessorId(processorId: String, locale: Locale): ParameterAndValueType
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterEntityEventHandler923004430[ - label=< - -
- - - -
- - - - - - - -
(C)ParameterEntityEventHandler
- modelService: ModelService [1]
- namedParameterJdbcTemplate: NamedParameterJdbcTemplate [1]
- parameterProcessorService: ParameterProcessorService [1]
# afterAdd(newEntity: ParameterEntity)
# beforeDelete(oldEntity: ParameterEntity)
# beforeDelete(iterable: Iterable<ParameterEntity>)
# beforeUpdate(oldEntity: ParameterEntity, newEntity: ParameterEntity)
- updateModelEntityLastModifyDate(entity: ParameterEntity)
- updateParameterProcessor(oldEntity: ParameterEntity, newEntity: ParameterEntity)
- updateTestCaseParameterCode(oldEntity: ParameterEntity, newEntity: ParameterEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterInOptionItemEntity1858028169[ - label=< - -
- - - - - - - - -
- - - -
(C)ParameterInOptionItemEntity
# config: String [0..1]
# description: String [0..1]
# id: String [0..1]
# inputValue: String [0..1]
# order: Integer [0..1]
# parameter: ParameterEntity [0..1]
# title: String [0..1]
# value: String [0..1]
+ clearId()
+ deepClone(): Object
+ toVo(): ParameterInOptionItemVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterInOptionItemServiceImpl1389029299[ - label=< - -
- - -
(C)ParameterInOptionItemServiceImpl
+ add(entity: ParameterInOptionItemEntity): ParameterInOptionItemEntity
+ findByParameterId(parameterId: String): List<ParameterInOptionItemEntity>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterInOptionItemWebController575515856[ - label=< - -
- -
(C)ParameterInOptionItemWebController
+ findByParameterId(parameterId: String): List<ParameterValidatorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterProcessorEntity1858028169[ - label=< - -
- - - - - - -
- - - - -
(C)ParameterProcessorEntity
# description: String [0..1]
- enable: Boolean [0..1]
# id: String [0..1]
# order: Integer [0..1]
# parameter: ParameterEntity [0..1]
# type: ProcessorType [0..1]
+ clearId()
+ deepClone(): Object
+ replace(mapping: Map<String, String>): boolean
+ toVo(vo: ParameterProcessorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterProcessorEntityEventHandler923004430[ - label=< - -
- -
- - - - - -
(C)ParameterProcessorEntityEventHandler
- parameterService: ParameterService [1]
# afterAdd(newEntity: ParameterProcessorEntity)
# beforeDelete(oldEntity: ParameterProcessorEntity)
# beforeDelete(iterable: Iterable<ParameterProcessorEntity>)
# beforeUpdate(oldEntity: ParameterProcessorEntity, newEntity: ParameterProcessorEntity)
- updateParameterEntityLastModifyDate(entity: ParameterProcessorEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterProcessorServiceImpl1389029299[ - label=< - -
- - - - -
- - - - - - - - - - -
(C)ParameterProcessorServiceImpl
- applicationContext: ApplicationContext [1]
- dictionaryService: DictionaryService [1]
- jdbcTemplate: JdbcTemplate [1]
- parameterService: ParameterService [1]
+ add(entity: ParameterProcessorEntity): ParameterProcessorEntity
+ autoMatch(autoMatchObjectProperties: AutoMatchObjectProperties): List<ObjectProperty>
+ executeSql(request: SqlQueryRequest): SqlQueryResult
+ findByParameterId(parameterId: String): List<ParameterProcessorEntity>
+ importFromCsv(parameterId: String, csvContent: String, splitChar: String)
+ listObejctPropertiesByProcessorId(processorId: String): List<ObjectProperty>
- matchName(name: String, cache: Map<String, String>): String
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: ParameterProcessorEntity): ParameterProcessorEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterProcessorWebController575515856[ - label=< - -
- -
- - - - - - - - - -
(C)ParameterProcessorWebController
- parameterService: ParameterService [1]
+ autoMatch(autoMatchObjectProperties: AutoMatchObjectProperties): List<ObjectProperty>
+ executeSql(request: SqlQueryRequest): SqlQueryResult
+ findByParameterId(parameterId: String): List<ParameterProcessorVo>
+ getDecisionTreeById(processorId: String): String
+ getExecutionFlowById(processorId: String): String
+ importFromCsv(request: Map<String, String>)
+ listObejctPropertiesByProcessorId(processorId: String): List<ObjectProperty>
+ saveDecisionTreeById(processorId: String, map: Map<String, String>)
+ saveExecutionFlowById(processorId: String, map: Map<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterServiceImpl1389029299[ - label=< - -
- - - - - - - -
- - - - - - - - - - - - - - - - - - -
(C)ParameterServiceImpl
- applicationContext: ApplicationContext [1]
- dictionaryService: DictionaryService [1]
- indicatorService: IndicatorService [1]
- libService: LibService [1]
- modelService: ModelService [1]
- namedParameterJdbcTemplate: NamedParameterJdbcTemplate [1]
- parameterProcessorService: ParameterProcessorService [1]
+ add(entity: ParameterEntity): ParameterEntity
+ addIndicators(wrapper: ParameterIndicatorsWrapper)
- addUserDefinedJavaClassFieldParameterNames(parameterEntity: ParameterEntity, hints: ParemterHints)
+ deepClone(parameterId: String): ParameterEntity
+ findOutParameterEntitiesOfSubModels(modelId: String): List<OutParameterEntity>
+ findParametersByModelId(modelId: String): List<ParameterEntity>
+ findParametersByParameterId(parameterId: String): List<ParameterEntity>
+ importPmml(modelId: String, multipartFile: MultipartFile, locale: Locale)
+ listObejctPropertiesByParameterId(parameterId: String): List<ObjectProperty>
+ listParemterHintsByParameterId(parameterId: String): ParemterHints
+ listParemterHintsByProcessorId(processorId: String): ParemterHints
+ listParemtersByParameterId(parameterId: String): List<ParameterVo>
+ loadCodeAndNameMappingByParameterId(parameterId: String): CodeAndNameMapping
+ moveParameters(targetModelId: String, parameterIds: Set<String>)
- recursionListParameterNames(parentModelEntity: ModelEntity, hints: ParemterHints)
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: ParameterEntity): ParameterEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterValidatorEntity1858028169[ - label=< - -
- - - - - - -
- - - -
(C)ParameterValidatorEntity
# description: String [0..1]
# id: String [0..1]
# order: Integer [0..1]
# parameter: ParameterEntity [0..1]
# tip: String [0..1]
# type: ValidatorType [0..1]
+ clearId()
+ deepClone(): Object
+ toVo(vo: ParameterValidatorVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterValidatorEntityEventHandler923004430[ - label=< - -
- -
- - - - - -
(C)ParameterValidatorEntityEventHandler
- parameterService: ParameterService [1]
# afterAdd(newEntity: ParameterValidatorEntity)
# beforeDelete(oldEntity: ParameterValidatorEntity)
# beforeDelete(iterable: Iterable<ParameterValidatorEntity>)
# beforeUpdate(oldEntity: ParameterValidatorEntity, newEntity: ParameterValidatorEntity)
- updateParameterEntityLastModifyDate(entity: ParameterValidatorEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterValidatorServiceImpl1389029299[ - label=< - -
- - -
(C)ParameterValidatorServiceImpl
+ add(entity: ParameterValidatorEntity): ParameterValidatorEntity
+ findByParameterId(parameterId: String): List<ParameterValidatorEntity>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParameterValidatorWebController575515856[ - label=< - -
- -
(C)ParameterValidatorWebController
+ findByParameterId(parameterId: String): List<ParameterValidatorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ParemterHints1952415362[ - label=< - -
- - -
- - -
(C)ParemterHints
- parameterNames: Set<String> [0..*]
- parentParameterNames: Set<String> [0..*]
+ addParameterName(parameterName: String)
+ addParentParameterName(parentParameterName: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PatternIndicatorValidatorEntity918929279[ - label=< - -
- -
- -
(C)PatternIndicatorValidatorEntity
# pattern: String [0..1]
+ toVo(): PatternIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PatternParameterValidatorEntity1298926693[ - label=< - -
- -
- -
(C)PatternParameterValidatorEntity
# pattern: String [0..1]
+ toVo(): PatternParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Percentile986899848[ - label=< - -
- -
(C)Percentile
+ getPercentile(array: Double[], percentile: double, precision: int): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PeriodWrapper403516392[ - label=< - -
- - - -
- -
(C)PeriodWrapper
- month: Integer [0..1]
- quarter: Integer [0..1]
- year: Integer [0..1]
+ previous(count: int): PeriodWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -PmmlParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)PmmlParameterProcessorEntity
- pmml: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): PmmlParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ReleasableLibEntity664884827[ - label=< - -
- - -
- -
(C)ReleasableLibEntity
# status: DeployStatus [0..1]
# version: Integer [0..1]
+ toVo(vo: ReleasableLibVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ReleasableResourceEntity1142511668[ - label=< - -
- - - - - - - -
- -
(C)ReleasableResourceEntity
# attachmentCount: int [1]
# effectiveDate: Date [0..1]
# imports: String [0..1]
# status: DeployStatus [0..1]
# taskAssignee: String [0..1]
# taskName: String [0..1]
# version: Integer [0..1]
+ toVo(vo: ReleasableResourceVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RemoteExecutor926631635[ - label=< - -
- - -
- - - - - - - - - - - - - - - - - - - -
(C)RemoteExecutor
- loader: Loader [0..1]
- remoteApiUrl: String [0..1]
+ compileByCode(resourceCode: String, version: Integer)
+ compileByCodeForTest(resourceCode: String, version: Integer)
+ compileById(resourceId: String)
+ compileByIdForTest(resourceId: String)
+ executeByCode(resourceCode: String, version: Integer, json: String): ResourceResult
+ executeByCode(resourceCode: String, version: Integer, subModelCode: String, json: String): ResourceResult
+ executeByCode(resourceCode: String, version: Integer, map: Map<String, Object>): ResourceResult
+ executeByCode(resourceCode: String, version: Integer, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeByCodeForTest(resourceCode: String, version: Integer, map: Map<String, Object>): ResourceResult
+ executeByCodeForTest(resourceCode: String, version: Integer, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeById(resourceId: String, json: String): ResourceResult
+ executeById(resourceId: String, subModelCode: String, json: String): ResourceResult
+ executeById(resourceId: String, map: Map<String, Object>): ResourceResult
+ executeById(resourceId: String, subModelCode: String, map: Map<String, Object>): ResourceResult
+ executeByIdForTest(resourceId: String, map: Map<String, Object>): ResourceResult
+ executeByIdForTest(resourceId: String, subModelCode: String, map: Map<String, Object>): ResourceResult
- getApiUrlByCode(resourceCode: String, version: Integer, subModelCode: String): String
- getApiUrlById(resourceId: String): String
- getApiUrlById(resourceId: String, subModelCode: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RemoteLoader926631635[ - label=< - -
- - -
- - - - - - -
(C)RemoteLoader
- cache: Map<String, ResourceWrapper> [0..*]
- remoteApiUrl: String [0..1]
+ cleanCache()
- getApiUrlByCode(modelCode: String, version: Integer): String
- getApiUrlById(modelId: String): String
- getCacheKey(code: String, version: Integer): String
+ getResourceByCode(resourceCode: String, version: Integer): ResourceWrapper
+ getResourceById(resourceId: String): ResourceWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Resource1382620310[ - label=< - -
- - - - - - - -
(C)Resource
- children: List<Resource> [0..*]
# code: String [0..1]
# description: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# testCases: List<ResourceTestCase> [0..*]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceDeployApprovingController306271460[ - label=< - -
- -
- - - - -
(C)ResourceDeployApprovingController
- ruleEngineWorkflowService: RuleEngineWorkflowService [1]
+ queryHistoryTasks(processInstanceId: String): List<RuleEngineApprovingHistoryTaskWrapper>
+ queryTasks(): List<RuleEngineApprovingTaskWrapper>
+ startProcessInstance(resourceId: String, properties: ProcessProperties): CompleteTaskResponse
+ terminateTask(taskId: String, resourceId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceEntity1142511668[ - label=< - -
- - - - - - - - - - -
- - - - - - - -
(C)ResourceEntity
# children: List<ResourceEntity> [0..*]
# code: String [0..1]
# description: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# parent: ResourceEntity [0..1]
- roles: List<RoleEntity> [0..*]
# testCases: List<ResourceTestCaseEntity> [0..*]
# type: ResourceType [0..1]
+ addChildren(children: ResourceEntity...)
+ clearId()
+ deepClone(): Object
+ removeChildren(children: ResourceEntity...)
+ resetParent(parent: ResourceEntity)
+ toVo(vo: ResourceVo)
+ toVo(): ResourceVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceEntityEventHandler923004430[ - label=< - -
- -
- - - - - -
(C)ResourceEntityEventHandler
- jdbcTemplate: JdbcTemplate [1]
# beforeDelete(oldEntity: ResourceEntity)
# beforeDelete(iterable: Iterable<ResourceEntity>)
# beforeUpdate(oldEntity: ResourceEntity, newEntity: ResourceEntity)
- deleteTestCase(oldEntity: ResourceEntity)
- updateResourceCodeAndName(oldEntity: ResourceEntity, newEntity: ResourceEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourcePermissionWebController384481427[ - label=< - -
- -
- - -
(C)ResourcePermissionWebController
- service: ResourceService [1]
+ listAllResourcesWithSelectedStatusByRole(request: HttpServletRequest, response: HttpServletResponse, roleId: String): List<ResourceVo>
+ updateRoles(one2Many: One2Many<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceQueryServiceImpl1806430538[ - label=< - -
- - - - - - -
- - - - - -
(C)ResourceQueryServiceImpl
- dictionaryService: DictionaryService [1]
- libService: LibService [1]
- modelService: ModelService [1]
- parameterProcessorService: ParameterProcessorService [1]
- parameterService: ParameterService [1]
- resourceService: ResourceService [1]
- buildModelEntity(resourceId: String): ModelEntity
- buildModelParameterProcessors(parameterEntityCache: Map<String, ParameterEntity>)
- buildModelParameters(modelEntityCache: Map<String, ModelEntity>)
+ getResourceDefineById(resourceId: String): ResourceWrapper
- queryAllModelAndSubModelEntity(modelEntity: ModelEntity, modelEntityCache: Map<String, ModelEntity>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceServiceImpl1806430538[ - label=< - -
- - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(C)ResourceServiceImpl
- applicationContext: ApplicationContext [1]
- attachmentService: AttachmentService [1]
- dictionaryService: DictionaryService [1]
- functionService: FunctionService [1]
- jdbcTemplate: JdbcTemplate [1]
- libService: LibService [1]
- modelService: ModelService [1]
- processEngine: ProcessEngine [1]
- resourceQueryService: ResourceQueryService [1]
- roleService: RoleService [1]
- systemParameterService: SystemParameterService [1]
+ add(entity: ResourceEntity): ResourceEntity
- checkConstraint(action: AuditLogAction, entity: ResourceEntity)
- checkSameCodeOrNameConstraint(action: AuditLogAction, entity: ResourceEntity): boolean
+ createExample(contributionIds: Set<String>)
+ createExample(contributionId: String)
+ deepClone(id: String): ResourceEntity
+ deepCloneNew(id: String): ResourceEntity
+ exports(id: String): Resource
- generateResourceAttachmentHtml(page: Page<ResourceEntity>)
- generateResourceTaskInfo(page: Page<ResourceEntity>)
- getAttachmentBussinessKey(entity: ReleasableResourceEntity): String
+ getDefineByCode(resourceCode: String, version: Integer): ResourceWrapper
+ getDefineById(resourceId: String): ResourceWrapper
+ getDefineById2(resourceId: String): ResourceWrapper
+ getLastModifyDateByCode(resourceCode: String, version: Integer): Long
+ getLastModifyDateById(resourceId: String): Long
+ imports(entity: ResourceEntity)
- isNotInSameFolder(o1: ResourceEntity, o2: ResourceEntity): boolean
- isSameNameFolderInParentFolder(action: AuditLogAction, entity: ResourceEntity): boolean
+ listAllResourcesWithSelectedStatusByRole(roleId: String): List<ResourceVo>
+ offline(id: String): ResourceVo
+ online(id: String): ResourceVo
- parentIsNull(o: ResourceEntity): boolean
+ query(queryParameter: QueryParameter): Page<ResourceEntity>
+ remove(primaryKey: String): String
+ update(primaryKey: String, entity: ResourceEntity): ResourceEntity
- updateResourceAndRoleRelationship(roleId: String, resourceId: String)
+ updateResources(roleId: String, resourceIds: Set<String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceTestCaseEntity1315290368[ - label=< - -
- -
- - -
(C)ResourceTestCaseEntity
# owner: ResourceEntity [0..1]
+ toVo(vo: TestCaseVo)
+ toVo(): ResourceTestCaseVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceWebController384481427[ - label=< - -
- -
- - - - - - - - - - - - - - - - - - - - -
(C)ResourceWebController
- executorFactoryService: ExecutorFactoryService [1]
+ createExample(contributionIds: Set<String>)
+ deepClone(id: String)
+ deepCloneNew(id: String)
+ executeByCode(resourceCode: String, version: Integer, subModelCode: String, json: String): ResourceResult
+ executeById(resourceId: String, subModelCode: String, json: String): ResourceResult
+ exportResource(id: String, request: HttpServletRequest, response: HttpServletResponse)
+ generateGroovySourceCode(resourceId: String): SourceCode
+ generateGroovySourceCodeForTest(resourceId: String): SourceCode
+ getDefineByCode(resourceCode: String, version: Integer): ResourceWrapper
+ getDefineById(resourceId: String): ResourceWrapper
+ getDefineById2(resourceId: String): ResourceWrapper
+ getLastModifyDateByCode(resourceCode: String, version: Integer): Long
+ getLastModifyDateById(resourceId: String): Long
+ importResource(multipartFile: MultipartFile, locale: Locale)
+ listResourceExampleContributionItems(request: HttpServletRequest, response: HttpServletResponse, locale: Locale): List<ResourceExampleWrapper>
+ offline(id: String): ResourceVo
+ online(id: String): ResourceVo
+ printResource(id: String, request: HttpServletRequest, response: HttpServletResponse): ModelAndView
+ sourceCodeValidate(resourceId: String)
+ sourceCodeValidateForTest(resourceId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceWrapper1399772911[ - label=< - -
- - -
(C)ResourceWrapper
# functions: List<Function> [0..*]
# isExecuteTestCase: boolean [1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceWrapper4Lib1399772911[ - label=< - -
- - -
(C)ResourceWrapper4Lib
- dictionaries: List<Dictionary> [0..*]
- lib: Lib [0..1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ResourceWrapper4Resource1399772911[ - label=< - -
- - - -
(C)ResourceWrapper4Resource
- dictionaries: List<Dictionary> [0..*]
- libs: List<Lib> [0..*]
- resource: Resource [0..1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuleEngineResourceDeployComplementListener228004812[ - label=< - -
- - - -
- - -
(C)RuleEngineResourceDeployComplementListener
- processEngine: ProcessEngine [1]
- processQueryService: ProcessQueryService [1]
- resourceService: ResourceService [1]
+ notify(delegateTask: DelegateTask)
+ notify(execution: DelegateExecution)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuleEngineServerConfigurationServiceImpl611902232[ - label=< - -
- - -
(C)RuleEngineServerConfigurationServiceImpl
- processEntityService: ProcessEntityService [1]
- systemParameterService: SystemParameterService [1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuleEngineWorkFlowInitializer1684799666[ - label=< - -
- - - -
- - -
(C)RuleEngineWorkFlowInitializer
- applicationContext: ApplicationContext [0..1]
- isInitialized: Boolean [0..1]
- processEntityService: ProcessEntityService [0..1]
+ execute()
+ init(applicationContext: ApplicationContext)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuleEngineWorkflowServiceImpl343202503[ - label=< - -
- - - - - - -
- - - - - - -
(C)RuleEngineWorkflowServiceImpl
- attachmentService: AttachmentService [1]
- processEngine: ProcessEngine [1]
- processOperationService: ProcessOperationService [1]
- resourceService: ResourceService [1]
- runtimeService: RuntimeService [1]
- taskService: TaskService [1]
- getAttachmentCount(entity: ReleasableResourceEntity): int
- getTaskTreatment(taskId: String, replaceString: String): String
+ queryProcessHistoryTasks(processInstanceId: String): List<RuleEngineApprovingHistoryTaskWrapper>
+ queryProcessTasks(loginName: String): List<RuleEngineApprovingTaskWrapper>
+ startProcessInstance(resourceId: String, variables: Map<String, Object>, transientVariables: Map<String, Object>): ProcessInstance
+ terminateTask(resourceId: String, taskId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuleParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)RuleParameterProcessorEntity
- rule: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): RuleParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -RuntimeParameter448837373[ - label=< - -
- - - - -
- -
(C)RuntimeParameter
- name: String [0..1]
- sno: Integer [0..1]
- validateDate: String [0..1]
- value: String [0..1]
+ toVo(): RuntimeParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SampleWebController996395185[ - label=< - -
- - - - - - -
- - - -
(C)SampleWebController
- cardGongXinImporterService: CardGongXinImporterService [1]
- cardJingyingImporterService: CardJingyingImporterService [1]
- daiKuanImporterService: DaiKuanImporterService [1]
- defaultRecordService: DefaultRecordService [1]
- scoreRecordService: ScoreRecordService [1]
- testCaseImporterService: TestCaseImporterService [1]
+ importExampleSample()
+ importTestCase()
+ removeAllSample()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScCapHistory448837373[ - label=< - -
- - - - - - - - - - -
- -
(C)ScCapHistory
- modelId: String [0..1]
- modelName: String [0..1]
- scoreCutOffPoint: Integer [0..1]
- tds: Integer [0..1]
- tdt: Integer [0..1]
- ts: Integer [0..1]
- tt: Integer [0..1]
- validateDate: String [0..1]
- x: BigDecimal [0..1]
- y: BigDecimal [0..1]
+ toVo(): ScCapHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScCapHistoryServiceImpl1696670170[ - label=< - -
(C)ScCapHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScCapHistoryWebController1989524297[ - label=< - -
- - - - -
- - - -
(C)ScCapHistoryWebController
- generalResultHistoryRepository: GeneralResultHistoryRepository [1]
- jdbcTemplate: JdbcTemplate [1]
- messageSource: MessageSource [1]
- scCapHistoryRepository: ScCapHistoryRepository [1]
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<ScCapHistoryVo>
- getCoordinates(modelId: String, validateDate: String): Coordinates
+ option(modelId: String, validateDate: String, locale: Locale): Option
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScKsHistory448837373[ - label=< - -
- - - - - - - - - - -
- -
(C)ScKsHistory
- d: Integer [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- n: Integer [0..1]
- scoreCutOffPoint: Integer [0..1]
- td: Integer [0..1]
- tn: Integer [0..1]
- validateDate: String [0..1]
- y1: BigDecimal [0..1]
- y2: BigDecimal [0..1]
+ toVo(): ScKsHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScKsHistoryServiceImpl1696670170[ - label=< - -
(C)ScKsHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScKsHistoryWebController1989524297[ - label=< - -
- - - -
- - - -
(C)ScKsHistoryWebController
- generalResultHistoryRepository: GeneralResultHistoryRepository [1]
- jdbcTemplate: JdbcTemplate [1]
- messageSource: MessageSource [1]
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<ScKsHistoryVo>
- getCoordinates(modelId: String, validateDate: String): Coordinates
+ option(modelId: String, validateDate: String, locale: Locale): Option
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScRocHistory448837373[ - label=< - -
- - - - - - - - - - - - -
- -
(C)ScRocHistory
- dd: Integer [0..1]
- dn: Integer [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- nd: Integer [0..1]
- nn: Integer [0..1]
- scoreCutOffPoint: Double [0..1]
- td: Integer [0..1]
- tn: Integer [0..1]
- validateDate: String [0..1]
- x: BigDecimal [0..1]
- y: BigDecimal [0..1]
+ toVo(): ScRocHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScRocHistoryServiceImpl1696670170[ - label=< - -
(C)ScRocHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScRocHistoryWebController1989524297[ - label=< - -
- - - -
- - - -
(C)ScRocHistoryWebController
- generalResultHistoryRepository: GeneralResultHistoryRepository [1]
- jdbcTemplate: JdbcTemplate [1]
- messageSource: MessageSource [1]
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<ScRocHistoryVo>
- getCoordinates(modelId: String, validateDate: String): Coordinates
+ option(modelId: String, validateDate: String, locale: Locale): Option
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorDefineEntity730313619[ - label=< - -
- - - - - - - - - - -
- - -
(C)ScenarioFactorDefineEntity
# code: String [0..1]
# description: String [0..1]
# factors: List<ScenarioFactorEntity> [0..*]
# id: String [0..1]
# name: String [1]
# order: Integer [0..1]
# parent: ScenarioFactorDefineEntity [0..1]
# period: Period [0..1]
# type: FactorDefineType [0..1]
# valueType: ValueType [0..1]
+ convertValue(value: String): Object
+ toVo(vo: ScenarioFactorDefineVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorDefineServiceImpl1612402928[ - label=< - -
- -
- - -
(C)ScenarioFactorDefineServiceImpl
- jdbcTemplate: JdbcTemplate [1]
+ findAllWithoutById(defineId: String): List<ScenarioFactorDefineVo>
+ synchronize()
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorDefineWebController1708048051[ - label=< - -
- -
(C)ScenarioFactorDefineWebController
+ findAllWithoutById(defineId: String): List<ScenarioFactorDefineVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorEntity730313619[ - label=< - -
- - - - - - - - -
- - -
(C)ScenarioFactorEntity
# define: ScenarioFactorDefineEntity [0..1]
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# valueHigh: String [0..1]
# valueLow: String [0..1]
# valueMid: String [0..1]
# year: Integer [0..1]
+ calUniqueKey(): PeriodWrapper
+ toVo(): ScenarioFactorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorServiceImpl1612402928[ - label=< - -
- - - -
- - - -
(C)ScenarioFactorServiceImpl
- ScenarioFactorDefineService: ScenarioFactorDefineService [1]
- indepFactorDefineService: IndepFactorDefineService [1]
- indepFactorService: IndepFactorService [1]
+ fillWithIncreasePercent(wrapper: PercentWrapper)
+ fillWithPercentile(wrapper: PercentileWrapper)
+ findByFactorDefineId(defineId: String): List<ScenarioFactorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorVo1490259760[ - label=< - -
- - - - - - - - -
- -
(C)ScenarioFactorVo
# define: String [0..1]
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# valueHigh: String [0..1]
# valueLow: String [0..1]
# valueMid: String [0..1]
# year: Integer [0..1]
+ calUniqueKey(): PeriodWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFactorWebController1708048051[ - label=< - -
- - - -
(C)ScenarioFactorWebController
+ fillWithIncreasePercent(wrapper: PercentWrapper)
+ fillWithPercentile(wrapper: PercentileWrapper)
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<ScenarioFactorVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioFolderEntity227079487[ - label=< - -
- -
(C)ScenarioFolderEntity
+ toVo(): ScenarioFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScenarioOriginalFactorDefineEntity227079487[ - label=< - -
- -
(C)ScenarioOriginalFactorDefineEntity
+ toVo(): ScenarioFactorDefineVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardIndicatorVarEntity1748894114[ - label=< - -
- - - -
- - -
(C)ScoreCardIndicatorVarEntity
# indicatorCode: String [0..1]
# libCode: String [0..1]
# libVersion: Integer [0..1]
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(): ScoreCardIndicatorVarVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardTestCaseEntity1315290368[ - label=< - -
- -
(C)ScoreCardTestCaseEntity
+ toVo(): ScoreCardTestCaseVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardTestCaseParameterBuilder637638157[ - label=< - -
- - - - - - -
- - - -
(C)ScoreCardTestCaseParameterBuilder
# indicatorService: IndicatorService [1]
# modelService: ModelService [1]
# resourceService: ResourceService [1]
- scoreCardVarService: ScoreCardVarService [1]
- testCaseParameterService: TestCaseParameterService [1]
# testCaseService: TestCaseService [1]
- buildTestCaseParameterList(list: List<TestCaseParameterWrapper>, parentNode: TestCaseParameterWrapper, scoreCardVars: List<ScoreCardVarEntity>)
+ buildTestCaseParameterWrappers(ownerId: String, testCaseId: String): List<TestCaseParameterWrapper>
- mergeTestCaseParameterList(testCaseId: String, wrappers: List<TestCaseParameterWrapper>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardVarEntity1748894114[ - label=< - -
- - - - - - -
- - - - -
(C)ScoreCardVarEntity
# code: String [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# resource: ResourceEntity [0..1]
# type: ScoreCardVarType [0..1]
+ clearId()
+ deepClone(): Object
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(vo: ScoreCardVarVo)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardVarEntityEventHandler923004430[ - label=< - -
- - -
- - - - - - -
(C)ScoreCardVarEntityEventHandler
- namedParameterJdbcTemplate: NamedParameterJdbcTemplate [1]
- resourceService: ResourceService [1]
# afterAdd(newEntity: ScoreCardVarEntity)
# beforeDelete(oldEntity: ScoreCardVarEntity)
# beforeDelete(iterable: Iterable<ScoreCardVarEntity>)
# beforeUpdate(oldEntity: ScoreCardVarEntity, newEntity: ScoreCardVarEntity)
- updateResourceEntityLastModifyDate(entity: ScoreCardVarEntity)
- updateTestCaseParameterCode(oldEntity: ScoreCardVarEntity, newEntity: ScoreCardVarEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardVarServiceImpl1501941748[ - label=< - -
- - -
- - - - - -
(C)ScoreCardVarServiceImpl
- applicationContext: ApplicationContext [1]
- resourceService: ResourceService [1]
+ add(entity: ScoreCardVarEntity): ScoreCardVarEntity
+ findByResourceId(resourceId: String): List<ScoreCardVarEntity>
+ remove(primaryKey: String): String
+ remove(primaryKeys: List<String>): List<String>
+ update(primaryKey: String, entity: ScoreCardVarEntity): ScoreCardVarEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreCardVarWebController1313523863[ - label=< - -
(C)ScoreCardVarWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreRecord448837373[ - label=< - -
- - - - - - - - - - - -
- -
(C)ScoreRecord
- customId: String [0..1]
- customName: String [0..1]
- level: String [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- pd: BigDecimal [0..1]
- score: BigDecimal [0..1]
- scoreBeginDate: Date [0..1]
- scoreEndDate: Date [0..1]
- scoreQualitative: BigDecimal [0..1]
- scoreQuantitative: BigDecimal [0..1]
+ toVo(): ScoreRecordVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreRecordServiceImpl1696670170[ - label=< - -
(C)ScoreRecordServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -ScoreRecordWebController1989524297[ - label=< - -
(C)ScoreRecordWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SingleRuleParameterProcessorEntity1283902245[ - label=< - -
- -
- - -
(C)SingleRuleParameterProcessorEntity
- singleRule: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): SingleRuleParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SourceCode435990976[ - label=< - -
- - - -
(C)SourceCode
- className: String [0..1]
- packageName: String [0..1]
- source: String [0..1]
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SqlIndicatorProcessorEntity933953727[ - label=< - -
- - - - -
- - -
(C)SqlIndicatorProcessorEntity
- sql: String [0..1]
- sqlDatasourceName: String [0..1]
- sqlFieldMapping: String [0..1]
- sqlParameterValues: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): SqlIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SqlParameterProcessorEntity1283902245[ - label=< - -
- - - - -
- - -
(C)SqlParameterProcessorEntity
- sql: String [0..1]
- sqlDatasourceName: String [0..1]
- sqlFieldMapping: String [0..1]
- sqlParameterValues: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): SqlParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SqlQueryResult2021460767[ - label=< - -
- - -
- -
(C)SqlQueryResult
- data: List<Map<String, String>> [0..*]
- fieldMetaDatas: List<FieldMetaData> [0..*]
+ from(rs: ResultSet): SqlQueryResult
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -StPsiHistory448837373[ - label=< - -
- - - - - - - - - - - - - - - -
- -
(C)StPsiHistory
- countApp: Long [0..1]
- countDev: Long [0..1]
- modelId: String [0..1]
- modelName: String [0..1]
- percentApp: Double [0..1]
- percentDev: Double [0..1]
- percentDiff: Double [0..1]
- percentRate: Double [0..1]
- scoreSegEnd: Double [0..1]
- scoreSegStart: Double [0..1]
- stWeight: Double [0..1]
- totalCountApp: Long [0..1]
- totalCountDev: Long [0..1]
- validateDate: String [0..1]
- weight: Double [0..1]
+ toVo(): StPsiHistoryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -StPsiHistoryServiceImpl1696670170[ - label=< - -
(C)StPsiHistoryServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -StPsiHistoryWebController1989524297[ - label=< - -
- - - -
- - - -
(C)StPsiHistoryWebController
- generalResultHistoryRepository: GeneralResultHistoryRepository [1]
- jdbcTemplate: JdbcTemplate [1]
- messageSource: MessageSource [1]
+ data(request: HttpServletRequest, response: HttpServletResponse, modelId: String, validateDate: String, queryParameter: QueryParameter): Page<StPsiHistoryVo>
- getCoordinates(modelId: String, validateDate: String): XyCoordinates<Integer>
+ option(modelId: String, validateDate: String, locale: Locale): Option
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -Strings435449771[ - label=< - -
- - - - - - -
(C)Strings
+ leftAlign(str: String, length: int): String
+ repeat(string: String, count: int): String
+ replaceCR_LF(str: String): String
+ rightAlign(str: String, length: int): String
+ toLowerFristChar(string: String): String
+ toUpperFristChar(string: String): String
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TernaryIndicatorProcessorEntity933953727[ - label=< - -
- - - -
- - -
(C)TernaryIndicatorProcessorEntity
- ternaryCondition: String [0..1]
- ternaryFalse: String [0..1]
- ternaryTrue: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): TernaryIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TernaryParameterProcessorEntity1283902245[ - label=< - -
- - - -
- - -
(C)TernaryParameterProcessorEntity
- ternaryCondition: String [0..1]
- ternaryFalse: String [0..1]
- ternaryTrue: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): TernaryParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseEntity1315290368[ - label=< - -
- - - - - - - - - -
- - - - - -
(C)TestCaseEntity
# description: String [0..1]
# id: String [0..1]
# lastTestDate: Date [0..1]
# name: String [0..1]
# order: Integer [0..1]
# ownerId: String [0..1]
# ownerType: TestCaseOwnerType [0..1]
# parameters: List<TestCaseParameterEntity> [0..*]
# testResult: TestResult [0..1]
+ clearId()
+ clearTestResult()
+ deepClone(): Object
+ toVo(vo: TestCaseVo)
+ toVo(): TestCaseVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseEntity730313619[ - label=< - -
- - - -
- -
(C)TestCaseEntity
# id: String [0..1]
# model: ModelEntity [0..1]
# name: String [1]
+ toVo(): TestCaseVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseParameterBuilderFactory637638157[ - label=< - -
- -
- - - -
(C)TestCaseParameterBuilderFactory
- builderMap: Map<TestCaseOwnerType, TestCaseParameterBuilder> [0..*]
+ getBuilder(ownerType: TestCaseOwnerType): TestCaseParameterBuilder
+ postProcessAfterInitialization(bean: Object, beanName: String): Object
+ postProcessBeforeInitialization(bean: Object, beanName: String): Object
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseParameterEntity1315290368[ - label=< - -
- - - - - - - - -
- - - - - -
(C)TestCaseParameterEntity
# code: String [0..1]
# expectValue: String [0..1]
# id: String [0..1]
# inputValue: String [0..1]
# resultValue: String [0..1]
# skipCheck: Boolean [0..1]
# testCase: TestCaseEntity [0..1]
# testResult: TestResult [0..1]
+ clearId()
+ clearTestResult()
+ deepClone(): Object
+ toTestCaseParameterWrapper(): TestCaseParameterWrapper
+ toVo(): TestCaseParameterVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseParameterServiceImpl1389138710[ - label=< - -
- - -
- - -
(C)TestCaseParameterServiceImpl
- testCaseParameterBuilderFactory: TestCaseParameterBuilderFactory [1]
- testCaseService: TestCaseService [1]
+ buildTestCaseParameterWrappers(testCaseId: String): List<TestCaseParameterWrapper>
+ findByTestCase(testCaseId: String): List<TestCaseParameterEntity>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseParameterWebController2092176327[ - label=< - -
- - -
(C)TestCaseParameterWebController
+ findByTestCase(testCaseId: String): List<TestCaseParameterWrapper>
+ updateData(id: String, enitity: TestCaseParameterWrapper, bindingResult: BindingResult): TestCaseParameterWrapper
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseServiceImpl1389138710[ - label=< - -
- - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - -
(C)TestCaseServiceImpl
- executorFactoryService: ExecutorFactoryService [1]
- groovyScriptEngineService: GroovyScriptEngineService [0..1]
- jdbcTemplate: JdbcTemplate [1]
- libService: LibService [1]
- libTestCaseRepository: LibTestCaseRepository [1]
- messageSource: MessageSource [1]
- modelService: ModelService [1]
- modelTestCaseRepository: ModelTestCaseRepository [1]
- resourceService: ResourceService [1]
- scoreCardTestCaseRepository: ScoreCardTestCaseRepository [1]
- testCaseParameterBuilderFactory: TestCaseParameterBuilderFactory [1]
- testCaseParameterService: TestCaseParameterService [1]
+ add(entity: TestCaseEntity): TestCaseEntity
- buildTestCaseParameterTree(tree: List<TestCaseParameterWrapper>, parentNode: TestCaseParameterWrapper, modelEntity: ModelEntity)
- buildTestCaseParameterTree4Excel(tree: List<TestCaseParameterWrapper>, parentNode: TestCaseParameterWrapper, modelEntity: ModelEntity)
- checkTestResult(expectValue: String, value: String, valueType: String): TestResult
+ cleanAllTestResult()
+ deepClone(testCaseId: String): TestCaseEntity
+ downloadTemplate(resourceId: String, request: HttpServletRequest, response: HttpServletResponse, locale: Locale)
+ executeAllLibTestCase(libId: String)
+ executeAllTestCase()
+ executeAllTestCase(resourceId: String)
- executeLibTestCase(libEntity: ReleasableLibEntity, testCaseEntity: TestCaseEntity)
- executeModelTestCase(resourceEntity: ResourceEntity, testCaseEntity: TestCaseEntity)
- executeScoreCardTestCase(resourceEntity: ResourceEntity, testCaseEntity: TestCaseEntity)
+ executeTestCase(testCaseId: String)
+ findByOwnerId(ownerId: String, queryParameter: QueryParameter): Page<TestCaseEntity>
+ queryAll(queryExampleEntity: TestCaseEntity, queryParameter: QueryParameter): Page<TestCaseWrapper>
+ upload(request: HttpServletRequest, response: HttpServletResponse, multipartFile: MultipartFile, locale: Locale)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseServiceImpl1612402928[ - label=< - -
- - - -
- -
(C)TestCaseServiceImpl
- jdbcTemplate: JdbcTemplate [1]
- scenarioFactorService: ScenarioFactorService [1]
- testResultService: TestResultService [1]
+ test(testCaseId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseWebController1708048051[ - label=< - -
- -
(C)TestCaseWebController
+ test(testCaseId: String)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestCaseWebController2092176327[ - label=< - -
- -
- - - - - - - - - -
(C)TestCaseWebController
- resourceService: ResourceService [1]
+ cleanAllTestResult()
+ deepClone(testCaseId: String)
+ downloadTemplate(resourceId: String, request: HttpServletRequest, response: HttpServletResponse, locale: Locale)
+ executeAllLibTestCase(libId: String)
+ executeAllTestCase(resourceId: String)
+ executeAllTestCase()
+ executeTestCase(testCaseId: String)
+ findByOwnerId(ownerId: String, queryParameter: QueryParameter): Page<TestCaseVo>
+ upload(request: HttpServletRequest, response: HttpServletResponse, multipartFile: MultipartFile, locale: Locale)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestResultEntity730313619[ - label=< - -
- - - - - - - - -
- -
(C)TestResultEntity
# id: String [0..1]
# month: Integer [0..1]
# quarter: Integer [0..1]
# testCase: TestCaseEntity [0..1]
# valueHigh: Double [0..1]
# valueLow: Double [0..1]
# valueMid: Double [0..1]
# year: Integer [0..1]
+ toVo(): TestResultVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestResultServiceImpl1612402928[ - label=< - -
(C)TestResultServiceImpl
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TestResultWebController1708048051[ - label=< - -
(C)TestResultWebController
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TrueIndicatorValidatorEntity918929279[ - label=< - -
- -
(C)TrueIndicatorValidatorEntity
+ toVo(): TrueIndicatorValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -TrueParameterValidatorEntity1298926693[ - label=< - -
- -
(C)TrueParameterValidatorEntity
+ toVo(): TrueParameterValidatorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserDefinedJavaClassDictionaryEntity135801452[ - label=< - -
- -
- - - -
(C)UserDefinedJavaClassDictionaryEntity
# fields: List<UserDefinedJavaClassFieldEntity> [0..*]
+ clearId()
+ deepClone(): Object
+ toVo(): UserDefinedJavaClassDictionaryVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserDefinedJavaClassFieldEntity135801452[ - label=< - -
- - - - - - - - - - - -
- - - - -
(C)UserDefinedJavaClassFieldEntity
# code: String [0..1]
# defaultValue: String [0..1]
# description: String [0..1]
# dictionary: DictionaryEntity [0..1]
# id: String [0..1]
# name: String [0..1]
# order: Integer [0..1]
# valueCalculation: String [0..1]
# valueType: String [0..1]
# valueTypeIsList: Boolean [0..1]
# valueTypeVersion: Integer [0..1]
+ clearId()
+ deepClone(): Object
+ replace(mapping: Map<String, String>): boolean
+ toVo(): UserDefinedJavaClassFieldVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserDefinedJavaClassFieldEntityEventHandler923004430[ - label=< - -
- - - - - - - - -
- - - - - - - -
(C)UserDefinedJavaClassFieldEntityEventHandler
- dictionaryService: DictionaryService [1]
- indicatorProcessorService: IndicatorProcessorService [1]
- indicatorService: IndicatorService [1]
- libService: LibService [1]
- modelService: ModelService [1]
- parameterProcessorService: ParameterProcessorService [1]
- parameterService: ParameterService [1]
- userDefinedJavaClassFieldService: UserDefinedJavaClassFieldService [1]
# afterAdd(newEntity: UserDefinedJavaClassFieldEntity)
# beforeDelete(oldEntity: UserDefinedJavaClassFieldEntity)
# beforeDelete(iterable: Iterable<UserDefinedJavaClassFieldEntity>)
# beforeUpdate(oldEntity: UserDefinedJavaClassFieldEntity, newEntity: UserDefinedJavaClassFieldEntity)
- updateDictionaryEntityEntityLastModifyDate(entity: UserDefinedJavaClassFieldEntity)
- updateIndicatorProcessor(oldEntity: UserDefinedJavaClassFieldEntity, newEntity: UserDefinedJavaClassFieldEntity)
- updateParameterProcessor(oldEntity: UserDefinedJavaClassFieldEntity, newEntity: UserDefinedJavaClassFieldEntity)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserDefinedJavaClassFieldServiceImpl673331586[ - label=< - -
- - -
- - - - - -
(C)UserDefinedJavaClassFieldServiceImpl
- applicationContext: ApplicationContext [1]
- dictionaryService: DictionaryService [1]
+ add(entity: UserDefinedJavaClassFieldEntity): UserDefinedJavaClassFieldEntity
+ importFromCsv(dictionaryId: String, csvContent: String, splitChar: String)
+ remove(primaryKey: String): String
+ remove(primaryKeyCollection: List<String>): List<String>
+ update(primaryKey: String, entity: UserDefinedJavaClassFieldEntity): UserDefinedJavaClassFieldEntity
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -UserDefinedJavaClassFieldWebController275791269[ - label=< - -
- -
- - -
(C)UserDefinedJavaClassFieldWebController
- dictionaryService: DictionaryService [1]
+ importFromCsv(request: Map<String, String>)
# query(request: HttpServletRequest, response: HttpServletResponse, queryParameter: QueryParameter): Page<UserDefinedJavaClassFieldVo>
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -VariableCodeAndNameReplacer1890783695[ - label=< - -
- - -
(C)VariableCodeAndNameReplacer
+ replace(entity: CodeAndNameReplacer, mapping: Map<String, String>)
+ replace(entities: List<? extends CodeAndNameReplacer>, mapping: Map<String, String>)
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -WhenThenIndicatorProcessorEntity933953727[ - label=< - -
- - - -
- - -
(C)WhenThenIndicatorProcessorEntity
- isWhenThenShorted: Boolean [0..1]
- then: String [0..1]
- when: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): WhenThenIndicatorProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -WhenThenParameterProcessorEntity1283902245[ - label=< - -
- - - -
- - -
(C)WhenThenParameterProcessorEntity
- isWhenThenShorted: Boolean [0..1]
- then: String [0..1]
- when: String [0..1]
+ replace(mapping: Map<String, String>): boolean
+ toVo(): WhenThenParameterProcessorVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} -} - -subgraph cluster_888804307 { - label=economiccapital - labeljust=l - fillcolor="#ececec" - style=filled - - subgraph cluster_1064073024 { - label=jpa - labeljust=l - fillcolor="#d8d8d8" - style=filled - - ResultRwaEntity645662623[ - label=< - -
- - - - - - - - - - - - - - - - - - - - - - - -
- -
(C)ResultRwaEntity
- assetEquity: Double [0..1]
- busCategory: String [0..1]
- ccf: Double [0..1]
- custId: String [0..1]
- custName: String [0..1]
- debtId: String [0..1]
- ead: Double [0..1]
- eadBigType: String [0..1]
- eadSmallType: String [0..1]
- ecRwa: Double [0..1]
- ecRwaAdjusted: Double [0..1]
- id: String [0..1]
- orgName: String [0..1]
- prodName: String [0..1]
- rwa: Double [0..1]
- rwaMitigation: Double [0..1]
- stripline: String [0..1]
- uncoverageEad: Double [0..1]
- weightArea: Double [0..1]
- weightIndustry: Double [0..1]
- weightIrs: Double [0..1]
- weightProd: Double [0..1]
- weightTerm: Double [0..1]
+ toVo(): ResultRwaVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; - -SchemaEntity645662623[ - label=< - -
- - - - - - -
- -
(C)SchemaEntity
- calMethod: EconomicCapitalCalMethod [0..1]
- code: String [0..1]
- description: String [0..1]
- enable: Boolean [0..1]
- id: String [0..1]
- name: String [0..1]
+ toVo(): SchemaVo
> - style=filled - margin=0 - shape=plaintext - fillcolor="#FFFFFF" -]; -} -} - -'edges -AbstractFlowableDaoServiceImpl1477149626 -> ProcessOperationServiceImpl1477149626[arrowhead=none]; -AbstractFlowableDaoServiceImpl1477149626 -> ProcessOperationServiceImpl1477149626[label="processOperationService -[1]", arrowhead=none]; -AbstractJpaEntityPersistentEventHandler1344511795 -> DictionaryEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> IndicatorEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> IndicatorProcessorEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> IndicatorValidatorEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> LibEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> ModelEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> ParameterEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> ParameterProcessorEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> ParameterValidatorEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> ResourceEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> ScoreCardVarEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AbstractJpaEntityPersistentEventHandler1344511795 -> UserDefinedJavaClassFieldEntityEventHandler923004430[arrowhead=none, arrowtail=empty, dir=both]; -AgentServiceImpl1477149626 -> EntityVoUtil1890006859[label="listAvailableAgentByUserId() -> toVo()"]; -AgentServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="roleService -[1]", arrowhead=none]; -AgentServiceImpl1477149626 -> UserServiceImpl1389554238[arrowhead=none]; -ApplicationInitializeServiceImpl563206525 -> AutoCompileDeployedModelInitializer627004136[label="initializers -[0..*]", arrowhead=none]; -ApplicationLauncher600058652 -> CommandLineArgsHandler600058652[label="run() -> handle()"]; -ApplicationLauncher600058652 -> Environment600058652[label="start() -> init()"]; -ApplicationLauncher600058652 -> KeepApplicationNotCloseThread305656038[label="afterApplicationReady() -> interrupt()"]; -AssigneeQueryServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="roleService -[1]", arrowhead=none]; -AssigneeQueryServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="userService -[1]", arrowhead=none]; -AttachmentServiceImpl2104802497 -> DirectoryManager600058652[label="getDiskAttachmentFilePath() -> getByName()"]; -AttachmentServiceImpl2104802497 -> EntityVoUtil1890006859[label="findByBussinessKey() -> toVo()"]; -AttachmentServiceImpl2104802497 -> TestCaseServiceImpl1389138710[label="systemParameterService -[1]", arrowhead=none]; -AuditLogAspectorBean686209983 -> PlatformAuditLogPersistenterManager2053706728[label="manager -[1]", arrowhead=none]; -AuditLogPersistenterManagerAutoConfiguration1046861171 -> PlatformAuditLogPersistenterManager2053706728[label="manager -[0..1]", arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> ConfigurationInitializer1784937997[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> ConfigureInitializer163612660[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> DesensitizerInitializer11204056[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> ExecutorFactoryService1557633605[label="executorFactoryService -[0..1]"]; -AutoCompileDeployedModelInitializer627004136 -> MenuInitializer11204056[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> OrgInitializer11204056[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> ParameterInitializer11204056[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> RoleAndMenuInitializer11204056[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> RoleAndUserInitializer1900089223[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> RuleEngineWorkFlowInitializer1684799666[arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> TestCaseServiceImpl1389138710[label="systemParameterService -[0..1]", arrowhead=none]; -AutoCompileDeployedModelInitializer627004136 -> WekaInitializer1768930355[arrowhead=none]; -BaseEntity937853716 -> AdminDivisionEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> AgentEntity20954217[label="toVo() -> toVo()"]; -BaseEntity937853716 -> AnnouncementEntity1024010915[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ApplicationEntity809857618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ArithmeticIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ArithmeticParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> AttachmentEntity449060956[label="toVo() -> toVo()"]; -BaseEntity937853716 -> AuditLogEntity1512343519[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> AuditorEntity937853716[label="toVo() -> toVo()"]; -BaseEntity937853716 -> BeanTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> BondEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> BussinessProductEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgBinomial1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgChiSquare1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgCustomerDistribution1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgCutOffPoint1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgDataExtractor1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgModel1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgScale1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CfgThreshold1908110995[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CoeBinomialHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> CoeChiSquareHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> CollateralEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ConditionRangeIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ConditionRangeParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ConfigureEntity588536316[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ConstantParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CorporationAuditorEntity937853716[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CorporationEntity729386998[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CounterpartyEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CountryEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CrossValidateEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> CurrencyEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DatabaseAttachmentEntity449060956[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DateRangeIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DateRangeParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DecimalRangeIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DecimalRangeParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DecisionTable2CParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DecisionTableParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DecisionTreeParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DefaultRecord448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> DepArithmeticFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepDelayFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepDifferentialFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepFactorDefineEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepFactorEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepFolderEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepOriginalFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DepartmentEntity609315128[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DesensitizeFieldEntity1810751287[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DictionaryEntity1562118516[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DiskAttachmentEntity449060956[label="toVo() -> toVo()"]; -BaseEntity937853716 -> DsEntity1463258587[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EmailIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EmailParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EmptyIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EmptyIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EmptyParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EmptyParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EnumDictionaryEntity135801452[label="toVo() -> toVo()"]; -BaseEntity937853716 -> EnumItemEntity135801452[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ExecutionFlowParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ExecutorEntity973481864[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ExecutorRegistryEntity973481864[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> FalseIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> FalseParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> FolderDictionaryEntity135801452[label="toVo() -> toVo()"]; -BaseEntity937853716 -> FolderLibEntity664884827[label="toVo() -> toVo()"]; -BaseEntity937853716 -> FunctionEntity1787809494[label="toVo() -> toVo()"]; -BaseEntity937853716 -> GeneralResultHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> GeneralSampleHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> GroovyScriptIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> GroovyScriptParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> GroovyTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> HttpRequestIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> HttpRequestParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> I18nEntity664205460[label="toVo() -> toVo()"]; -BaseEntity937853716 -> InOptionParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> InParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> InSubOutParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepArithmeticFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepDelayFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepDifferentialFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepFactorDefineEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepFactorEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepFolderEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndepOriginalFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndicatorEntity396450770[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndicatorIndicatorEntity1316713020[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndicatorLibEntity664884827[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndicatorParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndicatorProcessorEntity664884827[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndicatorValidatorEntity664884827[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IndustryEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IntegerRangeIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IntegerRangeParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> InterfaceIndicatorEntity1316713020[label="toVo() -> toVo()"]; -BaseEntity937853716 -> IntermediateParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> JavaClassDictionaryEntity135801452[label="toVo() -> toVo()"]; -BaseEntity937853716 -> JdbcDsEntity1463258587[label="toVo() -> toVo()"]; -BaseEntity937853716 -> JndiDsEntity1463258587[label="toVo() -> toVo()"]; -BaseEntity937853716 -> LengthRangeIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> LengthRangeParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> LibEntity396450770[label="toVo() -> toVo()"]; -BaseEntity937853716 -> LoanProductEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MathFormulaIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MathFormulaParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MenuEntity1503491701[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MenuGroupEntity1503491701[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MenuJavascriptEntity1503491701[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MenuRouteEntity1503491701[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MenuSeparatorEntity1503491701[label="toVo() -> toVo()"]; -BaseEntity937853716 -> MenuUrlEntity1503491701[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ModelAnalysisFactorEntity730313619[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> ModelEntity1858028169[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NodeJsTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NotEmptyIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NotEmptyParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NotificationEntity1198391169[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NumberRangeIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NumberRangeParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> NumberRangeScoreCardVarEntity1748894114[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ObjectPropertiesIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ObjectPropertiesParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> OptionScoreCardVarEntity1748894114[label="toVo() -> toVo()"]; -BaseEntity937853716 -> OptionValueParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> OrgEntity1639348634[label="toVo() -> toVo()"]; -BaseEntity937853716 -> OutParameterEntity1765317618[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ParameterEntity508990517[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ParameterInOptionItemEntity1858028169[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ParameterProcessorEntity1858028169[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ParameterValidatorEntity1858028169[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PatternIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PatternParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PerformanceStatusEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PhpTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PmmlParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PowerShellTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ProcessEntity20954217[label="toVo() -> toVo()"]; -BaseEntity937853716 -> PythonTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ResultRwaEntity645662623[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> RoleEntity499836396[label="toVo() -> toVo()"]; -BaseEntity937853716 -> RuleParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> RuntimeParameter448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> ScCapHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> ScKsHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> ScRocHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> ScenarioFactorDefineEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ScenarioFactorEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ScenarioFolderEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ScenarioOriginalFactorDefineEntity227079487[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SchemaEntity645662623[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ScoreCardIndicatorVarEntity1748894114[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ScoreCardVarEntity1748894114[label="toVo() -> toVo()"]; -BaseEntity937853716 -> ScoreRecord448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> ShellTaskEntity1853113301[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SingleRuleParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SpreadBusinessObjectEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SpreadCoreIndicatorEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SpreadEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SpreadIndustryEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SpreadShareholderEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SpreadSupervisionEntity757880876[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SqlIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> SqlParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> StPsiHistory448837373[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> StrategicTargetEntity544921377[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TaskEntity973481864[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TaskLogEntity973481864[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> TernaryIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TernaryParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TestCaseEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TestCaseParameterEntity1315290368[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TestResultEntity730313619[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TradeFinanceProductEntity325081519[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TrueIndicatorValidatorEntity918929279[label="toVo() -> toVo()"]; -BaseEntity937853716 -> TrueParameterValidatorEntity1298926693[label="toVo() -> toVo()"]; -BaseEntity937853716 -> UserDefinedJavaClassDictionaryEntity135801452[label="toVo() -> toVo()"]; -BaseEntity937853716 -> UserDefinedJavaClassFieldEntity135801452[label="toVo() -> toVo()"]; -BaseEntity937853716 -> UserEntity1437513631[label="toVo() -> toVo()"]; -BaseEntity937853716 -> VersionEntity937853716[arrowhead=none, arrowtail=empty, dir=both]; -BaseEntity937853716 -> WhenThenIndicatorProcessorEntity933953727[label="toVo() -> toVo()"]; -BaseEntity937853716 -> WhenThenParameterProcessorEntity1283902245[label="toVo() -> toVo()"]; -CfgDataExtractorServiceImpl395684880 -> DataExtractorManager1703384935[label="dataExtractorManager -[1]"]; -CfgModelWebController530250675 -> TestCaseServiceImpl1389138710[label="service -[1]", arrowhead=none]; -ConfigurationInitializer1784937997 -> TestCaseServiceImpl1389138710[label="chiSquareService -[1]", arrowhead=none]; -ConfigureInitializer163612660 -> TestCaseServiceImpl1389138710[label="configureService -[0..1]", arrowhead=none]; -CorporationAuditorEntity937853716 -> ParameterEntity508990517[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> And1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> Between1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> Contains1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> ContainsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> EndWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> EndWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> Equals1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> EqualsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> GreaterOrEquals1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> GreaterOrEqualsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> GreaterThan1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> GreaterThanField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IBetween1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IBetweenInclusive1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IEndWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotContains1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotContainsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotEndWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotEndWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotEquals1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotEqualsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotStartWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> INotStartWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IStartWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IStartWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> InSet1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IsBlank1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IsNotNull1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> IsNull1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> LessOrEquals1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> LessOrEqualsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> LessThan1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> LessThanField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> None1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> Not1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotBlank1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotContains1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotContainsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotEndWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotEndWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotEquals1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotEqualsField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotInSet1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotStartWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> NotStartWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> Or1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> StartWith1929946674[arrowhead=none, arrowtail=empty, dir=both]; -Criteria1597689472 -> StartWithField1929946674[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> AbstractFlowableDaoServiceImpl1477149626[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> AdminDivisionServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> AgentServiceImpl1477149626[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> AnnouncementServiceImpl666294214[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ApplicationServiceImpl744774639[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> AttachmentServiceImpl2104802497[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> AuditLogServiceImpl1523860028[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> BondServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> BussinessProductServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgBinomialServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgChiSquareServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgCustomerDistributionServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgCutOffPointServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgDataExtractorServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgModelServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgScaleServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CfgThresholdServiceImpl395684880[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CoeBinomialHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CoeChiSquareHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CollateralServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ConfigureServiceImpl1491599079[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CorporationServiceImpl1000551513[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CounterpartyServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CountryServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CrossValidateServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> CurrencyServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DefaultRecordServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DepFactorDefineServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DepFactorServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DepartmentServiceImpl1575601435[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DesensitizeFieldServiceImpl530916244[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DesensitizerAuthorizerServiceImpl1434168322[arrowhead=none]; -DaoServiceImpl1434168322 -> DesensitizerAuthorizerServiceImpl530916244[arrowhead=none]; -DaoServiceImpl1434168322 -> DictionaryServiceImpl1903344041[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> DsServiceImpl1876511998[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> EnumItemServiceImpl673331586[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ExecutorRegistryServiceImpl647483541[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ExecutorServiceImpl647483541[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> FunctionServiceImpl71452224[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> GeneralResultHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> GeneralSampleHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> I18nServiceImpl1787995727[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndepFactorDefineServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndepFactorServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndicatorProcessorServiceImpl875530703[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndicatorServiceImpl1402215057[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndicatorServiceImpl875530703[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndicatorValidatorServiceImpl875530703[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> IndustryServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> LibServiceImpl1402215057[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> LoanProductServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> MenuServiceImpl1607197522[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ModelAnalysisFactorServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ModelServiceImpl1389029299[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ModelServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> NotificationServiceImpl463362398[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> OrgServiceImpl699644675[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ParameterInOptionItemServiceImpl1389029299[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ParameterProcessorServiceImpl1389029299[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ParameterServiceImpl347069224[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ParameterValidatorServiceImpl1389029299[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> PerformanceStatusServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ProcessEntityServiceImpl1477149626[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ResourceServiceImpl1806430538[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> RoleServiceImpl832876279[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScCapHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScKsHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScRocHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScenarioFactorDefineServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScenarioFactorServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScoreCardVarServiceImpl1501941748[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> ScoreRecordServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> SpreadBusinessObjectServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> SpreadCoreIndicatorServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> SpreadIndustryServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> SpreadServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> SpreadShareholderServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> SpreadSupervisionServiceImpl1681602801[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> StPsiHistoryServiceImpl1696670170[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> StrategicTargetServiceImpl177251132[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> TaskLogServiceImpl647483541[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> TaskServiceImpl647483541[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> TestCaseParameterServiceImpl1389138710[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> TestCaseServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> TestResultServiceImpl1612402928[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> TradeFinanceProductServiceImpl1268588532[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> UserDefinedJavaClassFieldServiceImpl673331586[arrowhead=none, arrowtail=empty, dir=both]; -DaoServiceImpl1434168322 -> UserServiceImpl1389554238[arrowhead=none, arrowtail=empty, dir=both]; -DashboardServiceImpl647483541 -> TestCaseServiceImpl1389138710[label="executorRegistryService -[1]", arrowhead=none]; -DashboardServiceImpl647483541 -> TestCaseServiceImpl1389138710[label="taskLogService -[1]", arrowhead=none]; -DashboardWebController883123762 -> DashboardServiceImpl647483541[label="service -[1]", arrowhead=none]; -DatabaseAuditLogPersistenter1523860028 -> PlatformAuditLogPersistenterManager2053706728[label="manager -[1]", arrowhead=none]; -DatabaseAuditLogPersistenter1523860028 -> Slf4jAuditLogPersistenter563206525[arrowhead=none]; -DatabaseAuditLogPersistenter1523860028 -> TestCaseServiceImpl1389138710[label="auditLogService -[1]", arrowhead=none]; -DepFactorServiceImpl1612402928 -> EntityVoUtil1890006859[label="findByFactorDefineId() -> toVo()"]; -DepFactorServiceImpl1612402928 -> GroovyScriptExecutor1013535725[label="cal() -> eval()"]; -DepartmentServiceImpl1575601435 -> QueryResult511814995[label="listDepartmentsByUser() -> emptyList()"]; -DesensitizerInitializer11204056 -> TestCaseServiceImpl1389138710[label="desensitizerService -[0..1]", arrowhead=none]; -DictionaryApiWebController294487110 -> TestCaseServiceImpl1389138710[label="dictionaryService -[1]", arrowhead=none]; -DictionaryEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="userDefinedJavaClassFieldService -[1]", arrowhead=none]; -DictionaryServiceImpl673331586 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -EngineRuntime1798319057 -> GroovyEngineRuntime628020707[arrowhead=none, arrowtail=empty, dir=both]; -Environment600058652 -> Properties606551348[label="init() -> getProperty()"]; -ExecutorFactoryService1557633605 -> ExecutorFactoryServiceImpl1323134349[arrowhead=none, arrowtail=empty, dir=both]; -ExecutorFactoryServiceImpl1323134349 -> DatabaseSystemParameterServiceImpl1224636738[arrowhead=none]; -ExecutorFactoryServiceImpl1323134349 -> ExecutorBuilder305519897[label="buildExecutor() -> build()"]; -ExecutorFactoryServiceImpl1323134349 -> LocalExecutor1836259932[arrowhead=none]; -ExecutorFactoryServiceImpl1323134349 -> PluginSystemParameterServiceImpl686209983[arrowhead=none]; -ExecutorFactoryServiceImpl1323134349 -> RemoteExecutor926631635[arrowhead=none]; -ExecutorFactoryServiceImpl1323134349 -> RuntimeServiceImpl563206525[arrowhead=none]; -ExecutorFactoryServiceImpl1323134349 -> TestCaseServiceImpl1389138710[label="systemParameterService -[1]", arrowhead=none]; -ExecutorRegistryWebController883123762 -> TestCaseServiceImpl1389138710[label="executorRegistryService -[1]", arrowhead=none]; -ExecutorServiceImpl647483541 -> ExecutorRegistryServiceImpl647483541[arrowhead=none]; -ExecutorServiceImpl647483541 -> TestCaseServiceImpl1389138710[label="executorRegistryService -[1]", arrowhead=none]; -FlowableModelerEditorWebController1877559843 -> FlowableModelerServiceImpl1477149626[label="flowableModelerService -[1]", arrowhead=none]; -FlowableModelerEditorWebController1877559843 -> TestCaseServiceImpl1389138710[label="roleService -[1]", arrowhead=none]; -FlowableModelerServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="processEntityService -[1]", arrowhead=none]; -FunctionServiceImpl71452224 -> FunctionEntity1787809494[label="imports() -> clearId()"]; -FunctionServiceImpl71452224 -> FunctionEntityConverter1647731449[label="exports() -> toPo()"]; -GroovyEngineRuntime628020707 -> GroovyScriptEngineServiceImpl1036653823[arrowhead=none]; -GroovyEngineRuntime628020707 -> GroovySourceCodeGenerator305318642[arrowhead=none]; -GroovyScriptEngineServiceImpl1036653823 -> GroovyScriptExecutor1036653823[label="engine -[0..1]"]; -GroovySourceCodeGenerator305318642 -> Model1713404237[label="_generateSourceCode() -> buildFullName()"]; -GroovySourceCodeGenerator305318642 -> SourceCode435990976[label="cache -[0..*]"]; -I18nServiceImpl1787995727 -> CompositeMessageSource1224636738[label="compositeMessageSource -[1]"]; -IndexWebController467951925 -> TestCaseServiceImpl1389138710[label="systemParameterService -[1]", arrowhead=none]; -IndicatorEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="scoreCardVarService -[1]", arrowhead=none]; -IndicatorProcessorEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="indicatorService -[1]", arrowhead=none]; -IndicatorProcessorServiceImpl875530703 -> TestCaseServiceImpl1389138710[label="dictionaryService -[1]", arrowhead=none]; -IndicatorProcessorWebController1366042092 -> TestCaseServiceImpl1389138710[label="indicatorService -[1]", arrowhead=none]; -IndicatorServiceImpl875530703 -> DictionaryServiceImpl673331586[arrowhead=none]; -IndicatorServiceImpl875530703 -> IndicatorProcessorServiceImpl875530703[arrowhead=none]; -IndicatorServiceImpl875530703 -> LibServiceImpl875530703[arrowhead=none]; -IndicatorServiceImpl875530703 -> TestCaseServiceImpl1389138710[label="libService -[1]", arrowhead=none]; -IndicatorValidatorEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="indicatorService -[1]", arrowhead=none]; -JpaEntityPersistentEventListener1597923178 -> AbstractJpaEntityPersistentEventHandler1344511795[label="handlers -[0..*]"]; -LibEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="scoreCardVarService -[1]", arrowhead=none]; -LibServiceImpl1402215057 -> QueryResult511814995[label="listLibsByIndicator() -> emptyList()"]; -LibServiceImpl875530703 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -LibTestCaseParameterBuilder637638157 -> TestCaseServiceImpl1389138710[label="testCaseParameterService -[1]", arrowhead=none]; -LibWebController1366042092 -> TestCaseServiceImpl1389138710[label="indicatorService -[1]", arrowhead=none]; -LocalLoaderImpl1323134349 -> ResourceWrapper1399772911[label="cache -[0..*]"]; -MenuEntityTreeBuilder788402817 -> MenuEntity1503491701[label="resetParent() -> resetParent()"]; -MenuInitializer11204056 -> TestCaseServiceImpl1389138710[label="menuService -[0..1]", arrowhead=none]; -MenuServiceImpl1607197522 -> MenuEntity1503491701[label="treeBuilder -[0..1]"]; -MenuServiceImpl1607197522 -> MenuEntityPluginConvertor1045338113[label="pluginConverter -[0..1]"]; -MenuServiceImpl1607197522 -> TreeBuilder606551348[label="treeBuilder -[0..1]"]; -MetricsWebController1825092950 -> TestCaseServiceImpl1389138710[label="auditLogService -[1]", arrowhead=none]; -MigrationServiceImpl1536246856 -> TestCaseServiceImpl1389138710[label="modelService -[1]", arrowhead=none]; -MigrationServiceImpl1536246856 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -MigrationWebController1886436885 -> MigrationServiceImpl1536246856[label="migrationService -[1]", arrowhead=none]; -ModelEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -ModelServiceImpl1612402928 -> DepFactorVo1490259760[label="doBuildModel() -> calUniqueKey()"]; -ModelServiceImpl1612402928 -> IndepFactorVo1490259760[label="doBuildModel() -> calUniqueKey()"]; -ModelServiceImpl1612402928 -> TestCaseServiceImpl1389138710[label="indepFactorService -[1]", arrowhead=none]; -ModelTestCaseParameterBuilder637638157 -> TestCaseServiceImpl1389138710[label="testCaseParameterService -[1]", arrowhead=none]; -OrgInitializer11204056 -> TestCaseServiceImpl1389138710[label="orgService -[0..1]", arrowhead=none]; -ParameterAndValueTypeServiceImpl25391821 -> TestCaseServiceImpl1389138710[label="parameterProcessorService -[1]", arrowhead=none]; -ParameterAndValueTypeServiceImpl25391821 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -ParameterAndValueTypeWebController288010832 -> ParameterAndValueTypeServiceImpl25391821[label="service -[1]", arrowhead=none]; -ParameterApiWebController1347615109 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -ParameterEntity508990517 -> DictionaryEntity135801452[arrowhead=none]; -ParameterEntity508990517 -> EnumItemEntity135801452[arrowhead=none]; -ParameterEntity508990517 -> FunctionEntity1787809494[arrowhead=none]; -ParameterEntity508990517 -> IndicatorEntity664884827[arrowhead=none]; -ParameterEntity508990517 -> IndicatorProcessorEntity664884827[arrowhead=none]; -ParameterEntity508990517 -> IndicatorValidatorEntity664884827[arrowhead=none]; -ParameterEntity508990517 -> LibEntity664884827[arrowhead=none]; -ParameterEntity508990517 -> LibTestCaseEntity1315290368[arrowhead=none]; -ParameterEntity508990517 -> MenuEntity1503491701[arrowhead=none]; -ParameterEntity508990517 -> ModelEntity1858028169[arrowhead=none]; -ParameterEntity508990517 -> ModelTestCaseEntity1315290368[arrowhead=none]; -ParameterEntity508990517 -> ParameterInOptionItemEntity1858028169[arrowhead=none]; -ParameterEntity508990517 -> ParameterProcessorEntity1858028169[arrowhead=none]; -ParameterEntity508990517 -> ParameterValidatorEntity1858028169[arrowhead=none]; -ParameterEntity508990517 -> ReleasableLibEntity664884827[arrowhead=none]; -ParameterEntity508990517 -> ReleasableResourceEntity1142511668[arrowhead=none]; -ParameterEntity508990517 -> ResourceEntity1142511668[arrowhead=none]; -ParameterEntity508990517 -> ResourceTestCaseEntity1315290368[arrowhead=none]; -ParameterEntity508990517 -> ScoreCardTestCaseEntity1315290368[arrowhead=none]; -ParameterEntity508990517 -> ScoreCardVarEntity1748894114[arrowhead=none]; -ParameterEntity508990517 -> TestCaseEntity1315290368[arrowhead=none]; -ParameterEntity508990517 -> TestCaseParameterEntity1315290368[arrowhead=none]; -ParameterEntity508990517 -> UserDefinedJavaClassFieldEntity135801452[arrowhead=none]; -ParameterEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="parameterProcessorService -[1]", arrowhead=none]; -ParameterEntityTreeBuilder1860002174 -> ParameterEntity508990517[label="resetParent() -> resetParent()"]; -ParameterInitializer11204056 -> TestCaseServiceImpl1389138710[label="parameterService -[0..1]", arrowhead=none]; -ParameterProcessorEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -ParameterProcessorServiceImpl1389029299 -> BaseEntity937853716[label="listObejctPropertiesByProcessorId() -> toVo()"]; -ParameterProcessorServiceImpl1389029299 -> ExpressionReplacer435449771[label="executeSql() -> replace()"]; -ParameterProcessorServiceImpl1389029299 -> ObjectProperty1952415362[label="listObejctPropertiesByProcessorId() -> replace()"]; -ParameterProcessorServiceImpl1389029299 -> ParameterServiceImpl1389029299[arrowhead=none]; -ParameterProcessorServiceImpl1389029299 -> SqlQueryResult2021460767[label="executeSql() -> from()"]; -ParameterProcessorServiceImpl1389029299 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -ParameterProcessorWebController575515856 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -ParameterServiceImpl347069224 -> ApplicationServiceImpl744774639[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgBinomialServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgChiSquareServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgCustomerDistributionServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgCutOffPointServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgDataExtractorServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgModelServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgScaleServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> CfgThresholdServiceImpl395684880[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> ConfigureServiceImpl1491599079[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> CorporationServiceImpl1000551513[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> DaoRepositoryImpl572539045[arrowhead=none]; -ParameterServiceImpl347069224 -> DaoServiceImpl1434168322[arrowhead=none]; -ParameterServiceImpl347069224 -> DsServiceImpl1876511998[label="findByUniqueKey() -> findByUniqueKey()", arrowhead=none]; -ParameterServiceImpl347069224 -> IndicatorValidatorServiceImpl875530703[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> MenuServiceImpl1607197522[label="update() -> update()", arrowhead=none]; -ParameterServiceImpl347069224 -> NotificationServiceImpl463362398[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> ParameterInOptionItemServiceImpl1389029299[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> ParameterValidatorServiceImpl1389029299[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> TestCaseServiceImpl1389138710[label="add() -> add()", arrowhead=none]; -ParameterServiceImpl347069224 -> TreeBuilder606551348[label="init() -> buildAndGetRoots()"]; -ParameterValidatorEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -PlatformAuditLogPersistenterManager2053706728 -> DatabaseAuditLogPersistenter1523860028[label="persistenter -[0..1]", arrowhead=none]; -PlatformAuditLogPersistenterManager2053706728 -> DatabaseAuditLogPersistenter1523860028[label="persisterMap -[0..*]", arrowhead=none]; -PlatformAuthenticationFailureHandler1529412511 -> PlatformAuditLogPersistenterManager2053706728[label="auditLogPersistenterManager -[0..1]", arrowhead=none]; -PlatformAuthenticationSuccessHandler1529412511 -> PlatformAuditLogPersistenterManager2053706728[label="auditLogPersistenterManager -[0..1]", arrowhead=none]; -PlatformLogoutSuccessHandler1529412511 -> PlatformAuditLogPersistenterManager2053706728[label="auditLogPersistenterManager -[0..1]", arrowhead=none]; -ProcessOperationServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="agentService -[1]", arrowhead=none]; -ProcessOperationServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="processEntityService -[1]", arrowhead=none]; -ProcessOperationWebController1877559843 -> ProcessOperationServiceImpl1477149626[label="processOperationService -[1]", arrowhead=none]; -ProcessQueryServiceImpl1477149626 -> AssigneeQueryServiceImpl1477149626[label="assigneeQueryService -[1]", arrowhead=none]; -ProcessQueryServiceImpl1477149626 -> TestCaseServiceImpl1389138710[label="processEntityService -[1]", arrowhead=none]; -ProcessQueryWebController1877559843 -> ProcessQueryServiceImpl1477149626[label="service -[1]", arrowhead=none]; -Properties606551348 -> TypeConvertor606551348[label="getProperty() -> getValue()"]; -QueryParameter511814995 -> Criteria1597689472[label="criterias -[0..*]"]; -QueryResult511814995 -> DefaultQueryResultSorter511814995[arrowhead=none]; -RemoteExecutor926631635 -> RemoteLoader926631635[arrowhead=none]; -RemoteLoader926631635 -> ResourceWrapper1399772911[label="cache -[0..*]"]; -ResourceDeployApprovingController306271460 -> RuleEngineWorkflowServiceImpl343202503[label="ruleEngineWorkflowService -[1]", arrowhead=none]; -ResourcePermissionWebController384481427 -> TestCaseServiceImpl1389138710[label="service -[1]", arrowhead=none]; -ResourceQueryServiceImpl1806430538 -> TestCaseServiceImpl1389138710[label="parameterService -[1]", arrowhead=none]; -ResourceQueryServiceImpl1806430538 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -ResourceServiceImpl1806430538 -> ResourceQueryServiceImpl1806430538[label="resourceQueryService -[1]", arrowhead=none]; -ResourceServiceImpl1806430538 -> TestCaseServiceImpl1389138710[label="roleService -[1]", arrowhead=none]; -ResourceWebController384481427 -> ExecutorFactoryService1557633605[label="executorFactoryService -[1]"]; -ResourceWrapper1399772911 -> Function339383092[label="functions -[0..*]"]; -ResourceWrapper1399772911 -> ResourceWrapper4Lib1399772911[arrowhead=none, arrowtail=empty, dir=both]; -ResourceWrapper1399772911 -> ResourceWrapper4Resource1399772911[arrowhead=none, arrowtail=empty, dir=both]; -ResourceWrapper4Lib1399772911 -> Dictionary239479026[label="dictionaries -[0..*]"]; -ResourceWrapper4Lib1399772911 -> Lib2004919895[label="lib -[0..1]"]; -ResourceWrapper4Resource1399772911 -> Dictionary239479026[label="dictionaries -[0..*]"]; -ResourceWrapper4Resource1399772911 -> Lib2004919895[label="libs -[0..*]"]; -ResourceWrapper4Resource1399772911 -> Resource1382620310[label="resource -[0..1]"]; -RestCrudController737743850 -> AdminDivisionWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> AgentWebController1877559843[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> AnnouncementWebController832594711[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ApplicationWebController1628504052[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> AttachmentWebController1407544670[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> AuditLogWebController926018151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> BondWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> BussinessProductWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgBinomialWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgChiSquareWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgCustomerDistributionWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgCutOffPointWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgDataExtractorWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgModelWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgScaleWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CfgThresholdWebController530250675[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CoeBinomialHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CoeChiSquareHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CollateralWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ConfigureController1849825354[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CorporationWebController1127218628[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CounterpartyWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CountryWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CrossValidateWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> CurrencyWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DefaultRecordWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DepFactorDefineWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DepFactorWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DepartmentWebController1247290498[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DesensitizeFieldWebController627610383[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DictionaryApiWebController294487110[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DictionaryWebController294487110[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> DsWebController393347039[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> EnumItemWebController275791269[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ExecutorRegistryWebController883123762[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ExecutorWebController883123762[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> FunctionWebController1865763485[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> GeneralResultHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> GeneralSampleHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> I18nWebController1774156210[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> IndepFactorDefineWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> IndepFactorWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> IndicatorProcessorWebController1366042092[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> IndicatorValidatorWebController1366042092[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> IndicatorWebController2041910900[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> IndustryWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> LibWebController2041910900[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> LoanProductWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> MenuWebController934869969[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ModelAnalysisFactorWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ModelWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> NotificationManagerWebController1239970501[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> OrgWebController217256992[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ParameterApiWebController1347615109[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ParameterInOptionItemWebController575515856[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ParameterProcessorWebController575515856[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ParameterValidatorWebController575515856[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ParameterWebController1347615109[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> PerformanceStatusWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ProcessEntityWebController1877559843[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ResourceWebController384481427[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> RoleWebController1938525274[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScCapHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScKsHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScRocHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScenarioFactorDefineWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScenarioFactorWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScoreCardVarWebController1313523863[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> ScoreRecordWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> SpreadBusinessObjectWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> SpreadCoreIndicatorWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> SpreadIndustryWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> SpreadShareholderWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> SpreadSupervisionWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> SpreadWebController1098724750[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> StPsiHistoryWebController1989524297[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> StrategicTargetWebController1311684249[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> TaskLogWebController883123762[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> TaskWebController883123762[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> TestCaseParameterWebController2092176327[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> TestCaseWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> TestResultWebController1708048051[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> TradeFinanceProductWebController2113280151[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> UserDefinedJavaClassFieldWebController275791269[arrowhead=none, arrowtail=empty, dir=both]; -RestCrudController737743850 -> UserWebController419091995[arrowhead=none, arrowtail=empty, dir=both]; -RuleEngineResourceDeployComplementListener228004812 -> ProcessQueryServiceImpl1477149626[label="processQueryService -[1]", arrowhead=none]; -RuleEngineResourceDeployComplementListener228004812 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -RuleEngineServerConfigurationServiceImpl611902232 -> TestCaseServiceImpl1389138710[label="processEntityService -[1]", arrowhead=none]; -RuleEngineServerConfigurationServiceImpl611902232 -> TestCaseServiceImpl1389138710[label="systemParameterService -[1]", arrowhead=none]; -RuleEngineWorkFlowInitializer1684799666 -> TestCaseServiceImpl1389138710[label="processEntityService -[0..1]", arrowhead=none]; -RuleEngineWorkflowServiceImpl343202503 -> ProcessOperationServiceImpl1477149626[label="processOperationService -[1]", arrowhead=none]; -RuleEngineWorkflowServiceImpl343202503 -> TestCaseServiceImpl1389138710[label="attachmentService -[1]", arrowhead=none]; -RuleEngineWorkflowServiceImpl343202503 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -RuntimeServiceImpl563206525 -> ApplicationLauncher600058652[label="applicationReadyEventListener() -> afterApplicationReady()"]; -RuntimeServiceImpl563206525 -> DirectoryManager600058652[label="runtimeServiceImplInit() -> getByName()"]; -RuntimeServiceImpl563206525 -> FileUtil606551348[label="runtimeServiceImplInit() -> readString()"]; -SampleWebController996395185 -> TestCaseServiceImpl1389138710[label="scoreRecordService -[1]", arrowhead=none]; -ScenarioFactorServiceImpl1612402928 -> EntityVoUtil1890006859[label="findByFactorDefineId() -> toVo()"]; -ScenarioFactorServiceImpl1612402928 -> IndepFactorServiceImpl1612402928[arrowhead=none]; -ScoreCardTestCaseParameterBuilder637638157 -> LibTestCaseParameterBuilder637638157[arrowhead=none]; -ScoreCardTestCaseParameterBuilder637638157 -> ModelTestCaseParameterBuilder637638157[arrowhead=none]; -ScoreCardTestCaseParameterBuilder637638157 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -ScoreCardTestCaseParameterBuilder637638157 -> TestCaseServiceImpl1389138710[label="scoreCardVarService -[1]", arrowhead=none]; -ScoreCardVarEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -ScoreCardVarServiceImpl1501941748 -> ResourceServiceImpl1806430538[arrowhead=none]; -ScoreCardVarServiceImpl1501941748 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -Slf4jAuditLogPersistenter563206525 -> PlatformAuditLogPersistenterManager2053706728[label="manager -[1]", arrowhead=none]; -SpreadBusinessObjectServiceImpl1681602801 -> EntityVoUtil1890006859[label="findBySpreadId() -> toVo()"]; -SpreadCoreIndicatorServiceImpl1681602801 -> EntityVoUtil1890006859[label="findBySpreadId() -> toVo()"]; -SpreadIndustryServiceImpl1681602801 -> EntityVoUtil1890006859[label="findBySpreadId() -> toVo()"]; -SpreadShareholderServiceImpl1681602801 -> EntityVoUtil1890006859[label="findBySpreadId() -> toVo()"]; -SpreadSupervisionServiceImpl1681602801 -> EntityVoUtil1890006859[label="findBySpreadId() -> toVo()"]; -TaskLogWebController883123762 -> TestCaseServiceImpl1389138710[label="taskLogService -[1]", arrowhead=none]; -TestCaseParameterBuilderFactory637638157 -> ScoreCardTestCaseParameterBuilder637638157[label="builderMap -[0..*]", arrowhead=none]; -TestCaseParameterServiceImpl1389138710 -> LibTestCaseParameterBuilder637638157[arrowhead=none]; -TestCaseParameterServiceImpl1389138710 -> ModelTestCaseParameterBuilder637638157[arrowhead=none]; -TestCaseParameterServiceImpl1389138710 -> ScoreCardTestCaseParameterBuilder637638157[arrowhead=none]; -TestCaseParameterServiceImpl1389138710 -> TestCaseParameterBuilderFactory637638157[label="testCaseParameterBuilderFactory -[1]"]; -TestCaseParameterServiceImpl1389138710 -> TestCaseServiceImpl1389138710[arrowhead=none]; -TestCaseServiceImpl1389138710 -> AdminDivisionServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> AnnouncementServiceImpl666294214[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ApplicationServiceImpl744774639[arrowhead=none]; -TestCaseServiceImpl1389138710 -> AuditLogServiceImpl1523860028[arrowhead=none]; -TestCaseServiceImpl1389138710 -> BondServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> BussinessProductServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgBinomialServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgChiSquareServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgCustomerDistributionServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgCutOffPointServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgDataExtractorServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgModelServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgScaleServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CfgThresholdServiceImpl395684880[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CoeBinomialHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CoeChiSquareHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CollateralServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ConfigureServiceImpl1491599079[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CorporationServiceImpl1000551513[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CounterpartyServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CountryServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CrossValidateServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> CurrencyServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DaoServiceImpl1434168322[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DatabaseSystemParameterServiceImpl1224636738[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DefaultRecordServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DepFactorDefineServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DepFactorServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DepartmentServiceImpl1575601435[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DesensitizeFieldServiceImpl530916244[arrowhead=none]; -TestCaseServiceImpl1389138710 -> DsServiceImpl1876511998[arrowhead=none]; -TestCaseServiceImpl1389138710 -> EnumItemServiceImpl673331586[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ExecutorFactoryService1557633605[label="executorFactoryService -[1]"]; -TestCaseServiceImpl1389138710 -> ExecutorRegistryServiceImpl647483541[arrowhead=none]; -TestCaseServiceImpl1389138710 -> FunctionServiceImpl71452224[arrowhead=none]; -TestCaseServiceImpl1389138710 -> GeneralResultHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> GeneralSampleHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> I18nServiceImpl1787995727[arrowhead=none]; -TestCaseServiceImpl1389138710 -> IndepFactorDefineServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> IndepFactorServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> IndicatorValidatorServiceImpl875530703[arrowhead=none]; -TestCaseServiceImpl1389138710 -> IndustryServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> LoanProductServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> MenuServiceImpl1607197522[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ModelAnalysisFactorServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> NotificationServiceImpl463362398[arrowhead=none]; -TestCaseServiceImpl1389138710 -> OrgServiceImpl699644675[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ParameterInOptionItemServiceImpl1389029299[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ParameterServiceImpl347069224[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ParameterValidatorServiceImpl1389029299[arrowhead=none]; -TestCaseServiceImpl1389138710 -> PerformanceStatusServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> PluginSystemParameterServiceImpl686209983[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ProcessEntityServiceImpl1477149626[arrowhead=none]; -TestCaseServiceImpl1389138710 -> RoleServiceImpl832876279[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ScCapHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ScKsHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ScRocHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ScenarioFactorDefineServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ScenarioFactorServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> ScoreRecordServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> SpreadBusinessObjectServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> SpreadCoreIndicatorServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> SpreadIndustryServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> SpreadServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> SpreadShareholderServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> SpreadSupervisionServiceImpl1681602801[arrowhead=none]; -TestCaseServiceImpl1389138710 -> StPsiHistoryServiceImpl1696670170[arrowhead=none]; -TestCaseServiceImpl1389138710 -> StrategicTargetServiceImpl177251132[arrowhead=none]; -TestCaseServiceImpl1389138710 -> TaskLogServiceImpl647483541[arrowhead=none]; -TestCaseServiceImpl1389138710 -> TaskServiceImpl647483541[arrowhead=none]; -TestCaseServiceImpl1389138710 -> TestCaseParameterBuilderFactory637638157[label="testCaseParameterBuilderFactory -[1]"]; -TestCaseServiceImpl1389138710 -> TestCaseParameterServiceImpl1389138710[arrowhead=none]; -TestCaseServiceImpl1389138710 -> TestResultServiceImpl1612402928[arrowhead=none]; -TestCaseServiceImpl1389138710 -> TradeFinanceProductServiceImpl1268588532[arrowhead=none]; -TestCaseServiceImpl1389138710 -> UserDefinedJavaClassFieldServiceImpl673331586[arrowhead=none]; -TestCaseServiceImpl1612402928 -> BaseEntity937853716[label="test() -> toVo()"]; -TestCaseWebController2092176327 -> TestCaseServiceImpl1389138710[label="resourceService -[1]", arrowhead=none]; -TreeBuilder606551348 -> FrontEndRouteTreeBuilder1860635603[arrowhead=none, arrowtail=empty, dir=both]; -TreeBuilder606551348 -> MenuEntityTreeBuilder788402817[arrowhead=none, arrowtail=empty, dir=both]; -TreeBuilder606551348 -> MenuItemTreeBuilder50211118[arrowhead=none, arrowtail=empty, dir=both]; -TreeBuilder606551348 -> ParameterEntityTreeBuilder1860002174[arrowhead=none, arrowtail=empty, dir=both]; -UserDefinedJavaClassFieldEntityEventHandler923004430 -> TestCaseServiceImpl1389138710[label="userDefinedJavaClassFieldService -[1]", arrowhead=none]; -UserDefinedJavaClassFieldServiceImpl673331586 -> Strings435449771[label="add() -> replaceCR_LF()"]; -UserDefinedJavaClassFieldWebController275791269 -> TestCaseServiceImpl1389138710[label="dictionaryService -[1]", arrowhead=none]; -UserServiceImpl1389554238 -> TestCaseServiceImpl1389138710[label="roleService -[1]", arrowhead=none]; -WebSecurityAutoConfiguration784465747 -> PlatformAuditLogPersistenterManager2053706728[label="auditLogPersistenterManager -[1]", arrowhead=none]; - -} -@enduml \ No newline at end of file diff --git a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/ExecutorFactoryServiceImpl.java b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/ExecutorFactoryServiceImpl.java index 636d37c0..91fb529a 100644 --- a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/ExecutorFactoryServiceImpl.java +++ b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/ExecutorFactoryServiceImpl.java @@ -24,65 +24,116 @@ import io.sc.engine.rule.client.spring.util.EngineSpringApplicationContextUtil; public class ExecutorFactoryServiceImpl implements ExecutorFactoryService{ private static final Logger log =LoggerFactory.getLogger(ExecutorFactoryServiceImpl.class); - private static final String EXECUTOR_MODE_KEY ="parameter.re.client.executorMode"; - private static final String LOADER_MODE_KEY ="parameter.re.client.loaderMode"; - private static final String REMOTE_API_URL_KEY ="parameter.re.client.remoteApiUrl"; + private static final String CLIENT_EXECUTOR_MODE_KEY ="parameter.re.client.executorMode"; + private static final String CLIENT_LOADER_MODE_KEY ="parameter.re.client.loaderMode"; + private static final String CLIENT_REMOTE_API_URL_KEY ="parameter.re.client.remoteApiUrl"; + + private static final String SERVER_EXECUTOR_MODE_KEY ="parameter.re.server.executorMode"; + private static final String SERVER_LOADER_MODE_KEY ="parameter.re.server.loaderMode"; + private static final String SERVER_REMOTE_API_URL_KEY ="parameter.re.server.remoteApiUrl"; @Autowired private RuntimeService runtimeService; @Autowired private SystemParameterService systemParameterService; @Autowired private LocalLoader localLoader; @Autowired private ApplicationContext applicationContext; - private ExecutorMode lastExecutorMode; //上一次保存的执行器执行模式 - private LoaderMode lastLoaderMode; //上一次保存的加载器执行模式 - private String lastRemoteApiUrl; //上一次保存的远程服务器 api url 地址 + private ExecutorMode clientLastExecutorMode; //上一次保存的执行器执行模式(客户端) + private LoaderMode clientLastLoaderMode; //上一次保存的加载器执行模式(客户端) + private String clientLastRemoteApiUrl; //上一次保存的远程服务器 api url 地址(客户端) + + private ExecutorMode serverLastExecutorMode; //上一次保存的执行器执行模式(服务器端) + private LoaderMode serverLastLoaderMode; //上一次保存的加载器执行模式(服务器端) + private String serverLastRemoteApiUrl; //上一次保存的远程服务器 api url 地址(服务器端) - private Executor executor; + private Executor clientExecutor; //执行器(客户端) + private Executor serverExecutor; //执行器(服务器端) @PostConstruct public void init() { try { EngineSpringApplicationContextUtil.setApplicationContext(applicationContext); - executor =buildExecutor(); + clientExecutor = buildClientExecutor(); + serverExecutor = buildServerExecutor(); } catch (Exception e) { log.error("",e); } } @Override - public Executor getExecutor() { + public Executor getClientExecutor() { if(!runtimeService.isReady()) { return null; } - if(executor!=null) return executor; + if(clientExecutor !=null) return clientExecutor; try { Map parameters =systemParameterService.getParameters(new String[] { - EXECUTOR_MODE_KEY, - LOADER_MODE_KEY, - REMOTE_API_URL_KEY + CLIENT_EXECUTOR_MODE_KEY, + CLIENT_LOADER_MODE_KEY, + CLIENT_REMOTE_API_URL_KEY }); - ExecutorMode executorMode =ExecutorMode.parse(parameters.get(EXECUTOR_MODE_KEY)); - LoaderMode loaderMode =LoaderMode.parse(parameters.get(LOADER_MODE_KEY)); - String remoteApiUrl =parameters.get(REMOTE_API_URL_KEY); + ExecutorMode executorMode =ExecutorMode.parse(parameters.get(CLIENT_EXECUTOR_MODE_KEY)); + LoaderMode loaderMode =LoaderMode.parse(parameters.get(CLIENT_LOADER_MODE_KEY)); + String remoteApiUrl =parameters.get(CLIENT_REMOTE_API_URL_KEY); if( - executorMode!=null && executorMode.equals(lastExecutorMode) - && loaderMode!=null && loaderMode.equals(lastLoaderMode) - && remoteApiUrl!=null && remoteApiUrl.equals(lastRemoteApiUrl) + executorMode!=null && executorMode.equals(clientLastExecutorMode) + && loaderMode!=null && loaderMode.equals(clientLastLoaderMode) + && remoteApiUrl!=null && remoteApiUrl.equals(clientLastRemoteApiUrl) ) { - return executor; + return clientExecutor; + }else { + if(ExecutorMode.LOCAL.equals(executorMode) && LoaderMode.LOCAL.equals(loaderMode)) { + clientExecutor =new LocalExecutor(localLoader); + }else { + clientExecutor =new ExecutorBuilder().build(executorMode, loaderMode, remoteApiUrl); + } + clientLastExecutorMode =executorMode; + clientLastLoaderMode =loaderMode; + clientLastRemoteApiUrl =remoteApiUrl; + return clientExecutor; + } + } catch (Exception e) { + log.error("",e); + return null; + } + } + + @Override + public Executor getServerExecutor() { + if(!runtimeService.isReady()) { + return null; + } + if(serverExecutor !=null) return serverExecutor; + try { + Map parameters =systemParameterService.getParameters(new String[] { + SERVER_EXECUTOR_MODE_KEY, + SERVER_LOADER_MODE_KEY, + SERVER_REMOTE_API_URL_KEY + }); + + ExecutorMode executorMode =ExecutorMode.parse(parameters.get(SERVER_EXECUTOR_MODE_KEY)); + LoaderMode loaderMode =LoaderMode.parse(parameters.get(SERVER_LOADER_MODE_KEY)); + String remoteApiUrl =parameters.get(SERVER_REMOTE_API_URL_KEY); + + if( + executorMode!=null && executorMode.equals(serverLastExecutorMode) + && loaderMode!=null && loaderMode.equals(serverLastLoaderMode) + && remoteApiUrl!=null && remoteApiUrl.equals(serverLastRemoteApiUrl) + + ) { + return serverExecutor; }else { if(ExecutorMode.LOCAL.equals(executorMode) && LoaderMode.LOCAL.equals(loaderMode)) { - executor =new LocalExecutor(localLoader); + serverExecutor =new LocalExecutor(localLoader); }else { - executor =new ExecutorBuilder().build(executorMode, loaderMode, remoteApiUrl); + serverExecutor =new ExecutorBuilder().build(executorMode, loaderMode, remoteApiUrl); } - lastExecutorMode =executorMode; - lastLoaderMode =loaderMode; - lastRemoteApiUrl =remoteApiUrl; - return executor; + serverLastExecutorMode =executorMode; + serverLastLoaderMode =loaderMode; + serverLastRemoteApiUrl =remoteApiUrl; + return serverExecutor; } } catch (Exception e) { log.error("",e); @@ -90,19 +141,39 @@ public class ExecutorFactoryServiceImpl implements ExecutorFactoryService{ } } - private Executor buildExecutor() throws Exception{ + private Executor buildClientExecutor() throws Exception{ if(!runtimeService.isReady()) { return null; } Map parameters =systemParameterService.getParameters(new String[] { - EXECUTOR_MODE_KEY, - LOADER_MODE_KEY, - REMOTE_API_URL_KEY + CLIENT_EXECUTOR_MODE_KEY, + CLIENT_LOADER_MODE_KEY, + CLIENT_REMOTE_API_URL_KEY }); - ExecutorMode executorMode =ExecutorMode.parse(parameters.get(EXECUTOR_MODE_KEY)); - LoaderMode loaderMode =LoaderMode.parse(parameters.get(LOADER_MODE_KEY)); - String remoteApiUrl =parameters.get(REMOTE_API_URL_KEY); + ExecutorMode executorMode =ExecutorMode.parse(parameters.get(CLIENT_EXECUTOR_MODE_KEY)); + LoaderMode loaderMode =LoaderMode.parse(parameters.get(CLIENT_LOADER_MODE_KEY)); + String remoteApiUrl =parameters.get(CLIENT_REMOTE_API_URL_KEY); + if(ExecutorMode.LOCAL.equals(executorMode) && LoaderMode.LOCAL.equals(loaderMode)) { + return new LocalExecutor(localLoader); + }else { + return new ExecutorBuilder().build(executorMode, loaderMode, remoteApiUrl); + } + } + + private Executor buildServerExecutor() throws Exception{ + if(!runtimeService.isReady()) { + return null; + } + Map parameters =systemParameterService.getParameters(new String[] { + SERVER_EXECUTOR_MODE_KEY, + SERVER_LOADER_MODE_KEY, + SERVER_REMOTE_API_URL_KEY + }); + + ExecutorMode executorMode =ExecutorMode.parse(parameters.get(SERVER_EXECUTOR_MODE_KEY)); + LoaderMode loaderMode =LoaderMode.parse(parameters.get(SERVER_LOADER_MODE_KEY)); + String remoteApiUrl =parameters.get(SERVER_REMOTE_API_URL_KEY); if(ExecutorMode.LOCAL.equals(executorMode) && LoaderMode.LOCAL.equals(loaderMode)) { return new LocalExecutor(localLoader); }else { diff --git a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/LocalLoaderImpl.java b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/LocalLoaderImpl.java index 17007090..04c566ba 100644 --- a/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/LocalLoaderImpl.java +++ b/io.sc.engine.rule.client.spring/src/main/java/io/sc/engine/rule/client/spring/service/impl/LocalLoaderImpl.java @@ -2,6 +2,10 @@ package io.sc.engine.rule.client.spring.service.impl; import io.sc.engine.rule.client.spring.service.LocalLoader; import io.sc.engine.rule.core.code.ExecuteUnit; +import io.sc.engine.rule.core.util.HttpRequestUtil; +import io.sc.platform.util.ObjectMapperUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframework.stereotype.Service; @@ -12,64 +16,49 @@ import java.util.concurrent.ConcurrentHashMap; @Service("io.sc.engine.rule.client.spring.service.impl.LocalLoaderImpl") public class LocalLoaderImpl implements LocalLoader{ - private static final String RESOURCE_SERVICE_BEAN_NAME ="io.sc.engine.rule.server.resource.service.impl.ResourceServiceImpl"; + private static final Logger log = LoggerFactory.getLogger(LocalLoaderImpl.class); + private static final String RESOURCE_SERVICE_BEAN_NAME ="io.sc.engine.rule.server.executable.service.impl.ExecuteUnitServiceImpl"; @Autowired private ApplicationContext applicationContext; private Map cache =new ConcurrentHashMap<>(); @Override public ExecuteUnit load(String resourceId) throws Exception { - Object bean =applicationContext.getBean(RESOURCE_SERVICE_BEAN_NAME); - if(bean!=null) { - Method method =bean.getClass().getMethod("getDefineById", String.class); - ExecuteUnit result =(ExecuteUnit)method.invoke(bean, resourceId); - return result; - } - return null; + return doLoad(resourceId,null,null); } @Override public ExecuteUnit load(String resourceCode, Integer version) throws Exception { + if(resourceCode==null || "".equals(resourceCode.trim())){ + return null; + } + if(version==null) {//未指定版本时,不缓存,加载最新的 - Object bean =applicationContext.getBean(RESOURCE_SERVICE_BEAN_NAME); - if(bean!=null) { - Method method =bean.getClass().getMethod("getDefineByCode", String.class,Integer.class); - return (ExecuteUnit)method.invoke(bean, resourceCode,version); - } + return doLoad(null,resourceCode,version); }else {//指定版本时,缓存 - if(resourceCode!=null && !"".equals(resourceCode.trim())) { - String key =getCacheKey(resourceCode,version); - ExecuteUnit wrapper =cache.get(key); - if(wrapper!=null) { - return wrapper; - }else { - Object bean =applicationContext.getBean(RESOURCE_SERVICE_BEAN_NAME); - if(bean!=null) { - Method method =bean.getClass().getMethod("getDefineByCode", String.class,Integer.class); - wrapper =(ExecuteUnit)method.invoke(bean, resourceCode,version); - if(wrapper!=null) { - key =getCacheKey(resourceCode,version); - if(key!=null && !"".equals(key.trim())) { - cache.put(key, wrapper); - return wrapper; - } - } - } - } + ExecuteUnit wrapper =cache.get(resourceCode + "_V" + version); + if(wrapper==null){ + wrapper = doLoad(null,resourceCode,version); + cache.put(resourceCode + "_V" + version, wrapper); } - return null; + return wrapper; } - - return null; } - private String getCacheKey(String code,Integer version) { - String result =""; - if(code!=null && !"".equals(code.trim())) { - result +=code; + private ExecuteUnit doLoad(String resourceId,String resourceCode, Integer version) throws Exception { + if((resourceId==null || "".equals(resourceId.trim())) && (resourceCode==null || "".equals(resourceCode.trim()))){ + return null; } - if(version!=null) { - result +="_" + version; + Object executeUnitServiceBean =applicationContext.getBean(RESOURCE_SERVICE_BEAN_NAME); + if(executeUnitServiceBean==null) { return null; } + + if(resourceId!=null && !"".equals(resourceId.trim())){ + if(log.isDebugEnabled()) {log.debug("load locale resource by id ......");} + Method method =executeUnitServiceBean.getClass().getMethod("findById", String.class); + return (ExecuteUnit)method.invoke(executeUnitServiceBean, resourceId); + }else{ + if(log.isDebugEnabled()) {log.debug("load local resource by code and version ......");} + Method method =executeUnitServiceBean.getClass().getMethod("findByCodeAndVersion", String.class, Integer.class); + return (ExecuteUnit)method.invoke(executeUnitServiceBean, resourceCode,version); } - return result; } } diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/Executor.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/Executor.java index a1264a81..ed12390d 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/Executor.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/Executor.java @@ -1,6 +1,6 @@ package io.sc.engine.rule.client; -import io.sc.engine.rule.core.ResourceResult; +import io.sc.engine.rule.core.ExecuteResult; import java.util.Map; @@ -18,16 +18,16 @@ public interface Executor { public void compileById(String resourceId) throws Exception; public void compileByCode(String resourceCode, Integer version) throws Exception; - public ResourceResult executeById(String resourceId,Map map) throws Exception; - public ResourceResult executeById(String resourceId, String json) throws Exception; + public ExecuteResult executeById(String resourceId, Map map) throws Exception; + public ExecuteResult executeById(String resourceId, String json) throws Exception; - public ResourceResult executeById(String resourceId,String subModelCode,Map map) throws Exception; - public ResourceResult executeById(String resourceId,String subModelCode,String json) throws Exception; + public ExecuteResult executeById(String resourceId,String subModelCode,Map map) throws Exception; + public ExecuteResult executeById(String resourceId,String subModelCode,String json) throws Exception; - public ResourceResult executeByCode(String resourceCode,Integer version,Map map) throws Exception; - public ResourceResult executeByCode(String resourceCode,Integer version,String json) throws Exception; + public ExecuteResult executeByCode(String resourceCode,Integer version,Map map) throws Exception; + public ExecuteResult executeByCode(String resourceCode,Integer version,String json) throws Exception; - public ResourceResult executeByCode(String resourceCode,Integer version,String subModelCode,Map map) throws Exception; - public ResourceResult executeByCode(String resourceCode,Integer version,String subModelCode,String json) throws Exception; + public ExecuteResult executeByCode(String resourceCode,Integer version,String subModelCode,Map map) throws Exception; + public ExecuteResult executeByCode(String resourceCode,Integer version,String subModelCode,String json) throws Exception; } diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/ExecutorFactory.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/ExecutorFactory.java index 151bab05..ef7dae2b 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/ExecutorFactory.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/ExecutorFactory.java @@ -8,7 +8,7 @@ import java.util.concurrent.ConcurrentHashMap; */ public class ExecutorFactory { private static Map cache =new ConcurrentHashMap(); - + /** * 注册执行器 * @param name 执行器名称 diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/local/LocalExecutor.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/local/LocalExecutor.java index 12ba914d..c5781b3c 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/local/LocalExecutor.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/local/LocalExecutor.java @@ -3,7 +3,7 @@ package io.sc.engine.rule.client.local; import io.sc.engine.rule.client.Executor; import io.sc.engine.rule.client.Loader; import io.sc.engine.rule.client.runtime.EngineRuntime; -import io.sc.engine.rule.core.ResourceResult; +import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.code.ExecuteUnit; import java.util.Map; @@ -39,49 +39,49 @@ public class LocalExecutor implements Executor { } @Override - public ResourceResult executeById(String resourceId, Map map) throws Exception { + public ExecuteResult executeById(String resourceId, Map map) throws Exception { ExecuteUnit executeUnit =loader.load(resourceId); return EngineRuntime.getInstance().execute(this,resourceId,executeUnit, map); } @Override - public ResourceResult executeById(String resourceId, String json) throws Exception { + public ExecuteResult executeById(String resourceId, String json) throws Exception { ExecuteUnit executeUnit =loader.load(resourceId); return EngineRuntime.getInstance().execute(this,resourceId,executeUnit, json); } @Override - public ResourceResult executeById(String resourceId, String subModelCode, Map map) throws Exception { + public ExecuteResult executeById(String resourceId, String subModelCode, Map map) throws Exception { ExecuteUnit executeUnit =loader.load(resourceId); return EngineRuntime.getInstance().execute(this,resourceId,executeUnit,subModelCode,map); } @Override - public ResourceResult executeById(String resourceId, String subModelCode, String json) throws Exception { + public ExecuteResult executeById(String resourceId, String subModelCode, String json) throws Exception { ExecuteUnit executeUnit =loader.load(resourceId); return EngineRuntime.getInstance().execute(this,resourceId,executeUnit,subModelCode,json); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, Map map) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, Map map) throws Exception { ExecuteUnit executeUnit =loader.load(resourceCode, version); return EngineRuntime.getInstance().execute(this,resourceCode,version,executeUnit, map); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, String json) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, String json) throws Exception { ExecuteUnit executeUnit =loader.load(resourceCode, version); return EngineRuntime.getInstance().execute(this,resourceCode,version,executeUnit, json); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, String subModelCode, Map map) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, String subModelCode, Map map) throws Exception { ExecuteUnit executeUnit =loader.load(resourceCode, version); return EngineRuntime.getInstance().execute(this,resourceCode,version,executeUnit,subModelCode,map); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, String subModelCode, String json) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, String subModelCode, String json) throws Exception { ExecuteUnit executeUnit =loader.load(resourceCode, version); return EngineRuntime.getInstance().execute(this,resourceCode,version,executeUnit,subModelCode,json); } diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteExecutor.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteExecutor.java index 46582cbe..da08a2aa 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteExecutor.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteExecutor.java @@ -2,7 +2,7 @@ package io.sc.engine.rule.client.remote; import io.sc.engine.rule.client.Executor; import io.sc.engine.rule.client.Loader; -import io.sc.engine.rule.core.ResourceResult; +import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.util.HttpRequestUtil; import io.sc.platform.util.ObjectMapperUtil; @@ -37,47 +37,47 @@ public class RemoteExecutor implements Executor{ } @Override - public ResourceResult executeById(String resourceId, Map map) throws Exception { + public ExecuteResult executeById(String resourceId, Map map) throws Exception { return executeById(resourceId,ObjectMapperUtil.json().writeValueAsString(map)); } @Override - public ResourceResult executeById(String resourceId, String json) throws Exception { + public ExecuteResult executeById(String resourceId, String json) throws Exception { String result =HttpRequestUtil.post(getApiUrlById(resourceId), "",json); - return ObjectMapperUtil.json().readValue(result, ResourceResult.class); + return ObjectMapperUtil.json().readValue(result, ExecuteResult.class); } @Override - public ResourceResult executeById(String resourceId, String subModelCode, Map map) throws Exception { + public ExecuteResult executeById(String resourceId, String subModelCode, Map map) throws Exception { return executeById(resourceId, subModelCode,ObjectMapperUtil.json().writeValueAsString(map)); } @Override - public ResourceResult executeById(String resourceId, String subModelCode, String json) throws Exception { + public ExecuteResult executeById(String resourceId, String subModelCode, String json) throws Exception { String result =HttpRequestUtil.post(getApiUrlById(resourceId,subModelCode), "",json); - return ObjectMapperUtil.json().readValue(result, ResourceResult.class); + return ObjectMapperUtil.json().readValue(result, ExecuteResult.class); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, Map map) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, Map map) throws Exception { return executeByCode(resourceCode,version,ObjectMapperUtil.json().writeValueAsString(map)); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, String json) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, String json) throws Exception { String result =HttpRequestUtil.post(getApiUrlByCode(resourceCode,version,null), "",json); - return ObjectMapperUtil.json().readValue(result, ResourceResult.class); + return ObjectMapperUtil.json().readValue(result, ExecuteResult.class); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, String subModelCode, Map map) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, String subModelCode, Map map) throws Exception { return executeByCode(resourceCode,version,subModelCode,ObjectMapperUtil.json().writeValueAsString(map)); } @Override - public ResourceResult executeByCode(String resourceCode, Integer version, String subModelCode, String json) throws Exception { + public ExecuteResult executeByCode(String resourceCode, Integer version, String subModelCode, String json) throws Exception { String result =HttpRequestUtil.post(getApiUrlByCode(resourceCode,version,subModelCode), "",json); - return ObjectMapperUtil.json().readValue(result, ResourceResult.class); + return ObjectMapperUtil.json().readValue(result, ExecuteResult.class); } public String getRemoteApiUrl() { @@ -88,29 +88,29 @@ public class RemoteExecutor implements Executor{ } private String getApiUrlById(String resourceId) { - return remoteApiUrl + "/executeById?resourceId=" + resourceId; + return remoteApiUrl + "/api/re/executable/executeById/" + resourceId; } private String getApiUrlById(String resourceId,String subModelCode) { if(subModelCode!=null && !subModelCode.trim().isEmpty()) { - return remoteApiUrl + "/executeById?resourceId=" + resourceId + "&subModelCode=" + subModelCode; + return remoteApiUrl + "/api/re/executable/executeById/" + resourceId + "/" + subModelCode; }else { - return remoteApiUrl + "/executeById?resourceId=" + resourceId; + return remoteApiUrl + "/api/re/executable/executeById/" + resourceId; } } private String getApiUrlByCode(String resourceCode,Integer version,String subModelCode) { if(version!=null) { if(subModelCode!=null && !subModelCode.trim().isEmpty()) { - return remoteApiUrl + "/executeByCode?resourceCode=" + resourceCode + "&version=" + version + "&subModelCode=" + subModelCode; + return remoteApiUrl + "/api/re/executable/executeByCodeAndVersion/" + resourceCode + "/" + version + "/" + subModelCode; }else { - return remoteApiUrl + "/executeByCode?resourceCode=" + resourceCode + "&version=" + version; + return remoteApiUrl + "/api/re/executable/executeByCodeAndVersion/" + resourceCode + "/" + version; } }else { if(subModelCode!=null && !subModelCode.trim().isEmpty()) { - return remoteApiUrl + "/executeByCode?resourceCode=" + resourceCode + "&subModelCode=" + subModelCode; + return remoteApiUrl + "/api/re/executable/executeByCodeAndVersion/" + resourceCode + "//" + subModelCode; }else { - return remoteApiUrl + "/executeByCode?resourceCode=" + resourceCode; + return remoteApiUrl + "/api/re/executable/executeByCodeAndVersion/" + resourceCode; } } } diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteLoader.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteLoader.java index edc6204c..4ad4dd46 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteLoader.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/remote/RemoteLoader.java @@ -22,43 +22,45 @@ public class RemoteLoader implements Loader{ @Override public ExecuteUnit load(String resourceId) throws Exception { - if(resourceId!=null && !"".equals(resourceId.trim())) { - String json =HttpRequestUtil.get(getApiUrlById(resourceId)); - return ObjectMapperUtil.json().readValue(json, ExecuteUnit.class); - } - return null; + return doLoad(resourceId,null,null); } @Override public ExecuteUnit load(String resourceCode, Integer version) throws Exception { + if(resourceCode==null || "".equals(resourceCode.trim())){ + return null; + } + if(version==null) {//未指定版本时,不缓存,加载最新的 - String json =HttpRequestUtil.get(getApiUrlByCode(resourceCode,version)); - if(log.isDebugEnabled()) {log.debug("remote resource json:\n{}",json);} - ExecuteUnit wrapper =ObjectMapperUtil.json().readValue(json, ExecuteUnit.class); - if(log.isDebugEnabled()) {log.debug("resource json:\n{}",ObjectMapperUtil.json().writeValueAsString(wrapper));} - return wrapper; + return doLoad(null,resourceCode,version); }else {//指定版本时,缓存 - if(resourceCode!=null && !"".equals(resourceCode.trim())) { - String key =getCacheKey(resourceCode,version); - ExecuteUnit wrapper =cache.get(key); - if(wrapper!=null) { - return wrapper; - }else { - String json =HttpRequestUtil.get(getApiUrlByCode(resourceCode,version)); - wrapper =ObjectMapperUtil.json().readValue(json, ExecuteUnit.class); - if(wrapper!=null) { - key =getCacheKey(resourceCode,version); - if(key!=null && !"".equals(key.trim())) { - cache.put(key, wrapper); - return wrapper; - } - } - } + ExecuteUnit wrapper =cache.get(resourceCode + "_V" + version); + if(wrapper==null){ + wrapper = doLoad(null,resourceCode,version); + cache.put(resourceCode + "_V" + version, wrapper); } + return wrapper; + } + } + + private ExecuteUnit doLoad(String resourceId,String resourceCode, Integer version) throws Exception { + if((resourceId==null || "".equals(resourceId.trim())) && (resourceCode==null || "".equals(resourceCode.trim()))){ return null; } + String json =null; + if(resourceId!=null && !"".equals(resourceId.trim())){ + if(log.isDebugEnabled()) {log.debug("load remote resource by id ......");} + json =HttpRequestUtil.get(getApiUrlById(resourceId)); + }else{ + if(log.isDebugEnabled()) {log.debug("load remote resource by code and version ......");} + json =HttpRequestUtil.get(getApiUrlByCode(resourceCode,version)); + } + if(log.isDebugEnabled()) {log.debug("remote resource loaded, json:\n{}",json);} + ExecuteUnit wrapper =ObjectMapperUtil.json().readValue(json, ExecuteUnit.class); + return wrapper; } + public String getRemoteApiUrl() { return remoteApiUrl; } @@ -67,25 +69,14 @@ public class RemoteLoader implements Loader{ } private String getApiUrlById(String modelId) { - return remoteApiUrl + "/getDefineById?id=" + modelId; + return remoteApiUrl + "/api/re/executable/findById/" + modelId; } private String getApiUrlByCode(String modelCode,Integer version) { if(version!=null) { - return remoteApiUrl + "/getDefineByCode?code=" + modelCode + "&version=" + version; + return remoteApiUrl + "/api/re/executable/findByCodeAndVersion/" + modelCode + "/" + version; }else { - return remoteApiUrl + "/getDefineByCode?code=" + modelCode; - } - } - - private String getCacheKey(String code,Integer version) { - String result =""; - if(code!=null && !"".equals(code.trim())) { - result +=code; - } - if(version!=null) { - result +="_" + version; + return remoteApiUrl + "/api/re/executable/findByCodeAndVersion/" + modelCode; } - return result; } } diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/EngineRuntime.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/EngineRuntime.java index 8236c0f0..6e710904 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/EngineRuntime.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/EngineRuntime.java @@ -1,12 +1,12 @@ package io.sc.engine.rule.client.runtime; -import java.util.Map; - import io.sc.engine.rule.client.Executor; import io.sc.engine.rule.client.runtime.impl.GroovyEngineRuntime; -import io.sc.engine.rule.core.ResourceResult; +import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.code.ExecuteUnit; +import java.util.Map; + public abstract class EngineRuntime { public static final String GROOVY ="groovy"; @@ -25,14 +25,14 @@ public abstract class EngineRuntime { public abstract void compile(String resourceId, ExecuteUnit wrapper) throws Exception; public abstract void compile(String resourceCode, Integer version, ExecuteUnit wrapper) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String json) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, Map map) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, String json) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String json) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, Map map) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, String json) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String json) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, Map map) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, String json) throws Exception; - public abstract ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String json) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, Map map) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, String json) throws Exception; + public abstract ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception; } diff --git a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/impl/GroovyEngineRuntime.java b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/impl/GroovyEngineRuntime.java index 79281779..304239ab 100644 --- a/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/impl/GroovyEngineRuntime.java +++ b/io.sc.engine.rule.client/src/main/java/io/sc/engine/rule/client/runtime/impl/GroovyEngineRuntime.java @@ -1,19 +1,20 @@ package io.sc.engine.rule.client.runtime.impl; -import java.util.HashMap; -import java.util.Map; - -import io.sc.engine.rule.core.ResourceResult; -import io.sc.engine.rule.core.code.*; -import io.sc.engine.rule.core.code.generator.GroovySourceCodeGenerator; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import io.sc.engine.rule.client.Executor; import io.sc.engine.rule.client.runtime.EngineRuntime; import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineService; import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineServiceImpl; +import io.sc.engine.rule.core.ExecuteResult; +import io.sc.engine.rule.core.code.*; +import io.sc.engine.rule.core.code.generator.GroovySourceCodeGenerator; import io.sc.engine.rule.core.po.lib.Lib; import io.sc.engine.rule.core.po.resource.Resource; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.StringUtils; + +import java.util.HashMap; +import java.util.Map; public class GroovyEngineRuntime extends EngineRuntime{ private static final Logger log =LoggerFactory.getLogger(GroovyEngineRuntime.class); @@ -69,66 +70,114 @@ public class GroovyEngineRuntime extends EngineRuntime{ } @Override - public ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String json) throws Exception { - SourceCode code = generator.generate(resourceId,wrapper); + public ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String json) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceId, wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,json)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,json)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, Map map) throws Exception { - SourceCode code = generator.generate(resourceId,wrapper); + public ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, Map map) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceId, wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,map)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,map)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, String json) throws Exception { - SourceCode code = generator.generate(resourceId,wrapper); + public ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, String json) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceId, wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,json)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,json)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception { - SourceCode code = generator.generate(resourceId,wrapper); + public ExecuteResult execute(Executor executor, String resourceId, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceId, wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,map)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,map)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String json) throws Exception { - SourceCode code = generator.generate(resourceCode,version,wrapper); + public ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String json) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceCode,version,wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,json)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,json)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, Map map) throws Exception { - SourceCode code = generator.generate(resourceCode,version,wrapper); - //if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,map)); + public ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, Map map) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceCode,version,wrapper); + } + if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,null,map)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, String json) throws Exception { - SourceCode code = generator.generate(resourceCode,version,wrapper); + public ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, String json) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceCode,version,wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,json)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,json)); return result; } @Override - public ResourceResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception { - SourceCode code = generator.generate(resourceCode,version,wrapper); + public ExecuteResult execute(Executor executor, String resourceCode, Integer version, ExecuteUnit wrapper, String subModelCode, Map map) throws Exception { + SourceCode code =null; + if(StringUtils.hasText(wrapper.getSourceCode())){ + code =new SourceCode(); + code.setSource(wrapper.getSourceCode()); + }else { + code = generator.generate(resourceCode,version,wrapper); + } if(log.isDebugEnabled()) {log.debug("generated groovy source code:\n{}",code.getSource());} - ResourceResult result =(ResourceResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,map)); + ExecuteResult result =(ExecuteResult)service.eval(code.getSource(), "INPUT_PARAMETER", prepareParameter(executor,subModelCode,map)); return result; } diff --git a/io.sc.engine.rule.client/src/test/java/io/sc/engine/rule/client/test/Test.java b/io.sc.engine.rule.client/src/test/java/io/sc/engine/rule/client/test/Test.java index b19f6206..172ddce2 100644 --- a/io.sc.engine.rule.client/src/test/java/io/sc/engine/rule/client/test/Test.java +++ b/io.sc.engine.rule.client/src/test/java/io/sc/engine/rule/client/test/Test.java @@ -5,8 +5,8 @@ import io.sc.engine.rule.client.ExecutorBuilder; import io.sc.engine.rule.client.ExecutorFactory; import io.sc.engine.rule.client.enums.ExecutorMode; import io.sc.engine.rule.client.enums.LoaderMode; +import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.ParameterResult; -import io.sc.engine.rule.core.ResourceResult; import io.sc.platform.util.TimeMonitor; import java.util.HashMap; @@ -14,60 +14,32 @@ import java.util.List; import java.util.Map; public class Test { - private static final String MODEL_API_URL ="http://localhost:8080/api/re/resource"; //远程模型引擎 API URL 地址 - private static final String EXECUTOR_NAME ="executor"; //执行器名称 - private static final String MODEL_CODE ="M1628257024598"; //需要执行的模型代码 - private static final Integer MODEL_VERSION =null; //需要执行的模型版本 - private static final int COUNT =1; //需要执行的次数 + private static final ExecutorMode executorMode =ExecutorMode.LOCAL; //执行器模式 + private static final LoaderMode loaderMode =LoaderMode.REMOTE; //模型定义加载器模式 + private static final String MODEL_API_URL ="http://localhost:8080"; //远程模型引擎 API URL 地址 + private static final String MODEL_CODE ="M1734933657323"; //需要执行的模型代码 + private static final Integer MODEL_VERSION =1; //需要执行的模型版本 + private static final int COUNT =1; //需要执行的次数 - private static TimeMonitor tracer =new TimeMonitor(); //创建一个时间跟踪器,用于跟踪执行时间,在生产环境中不要这样做 + private static TimeMonitor tracer =new TimeMonitor(); //创建一个时间跟踪器,用于跟踪执行时间,在生产环境中不要这样做 public static void main(String[] args) throws Exception{ - init(); - testLocalExecutorRemoteLoader_map(); - } - - public static void init() throws Exception{ //创建执行器(本地执行,远程获取模型定义) - Executor executor =new ExecutorBuilder().build(ExecutorMode.LOCAL, LoaderMode.REMOTE, MODEL_API_URL); - - //注册执行器,便于之后获取,如果每次都构建一个新的执行器,将显著影响性能 - ExecutorFactory.register(EXECUTOR_NAME, executor); - - //第一次执行,消除缓存对性能对比测试的影响 - //executor.executeByCode(MODEL_CODE, MODEL_VERSION,JacksonObjectMapper.getDefaultObjectMapper().writeValueAsString(prepareData())); - ResourceResult result =executor.executeByCode(MODEL_CODE, MODEL_VERSION,prepareData()); - List parameters =result.getData(); - for(ParameterResult parameter : parameters) { - System.out.println(parameter); - } - //tracer.log("初始化完毕===================================="); - - } - - /** - * 测试本地执行器,远程模型定义加载器,输入参数为 map 对象 - * @throws Exception 违例 - */ - public static void testLocalExecutorRemoteLoader_map() throws Exception{ - //从注册器中获取执行器 - Executor executor =ExecutorFactory.getExecutor(EXECUTOR_NAME); - tracer.info("开始执行(采用 map 对象作为参数)===================================="); - for(int i=0;i data =prepareData(); - //executor.getLoader().getResourceByCode(MODEL_CODE, MODEL_VERSION); - executor.executeByCode(MODEL_CODE, MODEL_VERSION,data); + Executor executor =new ExecutorBuilder().build(executorMode, loaderMode, MODEL_API_URL); + //准备模型参数 + Map data =new HashMap(); + data.put("P1734933744702", 0.03);//资产负债率(上期),小数 + data.put("P1734933770426", 0.04);//资产负债率(本期),小数 + + //调用模型 + tracer.info("starting executeByCode ..."); + for (int i=0;i parameters =result.getData(); + for(ParameterResult parameter : parameters) { + //System.out.println(parameter); + } } - tracer.info("执行完毕(采用 map 对象作为参数)"); - tracer.info("采用 map 对象作为输入参数将执行效率提高 20+ 倍!!!"); - } - - - private static Map prepareData() throws Exception{ - Map map =new HashMap(); - map.put("P1628257063367", 10);//得分,整数 - return map; + tracer.info("end executeByCode."); } - } diff --git a/io.sc.engine.rule.client/src/test/resources/logback-test.xml b/io.sc.engine.rule.client/src/test/resources/logback-test.xml new file mode 100644 index 00000000..26d4512f --- /dev/null +++ b/io.sc.engine.rule.client/src/test/resources/logback-test.xml @@ -0,0 +1,12 @@ + + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger{36} - %msg%n + + + + + + + diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/ResourceResult.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/ResourceResult.java deleted file mode 100644 index 99738b62..00000000 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/ResourceResult.java +++ /dev/null @@ -1,100 +0,0 @@ -package io.sc.engine.rule.core; - -import com.fasterxml.jackson.core.JsonProcessingException; -import io.sc.engine.rule.core.enums.ParameterType; -import io.sc.platform.util.ObjectMapperUtil; - -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; - -/** - * 模型结果 - * @author wangshaoping - * - */ -public class ResourceResult { - private int status; - private ValidateResult validateResult; - private List data =new ArrayList(); - - /** - * 添加结果参数 - * @param code 代码 - * @param name 名称 - * @param type 类型 - * @param valueType 值类型 - * @param value 值 - */ - public void addParameterResult(String code,String name,ParameterType type,String valueType,String value) { - data.add(new ParameterResult(code,name,type,valueType,value)); - } - - /** - * 通过参数代码获取参数值 - * @param code 参数代码 - * @return 参数值 - */ - public boolean exists(String code) { - if(code!=null && !"".equals(code.trim())) { - if(data!=null && data.size()>0) { - for(ParameterResult parameterResult : data) { - if(code.equals(parameterResult.getCode())){ - return true; - } - } - } - } - return false; - } - - /** - * 通过参数代码获取参数值 - * @param code 参数代码 - * @return 参数值 - */ - public String getValueByParameterCode(String code) { - if(code!=null && !"".equals(code.trim())) { - if(data!=null && data.size()>0) { - for(ParameterResult parameterResult : data) { - if(code.equals(parameterResult.getCode())){ - return parameterResult.getValue(); - } - } - } - } - return null; - } - - public int getStatus() { - return status; - } - public void setStatus(int status) { - this.status = status; - } - public ValidateResult getValidateResult() { - return validateResult; - } - public void setValidateResult(ValidateResult validateResult) { - this.validateResult = validateResult; - } - public List getData() { - return data; - } - public void setData(List data) { - this.data = data; - } - - public void addParameterResult(ParameterResult result) { - this.data.add(result); - } - - @Override - public String toString() { - try { - return ObjectMapperUtil.json().writeValueAsString(this); - } catch (JsonProcessingException e) { - return "ResourceResult [status=" + status + ", validateResult=" + validateResult + ", data=" + data + "]"; - } - } -} diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit.java index d20c50e2..20ad5b76 100644 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit.java +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit.java @@ -15,12 +15,21 @@ import java.util.List; @JsonSubTypes.Type(value=ExecuteUnit4Lib.class) }) public abstract class ExecuteUnit { + protected String sourceCode; //源代码 protected List dictionaries;//元数据 - protected List functions; //自定义函数 + protected List functions; //自定义函数 public abstract String getType(); public abstract void optimize(); + public String getSourceCode() { + return sourceCode; + } + + public void setSourceCode(String sourceCode) { + this.sourceCode = sourceCode; + } + public List getDictionaries() { return dictionaries; } diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit4Resource.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit4Resource.java index 93c29e4d..e1a62f65 100644 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit4Resource.java +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/ExecuteUnit4Resource.java @@ -43,7 +43,7 @@ public class ExecuteUnit4Resource extends ExecuteUnit{ } public void optimize(){ - //optimizeLibs(); + optimizeLibs(); } private void optimizeLibs(){ diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ModelCategory.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ModelCategory.java index f334642c..04950036 100644 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ModelCategory.java +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ModelCategory.java @@ -5,7 +5,6 @@ package io.sc.engine.rule.core.enums; */ public enum ModelCategory { QUANTITATIVE, //定量模型 - QUANTITATIVE_INPUT, // 定量模型(输入) QUALITATIVE, //定性模型 ADJUSTMENT, //调整项模型 RULE, //规则 diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ParameterPropertiesName.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ParameterPropertiesName.java new file mode 100644 index 00000000..4762d4a1 --- /dev/null +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/enums/ParameterPropertiesName.java @@ -0,0 +1,6 @@ +package io.sc.engine.rule.core.enums; + +public enum ParameterPropertiesName { + SHOW_IF, // 是否可现实 + MODIFY_IF; // 是否可修改 +} diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/model/Parameter.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/model/Parameter.java index cb2b06d8..d768040a 100644 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/model/Parameter.java +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/model/Parameter.java @@ -9,6 +9,7 @@ import io.sc.engine.rule.core.po.model.parameter.*; import java.math.RoundingMode; import java.util.ArrayList; import java.util.List; +import java.util.Map; @JsonTypeInfo(use=JsonTypeInfo.Id.NAME, include=JsonTypeInfo.As.PROPERTY, property="type",defaultImpl=InParameter.class) @JsonSubTypes({ @@ -24,6 +25,7 @@ public abstract class Parameter { protected String id;//ID,主键 protected String code;//代码 protected String name;//名称 + protected String alias;//别名 protected String description;//描述 protected String valueType;//参数值类型 protected Integer valueTypeVersion;//参数值类型版本号 @@ -32,7 +34,8 @@ public abstract class Parameter { protected Boolean valueTypeIsList;//参数值类型是否是列表 protected String defaultValue;//默认值 protected Integer order;//排序 - protected String showIf;//显示条件 + protected Boolean persistentAsIndicator;//是否作为指标存储 + protected String properties;//属性 protected List validators =new ArrayList<>();//包含的验证器 protected List processors =new ArrayList<>();//包含的处理器 @@ -57,6 +60,12 @@ public abstract class Parameter { public void setName(String name) { this.name = name; } + public String getAlias() { + return alias; + } + public void setAlias(String alias) { + this.alias = alias; + } public String getDescription() { return description; } @@ -105,11 +114,17 @@ public abstract class Parameter { public void setOrder(Integer order) { this.order = order; } - public String getShowIf() { - return showIf; + public Boolean getPersistentAsIndicator() { + return persistentAsIndicator; + } + public void setPersistentAsIndicator(Boolean persistentAsIndicator) { + this.persistentAsIndicator = persistentAsIndicator; + } + public String getProperties() { + return properties; } - public void setShowIf(String showIf) { - this.showIf = showIf; + public void setProperties(String properties) { + this.properties = properties; } public List getValidators() { return validators; diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/resource/ModelResource.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/resource/ModelResource.java index 303f3808..60b10db5 100644 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/resource/ModelResource.java +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/po/resource/ModelResource.java @@ -12,8 +12,10 @@ import java.util.Date; @JsonIgnoreProperties(ignoreUnknown=true) public class ModelResource extends Resource { private Model model; - protected Date effectiveDate; //生效日期 - protected String imports; //imports + protected Date effectiveDate; //生效日期 + protected String imports; //imports + protected String sourceCode; // 源代码 + protected Date sourceCodeGenerateDate; // 源代码生成日期 public Model getModel() { return model; @@ -33,6 +35,18 @@ public class ModelResource extends Resource { public void setImports(String imports) { this.imports = imports; } + public String getSourceCode() { + return sourceCode; + } + public void setSourceCode(String sourceCode) { + this.sourceCode = sourceCode; + } + public Date getSourceCodeGenerateDate() { + return sourceCodeGenerateDate; + } + public void setSourceCodeGenerateDate(Date sourceCodeGenerateDate) { + this.sourceCodeGenerateDate = sourceCodeGenerateDate; + } @Override public ResourceType getType() { diff --git a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/argument_render.tpl b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/argument_render.tpl index c46af8bf..085894d5 100644 --- a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/argument_render.tpl +++ b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/argument_render.tpl @@ -28,8 +28,8 @@ class Argument { #(tabs(ParameterGenerator.generateMergeParameterValueFromIndicatorLib(model.getAllParameters()),2)) } - public ResourceResult toResult(){ - ResourceResult result =new ResourceResult(); + public ExecuteResult toResult(){ + ExecuteResult result =new ExecuteResult(); #(tabs(ParameterGenerator.generateToResult(model.getAllParameters()),2)) return result; } @@ -40,7 +40,7 @@ class Argument { return map; } - public void mergeResult(ResourceResult result){ + public void mergeResult(ExecuteResult result){ if(result!=null){ #(tabs(ParameterGenerator.generateMergeResult(model.getAllParameters()),3)) } diff --git a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/impl/resource.tpl b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/impl/resource.tpl index 9d058241..8843717a 100644 --- a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/impl/resource.tpl +++ b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/impl/resource.tpl @@ -45,7 +45,7 @@ class #(className(resource.code,resource.version)) { * @param map 输入参数封装器 * @return 执行结果 */ - public static ResourceResult execute(Map map) throws Exception{ + public static ExecuteResult execute(Map map) throws Exception{ return execute(map["executor"],map["subModelCode"],map["argument"]); } @@ -56,7 +56,7 @@ class #(className(resource.code,resource.version)) { * @param data 输入参数 * @return 执行结果 */ - public static ResourceResult execute(Executor executor,String subModelCode,Object data) throws Exception{ + public static ExecuteResult execute(Executor executor,String subModelCode,Object data) throws Exception{ if(log.isDebugEnabled()){log.debug("开始执行: #(resource.name)");} if(data instanceof Map){ if(log.isDebugEnabled()){log.debug("显示输入参数(Map)=================================================\n{}",ObjectMapperUtil.json().writeValueAsString(data));} @@ -85,7 +85,7 @@ class #(className(resource.code,resource.version)) { #(varName(lib.code,lib.version)).validate(validateResult); if(validateResult.hasError()){ if(log.isDebugEnabled()){log.debug("\t检查结果: 失败!");} - ResourceResult result =new ResourceResult(); + ExecuteResult result =new ExecuteResult(); result.setValidateResult(validateResult); return result; } @@ -97,7 +97,7 @@ class #(className(resource.code,resource.version)) { arg.validate(validateResult); if(validateResult.hasError()){ if(log.isDebugEnabled()){log.debug("\t检查结果: 失败!");} - ResourceResult result =new ResourceResult(); + ExecuteResult result =new ExecuteResult(); result.setValidateResult(validateResult); return result; } @@ -127,7 +127,7 @@ class #(className(resource.code,resource.version)) { } //返回结果 - ResourceResult result =arg.toResult(); + ExecuteResult result =arg.toResult(); if(log.isDebugEnabled()){log.debug("模型调用成功,返回结果:\n{}",ObjectMapperUtil.json().writeValueAsString(result));} return result; } diff --git a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/import_render.tpl b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/import_render.tpl index a97e5858..d18ca428 100644 --- a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/import_render.tpl +++ b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/code/template/import_render.tpl @@ -8,7 +8,7 @@ import io.sc.engine.rule.core.RuleSetResult; import io.sc.engine.rule.core.SingleRuleResult; import io.sc.engine.rule.core.FieldValidator; import io.sc.engine.rule.core.ParameterResult; -import io.sc.engine.rule.core.ResourceResult; +import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.ValidateResult; import io.sc.engine.rule.core.enums.ParameterType; import io.sc.engine.rule.core.enums.RuntimeInputParameterType; diff --git a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums.properties b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums.properties index a7db423e..7048e39b 100644 --- a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums.properties +++ b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums.properties @@ -9,7 +9,6 @@ io.sc.engine.rule.core.enums.ResourceType.SCORE_CARD=Score Card # \u6A21\u578B\u5206\u7C7B\u679A\u4E3E #================================================ io.sc.engine.rule.core.enums.ModelCategory.QUANTITATIVE=Quantitative -io.sc.engine.rule.core.enums.ModelCategory.QUANTITATIVE_INPUT=Quantitative(Input) io.sc.engine.rule.core.enums.ModelCategory.QUALITATIVE=Qualitative io.sc.engine.rule.core.enums.ModelCategory.ADJUSTMENT=Adjustment io.sc.engine.rule.core.enums.ModelCategory.RULE=Rule @@ -31,6 +30,12 @@ io.sc.engine.rule.core.enums.DeployStatus.ON_LINE=OnLine io.sc.engine.rule.core.enums.DeployStatus.OFF_LINE=OffLine io.sc.engine.rule.core.enums.DeployStatus.APPROVING=Approving +#================================================ +# \u53C2\u6570\u6269\u5C55\u5C5E\u6027\u540D +#================================================ +io.sc.engine.rule.core.enums.ParameterPropertiesName.SHOW_IF=Show If +io.sc.engine.rule.core.enums.ParameterPropertiesName.MODIFY_IF=Modify If + #================================================ # \u53C2\u6570\u7C7B\u578B\u679A\u4E3E #================================================ diff --git a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_tw_CN.properties b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_tw_CN.properties index 02a11396..14a9b60f 100644 --- a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_tw_CN.properties +++ b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_tw_CN.properties @@ -9,7 +9,6 @@ io.sc.engine.rule.core.enums.ResourceType.SCORE_CARD=\u8A55\u5206\u5361 # \u6A21\u578B\u5206\u7C7B\u679A\u4E3E #================================================ io.sc.engine.rule.core.enums.ModelCategory.QUANTITATIVE=\u5B9A\u91CF -io.sc.engine.rule.core.enums.ModelCategory.QUANTITATIVE_INPUT=\u5B9A\u91CF(\u8F38\u5165) io.sc.engine.rule.core.enums.ModelCategory.QUALITATIVE=\u5B9A\u6027 io.sc.engine.rule.core.enums.ModelCategory.ADJUSTMENT=\u8ABF\u6574\u9805 io.sc.engine.rule.core.enums.ModelCategory.RULE=\u898F\u5247 @@ -31,6 +30,12 @@ io.sc.engine.rule.core.enums.DeployStatus.ON_LINE=\u4E0A\u7DDA io.sc.engine.rule.core.enums.DeployStatus.OFF_LINE=\u4E0B\u7DDA io.sc.engine.rule.core.enums.DeployStatus.APPROVING=\u5BE9\u6279\u4E2D +#================================================ +# \u53C2\u6570\u6269\u5C55\u5C5E\u6027\u540D +#================================================ +io.sc.engine.rule.core.enums.ParameterPropertiesName.SHOW_IF=\u662F\u5426\u53EF\u663E\u793A +io.sc.engine.rule.core.enums.ParameterPropertiesName.MODIFY_IF=\u662F\u5426\u53EF\u4FEE\u6539 + #================================================ # \u53C2\u6570\u7C7B\u578B\u679A\u4E3E #================================================ diff --git a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_zh_CN.properties b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_zh_CN.properties index 8f68c8d4..ebf46536 100644 --- a/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_zh_CN.properties +++ b/io.sc.engine.rule.core/src/main/resources/io/sc/engine/rule/core/i18n/enums_zh_CN.properties @@ -9,7 +9,6 @@ io.sc.engine.rule.core.enums.ResourceType.SCORE_CARD=\u8BC4\u5206\u5361 # \u6A21\u578B\u5206\u7C7B\u679A\u4E3E #================================================ io.sc.engine.rule.core.enums.ModelCategory.QUANTITATIVE=\u5B9A\u91CF -io.sc.engine.rule.core.enums.ModelCategory.QUANTITATIVE_INPUT=\u5B9A\u91CF(\u8F93\u5165) io.sc.engine.rule.core.enums.ModelCategory.QUALITATIVE=\u5B9A\u6027 io.sc.engine.rule.core.enums.ModelCategory.ADJUSTMENT=\u8C03\u6574\u9879 io.sc.engine.rule.core.enums.ModelCategory.RULE=\u89C4\u5219 @@ -31,6 +30,12 @@ io.sc.engine.rule.core.enums.DeployStatus.ON_LINE=\u4E0A\u7EBF io.sc.engine.rule.core.enums.DeployStatus.OFF_LINE=\u4E0B\u7EBF io.sc.engine.rule.core.enums.DeployStatus.APPROVING=\u5BA1\u6279\u4E2D +#================================================ +# \u53C2\u6570\u6269\u5C55\u5C5E\u6027\u540D +#================================================ +io.sc.engine.rule.core.enums.ParameterPropertiesName.SHOW_IF=\u662F\u5426\u663E\u793A +io.sc.engine.rule.core.enums.ParameterPropertiesName.MODIFY_IF=\u662F\u5426\u53EF\u4FEE\u6539 + #================================================ # \u53C2\u6570\u7C7B\u578B\u679A\u4E3E #================================================ diff --git a/io.sc.engine.rule.frontend/src/i18n/messages.json b/io.sc.engine.rule.frontend/src/i18n/messages.json index 64f0bf2b..3b758de4 100644 --- a/io.sc.engine.rule.frontend/src/i18n/messages.json +++ b/io.sc.engine.rule.frontend/src/i18n/messages.json @@ -17,6 +17,8 @@ "re.resources.grid.toolbar.deepCloneNew": "Deep Clone(new)", "re.resources.grid.toolbar.deepCloneNew.tip": "Are you sure to deep clone the resource as new resource?", "re.resources.grid.toolbar.design": "View/Design", + "re.resources.grid.toolbar.preDeploy": "Pre Deploy", + "re.resources.grid.toolbar.cancelPreDeploy": "Cancel Pre Deploy", "re.resources.grid.toolbar.deploy.online": "Online", "re.resources.grid.toolbar.deploy.online.tip": "Are you sure to on line the resource?", "re.resources.grid.toolbar.deploy.offline": "Offline", @@ -26,6 +28,7 @@ "re.resources.grid.entity.effectiveDate": "Effective Date", "re.resources.grid.entity.imports": "Imports", + "re.resources.grid.entity.preDeploy": "Pre Deploy", "re.resources.grid.entity.taskName": "Task Name", "re.resources.grid.entity.taskAssignee": "Task Assignee", @@ -76,7 +79,10 @@ "re.parameter.grid.entity.libCode": "Library", "re.parameter.grid.entity.libVersion": "Library Version", "re.parameter.grid.entity.indicatorCode": "Indicator", - "re.parameter.grid.entity.showIf": "Show If", + "re.parameter.grid.entity.persistentAsIndicator": "Persistent As Indicator", + "re.parameter.grid.entity.properties": "Extension Properties", + "re.parameter.grid.entity.property.name": "Property Name", + "re.parameter.grid.entity.property.value": "Property Value", "re.parameter.tip.indicatorParameterCanNotEditable": "Indicator parameter can NOT editable!", "re.parameter.tip.subModelParameterCanNotEditable": "Sub model parameter can NOT editable!", diff --git a/io.sc.engine.rule.frontend/src/i18n/messages_tw_CN.json b/io.sc.engine.rule.frontend/src/i18n/messages_tw_CN.json index d007d1bd..0f80b077 100644 --- a/io.sc.engine.rule.frontend/src/i18n/messages_tw_CN.json +++ b/io.sc.engine.rule.frontend/src/i18n/messages_tw_CN.json @@ -17,6 +17,8 @@ "re.resources.grid.toolbar.deepCloneNew": "深度複製(新)", "re.resources.grid.toolbar.deepCloneNew.tip": "您確定要深度複製資源成一個新的資源嗎?", "re.resources.grid.toolbar.design": "查看/設計", + "re.resources.grid.toolbar.preDeploy": "預發佈", + "re.resources.grid.toolbar.cancelPreDeploy": "取消預發佈", "re.resources.grid.toolbar.deploy.online": "上線", "re.resources.grid.toolbar.deploy.online.tip": "您確定要上線資源嗎?", "re.resources.grid.toolbar.deploy.offline": "下線", @@ -26,6 +28,7 @@ "re.resources.grid.entity.effectiveDate": "生效日期", "re.resources.grid.entity.imports": "外部引入", + "re.resources.grid.entity.preDeploy": "預發佈", "re.resources.grid.entity.taskName": "任務名稱", "re.resources.grid.entity.taskAssignee": "處理人", @@ -76,7 +79,10 @@ "re.parameter.grid.entity.libCode": "指標庫", "re.parameter.grid.entity.libVersion": "指標庫版本", "re.parameter.grid.entity.indicatorCode": "指標", - "re.parameter.grid.entity.showIf": "前端顯示條件", + "re.parameter.grid.entity.persistentAsIndicator": "是否作為指標存儲", + "re.parameter.grid.entity.properties": "擴展屬性", + "re.parameter.grid.entity.property.name": "屬性名", + "re.parameter.grid.entity.property.value": "屬性值", "re.parameter.tip.indicatorParameterCanNotEditable": "類型為指標的參數不能進行編輯!", "re.parameter.tip.subModelParameterCanNotEditable": "子模型參數不能進行編輯!", diff --git a/io.sc.engine.rule.frontend/src/i18n/messages_zh_CN.json b/io.sc.engine.rule.frontend/src/i18n/messages_zh_CN.json index a2859070..f81898af 100644 --- a/io.sc.engine.rule.frontend/src/i18n/messages_zh_CN.json +++ b/io.sc.engine.rule.frontend/src/i18n/messages_zh_CN.json @@ -17,6 +17,8 @@ "re.resources.grid.toolbar.deepCloneNew": "深度复制(新)", "re.resources.grid.toolbar.deepCloneNew.tip": "您确定要深度复制资源成一个新的资源吗?", "re.resources.grid.toolbar.design": "查看/设计", + "re.resources.grid.toolbar.preDeploy": "预发布", + "re.resources.grid.toolbar.cancelPreDeploy": "取消预发布", "re.resources.grid.toolbar.deploy.online": "上线", "re.resources.grid.toolbar.deploy.online.tip": "您确定要上线资源吗?", "re.resources.grid.toolbar.deploy.offline": "下线", @@ -26,6 +28,7 @@ "re.resources.grid.entity.effectiveDate": "生效日期", "re.resources.grid.entity.imports": "外部引入", + "re.resources.grid.entity.preDeploy": "预发布", "re.resources.grid.entity.taskName": "任务名称", "re.resources.grid.entity.taskAssignee": "处理人", @@ -76,7 +79,10 @@ "re.parameter.grid.entity.libCode": "指标库", "re.parameter.grid.entity.libVersion": "指标库版本", "re.parameter.grid.entity.indicatorCode": "指标", - "re.parameter.grid.entity.showIf": "前端显示条件", + "re.parameter.grid.entity.persistentAsIndicator": "是否作为指标存储", + "re.parameter.grid.entity.properties": "扩展属性", + "re.parameter.grid.entity.property.name": "属性名", + "re.parameter.grid.entity.property.value": "属性值", "re.parameter.tip.indicatorParameterCanNotEditable": "类型为指标的参数不能进行编辑!", "re.parameter.tip.subModelParameterCanNotEditable": "子模型参数不能进行编辑!", diff --git a/io.sc.engine.rule.frontend/src/views/resources/Resources.vue b/io.sc.engine.rule.frontend/src/views/resources/Resources.vue index 5eb6716e..d6e5d2f8 100644 --- a/io.sc.engine.rule.frontend/src/views/resources/Resources.vue +++ b/io.sc.engine.rule.frontend/src/views/resources/Resources.vue @@ -120,10 +120,37 @@ label: $t('deploy'), icon: 'bi-balloon', enableIf: (args: any) => { - return args.selected && args.selected.type !== 'FOLDER'; + return args.selected; }, click: undefined, }, + { + name: 'preDeploy', + label: $t('re.resources.grid.toolbar.preDeploy'), + icon: 'bi-code', + enableIf: (args: any) => { + return args.selected; + }, + click: (args: any) => { + axios.post(Environment.apiContextPath('/api/re/resource/preDeploy/' + args.selected.id), {}, { loading: true }).then((response) => { + treeGridRef.updateLocalData(response.data); + }); + }, + }, + { + name: 'cancelPreDeploy', + label: $t('re.resources.grid.toolbar.cancelPreDeploy'), + icon: 'bi-code', + enableIf: (args: any) => { + return args.selected; + }, + click: (args: any) => { + axios.post(Environment.apiContextPath('/api/re/resource/cancelPreDeploy/' + args.selected.id), {}, { loading: true }).then((response) => { + treeGridRef.updateLocalData(response.data); + }); + }, + }, + 'separator', { name: 'online', label: $t('re.resources.grid.toolbar.deploy.online'), @@ -272,6 +299,18 @@ align: 'center', format: EngineEnums.DeployStatus.formater, }, + { + width: 60, + name: 'preDeploy', + label: $t('re.resources.grid.entity.preDeploy'), + align: 'center', + sortable: false, + format: (value) => { + if (value) { + return Formater.yesNo()(value); + } + }, + }, { width: 120, name: 'taskName', label: $t('re.resources.grid.entity.taskName'), sortable: false }, { width: 80, name: 'taskAssignee', label: $t('re.resources.grid.entity.taskAssignee'), sortable: false }, { width: 100, name: 'lastModifier', label: $t('lastModifier') }, diff --git a/io.sc.engine.rule.frontend/src/views/resources/designer/Parameter.vue b/io.sc.engine.rule.frontend/src/views/resources/designer/Parameter.vue index 8c513f77..5446945d 100644 --- a/io.sc.engine.rule.frontend/src/views/resources/designer/Parameter.vue +++ b/io.sc.engine.rule.frontend/src/views/resources/designer/Parameter.vue @@ -211,23 +211,92 @@ return 'INDICATOR' === args.form.getFieldValue('type'); }, }, + { + name: 'alias', + label: $t('alias'), + type: 'w-text', + }, { name: 'description', label: $t('description'), type: 'w-text' }, ...valueTypeManager.getEditorFields(), { name: 'order', label: $t('order'), type: 'w-number', showIf: false }, + { name: 'persistentAsIndicator', label: $t('re.parameter.grid.entity.persistentAsIndicator'), type: 'w-checkbox', defaultValue: true }, { - name: 'showIf', - label: $t('re.parameter.grid.entity.showIf'), - type: 'w-code-mirror', - toolbar: false, - lang: 'java', - rows: 5, - placeholder: true, - lineWrap: true, - lineBreak: false, - autoCompletion: autoCompletionManager.autoCompletion(), - showIf: (args: any) => { - let type = args.form.getFieldValue('type'); - return 'IN' == type || 'IN_OPTION' == type || 'INDICATOR' == type; + name: 'properties', + label: $t('re.parameter.grid.entity.properties'), + type: 'w-grid', + title: $t('re.parameter.grid.entity.properties'), + height: 200, + localMode: true, + dbClickOperation: 'edit', + autoFetchData: false, + denseBody: true, + dndMode: 'local', + pageable: false, + configButton: false, + toolbarConfigure: { noIcon: false }, + toolbarActions: [ + 'add', + 'clone', + 'edit', + 'remove', + 'separator', + { + name: 'example', + label: $t('example'), + icon: 'bi-balloon', + click: (args: any) => { + const sampleData = [ + { name: 'SHOW_IF', value: '${变量名}<=0' }, + { name: 'MODIFY_IF', value: '${变量名}<=0' }, + ]; + args.grid.setLocalData(sampleData); + }, + }, + ], + columns: [ + { + width: '30%', + name: 'name', + label: $t('re.parameter.grid.entity.property.name'), + format: EngineEnums.ParameterPropertiesName.formater, + }, + { + width: '70%', + name: 'value', + label: $t('re.parameter.grid.entity.property.value'), + sortable: false, + format: (value: any) => { + return PlaceHolder.replace(value); + }, + }, + ], + editor: { + dialog: { + width: '600px', + }, + form: { + colsNum: 1, + fields: [ + { + name: 'name', + label: $t('re.parameter.grid.entity.property.name'), + type: 'w-select', + options: EngineEnums.ParameterPropertiesName.options, + }, + { + name: 'value', + label: $t('re.parameter.grid.entity.property.value'), + type: 'w-code-mirror', + toolbar: false, + lang: 'java', + rows: 4, + lineWrap: true, + lineBreak: false, + placeholder: true, + autoCompletion: autoCompletionManager.autoCompletion(), + }, + ], + }, }, }, ], @@ -248,7 +317,7 @@ { name: 'indicatorCode', label: $t('re.parameter.grid.entity.indicatorCode') }, ...valueTypeManager.getViewerFields(), { name: 'order', label: $t('order') }, - { name: 'showIf', label: $t('re.parameter.grid.entity.showIf') }, + { name: 'properties', label: $t('re.parameter.grid.entity.properties') }, ...CorporationAuditorEntityManager.getViewerFields(), ], }, @@ -261,12 +330,38 @@ @before-request-data=" (args) => { emit('beforeRequestData'); - autoCompletionManager.load(Environment.apiContextPath('/api/re/common/parameterAndValueType/findInParameterByResourceId/' + resource.id)); + } + " + @before-editor-data-submit=" + (args: any) => { + const grid = args.grid.getEditorForm().getFieldComponent('properties'); + const localData: any[] = grid.getRows(); + const properties: any = []; + localData.forEach((item) => { + properties.push({ name: item.name, value: item.value }); + }); + args.data.properties = Tools.object2Json(properties); } " @after-editor-open=" (args: any) => { valueTypeManager.afterEditorOpen(args); + autoCompletionManager.load(Environment.apiContextPath('/api/re/common/parameterAndValueType/findInParameterByResourceId/' + resource.id)); + const form = args.grid.getEditorForm(); + const grid = form.getFieldComponent('properties'); + switch (form.getStatus()) { + case 'add': // 新增时清空表格内容 + grid.setLocalData([]); + break; + case 'edit': // 编辑/复制时填充表格内容 + case 'clone': + nextTick(() => { + const data = Tools.json2Object(args.data.properties); + grid.setLocalData(data); + }); + + break; + } } " > @@ -310,6 +405,9 @@ import { LibManager } from '@/views/shared/LibManager'; import { TemplateImportAndExportManager } from '@/views/shared/TemplateImportAndExportManager'; import { EngineEnums } from '@/views/shared/enums/EngineEnums'; import { AutoCompletionManager } from '@/views/shared/AutoCompletionManager'; +import { PlaceHolder } from '@/utils/PlaceHolder'; +import { toRaw } from 'vue'; +import { nextTick } from 'vue'; const props = defineProps({ resource: { type: Object, default: undefined }, diff --git a/io.sc.engine.rule.frontend/src/views/shared/AutoCompletionManager.ts b/io.sc.engine.rule.frontend/src/views/shared/AutoCompletionManager.ts index 351b2f74..d791e41a 100644 --- a/io.sc.engine.rule.frontend/src/views/shared/AutoCompletionManager.ts +++ b/io.sc.engine.rule.frontend/src/views/shared/AutoCompletionManager.ts @@ -171,16 +171,12 @@ class AutoCompletionManager { return null; } - public getParameterOptions(): any { - const cache = {}; + public getParameterOptions(prefix?: string): any { const options: any[] = []; Object.values(this.parameters).forEach((parameter: any) => { const option = this.getOptionItem(parameter); - if (option) { - if (!cache[option.label]) { - cache[option.label] = option; - options.push(option); - } + if (option && (!prefix || option.label.includes(prefix))) { + options.push(option); } }); for (const option of options) { @@ -208,8 +204,8 @@ class AutoCompletionManager { public autoCompletionParameters(to: any, matchedText?: any): any { return { from: to, - options: this.getParameterOptions(), - validFor: /(.*)?/, + options: this.getParameterOptions(matchedText), + validFor: /^(.*)?$/, }; } @@ -254,19 +250,25 @@ class AutoCompletionManager { return null; } const beforeText = beforeMatched.text || ''; - if (beforeText.endsWith(' ')) { - //匹配所有参数 + if (beforeText === '' || beforeText.endsWith(' ')) { + //如果当前光标位于首位或前面一个是空格, 则匹配所有参数 return this.autoCompletionParameters(beforeMatched.to); } else if (beforeText.endsWith('.')) { - //匹配所有属性 + //如果当前光标的前一个字符是'.', 则匹配所有属性 return this.autoCompletionProperties(beforeMatched.to, beforeText); } else { - //匹配部分属性 + //匹配过滤后的部分属性 const lastIndexOf = beforeText.lastIndexOf('.'); const matchedText = beforeText.substring(0, lastIndexOf + 1); const subText = beforeText.substring(lastIndexOf + 1); if (lastIndexOf > -1) { + // 匹配 return this.autoCompletionProperties(beforeMatched.to - subText.length, matchedText, subText); + } else { + const lastSpaceIndexOf = beforeText.lastIndexOf(' '); + const parameterText = beforeText.substring(lastSpaceIndexOf + 1); + //匹配所有参数 + return this.autoCompletionParameters(beforeMatched.to - parameterText.length, parameterText); } } } diff --git a/io.sc.engine.rule.frontend/src/views/shared/enums/EngineEnums.ts b/io.sc.engine.rule.frontend/src/views/shared/enums/EngineEnums.ts index ae94c495..28cacee3 100644 --- a/io.sc.engine.rule.frontend/src/views/shared/enums/EngineEnums.ts +++ b/io.sc.engine.rule.frontend/src/views/shared/enums/EngineEnums.ts @@ -15,6 +15,7 @@ class EngineEnums { 'io.sc.engine.rule.core.enums.IndicatorType', 'io.sc.engine.rule.core.enums.LibType', 'io.sc.engine.rule.core.enums.ModelCategory', + 'io.sc.engine.rule.core.enums.ParameterPropertiesName', 'io.sc.engine.rule.core.enums.ParameterType', 'io.sc.engine.rule.core.enums.QualitativeAdditionComponentType', 'io.sc.engine.rule.core.enums.ProcessorType', @@ -34,6 +35,7 @@ class EngineEnums { public static IndicatorType: any; public static LibType: any; public static ModelCategory: any; + public static ParameterPropertiesName: any; public static ParameterType: any; public static QualitativeAdditionComponentType: any; public static ProcessorType: any; @@ -62,6 +64,7 @@ class EngineEnums { EngineEnums.IndicatorType = EngineEnums.createEnum(Enums.IndicatorType); EngineEnums.LibType = EngineEnums.createEnum(Enums.LibType); EngineEnums.ModelCategory = EngineEnums.createEnum(Enums.ModelCategory); + EngineEnums.ParameterPropertiesName = EngineEnums.createEnum(Enums.ParameterPropertiesName); EngineEnums.ParameterType = EngineEnums.createEnum(Enums.ParameterType); EngineEnums.QualitativeAdditionComponentType = EngineEnums.createEnum(Enums.QualitativeAdditionComponentType); EngineEnums.ProcessorType = EngineEnums.createEnum(Enums.ProcessorType); diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/common/service/impl/ParameterAndValueTypeServiceImpl.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/common/service/impl/ParameterAndValueTypeServiceImpl.java index 5253ecf4..a09eb86f 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/common/service/impl/ParameterAndValueTypeServiceImpl.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/common/service/impl/ParameterAndValueTypeServiceImpl.java @@ -26,6 +26,9 @@ import io.sc.engine.rule.server.model.entity.parameter.OutParameterEntity; import io.sc.engine.rule.server.model.service.ModelService; import io.sc.engine.rule.server.model.service.ParameterProcessorService; import io.sc.engine.rule.server.model.service.ParameterService; +import io.sc.engine.rule.server.resource.entity.ModelResourceEntity; +import io.sc.engine.rule.server.resource.entity.ResourceEntity; +import io.sc.platform.core.support.KeyValue; import io.sc.platform.util.CollectionUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.MessageSource; @@ -33,10 +36,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; import java.lang.reflect.Field; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; +import java.util.*; @Service("io.sc.engine.rule.server.common.service.impl.ParameterAndValueTypeServiceImpl") public class ParameterAndValueTypeServiceImpl implements ParameterAndValueTypeService { @@ -147,7 +147,7 @@ public class ParameterAndValueTypeServiceImpl implements ParameterAndValueTypeSe return null; } - private void buildByModel(ParameterAndValueType parameterAndValueType, ModelEntity modelEntity, Locale locale) throws Exception{ + private void buildByModelXXX(ParameterAndValueType parameterAndValueType, ModelEntity modelEntity, Locale locale) throws Exception{ if(modelEntity==null || !StringUtils.hasText(modelEntity.getId())){ return; } //枚举类型 @@ -184,6 +184,7 @@ public class ParameterAndValueTypeServiceImpl implements ParameterAndValueTypeSe buildValueType(parameterAndValueType,entity.getValueType(),entity.getValueTypeVersion(),locale); } } + //父模型参数 ModelEntity parentModelEntity =modelEntity.getParent(); while(parentModelEntity!=null){ @@ -213,6 +214,100 @@ public class ParameterAndValueTypeServiceImpl implements ParameterAndValueTypeSe } } + private void buildByModel(ParameterAndValueType parameterAndValueType, ModelEntity modelEntity, Locale locale) throws Exception{ + if(modelEntity==null || !StringUtils.hasText(modelEntity.getId())){ return; } + + //枚举类型 + buildByEnumDictionary(parameterAndValueType,locale); + + //查找根模型 + ModelEntity rootModelEntity =modelEntity; + ModelEntity parentModelEntity =modelEntity.getParent(); + while(parentModelEntity!=null){ + rootModelEntity =parentModelEntity; + parentModelEntity =parentModelEntity.getParent(); + } + KeyValue flag =new KeyValue<>("sourceDone",false); + //深度优先递归遍历 + buildByRootModel2(parameterAndValueType,modelEntity,rootModelEntity,flag,locale); + } + + private void buildByRootModel2( + ParameterAndValueType parameterAndValueType, + ModelEntity sourceModelEntity, /* 模型实体(发起源) */ + ModelEntity currentModelEntity, /* 模型实体(当前递归) */ + KeyValue flag, /* 是否已经过了模型实体(发起源) */ + Locale locale + ) throws Exception { + if(sourceModelEntity.getId().equals(currentModelEntity.getId())){//遍历到当前模型 + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN_SUB_OUT); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.CONSTANT); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN_OPTION); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.INDICATOR); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.INTERMEDIATE); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.OUT); + flag.setValue(true); + return; + } + // 深度优先, 遍历孩子 + for(ModelEntity entity : currentModelEntity.getChildren()){ + buildByRootModel2(parameterAndValueType,sourceModelEntity,entity,flag,locale); + } + // 处理发起源后面的模型 + if(flag.getValue()){//当前模型后面的模型 + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.CONSTANT); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN_OPTION); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.INDICATOR); + }else{//处理发起源前面的模型 + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.CONSTANT); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN_OPTION); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.IN); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.INDICATOR); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.INTERMEDIATE); + buildByModelParameters(parameterAndValueType,currentModelEntity,locale,ParameterType.OUT); + } + } + + //根据指定类型构建模型参数 + private void buildByModelParameters(ParameterAndValueType parameterAndValueType,ModelEntity modelEntity,Locale locale,ParameterType parameterType) throws Exception { + if(ParameterType.IN_SUB_OUT.equals(parameterType)){ + List subModelOutParameters =parameterService.findOutParameterEntitiesOfSubModels(modelEntity.getId()); + if(subModelOutParameters!=null && subModelOutParameters.size()>0) { + for(OutParameterEntity entity : subModelOutParameters) { + Parameter parameter =new Parameter(); + parameter.setCode(entity.getCode()); + parameter.setName(entity.getName()); + parameter.setType(ParameterType.IN_SUB_OUT.toString()); + parameter.setValueType(entity.getValueType()); + parameter.setValueTypeVersion(entity.getValueTypeVersion()); + parameter.setValueTypeIsList(entity.getValueTypeIsList()); + parameterAndValueType.addParameter(parameter); + buildValueType(parameterAndValueType,entity.getValueType(),entity.getValueTypeVersion(),locale); + } + } + }else { + List parameterEntities = modelEntity.getParameters(); + if (parameterEntities != null && parameterEntities.size() > 0) { + for (ParameterEntity entity : parameterEntities) { + if (entity.getType().equals(parameterType)) { + Parameter parameter = new Parameter(); + parameter.setCode(entity.getCode()); + parameter.setName(entity.getName()); + parameter.setType(entity.getType().toString()); + parameter.setValueType(entity.getValueType()); + parameter.setValueTypeVersion(entity.getValueTypeVersion()); + parameter.setValueTypeIsList(entity.getValueTypeIsList()); + parameterAndValueType.addParameter(parameter); + buildValueType(parameterAndValueType, entity.getValueType(), entity.getValueTypeVersion(), locale); + } + } + } + } + } + + private void buildByLib(ParameterAndValueType parameterAndValueType,IndicatorLibEntity indicatorLibEntity, Locale locale) throws Exception{ if(indicatorLibEntity==null){ return; } //枚举类型 diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/controller/ExecuteUnitWebController.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/controller/ExecuteUnitWebController.java index bed55cb0..fd5e7c12 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/controller/ExecuteUnitWebController.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/controller/ExecuteUnitWebController.java @@ -1,10 +1,10 @@ package io.sc.engine.rule.server.executable.controller; -import io.sc.engine.rule.client.spring.service.ExecutorFactoryService; import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.code.ExecuteUnit; import io.sc.engine.rule.core.code.SourceCode; import io.sc.engine.rule.server.executable.service.ExecuteUnitService; +import io.sc.platform.core.annotation.IgnoreResponseBodyAdvice; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -19,48 +19,65 @@ import java.util.Map; @RequestMapping("/api/re/executable") public class ExecuteUnitWebController { private static final Logger log =LoggerFactory.getLogger(ExecuteUnitWebController.class); - @Autowired private ExecuteUnitService executableUnitService; - @Autowired private ExecutorFactoryService executorFactoryService; - - @GetMapping(value="findById/{unitId}") + @Autowired private ExecuteUnitService service; + + @GetMapping(value={ + "findById/{unitId}" + }) + @IgnoreResponseBodyAdvice public ExecuteUnit findById( @PathVariable(name="unitId",required=true)String unitId ) throws Exception{ - return executableUnitService.findById(unitId); + return service.findById(unitId,true); } - @GetMapping(value="findByCodeAndVersion/{unitCode}/{unitVersion}") - public ExecuteUnit getLastModifyDateById( + @GetMapping(value={ + "findByCodeAndVersion/{unitCode}", + "findByCodeAndVersion/{unitCode}/{unitVersion}" + }) + @IgnoreResponseBodyAdvice + public ExecuteUnit findByCodeAndVersion( @PathVariable(name="unitCode",required=true)String unitCode, @PathVariable(name="unitVersion",required=false) Integer unitVersion ) throws Exception{ - return executableUnitService.findByCodeAndVersion(unitCode,unitVersion); + return service.findByCodeAndVersion(unitCode,unitVersion,true); } - @GetMapping(value="executeById/{unitId}/{subUnitCode}") + @PostMapping(value={ + "executeById/{unitId}", + "executeById/{unitId}/{subUnitCode}" + }) + @IgnoreResponseBodyAdvice public ExecuteResult executeById( @PathVariable(name="unitId",required=true)String unitId, - @PathVariable(name="subUnitCode",required=false)String subUnitCode + @PathVariable(name="subUnitCode",required=false)String subUnitCode, + @RequestBody String json ) throws Exception{ - return executableUnitService.executeById(unitId,subUnitCode); + return service.executeById(unitId,subUnitCode,json); } - @GetMapping(value="executeByCodeAndVersion/{unitCode}/{unitVersion}/{subUnitCode}") + @PostMapping(value={ + "executeByCodeAndVersion/{unitCode}", + "executeByCodeAndVersion/{unitCode}/{unitVersion}", + "executeByCodeAndVersion/{unitCode}/{unitVersion}/{subUnitCode}" + }) + @IgnoreResponseBodyAdvice public ExecuteResult executeByCodeAndVersion( @PathVariable(name="unitCode",required=true)String unitCode, @PathVariable(name="unitVersion",required=false) Integer unitVersion, - @PathVariable(name="subUnitCode",required=false)String subUnitCode + @PathVariable(name="subUnitCode",required=false)String subUnitCode, + @RequestBody String json ) throws Exception{ - return executableUnitService.executeByCodeAndVersion(unitCode,unitVersion,subUnitCode); + return service.executeByCodeAndVersion(unitCode,unitVersion,subUnitCode,json); } @PostMapping(value="generateGroovySourceCode/{unitId}") public SourceCode generateGroovySourceCode(@PathVariable(name="unitId",required=true)String unitId) throws Exception{ - return executableUnitService.generateGroovySourceCode(unitId); + return service.generateGroovySourceCode(unitId); } @PostMapping(value="validateGroovySourceCode") public void validateGroovySourceCode(@RequestBody Map body) throws Exception{ - executableUnitService.validateGroovySourceCode(body.get("script")); + service.validateGroovySourceCode(body.get("script")); } } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/ExecuteUnitService.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/ExecuteUnitService.java index 62f638f6..ef57f9be 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/ExecuteUnitService.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/ExecuteUnitService.java @@ -2,13 +2,19 @@ package io.sc.engine.rule.server.executable.service; import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.code.ExecuteUnit; +import io.sc.engine.rule.core.code.ExecuteUnit4Lib; +import io.sc.engine.rule.core.code.ExecuteUnit4Resource; import io.sc.engine.rule.core.code.SourceCode; +import io.sc.engine.rule.server.lib.entity.LibEntity; +import io.sc.engine.rule.server.resource.entity.ModelResourceEntity; public interface ExecuteUnitService { - public ExecuteUnit findById(String unitId) throws Exception; - public ExecuteUnit findByCodeAndVersion(String unitCode, Integer unitVersion) throws Exception; - public ExecuteResult executeById(String unitId, String subUnitCode) throws Exception; - public ExecuteResult executeByCodeAndVersion(String unitCode, Integer unitVersion,String subUnitCode) throws Exception; + public ExecuteUnit findById(String unitId, boolean useCache) throws Exception; + public ExecuteUnit findByCodeAndVersion(String unitCode, Integer unitVersion, boolean useCache) throws Exception; + public ExecuteResult executeById(String unitId, String subUnitCode,String json) throws Exception; + public ExecuteResult executeByCodeAndVersion(String unitCode, Integer unitVersion,String subUnitCode,String json) throws Exception; + //public ExecuteUnit4Resource createExecuteUnit4Resource(ModelResourceEntity resourceEntity, boolean canCache) throws Exception; + //public ExecuteUnit4Lib createExecuteUnit4Lib(LibEntity libEntity, boolean canCache) throws Exception; public SourceCode generateGroovySourceCode(String unitId) throws Exception; public boolean validateGroovySourceCode(String script) throws Exception; } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/impl/ExecuteUnitServiceImpl.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/impl/ExecuteUnitServiceImpl.java index f069db1a..273ff122 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/impl/ExecuteUnitServiceImpl.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/executable/service/impl/ExecuteUnitServiceImpl.java @@ -1,6 +1,7 @@ package io.sc.engine.rule.server.executable.service.impl; -import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptExecutor; +import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineService; +import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineServiceImpl; import io.sc.engine.rule.client.spring.service.ExecutorFactoryService; import io.sc.engine.rule.core.ExecuteResult; import io.sc.engine.rule.core.code.ExecuteUnit; @@ -19,84 +20,99 @@ import io.sc.engine.rule.server.lib.converter.LibEntityConverter; import io.sc.engine.rule.server.lib.entity.LibEntity; import io.sc.engine.rule.server.lib.service.LibService; import io.sc.engine.rule.server.resource.converter.ResourceEntityConverter; -import io.sc.engine.rule.server.resource.entity.ResourceEntity; +import io.sc.engine.rule.server.resource.entity.ModelResourceEntity; import io.sc.engine.rule.server.resource.service.ResourceService; +import io.sc.platform.util.ObjectMapperUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.StringUtils; +import java.util.Date; import java.util.List; @Service("io.sc.engine.rule.server.executable.service.impl.ExecuteUnitServiceImpl") public class ExecuteUnitServiceImpl implements ExecuteUnitService { + private static final Logger log = LoggerFactory.getLogger(ExecuteUnitServiceImpl.class); @Autowired private ResourceService resourceService; @Autowired private DictionaryService dictionaryService; @Autowired private LibService libService; @Autowired private FunctionService functionService; @Autowired private ExecutorFactoryService executorFactoryService; - private GroovyScriptExecutor engine =new GroovyScriptExecutor(); @Override - public ExecuteUnit findById(String unitId) throws Exception { + public ExecuteUnit findById(String unitId, boolean useCache) throws Exception { if(!StringUtils.hasText(unitId)){ return null; } // 先查找资源 - ResourceEntity resourceEntity =resourceService.findById(unitId); - if(resourceEntity!=null){ - List dictionaryEntities =dictionaryService.findDictionaryEntitiesByResourceId(resourceEntity.getId()); - List functionEntities =functionService.getRepository().findAll(); - List libEntities =libService.findByResourceId(resourceEntity.getId()); - - ExecuteUnit4Resource executeUnit =new ExecuteUnit4Resource(); - executeUnit.setDictionaries(DictionaryEntityConverter.toPo(dictionaryEntities)); - executeUnit.setFunctions(FunctionEntityConverter.toPo(functionEntities)); - - executeUnit.setResource(ResourceEntityConverter.toPo(resourceEntity,false)); - executeUnit.setLibs(LibEntityConverter.toPo(libEntities)); - - executeUnit.getResource().setTestCases(null);//在获取定义时,不返回测试用例 - executeUnit.optimize(); - return executeUnit; - } + ModelResourceEntity resourceEntity =resourceService.getRepository().findModelResourceById(unitId); + ExecuteUnit4Resource executeUnit4Resource =createExecuteUnit4Resource(resourceEntity,useCache); + if(executeUnit4Resource!=null) { return executeUnit4Resource; } // 再查找指标库 LibEntity libEntity =libService.findById(unitId); - if(libEntity!=null) { - List dictionaryEntities =dictionaryService.findDictionaryEntitiesByLibId(libEntity.getId()); - List functionEntities =functionService.getRepository().findAll(); - - ExecuteUnit4Lib executeUnit =new ExecuteUnit4Lib(); - executeUnit.setDictionaries(DictionaryEntityConverter.toPo(dictionaryEntities)); - executeUnit.setFunctions(FunctionEntityConverter.toPo(functionEntities)); - - executeUnit.setLib(LibEntityConverter.toPo(libEntity)); - - executeUnit.getLib().setTestCases(null);//在获取定义时,不返回测试用例 - executeUnit.optimize(); - return executeUnit; - } + ExecuteUnit4Lib executeUnit4Lib =createExecuteUnit4Lib(libEntity,useCache); + if(executeUnit4Lib!=null) { return executeUnit4Lib; } return null; } @Override - public ExecuteUnit findByCodeAndVersion(String unitCode, Integer unitVersion) throws Exception { + public ExecuteUnit findByCodeAndVersion(String unitCode, Integer unitVersion, boolean useCache) throws Exception { + if(!StringUtils.hasText(unitCode)){ + return null; + } + // 先查找资源 + if(!StringUtils.hasText(unitCode)){ return null; } + ModelResourceEntity resourceEntity =null; + if(unitVersion==null){ + List resourceEntities =resourceService.getRepository().findModelResourceByCode(unitCode); + if(resourceEntities!=null && !resourceEntities.isEmpty()){ + resourceEntity =resourceEntities.get(0); + } + }else{ + resourceEntity =resourceService.getRepository().findModelResourceByCodeAndVersion(unitCode,unitVersion); + } + ExecuteUnit4Resource executeUnit4Resource =createExecuteUnit4Resource(resourceEntity,useCache); + if(executeUnit4Resource!=null) { return executeUnit4Resource; } + + // 再查找指标库 + LibEntity libEntity =null; + if(unitVersion==null){ + List libEntities =libService.getRepository().findByCodeOrderByVersionDesc(unitCode); + if(libEntities!=null && !libEntities.isEmpty()){ + libEntity =libEntities.get(0); + } + }else{ + libEntity =libService.getRepository().findByCodeAndVersion(unitCode,unitVersion); + } + ExecuteUnit4Lib executeUnit4Lib =createExecuteUnit4Lib(libEntity,true); + if(executeUnit4Lib!=null) { return executeUnit4Lib; } return null; } @Override - public ExecuteResult executeById(String unitId, String subUnitCode) throws Exception { - return null; + public ExecuteResult executeById(String unitId, String subUnitCode,String json) throws Exception { + if(StringUtils.hasText(subUnitCode)) { + return executorFactoryService.getServerExecutor().executeById(unitId, subUnitCode, json); + }else{ + return executorFactoryService.getServerExecutor().executeById(unitId, json); + } } @Override - public ExecuteResult executeByCodeAndVersion(String unitCode, Integer unitVersion,String subUnitCode) throws Exception { - return null; + public ExecuteResult executeByCodeAndVersion(String unitCode, Integer unitVersion,String subUnitCode,String json) throws Exception { + if(StringUtils.hasText(subUnitCode)) { + return executorFactoryService.getServerExecutor().executeByCode(unitCode, unitVersion, subUnitCode, json); + }else{ + return executorFactoryService.getServerExecutor().executeByCode(unitCode, unitVersion, json); + } } @Override public SourceCode generateGroovySourceCode(String unitId) throws Exception { - ExecuteUnit unit =findById(unitId); + ExecuteUnit unit =findById(unitId,false); if(unit!=null) { GroovySourceCodeGenerator generator = new GroovySourceCodeGenerator(); return generator.generate(unit); @@ -106,6 +122,46 @@ public class ExecuteUnitServiceImpl implements ExecuteUnitService { @Override public boolean validateGroovySourceCode(String script) throws Exception { - return engine.validate(script); + GroovyScriptEngineService engineService =new GroovyScriptEngineServiceImpl(); + return engineService.validate(script); + } + + private ExecuteUnit4Resource createExecuteUnit4Resource(ModelResourceEntity resourceEntity, boolean useCache) throws Exception { + if(resourceEntity==null) { return null; } + if(useCache) { + String cacheExecuteUnitString = resourceEntity.getCacheExecuteUnit(); + if (cacheExecuteUnitString != null && !"".equals(cacheExecuteUnitString.trim())) { + return ObjectMapperUtil.json().readValue(cacheExecuteUnitString, ExecuteUnit4Resource.class); + } + } + + List dictionaryEntities =dictionaryService.findDictionaryEntitiesByResourceId(resourceEntity.getId()); + List functionEntities =functionService.getRepository().findAll(); + List libEntities =libService.findByResourceId(resourceEntity.getId()); + + ExecuteUnit4Resource executeUnit =new ExecuteUnit4Resource(); + executeUnit.setDictionaries(DictionaryEntityConverter.toPo(dictionaryEntities)); + executeUnit.setFunctions(FunctionEntityConverter.toPo(functionEntities)); + executeUnit.setResource(ResourceEntityConverter.toPo(resourceEntity,false)); + executeUnit.setLibs(LibEntityConverter.toPo(libEntities)); + executeUnit.getResource().setTestCases(null);//在获取定义时,不返回测试用例 + executeUnit.optimize(); + return executeUnit; + } + + private ExecuteUnit4Lib createExecuteUnit4Lib(LibEntity libEntity, boolean useCache) throws Exception { + if(libEntity==null) { return null; } + + List dictionaryEntities =dictionaryService.findDictionaryEntitiesByLibId(libEntity.getId()); + List functionEntities =functionService.getRepository().findAll(); + + ExecuteUnit4Lib executeUnit =new ExecuteUnit4Lib(); + executeUnit.setDictionaries(DictionaryEntityConverter.toPo(dictionaryEntities)); + executeUnit.setFunctions(FunctionEntityConverter.toPo(functionEntities)); + executeUnit.setLib(LibEntityConverter.toPo(libEntity)); + executeUnit.getLib().setTestCases(null);//在获取定义时,不返回测试用例 + + executeUnit.optimize(); + return executeUnit; } } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/lib/repository/LibRepository.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/lib/repository/LibRepository.java index 5f168b38..25ae5bca 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/lib/repository/LibRepository.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/lib/repository/LibRepository.java @@ -34,6 +34,7 @@ public interface LibRepository extends DaoRepository{ public List findByIdIn(Collection ids); public List findByCode(String code); public List findByCodeOrderByVersion(String code); + public List findByCodeOrderByVersionDesc(String code); public List findByCodeAndName(String code,String name); public List findByCodeOrName(String code,String name); public LibEntity findByCodeAndVersion(String code,Integer version); diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/converter/ParameterEntityConverter.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/converter/ParameterEntityConverter.java index b8ea2678..1fdd04c6 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/converter/ParameterEntityConverter.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/converter/ParameterEntityConverter.java @@ -50,6 +50,7 @@ public class ParameterEntityConverter { po.setId(entity.getId()); po.setCode(entity.getCode()); po.setName(entity.getName()); + po.setAlias(entity.getAlias()); po.setDescription(entity.getDescription()); po.setValueType(entity.getValueType()); po.setValueTypeVersion(entity.getValueTypeVersion()); @@ -58,7 +59,8 @@ public class ParameterEntityConverter { po.setValueTypeIsList(entity.getValueTypeIsList()); po.setDefaultValue(entity.getDefaultValue()); po.setOrder(entity.getOrder()); - po.setShowIf(entity.getShowIf()); + po.setPersistentAsIndicator(entity.getPersistentAsIndicator()); + po.setProperties(entity.getProperties()); po.setValidators(ParameterValidatorEntityConverter.toPo(entity.getValidators())); po.setProcessors(ParameterProcessorEntityConverter.toPo(entity.getProcessors())); return po; diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/entity/ParameterEntity.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/entity/ParameterEntity.java index 15ea68ce..c975ce21 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/entity/ParameterEntity.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/entity/ParameterEntity.java @@ -2,6 +2,8 @@ package io.sc.engine.rule.server.model.entity; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.core.type.TypeReference; +import io.sc.engine.rule.core.code.generator.impl.processor.ConditionRange; import io.sc.engine.rule.core.enums.ParameterType; import io.sc.engine.rule.core.enums.ReplaceMode; import io.sc.engine.rule.server.common.CodeAndNameReplacer; @@ -14,15 +16,19 @@ import io.sc.engine.rule.server.testcase.annotation.TestCaseParameterAble; import io.sc.engine.rule.server.testcase.wrapper.TestCaseParameterWrapper; import io.sc.platform.orm.DeepClone; import io.sc.platform.orm.IdClearable; +import io.sc.platform.orm.converter.MapStringConverter; import io.sc.platform.orm.converter.NumericBooleanConverter; import io.sc.platform.orm.entity.CorporationAuditorEntity; +import io.sc.platform.util.ObjectMapperUtil; import org.hibernate.annotations.GenericGenerator; import org.springframework.beans.BeanUtils; +import org.springframework.util.StringUtils; import javax.persistence.*; import javax.validation.constraints.Size; import java.math.RoundingMode; import java.util.ArrayList; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -62,6 +68,11 @@ public class ParameterEntity extends CorporationAuditorEntity imple @Column(name="NAME_", length=255) @Size(max=255) protected String name; + + //别名 + @Column(name="ALIAS_", length=255) + @Size(max=255) + protected String alias; //描述 @Column(name="DESCRIPTION_", length=255) @@ -103,10 +114,14 @@ public class ParameterEntity extends CorporationAuditorEntity imple @Column(name="ORDER_") protected Integer order; - //条件 - @Column(name="SHOW_IF_",length = 1024) - @Size(max=1024) - protected String showIf; + //是否作为指标存储 + @Column(name="IS_PERSISTENT_AS_INDICATOR") + @Convert(converter= NumericBooleanConverter.class) + protected Boolean persistentAsIndicator; + + //属性 + @Column(name="PROPERTIES_") + protected String properties; //所属模型 @ManyToOne(fetch=FetchType.LAZY) @@ -130,6 +145,7 @@ public class ParameterEntity extends CorporationAuditorEntity imple vo.setId(this.getId()); vo.setCode(this.getCode()); vo.setName(this.getName()); + vo.setAlias(this.getAlias()); vo.setDescription(this.getDescription()); vo.setType(this.getType()); vo.setValueType(this.getValueType()); @@ -139,7 +155,8 @@ public class ParameterEntity extends CorporationAuditorEntity imple vo.setValueTypeIsList(this.getValueTypeIsList()); vo.setDefaultValue(this.getDefaultValue()); vo.setOrder(this.getOrder()); - vo.setShowIf(this.getShowIf()); + vo.setPersistentAsIndicator(this.getPersistentAsIndicator()); + vo.setProperties(this.getProperties()); vo.setModel(this.getModel()==null?null:this.getModel().getId()); } } @@ -168,6 +185,14 @@ public class ParameterEntity extends CorporationAuditorEntity imple this.name = name; } + public String getAlias() { + return alias; + } + + public void setAlias(String alias) { + this.alias = alias; + } + public String getDescription() { return description; } @@ -240,12 +265,20 @@ public class ParameterEntity extends CorporationAuditorEntity imple this.order = order; } - public @Size(max = 1024) String getShowIf() { - return showIf; + public Boolean getPersistentAsIndicator() { + return persistentAsIndicator; + } + + public void setPersistentAsIndicator(Boolean persistentAsIndicator) { + this.persistentAsIndicator = persistentAsIndicator; } - public void setShowIf(@Size(max = 1024) String showIf) { - this.showIf = showIf; + public String getProperties() { + return properties; + } + + public void setProperties(String properties) { + this.properties = properties; } public ModelEntity getModel() { @@ -348,25 +381,63 @@ public class ParameterEntity extends CorporationAuditorEntity imple @Override public boolean replace(ParameterAndValueType parameterAndValueType, ReplaceMode mode) { - String replaced =parameterAndValueType.replace(this.showIf, mode); + String replaced =replaceJsonString(this.properties, parameterAndValueType, mode); replaced =(replaced==null?"":replaced); boolean result =false; - if(!replaced.equals(this.showIf)) { + if(!replaced.equals(this.properties)) { result =true; } - this.showIf =replaced; + this.properties =replaced; return result; } @Override public boolean replace(Map code2codeMapping) { - String replaced = ParameterCodeReplacer.replace(this.showIf, code2codeMapping); + String replaced = ParameterCodeReplacer.replace(this.properties,code2codeMapping); replaced =(replaced==null?"":replaced); boolean result =false; - if(!replaced.equals(this.showIf)) { + if(!replaced.equals(this.properties)) { result =true; } - this.showIf =replaced; + this.properties =replaced; return result; } + + private String replaceJsonString(String json, ParameterAndValueType parameterAndValueType, ReplaceMode mode) { + if(!StringUtils.hasText(json)){ + return json; + } + try { + List properties = ObjectMapperUtil.json().readValue(json, new TypeReference>() { + }); + for (Property property : properties) { + property.setValue(parameterAndValueType.replace(property.getValue(), mode)); + } + return ObjectMapperUtil.json().writeValueAsString(properties); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + static class Property { + String name; + String value; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + } + } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/vo/ParameterVo.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/vo/ParameterVo.java index 4cf06dab..83b302da 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/vo/ParameterVo.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/vo/ParameterVo.java @@ -19,6 +19,9 @@ public class ParameterVo extends CorporationAuditorVo { //名称 protected String name; + + //别名 + protected String alias; //描述 protected String description; @@ -49,8 +52,11 @@ public class ParameterVo extends CorporationAuditorVo { @Column(name="FD_ORDER") protected Integer order; - //显示条件(主要为前端提供) - protected String showIf; + //是否作为指标存储 + protected Boolean persistentAsIndicator; + + //属性 + protected String properties; //所属模型 protected String model; @@ -79,6 +85,14 @@ public class ParameterVo extends CorporationAuditorVo { this.name = name; } + public String getAlias() { + return alias; + } + + public void setAlias(String alias) { + this.alias = alias; + } + public String getDescription() { return description; } @@ -151,12 +165,20 @@ public class ParameterVo extends CorporationAuditorVo { this.order = order; } - public String getShowIf() { - return showIf; + public Boolean getPersistentAsIndicator() { + return persistentAsIndicator; + } + + public void setPersistentAsIndicator(Boolean persistentAsIndicator) { + this.persistentAsIndicator = persistentAsIndicator; + } + + public String getProperties() { + return properties; } - public void setShowIf(String showIf) { - this.showIf = showIf; + public void setProperties(String properties) { + this.properties = properties; } public String getModel() { diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/controller/ResourceWebController.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/controller/ResourceWebController.java index 904f1774..c347cac0 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/controller/ResourceWebController.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/controller/ResourceWebController.java @@ -1,14 +1,7 @@ package io.sc.engine.rule.server.resource.controller; -import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineService; -import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineServiceImpl; import io.sc.engine.rule.client.spring.service.ExecutorFactoryService; import io.sc.engine.rule.core.ResourceAbstract; -import io.sc.engine.rule.core.ResourceResult; -import io.sc.engine.rule.core.code.ExecuteUnit; -import io.sc.engine.rule.core.code.SourceCode; -import io.sc.engine.rule.core.code.SourceCodeGenerator; -import io.sc.engine.rule.core.code.generator.GroovySourceCodeGenerator; import io.sc.engine.rule.core.po.resource.Resource; import io.sc.engine.rule.server.common.plugins.PluginManager; import io.sc.engine.rule.server.common.plugins.item.ResourceExampleItem; @@ -54,98 +47,108 @@ public class ResourceWebController extends RestCrudController preDeploy(@PathVariable(name="resourceId",required=true)String resourceId) throws Exception{ + return service.preDeploy(resourceId); } - - @GetMapping(value="getDefineById2") - @IgnoreResponseBodyAdvice - public ExecuteUnit getDefineById2(@RequestParam(name="id",required=true)String resourceId) throws Exception{ - ExecuteUnit wrapper =service.getDefineById2(resourceId); - return wrapper; - } - - @GetMapping(value="getDefineByCode") - @IgnoreResponseBodyAdvice - public ExecuteUnit getDefineByCode(@RequestParam(name="code",required=true)String resourceCode,@RequestParam(name="version",required=false)Integer version) throws Exception{ - ExecuteUnit wrapper =service.getDefineByCode(resourceCode, version); - return wrapper; - } - - @GetMapping(value="getLastModifyDateByCode") - @IgnoreResponseBodyAdvice - public Long getLastModifyDateByCode(@RequestParam(name="code",required=true)String resourceCode,@RequestParam(name="version",required=false)Integer version) throws Exception{ - return service.getLastModifyDateByCode(resourceCode,version); - } - - @PostMapping(value="executeById") - @IgnoreResponseBodyAdvice - public ResourceResult executeById( - @RequestParam(name="resourceId") String resourceId, - @RequestParam(name="subModelCode",required=false) String subModelCode, - @RequestBody String json - ) throws Exception{ - if(StringUtils.hasText(subModelCode)) { - return executorFactoryService.getExecutor().executeById(resourceId, subModelCode, json); - }else { - return executorFactoryService.getExecutor().executeById(resourceId, json); - } - } - - @PostMapping(value="executeByCode") - @IgnoreResponseBodyAdvice - public ResourceResult executeByCode( - @RequestParam(name="resourceCode") String resourceCode, - @RequestParam(name="version",required=false) Integer version, - @RequestParam(name="subModelCode",required=false) String subModelCode, - @RequestBody String json - ) throws Exception{ - if(StringUtils.hasText(subModelCode)) { - return executorFactoryService.getExecutor().executeByCode(resourceCode, version, subModelCode, json); - }else { - return executorFactoryService.getExecutor().executeByCode(resourceCode, version, json); - } - } - - @PostMapping(value="generateGroovySourceCode/{resourceId}") - public SourceCode generateGroovySourceCode(@PathVariable(name="resourceId",required=true)String resourceId) throws Exception{ - ExecuteUnit wrapper =getDefineById(resourceId); - SourceCodeGenerator generator =new GroovySourceCodeGenerator(); - return generator.generate(null,wrapper); - } - - @PostMapping(value="generateGroovySourceCodeForTest/{resourceId}") - public SourceCode generateGroovySourceCodeForTest(@PathVariable(name="resourceId",required=true)String resourceId) throws Exception{ - ExecuteUnit wrapper =getDefineById(resourceId); - SourceCodeGenerator generator =new GroovySourceCodeGenerator(); - return generator.generate(null,wrapper); - } - - @PostMapping(value="sourceCodeValidate/{resourceId}") - public void sourceCodeValidate(@PathVariable(name="resourceId",required=true)String resourceId) throws Exception{ - ExecuteUnit wrapper =getDefineById(resourceId); - SourceCodeGenerator generator =new GroovySourceCodeGenerator(); - SourceCode sourceCode =generator.generate(resourceId,wrapper); - GroovyScriptEngineService engineService =new GroovyScriptEngineServiceImpl(); - engineService.validate(sourceCode.getSource()); - } - - @PostMapping(value="sourceCodeValidateForTest/{resourceId}") - public void sourceCodeValidateForTest(@PathVariable(name="resourceId",required=true)String resourceId) throws Exception{ - ExecuteUnit wrapper =getDefineById(resourceId); - SourceCodeGenerator generator =new GroovySourceCodeGenerator(); - SourceCode sourceCode =generator.generate(resourceId,wrapper); - GroovyScriptEngineService engineService =new GroovyScriptEngineServiceImpl(); - engineService.validate(sourceCode.getSource()); + + @PostMapping(value="cancelPreDeploy/{resourceId}") + public List cancelPreDeploy(@PathVariable(name="resourceId",required=true)String resourceId) throws Exception{ + return service.cancelPreDeploy(resourceId); } /** diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/entity/ModelResourceEntity.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/entity/ModelResourceEntity.java index a4f9da4f..f4611192 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/entity/ModelResourceEntity.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/entity/ModelResourceEntity.java @@ -5,6 +5,7 @@ import io.sc.engine.rule.core.enums.ResourceType; import io.sc.engine.rule.server.model.entity.ModelEntity; import io.sc.engine.rule.server.resource.vo.ModelResourceVo; import org.springframework.beans.BeanUtils; +import org.springframework.util.StringUtils; import javax.persistence.*; import java.util.Date; @@ -29,6 +30,10 @@ public class ModelResourceEntity extends ResourceEntity { @Column(name="IMPORTS_") protected String imports; + //缓存的执行部件 + @Column(name="CACHE_EXECUTE_UNIT_") + protected String cacheExecuteUnit; + //附件个数 @Transient protected int attachmentCount; @@ -51,6 +56,7 @@ public class ModelResourceEntity extends ResourceEntity { vo.setVersion(this.getVersion()); vo.setEffectiveDate(this.getEffectiveDate()); vo.setImports(this.getImports()); + vo.setPreDeploy(StringUtils.hasText(this.cacheExecuteUnit)); vo.setAttachmentCount(this.getAttachmentCount()); vo.setTaskName(this.getTaskName()); vo.setTaskAssignee(this.getTaskAssignee()); @@ -84,6 +90,12 @@ public class ModelResourceEntity extends ResourceEntity { public void setImports(String imports) { this.imports = imports; } + public String getCacheExecuteUnit() { + return cacheExecuteUnit; + } + public void setCacheExecuteUnit(String cacheExecuteUnit) { + this.cacheExecuteUnit = cacheExecuteUnit; + } public int getAttachmentCount() { return attachmentCount; } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/repository/ResourceRepository.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/repository/ResourceRepository.java index ceba3336..bdc9578c 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/repository/ResourceRepository.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/repository/ResourceRepository.java @@ -31,9 +31,18 @@ public interface ResourceRepository extends DaoRepository @Query("select e from io.sc.engine.rule.server.resource.entity.ModelResourceEntity e where e.id=:id") public ModelResourceEntity findModelResourceById(@Param("id") String id); + @Query("select e from io.sc.engine.rule.server.resource.entity.ModelResourceEntity e where e.code=:code and e.version=:version") + public ModelResourceEntity findModelResourceByCodeAndVersion(@Param("code") String code,@Param("version") Integer version); + + @Query("select e from io.sc.engine.rule.server.resource.entity.ModelResourceEntity e where e.code=:code order by e.version desc") + public List findModelResourceByCode(@Param("code") String code); + @Query("select e from io.sc.engine.rule.server.resource.entity.ModelResourceEntity e order by e.namec") public List findAllModelResourceEntities(); + @Query("select e from io.sc.engine.rule.server.resource.entity.ResourceEntity e where e.parent.id=:parentId") + public List findByParentId(@Param("parentId") String parentId); + @Query("select e from io.sc.engine.rule.server.resource.entity.ResourceEntity e where concat(e.code,':',e.version) in (:codeAndVersions)") public List findByCodeAndVersions(@Param("codeAndVersions") Set codeAndVersions); diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/ResourceService.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/ResourceService.java index 990d7f2d..279bbf2e 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/ResourceService.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/ResourceService.java @@ -25,48 +25,6 @@ public interface ResourceService extends DaoService getAllResourceAbstract() throws Exception; - /** - * 通过资源 ID 获取资源定义封装对象 - * @param resourceId 资源ID - * @return 资源定义封装对象 - * @throws Exception 违例 - */ - public ExecuteUnit getDefineById(String resourceId) throws Exception; - - /** - * 通过资源 ID 获取资源定义的最后修改日期 - * @param resourceId 资源ID - * @return 最后修改日期 - * @throws Exception 违例 - */ - public Long getLastModifyDateById(String resourceId) throws Exception; - - /** - * 通过资源ID获取资源定义封装对象 - * @param resourceId 资源ID - * @return 资源定义封装对象 - * @throws Exception 违例 - */ - public ExecuteUnit getDefineById2(String resourceId) throws Exception; - - /** - * 通过资源代码和版本获取资源定义封装对象 - * @param resourceCode 资源代码 - * @param version 资源版本 - * @return 资源定义封装对象 - * @throws Exception 违例 - */ - public ExecuteUnit getDefineByCode(String resourceCode,Integer version) throws Exception; - - /** - * 通过资源代码和版本获取资源定义的最后修改日期 - * @param resourceCode 资源代码 - * @param version 资源版本 - * @return 最后修改日期 - * @throws Exception 违例 - */ - public Long getLastModifyDateByCode(String resourceCode,Integer version) throws Exception; - /** * 深度克隆资源实体(不同版本) * @param id 资源ID @@ -144,4 +102,16 @@ public interface ResourceService extends DaoService resourceIds) throws Exception; + + /** + * 预发布 + * @param resourceId 资源ID + */ + public List preDeploy(String resourceId) throws Exception; + + /** + * 取消预发布 + * @param resourceId 资源ID + */ + public List cancelPreDeploy(String resourceId) throws Exception; } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/impl/ResourceServiceImpl.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/impl/ResourceServiceImpl.java index b849393c..398ddf9b 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/impl/ResourceServiceImpl.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/service/impl/ResourceServiceImpl.java @@ -1,10 +1,10 @@ package io.sc.engine.rule.server.resource.service.impl; +import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import io.sc.engine.rule.core.ResourceAbstract; -import io.sc.engine.rule.core.code.ExecuteUnit; -import io.sc.engine.rule.core.code.ExecuteUnit4Lib; -import io.sc.engine.rule.core.code.ExecuteUnit4Resource; +import io.sc.engine.rule.core.code.*; +import io.sc.engine.rule.core.code.generator.GroovySourceCodeGenerator; import io.sc.engine.rule.core.enums.DeployStatus; import io.sc.engine.rule.core.enums.ExecuteMode; import io.sc.engine.rule.core.enums.ModelCategory; @@ -15,6 +15,7 @@ import io.sc.engine.rule.core.po.resource.Resource; import io.sc.engine.rule.server.dictionary.converter.DictionaryEntityConverter; import io.sc.engine.rule.server.dictionary.entity.DictionaryEntity; import io.sc.engine.rule.server.dictionary.service.DictionaryService; +import io.sc.engine.rule.server.executable.service.ExecuteUnitService; import io.sc.engine.rule.server.function.converter.FunctionEntityConverter; import io.sc.engine.rule.server.function.entity.FunctionEntity; import io.sc.engine.rule.server.function.service.FunctionService; @@ -27,6 +28,7 @@ import io.sc.engine.rule.server.model.service.ModelService; import io.sc.engine.rule.server.common.plugins.PluginManager; import io.sc.engine.rule.server.common.plugins.item.ResourceExampleItem; import io.sc.engine.rule.server.resource.converter.ResourceEntityConverter; +import io.sc.engine.rule.server.resource.entity.FolderResourceEntity; import io.sc.engine.rule.server.resource.entity.ModelResourceEntity; import io.sc.engine.rule.server.resource.entity.ResourceEntity; import io.sc.engine.rule.server.resource.repository.ResourceRepository; @@ -68,6 +70,7 @@ import java.util.*; @Service("io.sc.engine.rule.server.resource.service.impl.ResourceServiceImpl") public class ResourceServiceImpl extends DaoServiceImpl implements ResourceService { @Autowired private ApplicationContext applicationContext; + @Autowired private ExecuteUnitService executeUnitService; @Autowired private SystemParameterService systemParameterService; @Autowired private ModelService modelService; @Autowired private DictionaryService dictionaryService; @@ -287,140 +290,6 @@ public class ResourceServiceImpl extends DaoServiceImpl functionEntities =functionService.getRepository().findAll(); - //先找资源 - ResourceEntity resourceEntity =this.findById(resourceId); - if(resourceEntity!=null) { - // 获取指标库 - List libEntities =libService.findByResourceId(resourceEntity.getId()); - // 获取元数据 - List dictionaryEntities =dictionaryService.findDictionaryEntitiesByResourceId(resourceEntity.getId()); - - ExecuteUnit4Resource wrapper =new ExecuteUnit4Resource(); - wrapper.setResource(ResourceEntityConverter.toPo(resourceEntity,false)); - wrapper.getResource().setTestCases(null);//在获取定义时,不返回测试用例 - wrapper.setDictionaries(DictionaryEntityConverter.toPo(dictionaryEntities)); - wrapper.setLibs(LibEntityConverter.toPo(libEntities)); - wrapper.setFunctions(FunctionEntityConverter.toPo(functionEntities)); - wrapper.optimize(); - return wrapper; - } - //再找指标库 - LibEntity libEntity =libService.findById(resourceId); - if(libEntity!=null) { - List dictionaryEntities =dictionaryService.findDictionaryEntitiesByLibId(libEntity.getId()); - ExecuteUnit4Lib wrapper =new ExecuteUnit4Lib(); - wrapper.setDictionaries(DictionaryEntityConverter.toPo(dictionaryEntities)); - wrapper.setLib(LibEntityConverter.toPo(libEntity)); - wrapper.getLib().setTestCases(null); - wrapper.setFunctions(FunctionEntityConverter.toPo(functionEntities)); - wrapper.optimize(); - return wrapper; - } - } - return null; - } - - @Override - public Long getLastModifyDateById(String resourceId) throws Exception { - if(StringUtils.hasText(resourceId)) { - //先找资源 - ResourceEntity resourceEntity =this.findById(resourceId); - if(resourceEntity!=null) { - return resourceEntity.getLastModifyDate()==null?null:resourceEntity.getLastModifyDate().getTime(); - } - - //再找指标库 - LibEntity libEntity =libService.findById(resourceId); - if(libEntity!=null) { - return libEntity.getLastModifyDate()==null?null:libEntity.getLastModifyDate().getTime(); - } - } - return null; - } - - @Override - public ExecuteUnit getDefineById2(String resourceId) throws Exception { - if(StringUtils.hasText(resourceId)) { - ExecuteUnit resourceWrapper =resourceQueryService.getResourceDefineById(resourceId); - if(resourceWrapper!=null) { - return resourceWrapper; - } - } - return null; - } - - @Override - public ExecuteUnit getDefineByCode(String resourceCode, Integer version) throws Exception { - if(StringUtils.hasText(resourceCode)) { - //先找资源 - ResourceEntity resourceEntity =null; - if(version!=null) { - resourceEntity =repository.findByCodeAndVersion(resourceCode, version); - }else { - String strategy =systemParameterService.getParameter("parameter.re.server.modelDefine.nullVersion.strategy"); - if("last_deploy".equalsIgnoreCase(strategy)) { - resourceEntity =repository.findTopByCodeAndStatusOrderByVersionDesc(resourceCode, DeployStatus.ON_LINE); - }else { - resourceEntity =repository.findTopByCodeOrderByVersionDesc(resourceCode); - } - } - if(resourceEntity!=null) { - return getDefineById(resourceEntity.getId()); - }else { - //再找指标库 - LibEntity libEntity =null; - if(version!=null) { - libEntity =libService.getRepository().findByCodeAndVersion(resourceCode, version); - }else { - libEntity =libService.getRepository().findTopByCodeOrderByVersionDesc(resourceCode); - } - if(libEntity!=null) { - return getDefineById(libEntity.getId()); - } - } - } - return null; - } - - @Override - public Long getLastModifyDateByCode(String resourceCode, Integer version) throws Exception { - if(StringUtils.hasText(resourceCode)) { - //先找资源 - ResourceEntity resourceEntity =null; - if(version!=null) { - resourceEntity =repository.findByCodeAndVersion(resourceCode, version); - }else { - String strategy =systemParameterService.getParameter("parameter.re.server.modelDefine.nullVersion.strategy"); - if("last_deploy".equalsIgnoreCase(strategy)) { - resourceEntity =repository.findTopByCodeAndStatusOrderByVersionDesc(resourceCode, DeployStatus.ON_LINE); - }else { - resourceEntity =repository.findTopByCodeOrderByVersionDesc(resourceCode); - } - } - - if(resourceEntity!=null) { - return resourceEntity.getLastModifyDate()==null?null:resourceEntity.getLastModifyDate().getTime(); - }else { - //再找指标库 - LibEntity libEntity =null; - if(version!=null) { - libEntity =libService.getRepository().findByCodeAndVersion(resourceCode, version); - }else { - libEntity =libService.getRepository().findTopByCodeOrderByVersionDesc(resourceCode); - } - if(libEntity!=null) { - return libEntity.getLastModifyDate()==null?null:libEntity.getLastModifyDate().getTime(); - } - } - } - return null; - } @Override @Transactional @@ -556,6 +425,66 @@ public class ResourceServiceImpl extends DaoServiceImpl preDeploy(String resourceId) throws Exception { + List vos =new ArrayList<>(); + recursionPreDeploy(resourceId,vos); + return vos; + } + + @Override + public List cancelPreDeploy(String resourceId) throws Exception { + List vos =new ArrayList<>(); + recursionCancelPreDeploy(resourceId,vos); + return vos; + } + + private void recursionPreDeploy(String resourceId, List vos) throws Exception { + ResourceEntity resourceEntity =findById(resourceId); + if(resourceEntity instanceof FolderResourceEntity){ + List children =repository.findByParentId(resourceEntity.getId()); + if(children!=null && !children.isEmpty()){ + for(ResourceEntity child : children){ + recursionPreDeploy(child.getId(),vos); + } + } + }else { + ExecuteUnit wrapper = executeUnitService.findById(resourceId, false); + if (wrapper == null) { return; } + SourceCode sourceCode = new GroovySourceCodeGenerator().generate(null, wrapper); + if (sourceCode == null) { return; } + wrapper.setSourceCode(sourceCode.getSource()); + ResourceVo vo =doUpdateCacheExecuteUnit(resourceId, wrapper); + vos.add(vo); + } + } + + @Transactional + private void recursionCancelPreDeploy(String resourceId, List vos) throws Exception { + ResourceEntity resourceEntity =findById(resourceId); + if(resourceEntity instanceof FolderResourceEntity){ + List children =repository.findByParentId(resourceEntity.getId()); + if(children!=null && !children.isEmpty()){ + for(ResourceEntity child : children){ + recursionCancelPreDeploy(child.getId(),vos); + } + } + }else { + ModelResourceEntity entity =repository.findModelResourceById(resourceId); + if(entity==null) { return; } + entity.setCacheExecuteUnit(null); + vos.add(repository.save(entity).toVo()); + } + } + + @Transactional + private ResourceVo doUpdateCacheExecuteUnit(String resourceId,ExecuteUnit wrapper) throws JsonProcessingException { + ModelResourceEntity entity =repository.findModelResourceById(resourceId); + entity.setCacheExecuteUnit(ObjectMapperUtil.json().writeValueAsString(wrapper)); + repository.save(entity); + return entity.toVo(); + } + /** * 检查约束条件,约束条件规则如下: * diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/vo/ModelResourceVo.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/vo/ModelResourceVo.java index 4458256d..6a44d4f4 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/vo/ModelResourceVo.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/resource/vo/ModelResourceVo.java @@ -19,6 +19,9 @@ public class ModelResourceVo extends ResourceVo { //引入外部包 protected String imports; + //是否预发布 + protected boolean preDeploy; + //附件个数 protected int attachmentCount; @@ -52,6 +55,12 @@ public class ModelResourceVo extends ResourceVo { public void setImports(String imports) { this.imports = imports; } + public boolean isPreDeploy() { + return preDeploy; + } + public void setPreDeploy(boolean preDeploy) { + this.preDeploy = preDeploy; + } public int getAttachmentCount() { return attachmentCount; } diff --git a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/testcase/service/impl/TestCaseServiceImpl.java b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/testcase/service/impl/TestCaseServiceImpl.java index 10826f4b..8ca5a486 100644 --- a/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/testcase/service/impl/TestCaseServiceImpl.java +++ b/io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/testcase/service/impl/TestCaseServiceImpl.java @@ -4,10 +4,7 @@ import io.sc.engine.rule.client.Executor; import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineService; import io.sc.engine.rule.client.runtime.impl.groovy.GroovyScriptEngineServiceImpl; import io.sc.engine.rule.client.spring.service.ExecutorFactoryService; -import io.sc.engine.rule.core.ParameterResult; -import io.sc.engine.rule.core.ResourceResult; -import io.sc.engine.rule.core.ValidateField; -import io.sc.engine.rule.core.ValidateResult; +import io.sc.engine.rule.core.*; import io.sc.engine.rule.core.code.ExecuteUnit; import io.sc.engine.rule.core.code.ExecuteUnit4Resource; import io.sc.engine.rule.core.code.SourceCode; @@ -506,7 +503,7 @@ public class TestCaseServiceImpl extends DaoServiceImpl datas =result.getData(); if(datas!=null && datas.size()>0) { @@ -767,9 +764,9 @@ public class TestCaseServiceImpl extends DaoServiceImpl datas =result.getData(); if(datas!=null && datas.size()>0) { diff --git a/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/parameters.json b/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/parameters.json index 53fca44f..de4ed7f7 100644 --- a/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/parameters.json +++ b/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/parameters.json @@ -35,5 +35,37 @@ "last" : "parameter.re.server.modelDefine.nullVersion.strategy.last" }, "order" : 100 + }, + //模型引擎服务器/执行器执行模式 + { + "id" :"parameter.re.server.executorMode", + "parentId" :"parameter.re.server", + "code" :"parameter.re.server.executorMode", + "defaultValue" :"Local", + "order" : 200, + "options" :{ + "Local" : "parameter.re.server.executorMode.Local", + "Remote" : "parameter.re.server.executorMode.Remote" + } + }, + //模型引擎服务器/模型定义加载器执行模式 + { + "id" :"parameter.re.server.loaderMode", + "parentId" :"parameter.re.server", + "code" :"parameter.re.server.loaderMode", + "defaultValue" :"Local", + "order" : 300, + "options" :{ + "Local" : "parameter.re.server.loaderMode.Local", + "Remote" : "parameter.re.server.loaderMode.Remote" + } + }, + //模型引擎服务器/远程模型引擎 API URL + { + "id" :"parameter.re.server.remoteApiUrl", + "parentId" :"parameter.re.server", + "code" :"parameter.re.server.remoteApiUrl", + "defaultValue" :"http://localhost:8080", + "order" : 400 } ] diff --git a/io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Schema DDL.xml b/io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Schema DDL.xml index d8ce1fd3..3b329ef8 100644 --- a/io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Schema DDL.xml +++ b/io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Schema DDL.xml @@ -26,6 +26,7 @@ + @@ -153,6 +154,7 @@ + @@ -165,7 +167,8 @@ - + + diff --git a/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words.properties b/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words.properties index 99c35f94..566c4f3f 100644 --- a/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words.properties +++ b/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words.properties @@ -4,6 +4,7 @@ add=Add addChild=Add Child {object} addNew=Add addTop=Add Top {object} +alias=Alias alter=Alter autoCreate=Auto Create bottom-left=Bottom Left diff --git a/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_tw_CN.properties b/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_tw_CN.properties index e32f6b0b..b5c46546 100644 --- a/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_tw_CN.properties +++ b/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_tw_CN.properties @@ -4,6 +4,7 @@ add=\u6DFB\u52A0 addChild=\u65B0\u589E\u5B50{object} addNew=\u65B0\u589E addTop=\u65B0\u589E\u9802\u7D1A{object} +alias=\u5225\u540D alter=\u901A\u77E5 autoCreate=\u81EA\u52D5\u5275\u5EFA bottom-left=\u5DE6\u4E0B diff --git a/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_zh_CN.properties b/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_zh_CN.properties index adbed473..e52f0e2e 100644 --- a/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_zh_CN.properties +++ b/io.sc.platform.core/src/main/resources/io/sc/platform/core/i18n/words_zh_CN.properties @@ -4,6 +4,7 @@ add=\u6DFB\u52A0 addChild=\u65B0\u589E\u5B50{object} addNew=\u65B0\u589E addTop=\u65B0\u589E\u9876\u7EA7{object} +alias=\u5225\u540D alter=\u901A\u77E5 autoCreate=\u81EA\u52A8\u521B\u5EFA bottom-left=\u5DE6\u4E0B