diff --git a/app.platform/src/main/java/app/platform/Application.java b/app.platform/src/main/java/app/platform/Application.java index e8a7f8e9..b411bafa 100644 --- a/app.platform/src/main/java/app/platform/Application.java +++ b/app.platform/src/main/java/app/platform/Application.java @@ -2,9 +2,14 @@ package app.platform; import io.sc.platform.core.ApplicationLauncher; import io.sc.platform.core.PlatformSpringBootServletInitializer; +import io.sc.platform.orm.service.support.QueryParameter; +import io.sc.platform.orm.service.support.criteria.Criteria; +import io.sc.platform.orm.service.support.criteria.impl.GreaterOrEquals; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.WebApplicationInitializer; +import java.util.List; + /** * 应用程序入口 */ diff --git a/app.platform/src/main/resources/public/logo-shrcb.svg b/app.platform/src/main/resources/public/logo-shrcb.svg new file mode 100644 index 00000000..af16c44d --- /dev/null +++ b/app.platform/src/main/resources/public/logo-shrcb.svg @@ -0,0 +1,442 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app.platform/src/main/resources/public/logo.png b/app.platform/src/main/resources/public/logo.png new file mode 100644 index 00000000..c846ca32 Binary files /dev/null and b/app.platform/src/main/resources/public/logo.png differ diff --git a/cips.frontend/package.json b/cips.frontend/package.json index cae59780..672d678f 100644 --- a/cips.frontend/package.json +++ b/cips.frontend/package.json @@ -1,6 +1,6 @@ { "name": "cips.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/erm.frontend/package.json b/erm.frontend/package.json index 374df188..ff222029 100644 --- a/erm.frontend/package.json +++ b/erm.frontend/package.json @@ -1,6 +1,6 @@ { "name": "erm.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/gradle.properties b/gradle.properties index 2da3596f..fbf6cfb3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -39,7 +39,7 @@ application_version=1.0.0 platform_group=io.sc platform_version=8.2.25 platform_plugin_version=8.2.10 -platform_core_frontend_version=8.2.86 +platform_core_frontend_version=8.2.89 ########################################################### # dependencies version diff --git a/io.sc.engine.mv.frontend/package.json b/io.sc.engine.mv.frontend/package.json index 6c7b0037..51d91ba8 100644 --- a/io.sc.engine.mv.frontend/package.json +++ b/io.sc.engine.mv.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.engine.mv.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.engine.mv/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.engine.mv/src/main/resources/META-INF/platform/plugins/liquibase.json index a5ea9f3b..f69acb6d 100644 --- a/io.sc.engine.mv/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.engine.mv/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -16,7 +16,7 @@ "order" : 12000, "description":"模型验证工具", "locations":[ - "classpath:/liquibase/io.sc.engine.mv_8.0.0_20221020__Model Validate Database Schema DDL.xml" + "classpath:/liquibase/io.sc.engine.mv_8.0.0_20221020__Model_Validate_Database_Schema_DDL.xml" ] } ] diff --git a/io.sc.engine.mv/src/main/resources/liquibase/io.sc.engine.mv_8.0.0_20221020__Model Validate Database Schema DDL.xml b/io.sc.engine.mv/src/main/resources/liquibase/io.sc.engine.mv_8.0.0_20221020__Model_Validate_Database_Schema_DDL.xml similarity index 100% rename from io.sc.engine.mv/src/main/resources/liquibase/io.sc.engine.mv_8.0.0_20221020__Model Validate Database Schema DDL.xml rename to io.sc.engine.mv/src/main/resources/liquibase/io.sc.engine.mv_8.0.0_20221020__Model_Validate_Database_Schema_DDL.xml diff --git a/io.sc.engine.rule.frontend/package.json b/io.sc.engine.rule.frontend/package.json index 2b5aaba7..db583ef6 100644 --- a/io.sc.engine.rule.frontend/package.json +++ b/io.sc.engine.rule.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.engine.rule.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/liquibase.json index b2524d1a..bb8036b1 100644 --- a/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.engine.rule.server/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,8 +4,8 @@ "order" : 11000, "description":"决策引擎表结构", "locations":[ - "classpath:/liquibase/RE_1.0.0_20220515__Rule Engine Database Schema DDL.xml", - "classpath:/liquibase/RE_1.0.0_20220515__Rule Engine Database Data.xml" + "classpath:/liquibase/RE_1.0.0_20220515__Rule_Engine_Database_Schema_DDL.xml", + "classpath:/liquibase/RE_1.0.0_20220515__Rule_Engine_Database_Data.xml" ] } ] \ No newline at end of file diff --git a/io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Data.xml b/io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule_Engine_Database_Data.xml similarity index 100% rename from io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Data.xml rename to io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule_Engine_Database_Data.xml 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 similarity index 100% rename from io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule Engine Database Schema DDL.xml rename to io.sc.engine.rule.server/src/main/resources/liquibase/RE_1.0.0_20220515__Rule_Engine_Database_Schema_DDL.xml diff --git a/io.sc.engine.st.frontend/package.json b/io.sc.engine.st.frontend/package.json index 5e2ecced..82e024dd 100644 --- a/io.sc.engine.st.frontend/package.json +++ b/io.sc.engine.st.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.engine.st.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.engine.st/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.engine.st/src/main/resources/META-INF/platform/plugins/liquibase.json index 3655b87c..466dafca 100644 --- a/io.sc.engine.st/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.engine.st/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -16,8 +16,8 @@ "order" : 12000, "description":"压力测试", "locations":[ - "classpath:/liquibase/io.sc.engine.st_8.0.0_20221020__Stress Test Database Schema DDL.xml", - "classpath:/liquibase/io.sc.engine.st_1.0.0_20221020__ST Data.xml" + "classpath:/liquibase/io.sc.engine.st_8.0.0_20221020__Stress_Test_Database_Schema_DDL.xml", + "classpath:/liquibase/io.sc.engine.st_1.0.0_20221020__ST_Data.xml" ] } ] diff --git a/io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_1.0.0_20221020__ST Data.xml b/io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_1.0.0_20221020__ST_Data.xml similarity index 100% rename from io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_1.0.0_20221020__ST Data.xml rename to io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_1.0.0_20221020__ST_Data.xml diff --git a/io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_8.0.0_20221020__Stress Test Database Schema DDL.xml b/io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_8.0.0_20221020__Stress_Test_Database_Schema_DDL.xml similarity index 100% rename from io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_8.0.0_20221020__Stress Test Database Schema DDL.xml rename to io.sc.engine.st/src/main/resources/liquibase/io.sc.engine.st_8.0.0_20221020__Stress_Test_Database_Schema_DDL.xml diff --git a/io.sc.platform.ai.frontend/package.json b/io.sc.platform.ai.frontend/package.json index 32021d97..668a7824 100644 --- a/io.sc.platform.ai.frontend/package.json +++ b/io.sc.platform.ai.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.ai.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.attachment/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.attachment/src/main/resources/META-INF/platform/plugins/liquibase.json index 3a7cf5c6..6b48ff20 100644 --- a/io.sc.platform.attachment/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.attachment/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,7 +4,7 @@ "order" : 200, "description":"附件管理", "locations":[ - "classpath:/liquibase/io.sc.platform.attachment_8.0.0_20220606__Attachment Database Schema DDL.xml" + "classpath:/liquibase/io.sc.platform.attachment_8.0.0_20220606__Attachment_Database_Schema_DDL.xml" ] } ] \ No newline at end of file diff --git a/io.sc.platform.attachment/src/main/resources/liquibase/io.sc.platform.attachment_8.0.0_20220606__Attachment Database Schema DDL.xml b/io.sc.platform.attachment/src/main/resources/liquibase/io.sc.platform.attachment_8.0.0_20220606__Attachment_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.attachment/src/main/resources/liquibase/io.sc.platform.attachment_8.0.0_20220606__Attachment Database Schema DDL.xml rename to io.sc.platform.attachment/src/main/resources/liquibase/io.sc.platform.attachment_8.0.0_20220606__Attachment_Database_Schema_DDL.xml diff --git a/io.sc.platform.core.frontend/package.json b/io.sc.platform.core.frontend/package.json index a1e74cdd..6f8ce518 100644 --- a/io.sc.platform.core.frontend/package.json +++ b/io.sc.platform.core.frontend/package.json @@ -1,6 +1,6 @@ { "name": "platform-core", - "version": "8.2.86", + "version": "8.2.89", "description": "前端核心包,用于快速构建前端的脚手架", "//main": "库的主文件", "main": "dist/platform-core.js", diff --git a/io.sc.platform.core.frontend/src/platform/layout/sub-layout/Topper.vue b/io.sc.platform.core.frontend/src/platform/layout/sub-layout/Topper.vue index d96bae60..91e4f312 100644 --- a/io.sc.platform.core.frontend/src/platform/layout/sub-layout/Topper.vue +++ b/io.sc.platform.core.frontend/src/platform/layout/sub-layout/Topper.vue @@ -20,9 +20,7 @@ /> -
- {{ $t('application.title') }} -
+
@@ -204,9 +202,9 @@ - + - {{ t('theme') }} + {{ t('settings') }} diff --git a/io.sc.platform.core.frontend/template-project/package.json b/io.sc.platform.core.frontend/template-project/package.json index 43bb7c9c..40a87ccd 100644 --- a/io.sc.platform.core.frontend/template-project/package.json +++ b/io.sc.platform.core.frontend/template-project/package.json @@ -1,6 +1,6 @@ { "name": "platform-core", - "version": "8.2.86", + "version": "8.2.89", "description": "前端核心包,用于快速构建前端的脚手架", "private": false, "keywords": [], @@ -111,7 +111,7 @@ "mockjs": "1.1.0", "node-sql-parser": "5.3.6", "pinia": "2.3.0", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -121,4 +121,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} 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 566c4f3f..3f573592 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 @@ -263,4 +263,5 @@ migration=Migration view=View before=Before send=Send -required=Required \ No newline at end of file +required=Required +settings=Settings \ No newline at end of file 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 b5c46546..16e91a26 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 @@ -263,4 +263,5 @@ migration=\u9077\u79FB view=\u67E5\u770B before=\u4EE5\u524D send=\u767C\u9001 -required=\u5FC5\u9700 \ No newline at end of file +required=\u5FC5\u9700 +settings=\u8A2D\u7F6E \ No newline at end of file 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 e52f0e2e..f1c24c60 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 @@ -263,4 +263,5 @@ migration=\u8FC1\u79FB view=\u67E5\u770B before=\u4EE5\u524D send=\u53D1\u9001 -required=\u5FC5\u9700 \ No newline at end of file +required=\u5FC5\u9700 +settings=\u8BBE\u7F6E \ No newline at end of file diff --git a/io.sc.platform.developer.doc/package.json b/io.sc.platform.developer.doc/package.json index 5898ebe7..bb6b784e 100644 --- a/io.sc.platform.developer.doc/package.json +++ b/io.sc.platform.developer.doc/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.developer.doc", - "version": "8.2.24", + "version": "8.2.25", "description": "", "main": "index.js", "scripts": { @@ -28,9 +28,9 @@ "vuepress": "2.0.0-rc.15" }, "dependencies": { - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "vue": "3.5.13", "vue-i18n": "11.0.1" } -} \ No newline at end of file +} diff --git a/io.sc.platform.developer.frontend/package.json b/io.sc.platform.developer.frontend/package.json index 89d27059..ac645933 100644 --- a/io.sc.platform.developer.frontend/package.json +++ b/io.sc.platform.developer.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.developer.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.flowable/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.flowable/src/main/resources/META-INF/platform/plugins/liquibase.json index c61c6bae..9ec3ef28 100644 --- a/io.sc.platform.flowable/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.flowable/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,9 +4,9 @@ "order" : 400, "description":"工作流", "locations":[ - "classpath:/liquibase/io.sc.platform.flowable_8.0.0_20220606__Flowable(6.8.0) Database Schema DDL.xml", - "classpath:/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process Manager Database Schema DDL.xml", - "classpath:/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process Manager Data.xml" + "classpath:/liquibase/io.sc.platform.flowable_8.0.0_20220606__Flowable(6.8.0)_Database_Schema_DDL.xml", + "classpath:/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process_Manager_Database_Schema_DDL.xml", + "classpath:/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process_Manager_Data.xml" ] } ] \ No newline at end of file diff --git a/io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Flowable(6.8.0) Database Schema DDL.xml b/io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Flowable(6.8.0)_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Flowable(6.8.0) Database Schema DDL.xml rename to io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Flowable(6.8.0)_Database_Schema_DDL.xml diff --git a/io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process Manager Data.xml b/io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process_Manager_Data.xml similarity index 100% rename from io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process Manager Data.xml rename to io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process_Manager_Data.xml diff --git a/io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process Manager Database Schema DDL.xml b/io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process_Manager_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process Manager Database Schema DDL.xml rename to io.sc.platform.flowable/src/main/resources/liquibase/io.sc.platform.flowable_8.0.0_20220606__Process_Manager_Database_Schema_DDL.xml diff --git a/io.sc.platform.lcdp.frontend/package.json b/io.sc.platform.lcdp.frontend/package.json index 43fe10ae..96a67094 100644 --- a/io.sc.platform.lcdp.frontend/package.json +++ b/io.sc.platform.lcdp.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.lcdp.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.lcdp/src/main/java/io/sc/platform/lcdp/configure/service/impl/ConfigureServiceImpl.java b/io.sc.platform.lcdp/src/main/java/io/sc/platform/lcdp/configure/service/impl/ConfigureServiceImpl.java index 713e80a1..a22d948d 100644 --- a/io.sc.platform.lcdp/src/main/java/io/sc/platform/lcdp/configure/service/impl/ConfigureServiceImpl.java +++ b/io.sc.platform.lcdp/src/main/java/io/sc/platform/lcdp/configure/service/impl/ConfigureServiceImpl.java @@ -57,13 +57,19 @@ public class ConfigureServiceImpl extends DaoServiceImpl parameters =systemParameterService.getParameters(new String[]{ "parameter.system.homePage", - "parameter.system.notifierTaskNavigateFrontendRoutePath" + "parameter.system.notifierTaskNavigateFrontendRoutePath", + "parameter.system.login.encodePassword" }); String homePage =parameters.get("parameter.system.homePage"); if(StringUtils.hasText(homePage)) { configure.getSetting().setHomePage(homePage); } + String encodePassword =parameters.get("parameter.system.login.encodePassword"); + if(StringUtils.hasText(encodePassword)) { + configure.getTheme().getLogin().setEncodePassword(Boolean.valueOf(encodePassword)); + } + String notifierTaskNavigateFrontendRoutePath =parameters.get("parameter.system.notifierTaskNavigateFrontendRoutePath"); if(StringUtils.hasText(notifierTaskNavigateFrontendRoutePath)) { configure.getSetting().setNotifierTaskNavigateFrontendRoutePath(notifierTaskNavigateFrontendRoutePath); diff --git a/io.sc.platform.lcdp/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.lcdp/src/main/resources/META-INF/platform/plugins/liquibase.json index 270be2f6..7b53399b 100644 --- a/io.sc.platform.lcdp/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.lcdp/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,7 +4,7 @@ "order" : 300, "description":"低代码平台", "locations":[ - "classpath:/liquibase/io.sc.platform.lcdp_8.0.0_20220606__LowCode Developer Database Schema DDL.xml", + "classpath:/liquibase/io.sc.platform.lcdp_8.0.0_20220606__LowCode_Developer_Database_Schema_DDL.xml", "classpath:/liquibase/io.sc.platform.lcdp_Form_DDL.xml", "classpath:/liquibase/io.sc.platform.lcdp_Excel_Template_DDL.xml" ] diff --git a/io.sc.platform.lcdp/src/main/resources/liquibase/io.sc.platform.lcdp_8.0.0_20220606__LowCode Developer Database Schema DDL.xml b/io.sc.platform.lcdp/src/main/resources/liquibase/io.sc.platform.lcdp_8.0.0_20220606__LowCode_Developer_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.lcdp/src/main/resources/liquibase/io.sc.platform.lcdp_8.0.0_20220606__LowCode Developer Database Schema DDL.xml rename to io.sc.platform.lcdp/src/main/resources/liquibase/io.sc.platform.lcdp_8.0.0_20220606__LowCode_Developer_Database_Schema_DDL.xml diff --git a/io.sc.platform.license.keygen.frontend/package.json b/io.sc.platform.license.keygen.frontend/package.json index 0001236d..8fa25fd8 100644 --- a/io.sc.platform.license.keygen.frontend/package.json +++ b/io.sc.platform.license.keygen.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.license.keygen.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.license.keygen/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.license.keygen/src/main/resources/META-INF/platform/plugins/liquibase.json index e94e2afe..4f3a2e00 100644 --- a/io.sc.platform.license.keygen/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.license.keygen/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,7 +4,7 @@ "order" : 0, "description":"License 管理", "locations":[ - "classpath:/liquibase/io.sc.platform.license.keygen_8.0.0_20220606__License Keygen Database Schema DDL.xml" + "classpath:/liquibase/io.sc.platform.license.keygen_8.0.0_20220606__License_Keygen_Database_Schema_DDL.xml" ] } ] \ No newline at end of file diff --git a/io.sc.platform.license.keygen/src/main/resources/liquibase/io.sc.platform.license.keygen_8.0.0_20220606__License Keygen Database Schema DDL.xml b/io.sc.platform.license.keygen/src/main/resources/liquibase/io.sc.platform.license.keygen_8.0.0_20220606__License_Keygen_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.license.keygen/src/main/resources/liquibase/io.sc.platform.license.keygen_8.0.0_20220606__License Keygen Database Schema DDL.xml rename to io.sc.platform.license.keygen/src/main/resources/liquibase/io.sc.platform.license.keygen_8.0.0_20220606__License_Keygen_Database_Schema_DDL.xml diff --git a/io.sc.platform.mvc.frontend/package.json b/io.sc.platform.mvc.frontend/package.json index a55cf916..5bcedd89 100644 --- a/io.sc.platform.mvc.frontend/package.json +++ b/io.sc.platform.mvc.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.mvc.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/BetweenInclusive.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/BetweenInclusive.java index 7fe304b0..db3fbf1c 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/BetweenInclusive.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/BetweenInclusive.java @@ -15,7 +15,14 @@ public class BetweenInclusive extends Between { if(!StringUtils.hasText(start) && !StringUtils.hasText(end)){ throw new IllegalArgumentException("[" + operator + "] need a [start] or [end] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(Comparable.class.isAssignableFrom(clazz)){ if(StringUtils.hasText(start) && StringUtils.hasText(end)) { diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Contains.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Contains.java index 068d0ac4..e1e22c3c 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Contains.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Contains.java @@ -18,9 +18,16 @@ public class Contains extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =root.get(fieldName).getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.like(path, "%" + value + "%"); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/ContainsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/ContainsField.java index c6182508..d5d265e5 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/ContainsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/ContainsField.java @@ -17,8 +17,23 @@ public class ContainsField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.like(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EndWith.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EndWith.java index 9f2e7d53..584eeb52 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EndWith.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EndWith.java @@ -17,9 +17,16 @@ public class EndWith extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.like(path, "%" + value); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Equals.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Equals.java index e265c71c..37103be9 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Equals.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/Equals.java @@ -19,7 +19,14 @@ public class Equals extends Criteria { throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } PathInformation pi =getPathInformation(root); - Path path =root.get(pi.getAttributeName()); + Path path =null; + try { + path = root.get(pi.getAttributeName()); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } if(pi.isSingularReference()){ Object v =conversionService.convert(value, pi.getReferenceAttributeJavaType()); if(v!=null){ diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EqualsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EqualsField.java index 6a9ce3e8..1d3102a9 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EqualsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/EqualsField.java @@ -18,8 +18,23 @@ public class EqualsField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.equal(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEquals.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEquals.java index d24db912..bb4d2810 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEquals.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEquals.java @@ -18,7 +18,14 @@ public class GreaterOrEquals extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(Comparable.class.isAssignableFrom(clazz)){ return builder.greaterThanOrEqualTo(path,(Comparable)conversionService.convert(value, clazz)); @@ -31,4 +38,12 @@ public class GreaterOrEquals extends Criteria { public Condition getCondition(Map> typeMapping) { throw new OperatorTypeNotSupportedException(); } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEqualsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEqualsField.java index 15bc5839..c22dd438 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEqualsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterOrEqualsField.java @@ -18,8 +18,23 @@ public class GreaterOrEqualsField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.greaterThanOrEqualTo(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThan.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThan.java index 618148a6..bca54386 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThan.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThan.java @@ -18,7 +18,14 @@ public class GreaterThan extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(Comparable.class.isAssignableFrom(clazz)){ return builder.greaterThan(path,(Comparable)conversionService.convert(value, clazz)); @@ -44,4 +51,12 @@ public class GreaterThan extends Criteria { condition.getParameters().put(name.substring(1),pValue); return condition; } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThanField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThanField.java index e9135a97..33719227 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThanField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/GreaterThanField.java @@ -18,8 +18,23 @@ public class GreaterThanField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.greaterThan(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContains.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContains.java index 5e33c1d3..862e0e97 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContains.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContains.java @@ -17,9 +17,16 @@ public class IContains extends Contains { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.like(builder.lower(path),"%" + value.toLowerCase() + "%"); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContainsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContainsField.java index b8c41252..a41c633a 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContainsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IContainsField.java @@ -16,8 +16,23 @@ public class IContainsField extends ContainsField { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.like(builder.lower(path), builder.lower(path2)); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEndWith.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEndWith.java index a03024a6..71df01cd 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEndWith.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEndWith.java @@ -16,9 +16,16 @@ public class IEndWith extends EndWith { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.like(builder.lower(path), "%" + value.toLowerCase()); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEquals.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEquals.java index 17635a15..b35b8567 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEquals.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEquals.java @@ -15,7 +15,14 @@ public class IEquals extends Equals { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(String.class.isAssignableFrom(clazz)){ return builder.equal(builder.lower(path),conversionService.convert(value, String.class).toLowerCase()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEqualsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEqualsField.java index 31ca9b62..a93b8e6e 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEqualsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IEqualsField.java @@ -16,8 +16,23 @@ public class IEqualsField extends EqualsField { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.equal(builder.lower(path), builder.lower(path2)); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/InSet.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/InSet.java index 6350e3b3..66ebebc3 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/InSet.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/InSet.java @@ -21,7 +21,14 @@ public class InSet extends Criteria { throw new IllegalArgumentException("[" + operator + "] need a [start] or [end] value"); } PathInformation pi =getPathInformation(root); - Path path =root.get(pi.getAttributeName()); + Path path =null; + try { + path = root.get(pi.getAttributeName()); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } if(pi.isSingularReference()){ Object[] values =convert(pi.getReferenceAttributeJavaType()); if(values!=null){ diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsBlank.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsBlank.java index 186e575d..b21aca36 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsBlank.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsBlank.java @@ -5,17 +5,22 @@ import io.sc.platform.orm.service.support.OperatorTypeNotSupportedException; import io.sc.platform.orm.service.support.criteria.Criteria; import org.springframework.core.convert.ConversionService; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; +import javax.persistence.criteria.*; import java.util.Map; public class IsBlank extends Criteria { @Override @SuppressWarnings("unchecked") public Predicate getPredicate(Root root, CriteriaQuery query, CriteriaBuilder builder) { - return builder.isEmpty(root.get(fieldName)); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + return builder.isEmpty(path); } @Override diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNotNull.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNotNull.java index 4dc348b2..9faee353 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNotNull.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNotNull.java @@ -5,17 +5,22 @@ import io.sc.platform.orm.service.support.OperatorTypeNotSupportedException; import io.sc.platform.orm.service.support.criteria.Criteria; import org.springframework.core.convert.ConversionService; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; +import javax.persistence.criteria.*; import java.util.Map; public class IsNotNull extends Criteria { @Override @SuppressWarnings("unchecked") public Predicate getPredicate(Root root, CriteriaQuery query, CriteriaBuilder builder) { - return root.get(fieldName).isNotNull(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + return path.isNotNull(); } @Override diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNull.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNull.java index 282061c4..d98f7987 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNull.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/IsNull.java @@ -5,17 +5,22 @@ import io.sc.platform.orm.service.support.OperatorTypeNotSupportedException; import io.sc.platform.orm.service.support.criteria.Criteria; import org.springframework.core.convert.ConversionService; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; +import javax.persistence.criteria.*; import java.util.Map; public class IsNull extends Criteria { @Override @SuppressWarnings("unchecked") public Predicate getPredicate(Root root, CriteriaQuery query, CriteriaBuilder builder) { - return root.get(fieldName).isNull(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + return path.isNull(); } @Override diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEquals.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEquals.java index 5fc3ada9..41390d50 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEquals.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEquals.java @@ -18,7 +18,14 @@ public class LessOrEquals extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(Comparable.class.isAssignableFrom(clazz)){ return builder.lessThanOrEqualTo(path,(Comparable)conversionService.convert(value, clazz)); @@ -31,4 +38,12 @@ public class LessOrEquals extends Criteria { public Condition getCondition(Map> typeMapping) { throw new OperatorTypeNotSupportedException(); } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEqualsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEqualsField.java index cb18bbe1..a220af04 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEqualsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessOrEqualsField.java @@ -18,8 +18,23 @@ public class LessOrEqualsField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.lessThanOrEqualTo(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThan.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThan.java index 20405035..df23237a 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThan.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThan.java @@ -18,7 +18,14 @@ public class LessThan extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(Comparable.class.isAssignableFrom(clazz)){ return builder.lessThan(path,(Comparable)conversionService.convert(value, clazz)); @@ -31,4 +38,12 @@ public class LessThan extends Criteria { public Condition getCondition(Map> typeMapping) { throw new OperatorTypeNotSupportedException(); } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThanField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThanField.java index 4d2b2da5..c42db72f 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThanField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/LessThanField.java @@ -18,8 +18,23 @@ public class LessThanField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.lessThan(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotBlank.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotBlank.java index efceec91..890d9380 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotBlank.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotBlank.java @@ -5,17 +5,22 @@ import io.sc.platform.orm.service.support.OperatorTypeNotSupportedException; import io.sc.platform.orm.service.support.criteria.Criteria; import org.springframework.core.convert.ConversionService; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; +import javax.persistence.criteria.*; import java.util.Map; public class NotBlank extends Criteria { @Override @SuppressWarnings("unchecked") public Predicate getPredicate(Root root, CriteriaQuery query, CriteriaBuilder builder) { - return builder.isNotEmpty(root.get(fieldName)); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + return builder.isNotEmpty(path); } @Override diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContains.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContains.java index 11093e94..76efc5d9 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContains.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContains.java @@ -18,9 +18,16 @@ public class NotContains extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.notLike(path, "%" + value + "%"); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContainsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContainsField.java index 55233b3d..420b98bf 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContainsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotContainsField.java @@ -18,8 +18,23 @@ public class NotContainsField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.notLike(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEndWith.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEndWith.java index af2da7ae..ada4d73b 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEndWith.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEndWith.java @@ -18,9 +18,16 @@ public class NotEndWith extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.notLike(path, "%" + value); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEquals.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEquals.java index 52b138fa..69226e35 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEquals.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEquals.java @@ -18,7 +18,14 @@ public class NotEquals extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } Class clazz =path.getJavaType(); if(Comparable.class.isAssignableFrom(clazz)){ return builder.notEqual(path,(Comparable)conversionService.convert(value, clazz)); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEqualsField.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEqualsField.java index 1448b07d..55687f4e 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEqualsField.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotEqualsField.java @@ -18,8 +18,23 @@ public class NotEqualsField extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Path path =root.get(fieldName); - Path path2 =root.get(value); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + + Path path2 =null; + try { + path2 = root.get(value); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } return builder.notEqual(path, path2); } diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotInSet.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotInSet.java index 800fdaa2..4a9dce03 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotInSet.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotInSet.java @@ -5,10 +5,7 @@ import io.sc.platform.orm.service.support.OperatorTypeNotSupportedException; import io.sc.platform.orm.service.support.criteria.Criteria; import org.springframework.core.convert.ConversionService; -import javax.persistence.criteria.CriteriaBuilder; -import javax.persistence.criteria.CriteriaQuery; -import javax.persistence.criteria.Predicate; -import javax.persistence.criteria.Root; +import javax.persistence.criteria.*; import java.util.Map; public class NotInSet extends Criteria { @@ -20,7 +17,15 @@ public class NotInSet extends Criteria { if(value==null || value.length<=0){ throw new IllegalArgumentException("[" + operator + "] need a [start] or [end] value"); } - return root.get(fieldName).in((Object[])value).not(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + return path.in((Object[])value).not(); } @Override diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotStartWith.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotStartWith.java index 00e74719..f59d1475 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotStartWith.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/NotStartWith.java @@ -18,9 +18,16 @@ public class NotStartWith extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.like(path, value + "%").not(); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/StartWith.java b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/StartWith.java index 491933d4..14416a00 100644 --- a/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/StartWith.java +++ b/io.sc.platform.orm/src/main/java/io/sc/platform/orm/service/support/criteria/impl/StartWith.java @@ -18,9 +18,16 @@ public class StartWith extends Criteria { if(!StringUtils.hasText(value)){ throw new IllegalArgumentException("[" + operator + "] need a [value] value"); } - Class clazz =root.get(fieldName).getJavaType(); + Path path =null; + try { + path = root.get(fieldName); + } catch (IllegalArgumentException e) { // if attribute of the given name does not otherwise exist + return null; + } catch (IllegalStateException e){ // if invoked on a path that corresponds to a basic type + throw e; + } + Class clazz =path.getJavaType(); if(String.class.equals(clazz)) { - Path path =root.get(fieldName); return builder.like(path, value + "%"); }else{ throw new OperatorTypeNotSupportedException("[" + operator + "] only support the field with java.lang.String type, field [" + fieldName + "]'s type is " + clazz.getName()); diff --git a/io.sc.platform.scheduler.manager.frontend/package.json b/io.sc.platform.scheduler.manager.frontend/package.json index 1ad19e0d..7611342e 100644 --- a/io.sc.platform.scheduler.manager.frontend/package.json +++ b/io.sc.platform.scheduler.manager.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.scheduler.manager.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.scheduler.manager/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.scheduler.manager/src/main/resources/META-INF/platform/plugins/liquibase.json index 212bbfaa..263f8f54 100644 --- a/io.sc.platform.scheduler.manager/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.scheduler.manager/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,7 +4,7 @@ "order" : 1000, "description":"XXL JOB 相关表", "locations":[ - "classpath:/liquibase/io.sc.platform.scheduler.manager_8.0.0_20220606__Scheduler Database Schema DDL.xml" + "classpath:/liquibase/io.sc.platform.scheduler.manager_8.0.0_20220606__Scheduler_Database_Schema_DDL.xml" ] } ] \ No newline at end of file diff --git a/io.sc.platform.scheduler.manager/src/main/resources/liquibase/io.sc.platform.scheduler.manager_8.0.0_20220606__Scheduler Database Schema DDL.xml b/io.sc.platform.scheduler.manager/src/main/resources/liquibase/io.sc.platform.scheduler.manager_8.0.0_20220606__Scheduler_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.scheduler.manager/src/main/resources/liquibase/io.sc.platform.scheduler.manager_8.0.0_20220606__Scheduler Database Schema DDL.xml rename to io.sc.platform.scheduler.manager/src/main/resources/liquibase/io.sc.platform.scheduler.manager_8.0.0_20220606__Scheduler_Database_Schema_DDL.xml diff --git a/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/liquibase.json index 030e008b..bae5dac6 100644 --- a/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,8 +4,8 @@ "order" : 100, "description":"授权与认证", "locations":[ - "classpath:/liquibase/io.sc.platform.security_8.0.0_20220606__Security Database Schema DDL.xml", - "classpath:/liquibase/io.sc.platform.security_8.0.0_20220606__Security Data.xml" + "classpath:/liquibase/io.sc.platform.security_8.0.0_20220606__Security_Database_Schema_DDL.xml", + "classpath:/liquibase/io.sc.platform.security_8.0.0_20220606__Security_Data.xml" ] } ] \ No newline at end of file diff --git a/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/parameters.json b/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/parameters.json index f596e266..8781d1e3 100644 --- a/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/parameters.json +++ b/io.sc.platform.security/src/main/resources/META-INF/platform/plugins/parameters.json @@ -1,16 +1,14 @@ [ - /*系统*/ - {"id":"parameter.system","order":0}, - /*系统/前端登录表单密码加密*/ - { - "id" : "parameter.login.encodePassword", - "parentId" : "parameter.system", - "code" : "parameter.login.encodePassword", - "defaultValue" : "true", - "order" : 200, - "options" : { - "true" : "parameter.login.encodePassword.options.true", - "false" : "parameter.login.encodePassword.options.false" - } + /*系统/前端登录表单密码加密*/ + { + "parentId" : "parameter.system", + "id" : "parameter.system.login.encodePassword", + "code" : "parameter.system.login.encodePassword", + "defaultValue" : "true", + "order" : 200, + "options" : { + "true" : "parameter.login.encodePassword.options.true", + "false" : "parameter.login.encodePassword.options.false" } + } ] \ No newline at end of file diff --git a/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters.properties b/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters.properties index 7b2fc5f5..b286f303 100644 --- a/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters.properties +++ b/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters.properties @@ -1,3 +1,3 @@ -parameter.login.encodePassword=Encode Password in Login Page +parameter.system.login.encodePassword=Encode Password in Login Page parameter.login.encodePassword.options.true=True parameter.login.encodePassword.options.false=False \ No newline at end of file diff --git a/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_tw_CN.properties b/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_tw_CN.properties index e145f576..32517b8e 100644 --- a/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_tw_CN.properties +++ b/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_tw_CN.properties @@ -1,3 +1,3 @@ -parameter.login.encodePassword=\u767B\u9304\u9801\u9762\u5BC6\u78BC\u52A0\u5BC6 +parameter.system.login.encodePassword=\u767B\u9304\u9801\u9762\u5BC6\u78BC\u52A0\u5BC6 parameter.login.encodePassword.options.true=\u662F parameter.login.encodePassword.options.false=\u5426 \ No newline at end of file diff --git a/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_zh_CN.properties b/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_zh_CN.properties index 4eb5dcce..13e4f009 100644 --- a/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_zh_CN.properties +++ b/io.sc.platform.security/src/main/resources/io/sc/platform/security/i18n/parameters_zh_CN.properties @@ -1,3 +1,3 @@ -parameter.login.encodePassword=\u767B\u5F55\u9875\u9762\u5BC6\u7801\u52A0\u5BC6 +parameter.system.login.encodePassword=\u767B\u5F55\u9875\u9762\u5BC6\u7801\u52A0\u5BC6 parameter.login.encodePassword.options.true=\u662F parameter.login.encodePassword.options.false=\u5426 \ No newline at end of file diff --git a/io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security Data.xml b/io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security_Data.xml similarity index 100% rename from io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security Data.xml rename to io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security_Data.xml diff --git a/io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security Database Schema DDL.xml b/io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security_Database_Schema_DDL.xml similarity index 100% rename from io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security Database Schema DDL.xml rename to io.sc.platform.security/src/main/resources/liquibase/io.sc.platform.security_8.0.0_20220606__Security_Database_Schema_DDL.xml diff --git a/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/shortcutmenu/ShortcutMenuVo.java b/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/shortcutmenu/ShortcutMenuVo.java new file mode 100644 index 00000000..ce86f3a9 --- /dev/null +++ b/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/shortcutmenu/ShortcutMenuVo.java @@ -0,0 +1,79 @@ +package io.sc.platform.system.api.shortcutmenu; + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.sc.platform.orm.api.vo.CorporationAuditorVo; + +import java.util.Date; + +public class ShortcutMenuVo extends CorporationAuditorVo { + //主键 + @JsonProperty(index = 1) + private String id; + + //登录名 + @JsonProperty(index = 2) + private String loginName; + + // 快捷菜单ID + private String menuId; + + //快捷菜单代码 + @JsonProperty(index = 3) + private String menuCode; + + //快捷菜单名称 + @JsonProperty(index = 4) + private String shortcutMenuName; + + //QQ号 + @JsonProperty(index = 5) + private Integer order; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLoginName() { + return loginName; + } + + public void setLoginName(String loginName) { + this.loginName = loginName; + } + + public String getMenuId() { + return menuId; + } + + public void setMenuId(String menuId) { + this.menuId = menuId; + } + + public String getMenuCode() { + return menuCode; + } + + public void setMenuCode(String menuCode) { + this.menuCode = menuCode; + } + + public String getShortcutMenuName() { + return shortcutMenuName; + } + + public void setShortcutMenuName(String shortcutMenuName) { + this.shortcutMenuName = shortcutMenuName; + } + + public Integer getOrder() { + return order; + } + + public void setOrder(Integer order) { + this.order = order; + } +} diff --git a/io.sc.platform.system.frontend/package.json b/io.sc.platform.system.frontend/package.json index 9d5c6587..03ec4839 100644 --- a/io.sc.platform.system.frontend/package.json +++ b/io.sc.platform.system.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.platform.system.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -111,7 +111,7 @@ "mockjs": "1.1.0", "node-sql-parser": "5.3.6", "pinia": "2.3.0", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -121,4 +121,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.platform.system.frontend/src/components/index.ts b/io.sc.platform.system.frontend/src/components/index.ts index 08d9f124..08ecac72 100644 --- a/io.sc.platform.system.frontend/src/components/index.ts +++ b/io.sc.platform.system.frontend/src/components/index.ts @@ -2,6 +2,7 @@ * 此文件为自动生成文件,请勿修改 */ +import component_system_Settings from '@/views/settings/Settings.vue'; import component_system_License from '@/views/license/License.vue'; import component_system_application from '@/views/application/Application.vue'; import component_system_Corporation from '@/views/corporation/Corporation.vue'; @@ -22,6 +23,7 @@ import component_system_monitor_Log from '@/views/monitor/Log.vue'; import component_system_monitor_ServerInfo from '@/views/monitor/ServerInfo.vue'; const localComponents = { + 'component.system.Settings': component_system_Settings, 'component.system.License': component_system_License, 'component.system.application': component_system_application, 'component.system.Corporation': component_system_Corporation, diff --git a/io.sc.platform.system.frontend/src/i18n/messages.json b/io.sc.platform.system.frontend/src/i18n/messages.json index 4cafc1e2..559408d2 100644 --- a/io.sc.platform.system.frontend/src/i18n/messages.json +++ b/io.sc.platform.system.frontend/src/i18n/messages.json @@ -198,5 +198,9 @@ "system.monitor.serverInfo.online": "Online", - "system.monitor.serverInfo.serviceRequest": "Service Request" + "system.monitor.serverInfo.serviceRequest": "Service Request", + + "route.system.settings": "Settings", + "settings.shortcutMenus": "Shortcut Menus", + "settings.shortcutMenus.entity.shortcutMenuName": "Shortcut Menu Name" } diff --git a/io.sc.platform.system.frontend/src/i18n/messages_tw_CN.json b/io.sc.platform.system.frontend/src/i18n/messages_tw_CN.json index 02a66096..c67a377a 100644 --- a/io.sc.platform.system.frontend/src/i18n/messages_tw_CN.json +++ b/io.sc.platform.system.frontend/src/i18n/messages_tw_CN.json @@ -176,5 +176,9 @@ "system.monitor.serverInfo.online": "在線用戶", - "system.monitor.serverInfo.serviceRequest": "服務請求" + "system.monitor.serverInfo.serviceRequest": "服務請求", + + "route.system.settings": "設置", + "settings.shortcutMenus": "常用菜單", + "settings.shortcutMenus.entity.shortcutMenuName": "快捷菜單名稱" } diff --git a/io.sc.platform.system.frontend/src/i18n/messages_zh_CN.json b/io.sc.platform.system.frontend/src/i18n/messages_zh_CN.json index 38bf9c38..b95aca30 100644 --- a/io.sc.platform.system.frontend/src/i18n/messages_zh_CN.json +++ b/io.sc.platform.system.frontend/src/i18n/messages_zh_CN.json @@ -206,5 +206,9 @@ "system.monitor.serverInfo.online": "在线用户", - "system.monitor.serverInfo.serviceRequest": "服务请求" + "system.monitor.serverInfo.serviceRequest": "服务请求", + + "route.system.settings": "设置", + "settings.shortcutMenus": "常用菜单", + "settings.shortcutMenus.entity.shortcutMenuName": "快捷菜单名称" } diff --git a/io.sc.platform.system.frontend/src/routes/routes.json b/io.sc.platform.system.frontend/src/routes/routes.json index b025b68d..f9358c66 100644 --- a/io.sc.platform.system.frontend/src/routes/routes.json +++ b/io.sc.platform.system.frontend/src/routes/routes.json @@ -1,4 +1,18 @@ [ + { + "force": true, + "parent": "/", + "name": "route.system.settings", + "path": "system/settings", + "priority": 0, + "module": "io.sc.platform.system.frontend", + "component": "component.system.Settings", + "componentPath": "@/views/settings/Settings.vue", + "redirect": null, + "meta": { + "permissions": ["/system/settings/**/*"] + } + }, { "parent": "/", "name": "route.system.license", @@ -6,12 +20,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.License", - "componentPath":"@/views/license/License.vue", + "componentPath": "@/views/license/License.vue", "redirect": null, "meta": { - "permissions": [ - "/system/license/**/*" - ] + "permissions": ["/system/license/**/*"] } }, { @@ -21,12 +33,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.application", - "componentPath":"@/views/application/Application.vue", + "componentPath": "@/views/application/Application.vue", "redirect": null, "meta": { - "permissions": [ - "/system/application/**/*" - ] + "permissions": ["/system/application/**/*"] } }, { @@ -36,17 +46,15 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Corporation", - "componentPath":"@/views/corporation/Corporation.vue", + "componentPath": "@/views/corporation/Corporation.vue", "redirect": null, "meta": { - "permissions": [ - "/system/corporation/**/*" - ], + "permissions": ["/system/corporation/**/*"], "actions": [ - {"name":"query", "i18nKey":"query", "permissions":[{"method": "GET", "matcher": "/api/system/corporation"}]}, - {"name":"add", "i18nKey":"add", "permissions":[{"method": "POST", "matcher": "/api/system/corporation"}]}, - {"name":"remove", "i18nKey":"remove", "permissions":[{"method": "DELETE", "matcher": "/api/system/corporation"}]}, - {"name":"edit", "i18nKey":"edit", "permissions":[{"method": "PUT", "matcher": "/api/system/corporation"}]} + { "name": "query", "i18nKey": "query", "permissions": [{ "method": "GET", "matcher": "/api/system/corporation" }] }, + { "name": "add", "i18nKey": "add", "permissions": [{ "method": "POST", "matcher": "/api/system/corporation" }] }, + { "name": "remove", "i18nKey": "remove", "permissions": [{ "method": "DELETE", "matcher": "/api/system/corporation" }] }, + { "name": "edit", "i18nKey": "edit", "permissions": [{ "method": "PUT", "matcher": "/api/system/corporation" }] } ] } }, @@ -57,12 +65,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.User", - "componentPath":"@/views/user/User.vue", + "componentPath": "@/views/user/User.vue", "redirect": null, "meta": { - "permissions": [ - "/system/user/**/*" - ] + "permissions": ["/system/user/**/*"] } }, { @@ -72,12 +78,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Role", - "componentPath":"@/views/role/Role.vue", + "componentPath": "@/views/role/Role.vue", "redirect": null, "meta": { - "permissions": [ - "/system/role/**/*" - ] + "permissions": ["/system/role/**/*"] } }, { @@ -87,12 +91,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Org", - "componentPath":"@/views/org/Org.vue", + "componentPath": "@/views/org/Org.vue", "redirect": null, "meta": { - "permissions": [ - "/system/org/**/*" - ] + "permissions": ["/system/org/**/*"] } }, { @@ -102,12 +104,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Department", - "componentPath":"@/views/department/Department.vue", + "componentPath": "@/views/department/Department.vue", "redirect": null, "meta": { - "permissions": [ - "/system/department/**/*" - ] + "permissions": ["/system/department/**/*"] } }, { @@ -117,12 +117,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Menu", - "componentPath":"@/views/menu/Menu.vue", + "componentPath": "@/views/menu/Menu.vue", "redirect": null, "meta": { - "permissions": [ - "/system/menu/**/*" - ] + "permissions": ["/system/menu/**/*"] } }, { @@ -132,12 +130,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.announcementManager", - "componentPath":"@/views/announcement/AnnouncementManager.vue", + "componentPath": "@/views/announcement/AnnouncementManager.vue", "redirect": null, "meta": { - "permissions": [ - "/system/announcement/**/*" - ] + "permissions": ["/system/announcement/**/*"] } }, { @@ -147,12 +143,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.NotificationManager", - "componentPath":"@/views/notification/NotificationManager.vue", + "componentPath": "@/views/notification/NotificationManager.vue", "redirect": null, "meta": { - "permissions": [ - "/system/notificationManager/**/*" - ] + "permissions": ["/system/notificationManager/**/*"] } }, { @@ -162,12 +156,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Parameter", - "componentPath":"@/views/parameter/Parameter.vue", + "componentPath": "@/views/parameter/Parameter.vue", "redirect": null, "meta": { - "permissions": [ - "/system/parameter/**/*" - ] + "permissions": ["/system/parameter/**/*"] } }, { @@ -177,12 +169,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Dictionary", - "componentPath":"@/views/dictionary/Dictionary.vue", + "componentPath": "@/views/dictionary/Dictionary.vue", "redirect": null, "meta": { - "permissions": [ - "/system/dictionary/**/*" - ] + "permissions": ["/system/dictionary/**/*"] } }, { @@ -192,12 +182,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.Desensitizer", - "componentPath":"@/views/desensitizer/Desensitizer.vue", + "componentPath": "@/views/desensitizer/Desensitizer.vue", "redirect": null, "meta": { - "permissions": [ - "/system/desensitizer/**/*" - ] + "permissions": ["/system/desensitizer/**/*"] } }, { @@ -207,12 +195,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.I18n", - "componentPath":"@/views/i18n/I18n.vue", + "componentPath": "@/views/i18n/I18n.vue", "redirect": null, "meta": { - "permissions": [ - "/system/i18n/**/*" - ] + "permissions": ["/system/i18n/**/*"] } }, { @@ -222,12 +208,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.datasource", - "componentPath":"@/views/datasource/Datasource.vue", + "componentPath": "@/views/datasource/Datasource.vue", "redirect": null, "meta": { - "permissions": [ - "/system/datasource/**/*" - ] + "permissions": ["/system/datasource/**/*"] } }, { @@ -237,12 +221,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.monitor.AuditLog", - "componentPath":"@/views/monitor/AuditLog.vue", + "componentPath": "@/views/monitor/AuditLog.vue", "redirect": null, "meta": { - "permissions": [ - "/system/monitor/auditlog/**/*" - ] + "permissions": ["/system/monitor/auditlog/**/*"] } }, { @@ -252,12 +234,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.monitor.Log", - "componentPath":"@/views/monitor/Log.vue", + "componentPath": "@/views/monitor/Log.vue", "redirect": null, "meta": { - "permissions": [ - "/system/monitor/log/**/*" - ] + "permissions": ["/system/monitor/log/**/*"] } }, { @@ -267,12 +247,10 @@ "priority": 0, "module": "io.sc.platform.system.frontend", "component": "component.system.monitor.ServerInfo", - "componentPath":"@/views/monitor/ServerInfo.vue", + "componentPath": "@/views/monitor/ServerInfo.vue", "redirect": null, "meta": { - "permissions": [ - "/system/monitor/serverInfo/**/*" - ] + "permissions": ["/system/monitor/serverInfo/**/*"] } } ] diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/initializer/ParameterInitializer.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/initializer/ParameterInitializer.java index a44944b9..8e0f5358 100644 --- a/io.sc.platform.system/src/main/java/io/sc/platform/system/initializer/ParameterInitializer.java +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/initializer/ParameterInitializer.java @@ -9,6 +9,7 @@ import io.sc.platform.system.parameter.jpa.entity.ParameterEntity; import io.sc.platform.system.parameter.service.ParameterService; import org.springframework.context.ApplicationContext; import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.util.StringUtils; import java.util.*; @@ -28,7 +29,7 @@ public class ParameterInitializer implements ApplicationInitializer { @Override public synchronized boolean isInitialized() { - List needAddedParameters =getneedAddedParameters(); + List needAddedParameters =getNeedAddedParameters(); if(!needAddedParameters.isEmpty()){ isInitialized =false; }else { @@ -44,22 +45,23 @@ public class ParameterInitializer implements ApplicationInitializer { for(ParameterEntity entity : entities){ cache.put(entity.getCode(),entity); } - List needAddedParameters =getneedAddedParameters(); + List needAddedParameters =getNeedAddedParameters(); try { for(Parameter item : needAddedParameters){ ParameterEntity entity =new ParameterEntity(); - entity.setCode(item.getCode()); + entity.setCode(StringUtils.hasText(item.getCode())?item.getCode():item.getId()); entity.setValue(item.getDefaultValue()); entity.setOrder(item.getOrder()); entity.setParent(cache.get(item.getParentId())); - parameterService.add(entity); + ParameterEntity added =parameterService.add(entity); + cache.put(added.getCode(),added); } } catch (Exception e) { throw new ApplicationInitializerExecuteException(e); } } - private List getneedAddedParameters() { + private List getNeedAddedParameters() { // 插件定义的参数 List plugins =PluginManager.getInstance().getParameters(); Map cache =new HashMap<>(); @@ -93,6 +95,13 @@ public class ParameterInitializer implements ApplicationInitializer { for(String id : needAddedParameterIds) { result.add(cache.get(id)); } + + Collections.sort(result, new Comparator() { + @Override + public int compare(Parameter o1, Parameter o2) { + return o1.getId().compareTo(o2.getId()); + } + }); return result; } } diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/controller/MenuWebController.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/controller/MenuWebController.java index aa2c924e..0358af31 100644 --- a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/controller/MenuWebController.java +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/controller/MenuWebController.java @@ -8,6 +8,7 @@ import io.sc.platform.mvc.plugins.item.FrontEndRouteMetaAction; import io.sc.platform.mvc.support.CascadeMany2Many; import io.sc.platform.orm.service.support.QueryParameter; import io.sc.platform.orm.service.support.QueryResult; +import io.sc.platform.orm.util.EntityVoUtil; import io.sc.platform.system.api.menu.MenuRouteActionVo; import io.sc.platform.system.api.menu.MenuRouteVo; import io.sc.platform.system.api.menu.MenuVo; @@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.security.Principal; import java.util.ArrayList; import java.util.List; @@ -65,6 +67,18 @@ public class MenuWebController extends RestCrudController listAllMenusByUser(QueryParameter queryParameter,Principal principal) throws Exception{ + if(StringUtils.hasText(principal.getName())){ + if(queryParameter.existsCriteria()){ + return EntityVoUtil.toVo(service.list(queryParameter)); + }else { + return EntityVoUtil.toVo(service.getMenusByUser(principal.getName())); + } + } + return QueryResult.emptyList(); + } + /** * 列出所有菜单树,并且将角色所拥有的菜单列表作出标记 * @param roleId 角色ID diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/jpa/repository/MenuRepository.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/jpa/repository/MenuRepository.java index c97232df..79cf94a4 100644 --- a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/jpa/repository/MenuRepository.java +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/jpa/repository/MenuRepository.java @@ -7,6 +7,7 @@ import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; import java.util.List; +import java.util.Set; @Repository("io.sc.platform.system.menu.jpa.repository.MenuRepository") public interface MenuRepository extends DaoRepository { @@ -26,4 +27,9 @@ public interface MenuRepository extends DaoRepository { @Query("select distinct menu from MenuEntity as menu left join fetch menu.children where menu.parent is null order by menu.order") public List findMenusTree(); + + @Query("select distinct menu from MenuEntity as menu where menu.name in (:names)") + public List findByNames(@Param("names") Set names); + + public MenuEntity findByName(String code); } diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/MenuService.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/MenuService.java index 17c45545..593555de 100644 --- a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/MenuService.java +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/MenuService.java @@ -43,6 +43,15 @@ public interface MenuService extends DaoService listAllMenusWithSelectedStatusByApplication(String applicationId, QueryParameter queryParameter) throws Exception; + /** + * 列出所有菜单树,并且将用户所拥有的快捷菜单列表作出标记 + * @param userId 用户ID + * @param queryParameter 查询参数 + * @return 所有菜单树,并且将应用所拥有的菜单列表作出标记 + * @throws Exception 违例 + */ + public List listAllShortcutMenusWithSelectedStatusByUser(String userId, QueryParameter queryParameter) throws Exception; + /** * 查询角色所拥有的菜单 * @param roleId 角色ID @@ -70,6 +79,15 @@ public interface MenuService extends DaoService listMenusByApplication(String applicationId, QueryParameter queryParameter) throws Exception; + /** + * 查询用户所拥有的快捷菜单 + * @param userId 用户ID + * @param queryParameter 查询参数 + * @return 应用所拥有的菜单 + * @throws Exception 违例 + */ + public List listShortcutMenusByUser(String userId, QueryParameter queryParameter) throws Exception; + /** * 给菜单添加角色 * @param wrapper 具有级联关系的菜单和角色多对多关系 Wrapper diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/impl/MenuServiceImpl.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/impl/MenuServiceImpl.java index 1b586292..21cf7ea1 100644 --- a/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/impl/MenuServiceImpl.java +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/menu/service/impl/MenuServiceImpl.java @@ -18,6 +18,7 @@ import io.sc.platform.system.menu.service.support.MenuEntityTreeBuilder; import io.sc.platform.system.plugins.PluginManager; import io.sc.platform.system.plugins.item.MenuItem; import io.sc.platform.system.role.jpa.entity.RoleEntity; +import io.sc.platform.system.user.jpa.entity.UserEntity; import io.sc.platform.util.TreeBuilder; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; @@ -214,6 +215,31 @@ public class MenuServiceImpl extends DaoServiceImpl listAllShortcutMenusWithSelectedStatusByUser(String userId, QueryParameter queryParameter) throws Exception { + if(!StringUtils.hasText(userId)){ + return Collections.emptyList(); + } + Sort sort =queryParameter.getSort(); + if(sort==null){ + queryParameter.addSortBy("order"); + } + List allMenuEntities = repository.findAll(); + List selectedMenuEntities = listShortcutMenusByUser(userId, queryParameter); + List allMenus = EntityVoUtil.toVo(allMenuEntities); + List selectedMenus = EntityVoUtil.toVo(selectedMenuEntities); + Set selectedMenuIds = new HashSet<>(); + for (MenuVo selectedMenu : selectedMenus) { + selectedMenuIds.add(selectedMenu.getId()); + } + for (MenuVo allMenu : allMenus) { + if (selectedMenuIds.contains(allMenu.getId())) { + allMenu.setTicked(true); + } + } + return allMenus; + } + @Override public List listMenusByRole(String roleId, QueryParameter queryParameter) throws Exception { if(StringUtils.hasText(roleId)) { @@ -250,6 +276,18 @@ public class MenuServiceImpl extends DaoServiceImpl listShortcutMenusByUser(String userId, QueryParameter queryParameter) throws Exception { + if(StringUtils.hasText(userId)) { + Specification specification = (root, query, criteriaBuilder) -> { + Join join = root.join("shortcutUsers"); + return criteriaBuilder.equal(join.get("id"), userId); + }; + return this.list(queryParameter,specification); + } + return QueryResult.emptyList(); + } + @Override @Transactional public void addRoles(CascadeMany2Many wrapper) throws Exception { diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/controller/ShortcutMenuWebController.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/controller/ShortcutMenuWebController.java new file mode 100644 index 00000000..6897d266 --- /dev/null +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/controller/ShortcutMenuWebController.java @@ -0,0 +1,20 @@ +package io.sc.platform.system.shortcutmenu.controller; + +import io.sc.platform.mvc.controller.support.RestCrudController; +import io.sc.platform.orm.service.support.QueryParameter; +import io.sc.platform.system.api.shortcutmenu.ShortcutMenuVo; +import io.sc.platform.system.shortcutmenu.jpa.entity.ShortcutMenuEntity; +import io.sc.platform.system.shortcutmenu.jpa.repository.ShortcutMenuRepository; +import io.sc.platform.system.shortcutmenu.service.ShortcutMenuService; +import org.springframework.data.domain.Page; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +@RestController("io.sc.platform.system.shortcutmenu.controller.ShortcutMenuWebController") +@RequestMapping("/api/system/setttings/shortcutmenu") +public class ShortcutMenuWebController extends RestCrudController { + +} diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/jpa/entity/ShortcutMenuEntity.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/jpa/entity/ShortcutMenuEntity.java new file mode 100644 index 00000000..9327b37d --- /dev/null +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/jpa/entity/ShortcutMenuEntity.java @@ -0,0 +1,108 @@ +package io.sc.platform.system.shortcutmenu.jpa.entity; + +import io.sc.platform.orm.entity.CorporationAuditorEntity; +import io.sc.platform.system.api.shortcutmenu.ShortcutMenuVo; +import org.hibernate.annotations.GenericGenerator; + +import javax.persistence.*; +import javax.validation.constraints.Size; + +/** + * 用户快捷菜单实体类 + */ +@Entity +@Table(name="SYS_SHORTCUT_MENU") +public class ShortcutMenuEntity extends CorporationAuditorEntity { + //主键 + @Id + @GeneratedValue(generator = "system-uuid") + @GenericGenerator(name = "system-uuid", strategy = "uuid2") + @Column(name="ID_", length=36) + @Size(max=36) + private String id; + + //登录名 + @Column(name="LOGINNAME_") + private String loginName; + + @Transient + private String menuId; + + //菜单代码 + @Column(name="MENU_CODE_") + private String menuCode; + + //快捷菜单名称 + @Column(name="MENU_SHORTCUT_NAME_",length=255) + @Size(max=255) + private String shortcutMenuName; + + //排序 + @Column(name="ORDER_",nullable=false) + protected Integer order; + + public ShortcutMenuEntity() {} + + @Override + public ShortcutMenuVo toVo() { + ShortcutMenuVo vo =new ShortcutMenuVo(); + super.toVo(vo); + + vo.setId(this.getId()); + vo.setLoginName(this.getLoginName()); + vo.setMenuId(this.getMenuId()); + vo.setMenuCode(this.getMenuCode()); + vo.setShortcutMenuName(this.getShortcutMenuName()); + vo.setOrder(this.getOrder()); + return vo; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getLoginName() { + return loginName; + } + + public void setLoginName(String loginName) { + this.loginName = loginName; + } + + public String getMenuId() { + return menuId; + } + + public void setMenuId(String menuId) { + this.menuId = menuId; + } + + public String getMenuCode() { + return menuCode; + } + + public void setMenuCode(String menuCode) { + this.menuCode = menuCode; + } + + public @Size(max = 255) String getShortcutMenuName() { + return shortcutMenuName; + } + + public void setShortcutMenuName(@Size(max = 255) String shortcutMenuName) { + this.shortcutMenuName = shortcutMenuName; + } + + public Integer getOrder() { + return order; + } + + public void setOrder(Integer order) { + this.order = order; + } +} + diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/jpa/repository/ShortcutMenuRepository.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/jpa/repository/ShortcutMenuRepository.java new file mode 100644 index 00000000..c4562d92 --- /dev/null +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/jpa/repository/ShortcutMenuRepository.java @@ -0,0 +1,10 @@ +package io.sc.platform.system.shortcutmenu.jpa.repository; + +import io.sc.platform.orm.repository.DaoRepository; +import io.sc.platform.system.shortcutmenu.jpa.entity.ShortcutMenuEntity; +import org.springframework.stereotype.Repository; + +@Repository("io.sc.platform.system.shortcutmenu.jpa.repository.ShortcutMenuRepository") +public interface ShortcutMenuRepository extends DaoRepository { + +} diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/service/ShortcutMenuService.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/service/ShortcutMenuService.java new file mode 100644 index 00000000..f79b5219 --- /dev/null +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/service/ShortcutMenuService.java @@ -0,0 +1,10 @@ +package io.sc.platform.system.shortcutmenu.service; + +import io.sc.platform.orm.service.DaoService; +import io.sc.platform.system.api.shortcutmenu.ShortcutMenuVo; +import io.sc.platform.system.shortcutmenu.jpa.entity.ShortcutMenuEntity; +import io.sc.platform.system.shortcutmenu.jpa.repository.ShortcutMenuRepository; +import org.springframework.data.domain.Page; + +public interface ShortcutMenuService extends DaoService { +} diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/service/impl/ShortcutMenuServiceImpl.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/service/impl/ShortcutMenuServiceImpl.java new file mode 100644 index 00000000..f8e30d51 --- /dev/null +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/shortcutmenu/service/impl/ShortcutMenuServiceImpl.java @@ -0,0 +1,77 @@ +package io.sc.platform.system.shortcutmenu.service.impl; + +import io.sc.platform.orm.service.impl.DaoServiceImpl; +import io.sc.platform.orm.service.support.QueryParameter; +import io.sc.platform.security.util.SecurityUtil; +import io.sc.platform.system.api.shortcutmenu.ShortcutMenuVo; +import io.sc.platform.system.menu.jpa.entity.MenuEntity; +import io.sc.platform.system.menu.service.MenuService; +import io.sc.platform.system.shortcutmenu.jpa.entity.ShortcutMenuEntity; +import io.sc.platform.system.shortcutmenu.jpa.repository.ShortcutMenuRepository; +import io.sc.platform.system.shortcutmenu.service.ShortcutMenuService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service("io.sc.platform.system.shortcutmenu.service.impl.ShortcutMenuServiceImpl") +public class ShortcutMenuServiceImpl extends DaoServiceImpl implements ShortcutMenuService { + @Autowired private MenuService menuService; + + @Override + public ShortcutMenuEntity add(ShortcutMenuEntity entity) throws Exception { + if(entity!=null){ + entity.setLoginName(SecurityUtil.getLoginName()); + } + ShortcutMenuEntity result =super.add(entity); + updateMenuIdByName(result); + return result; + } + + @Override + public ShortcutMenuEntity update(String s, ShortcutMenuEntity entity) throws Exception { + if(entity!=null){ + entity.setLoginName(SecurityUtil.getLoginName()); + } + ShortcutMenuEntity result =super.update(s, entity); + updateMenuIdByName(result); + return result; + } + + @Override + public Page query(QueryParameter queryParameter) throws Exception { + Page page =super.query(queryParameter); + updateMenuIdByName(page); + return page; + } + + private void updateMenuIdByName(Page page) { + if(page==null) { return; } + List vos =page.getContent(); + if(vos==null || vos.isEmpty()) { return; } + Map cache =new HashMap<>(); + for(ShortcutMenuEntity vo : vos){ + cache.put(vo.getMenuCode(),vo); + } + List menuEntities =menuService.getRepository().findByNames(cache.keySet()); + if(menuEntities!=null && !menuEntities.isEmpty()){ + for(MenuEntity entity : menuEntities){ + ShortcutMenuEntity vo =cache.get(entity.getName()); + if(vo!=null){ + vo.setMenuId(entity.getId()); + } + } + } + } + + private void updateMenuIdByName(ShortcutMenuEntity entity) { + if(entity==null) { return; } + MenuEntity menuEntity =menuService.getRepository().findByName(entity.getMenuCode()); + if(menuEntity!=null){ + entity.setMenuId(menuEntity.getId()); + } + } +} diff --git a/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/components.json b/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/components.json index e6ca4a4e..dcfb54f1 100644 --- a/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/components.json +++ b/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/components.json @@ -62,6 +62,9 @@ "io.sc.platform.system.role.controller", "io.sc.platform.system.role.service.impl", + "io.sc.platform.system.shortcutmenu.controller", + "io.sc.platform.system.shortcutmenu.service.impl", + "io.sc.platform.system.user.controller", "io.sc.platform.system.user.service.impl" ], diff --git a/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/liquibase.json index db6e29f7..93163a60 100644 --- a/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -4,7 +4,8 @@ "order" : 200, "description":"系统管理", "locations":[ - "classpath:/liquibase/io.sc.platform.system_8.0.0_20220606__System Database Schema DDL.xml" + "classpath:/liquibase/io.sc.platform.system_8.0.0_20220606__System_Database_Schema_DDL.xml", + "classpath:/liquibase/io.sc.platform.system_8.0.0_20220707__System_Database_Schema_DDL.xml" ] } ] \ No newline at end of file diff --git a/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/repositories.json b/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/repositories.json index f1a2dcca..cc9fe3ba 100644 --- a/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/repositories.json +++ b/io.sc.platform.system/src/main/resources/META-INF/platform/plugins/repositories.json @@ -54,6 +54,9 @@ "io.sc.platform.system.role.jpa.entity", "io.sc.platform.system.role.jpa.repository", + "io.sc.platform.system.shortcutmenu.jpa.entity", + "io.sc.platform.system.shortcutmenu.jpa.repository", + "io.sc.platform.system.user.jpa.entity", "io.sc.platform.system.user.jpa.repository" ], diff --git a/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220606__System Database Schema DDL.xml b/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220606__System_Database_Schema_DDL.xml similarity index 99% rename from io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220606__System Database Schema DDL.xml rename to io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220606__System_Database_Schema_DDL.xml index fe2fc103..7b77a5d6 100644 --- a/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220606__System Database Schema DDL.xml +++ b/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220606__System_Database_Schema_DDL.xml @@ -252,7 +252,7 @@ - + diff --git a/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220707__System_Database_Schema_DDL.xml b/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220707__System_Database_Schema_DDL.xml new file mode 100644 index 00000000..b164b320 --- /dev/null +++ b/io.sc.platform.system/src/main/resources/liquibase/io.sc.platform.system_8.0.0_20220707__System_Database_Schema_DDL.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/io.sc.standard.frontend/package.json b/io.sc.standard.frontend/package.json index 26583115..a87f0969 100644 --- a/io.sc.standard.frontend/package.json +++ b/io.sc.standard.frontend/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.standard.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -112,7 +112,7 @@ "node-sql-parser": "5.3.6", "pinia": "2.3.0", "pinia-undo": "0.2.4", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -123,4 +123,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +} diff --git a/io.sc.standard/src/main/resources/META-INF/platform/plugins/liquibase.json b/io.sc.standard/src/main/resources/META-INF/platform/plugins/liquibase.json index 23bd83aa..ae05676d 100644 --- a/io.sc.standard/src/main/resources/META-INF/platform/plugins/liquibase.json +++ b/io.sc.standard/src/main/resources/META-INF/platform/plugins/liquibase.json @@ -16,8 +16,8 @@ "order" : 500, "description":"数据标准", "locations":[ - "classpath:/liquibase/io.sc.standard_1.0.0_20221020__Standard Schema DDL.xml", - "classpath:/liquibase/io.sc.standard_1.0.0_20221020__Standard Data.xml" + "classpath:/liquibase/io.sc.standard_1.0.0_20221020__Standard_Schema_DDL.xml", + "classpath:/liquibase/io.sc.standard_1.0.0_20221020__Standard_Data.xml" ] } ] diff --git a/io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard Data.xml b/io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard_Data.xml similarity index 100% rename from io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard Data.xml rename to io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard_Data.xml diff --git a/io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard Schema DDL.xml b/io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard_Schema_DDL.xml similarity index 100% rename from io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard Schema DDL.xml rename to io.sc.standard/src/main/resources/liquibase/io.sc.standard_1.0.0_20221020__Standard_Schema_DDL.xml diff --git a/io.sc.website/package.json b/io.sc.website/package.json index d795fb9b..a96b09e1 100644 --- a/io.sc.website/package.json +++ b/io.sc.website/package.json @@ -1,6 +1,6 @@ { "name": "io.sc.website", - "version": "8.2.24", + "version": "8.2.25", "description": "", "main": "index.js", "scripts": { @@ -28,6 +28,6 @@ }, "dependencies": { "vue": "3.5.13", - "platform-core": "8.2.86" + "platform-core": "8.2.89" } -} \ No newline at end of file +} diff --git a/wra.report.frontend/package.json b/wra.report.frontend/package.json index 3ccc69e2..06422ae8 100644 --- a/wra.report.frontend/package.json +++ b/wra.report.frontend/package.json @@ -1,6 +1,6 @@ { "name": "wra.report.frontend", - "version": "8.2.24", + "version": "8.2.25", "description": "", "private": false, "keywords": [], @@ -111,7 +111,7 @@ "mockjs": "1.1.0", "node-sql-parser": "5.3.6", "pinia": "2.3.0", - "platform-core": "8.2.86", + "platform-core": "8.2.89", "quasar": "2.17.6", "sort-array": "5.0.0", "svg-path-commander": "2.1.7", @@ -121,4 +121,4 @@ "vue-router": "4.5.0", "xml-formatter": "3.6.3" } -} \ No newline at end of file +}