From bcb1aaaadad892fe02e4de9a1fdb10cb99fea9bc Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 08 四月 2024 12:01:46 +0800 Subject: [PATCH] Func工具类添加 --- Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Func.java | 4 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ConvertUtil.java | 81 + Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ClassUtil.java | 130 +++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapEmitter.java | 192 ++++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedFunction.java | 40 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedComparator.java | 38 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopier.java | 404 +++++++++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConverter.java | 77 + Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/EnumToStringConverter.java | 126 +++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/BeanUtil.java | 424 ++++++++++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedRunnable.java | 35 .idea/modules.xml | 4 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java | 1 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConversionService.java | 51 + Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Unchecked.java | 106 ++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/CopyProperty.java | 26 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/UrlUtil.java | 92 ++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapKey.java | 16 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMap.java | 125 +++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedConsumer.java | 39 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedSupplier.java | 39 /dev/null | 0 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ReflectUtil.java | 180 ++++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/StringToEnumConverter.java | 126 +++ Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BeanProperty.java | 16 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopierKey.java | 20 Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedCallable.java | 38 27 files changed, 2,426 insertions(+), 4 deletions(-) diff --git a/.idea/modules.xml b/.idea/modules.xml index 2b810a8..bcd21f1 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -3,6 +3,10 @@ <component name="ProjectModuleManager"> <modules> <module fileurl="file://$PROJECT_DIR$/.idea/PLTWEB.iml" filepath="$PROJECT_DIR$/.idea/PLTWEB.iml" /> + <module fileurl="file://$PROJECT_DIR$/Source/platformProject/platform-parent.iml" filepath="$PROJECT_DIR$/Source/platformProject/platform-parent.iml" /> + <module fileurl="file://$PROJECT_DIR$/Source/platformProject/vci-platform-server-starter/vci-platform-server-starter.iml" filepath="$PROJECT_DIR$/Source/platformProject/vci-platform-server-starter/vci-platform-server-starter.iml" /> + <module fileurl="file://$PROJECT_DIR$/Source/platformProject/vci-platform-starter/vci-platform-starter.iml" filepath="$PROJECT_DIR$/Source/platformProject/vci-platform-starter/vci-platform-starter.iml" /> + <module fileurl="file://$PROJECT_DIR$/Source/platformProject/vci-platform-web/vci-platform-web.iml" filepath="$PROJECT_DIR$/Source/platformProject/vci-platform-web/vci-platform-web.iml" /> </modules> </component> </project> \ No newline at end of file diff --git a/Bin/lib/client/flatlaf-2.3.jar b/Bin/lib/client/flatlaf-2.3.jar deleted file mode 100644 index 9f292d2..0000000 --- a/Bin/lib/client/flatlaf-2.3.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/icegridgui.jar b/Bin/lib/client/icegridgui.jar deleted file mode 100644 index d9ede54..0000000 --- a/Bin/lib/client/icegridgui.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/jgoodies-common-1.8.1.jar b/Bin/lib/client/jgoodies-common-1.8.1.jar deleted file mode 100644 index f6a256e..0000000 --- a/Bin/lib/client/jgoodies-common-1.8.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/jgoodies-looks-2.5.3.jar b/Bin/lib/client/jgoodies-looks-2.5.3.jar deleted file mode 100644 index 3339053..0000000 --- a/Bin/lib/client/jgoodies-looks-2.5.3.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/jgraph.jar b/Bin/lib/client/jgraph.jar deleted file mode 100644 index 9af266c..0000000 --- a/Bin/lib/client/jgraph.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/jgraphx-3.1.0.0.jar b/Bin/lib/client/jgraphx-3.1.0.0.jar deleted file mode 100644 index 6637aac..0000000 --- a/Bin/lib/client/jgraphx-3.1.0.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/nativeskin.jar b/Bin/lib/client/nativeskin.jar deleted file mode 100644 index acacc56..0000000 --- a/Bin/lib/client/nativeskin.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/pinyin4j-2.5.0.jar b/Bin/lib/client/pinyin4j-2.5.0.jar deleted file mode 100644 index e8ede13..0000000 --- a/Bin/lib/client/pinyin4j-2.5.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/plt-client.jar b/Bin/lib/client/plt-client.jar deleted file mode 100644 index d4286a6..0000000 --- a/Bin/lib/client/plt-client.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/plt-clientbase.jar b/Bin/lib/client/plt-clientbase.jar deleted file mode 100644 index 50330af..0000000 --- a/Bin/lib/client/plt-clientbase.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/poi-3.9-20121203.jar b/Bin/lib/client/poi-3.9-20121203.jar deleted file mode 100644 index 0f46288..0000000 --- a/Bin/lib/client/poi-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/poi-ooxml-3.9-20121203.jar b/Bin/lib/client/poi-ooxml-3.9-20121203.jar deleted file mode 100644 index 8792d46..0000000 --- a/Bin/lib/client/poi-ooxml-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/poi-ooxml-schemas-3.9-20121203.jar b/Bin/lib/client/poi-ooxml-schemas-3.9-20121203.jar deleted file mode 100644 index eda4ef4..0000000 --- a/Bin/lib/client/poi-ooxml-schemas-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/poi-scratchpad-3.9-20121203.jar b/Bin/lib/client/poi-scratchpad-3.9-20121203.jar deleted file mode 100644 index 1520855..0000000 --- a/Bin/lib/client/poi-scratchpad-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/protege35.jar b/Bin/lib/client/protege35.jar deleted file mode 100644 index 8e99a2e..0000000 --- a/Bin/lib/client/protege35.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/skinlf.jar b/Bin/lib/client/skinlf.jar deleted file mode 100644 index 9bdb00f..0000000 --- a/Bin/lib/client/skinlf.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/swingx-1.6.1.jar b/Bin/lib/client/swingx-1.6.1.jar deleted file mode 100644 index b0bcc87..0000000 --- a/Bin/lib/client/swingx-1.6.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/swixml.jar b/Bin/lib/client/swixml.jar deleted file mode 100644 index 2f0fa2b..0000000 --- a/Bin/lib/client/swixml.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/client/uitheme-1.3.1.jar b/Bin/lib/client/uitheme-1.3.1.jar deleted file mode 100644 index caacb71..0000000 --- a/Bin/lib/client/uitheme-1.3.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/commons-lang3-3.1.jar b/Bin/lib/common/commons-lang3-3.1.jar deleted file mode 100644 index a85e539..0000000 --- a/Bin/lib/common/commons-lang3-3.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/dom4j-1.6.1.jar b/Bin/lib/common/dom4j-1.6.1.jar deleted file mode 100644 index c8c4dbb..0000000 --- a/Bin/lib/common/dom4j-1.6.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/fastjson-1.2.83.jar b/Bin/lib/common/fastjson-1.2.83.jar deleted file mode 100644 index fd843ae..0000000 --- a/Bin/lib/common/fastjson-1.2.83.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/freemarker.jar b/Bin/lib/common/freemarker.jar deleted file mode 100644 index b13671d..0000000 --- a/Bin/lib/common/freemarker.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/icegridgui.jar b/Bin/lib/common/icegridgui.jar deleted file mode 100644 index d9ede54..0000000 --- a/Bin/lib/common/icegridgui.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/junit-4.8.jar b/Bin/lib/common/junit-4.8.jar deleted file mode 100644 index efdaa58..0000000 --- a/Bin/lib/common/junit-4.8.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/log4j-api-2.12.4.jar b/Bin/lib/common/log4j-api-2.12.4.jar deleted file mode 100644 index d427c18..0000000 --- a/Bin/lib/common/log4j-api-2.12.4.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/log4j-core-2.12.4.jar b/Bin/lib/common/log4j-core-2.12.4.jar deleted file mode 100644 index 53b1e9a..0000000 --- a/Bin/lib/common/log4j-core-2.12.4.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/mail.jar b/Bin/lib/common/mail.jar deleted file mode 100644 index 463a64b..0000000 --- a/Bin/lib/common/mail.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common.jar b/Bin/lib/common/plt-common.jar deleted file mode 100644 index 4a83711..0000000 --- a/Bin/lib/common/plt-common.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/META-INF/MANIFEST.MF b/Bin/lib/common/plt-common/META-INF/MANIFEST.MF deleted file mode 100644 index 461db2a..0000000 --- a/Bin/lib/common/plt-common/META-INF/MANIFEST.MF +++ /dev/null @@ -1,8 +0,0 @@ -Manifest-Version: 1.0 -Ant-Version: Apache Ant 1.10.12 -Created-By: 17.0.8.1+1 (Eclipse Adoptium) -Built-By: Jason -Implementation-Title: platform-Common -Built-Time: 2024.03.01.10.09 -platform-version: 2024 - diff --git a/Bin/lib/common/plt-common/com/vci/common/ServiceNames.class b/Bin/lib/common/plt-common/com/vci/common/ServiceNames.class deleted file mode 100644 index b2e46b2..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/ServiceNames.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/annotaion/CustomAnnotaion.class b/Bin/lib/common/plt-common/com/vci/common/annotaion/CustomAnnotaion.class deleted file mode 100644 index c6a27af..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/annotaion/CustomAnnotaion.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/annotaion/CustomAnnotaionHelper.class b/Bin/lib/common/plt-common/com/vci/common/annotaion/CustomAnnotaionHelper.class deleted file mode 100644 index d3479ac..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/annotaion/CustomAnnotaionHelper.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/annotaion/MethodTypeAnnotation.class b/Bin/lib/common/plt-common/com/vci/common/annotaion/MethodTypeAnnotation.class deleted file mode 100644 index 1ed2599..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/annotaion/MethodTypeAnnotation.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/exception/LocaleCommonDisplay.class b/Bin/lib/common/plt-common/com/vci/common/exception/LocaleCommonDisplay.class deleted file mode 100644 index 1b2a09b..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/exception/LocaleCommonDisplay.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/exception/ORAUniqueProperties.class b/Bin/lib/common/plt-common/com/vci/common/exception/ORAUniqueProperties.class deleted file mode 100644 index 877ddb5..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/exception/ORAUniqueProperties.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/exception/VciException.class b/Bin/lib/common/plt-common/com/vci/common/exception/VciException.class deleted file mode 100644 index c86f613..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/exception/VciException.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/exception/VciExceptionTool.class b/Bin/lib/common/plt-common/com/vci/common/exception/VciExceptionTool.class deleted file mode 100644 index 2b99d29..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/exception/VciExceptionTool.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/file/FileDigest.class b/Bin/lib/common/plt-common/com/vci/common/file/FileDigest.class deleted file mode 100644 index e302177..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/file/FileDigest.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/locale/LocaleDisplay.class b/Bin/lib/common/plt-common/com/vci/common/locale/LocaleDisplay.class deleted file mode 100644 index f66fce5..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/locale/LocaleDisplay.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/log/LogByType.class b/Bin/lib/common/plt-common/com/vci/common/log/LogByType.class deleted file mode 100644 index ce4df3e..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/log/LogByType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/log/LogType.class b/Bin/lib/common/plt-common/com/vci/common/log/LogType.class deleted file mode 100644 index c2f4b28..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/log/LogType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/log/ServerWithLog4j.class b/Bin/lib/common/plt-common/com/vci/common/log/ServerWithLog4j.class deleted file mode 100644 index 1c1f373..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/log/ServerWithLog4j.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/objects/AbstractEntity.class b/Bin/lib/common/plt-common/com/vci/common/objects/AbstractEntity.class deleted file mode 100644 index 431e754..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/objects/AbstractEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/objects/AbstractHistorizable.class b/Bin/lib/common/plt-common/com/vci/common/objects/AbstractHistorizable.class deleted file mode 100644 index 3399c3d..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/objects/AbstractHistorizable.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/objects/Historizable.class b/Bin/lib/common/plt-common/com/vci/common/objects/Historizable.class deleted file mode 100644 index 39073e8..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/objects/Historizable.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/objects/QueryParam.class b/Bin/lib/common/plt-common/com/vci/common/objects/QueryParam.class deleted file mode 100644 index 7d159b6..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/objects/QueryParam.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/objects/QueryResult.class b/Bin/lib/common/plt-common/com/vci/common/objects/QueryResult.class deleted file mode 100644 index 6bf326c..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/objects/QueryResult.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/objects/UserEntity.class b/Bin/lib/common/plt-common/com/vci/common/objects/UserEntity.class deleted file mode 100644 index c8f9f13..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/objects/UserEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/constants/PLDefinationConstants.class b/Bin/lib/common/plt-common/com/vci/common/portal/constants/PLDefinationConstants.class deleted file mode 100644 index 953f51d..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/constants/PLDefinationConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/constants/PRMConstants.class b/Bin/lib/common/plt-common/com/vci/common/portal/constants/PRMConstants.class deleted file mode 100644 index 6a67d38..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/constants/PRMConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/constants/TemplateTypeConstants.class b/Bin/lib/common/plt-common/com/vci/common/portal/constants/TemplateTypeConstants.class deleted file mode 100644 index ae18078..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/constants/TemplateTypeConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/enums/AreaType.class b/Bin/lib/common/plt-common/com/vci/common/portal/enums/AreaType.class deleted file mode 100644 index 7f722b5..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/enums/AreaType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/enums/ComponentType.class b/Bin/lib/common/plt-common/com/vci/common/portal/enums/ComponentType.class deleted file mode 100644 index 974a875..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/enums/ComponentType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/enums/ControlType.class b/Bin/lib/common/plt-common/com/vci/common/portal/enums/ControlType.class deleted file mode 100644 index a81e131..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/enums/ControlType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/enums/GetByType.class b/Bin/lib/common/plt-common/com/vci/common/portal/enums/GetByType.class deleted file mode 100644 index 6c5e569..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/enums/GetByType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/enums/PortalVIType.class b/Bin/lib/common/plt-common/com/vci/common/portal/enums/PortalVIType.class deleted file mode 100644 index 862d7be..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/enums/PortalVIType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/enums/PortalVITypeFlag.class b/Bin/lib/common/plt-common/com/vci/common/portal/enums/PortalVITypeFlag.class deleted file mode 100644 index 5cadb30..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/enums/PortalVITypeFlag.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/portal/utils/PortalUtil.class b/Bin/lib/common/plt-common/com/vci/common/portal/utils/PortalUtil.class deleted file mode 100644 index f031b6f..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/portal/utils/PortalUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/interfaces/IParserFactory.class b/Bin/lib/common/plt-common/com/vci/common/qt/interfaces/IParserFactory.class deleted file mode 100644 index 6713304..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/interfaces/IParserFactory.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/CItemRelation.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/CItemRelation.class deleted file mode 100644 index 3cfe931..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/CItemRelation.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/ChildrenInfo.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/ChildrenInfo.class deleted file mode 100644 index 4447873..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/ChildrenInfo.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/ComparatorOrderInfo.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/ComparatorOrderInfo.class deleted file mode 100644 index c320dbe..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/ComparatorOrderInfo.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/Condition.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/Condition.class deleted file mode 100644 index f4cb735..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/Condition.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/ConditionItem.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/ConditionItem.class deleted file mode 100644 index b12f1d3..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/ConditionItem.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/Connector.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/Connector.class deleted file mode 100644 index 3d5655a..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/Connector.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/LeafInfo.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/LeafInfo.class deleted file mode 100644 index 26e7390..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/LeafInfo.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/LeafValue.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/LeafValue.class deleted file mode 100644 index 52c8f77..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/LeafValue.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/Operator.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/Operator.class deleted file mode 100644 index 6e94988..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/Operator.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/OrderInfo.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/OrderInfo.class deleted file mode 100644 index 3e18529..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/OrderInfo.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/PageInfo.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/PageInfo.class deleted file mode 100644 index 759561b..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/PageInfo.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/ParserHelper.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/ParserHelper.class deleted file mode 100644 index 52d4fa3..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/ParserHelper.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/QTConstants.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/QTConstants.class deleted file mode 100644 index 3cbd16e..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/QTConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/QueryTemplate.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/QueryTemplate.class deleted file mode 100644 index 0d113e1..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/QueryTemplate.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/Symbol.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/Symbol.class deleted file mode 100644 index 525f52f..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/Symbol.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/qt/object/Version.class b/Bin/lib/common/plt-common/com/vci/common/qt/object/Version.class deleted file mode 100644 index e323986..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/qt/object/Version.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/resource/CommonProperties.class b/Bin/lib/common/plt-common/com/vci/common/resource/CommonProperties.class deleted file mode 100644 index 09d819f..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/resource/CommonProperties.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/resource/IceClientProperties.class b/Bin/lib/common/plt-common/com/vci/common/resource/IceClientProperties.class deleted file mode 100644 index 101d91e..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/resource/IceClientProperties.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/timer/VCITimeInterface.class b/Bin/lib/common/plt-common/com/vci/common/timer/VCITimeInterface.class deleted file mode 100644 index 7d53756..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/timer/VCITimeInterface.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/util/CollectionUtils$EnumerationIterator.class b/Bin/lib/common/plt-common/com/vci/common/util/CollectionUtils$EnumerationIterator.class deleted file mode 100644 index 681559e..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/util/CollectionUtils$EnumerationIterator.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/util/CollectionUtils.class b/Bin/lib/common/plt-common/com/vci/common/util/CollectionUtils.class deleted file mode 100644 index 65637ba..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/util/CollectionUtils.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/util/IceProxyUtility.class b/Bin/lib/common/plt-common/com/vci/common/util/IceProxyUtility.class deleted file mode 100644 index 1f560d3..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/util/IceProxyUtility.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/ClassLoaderUtil.class b/Bin/lib/common/plt-common/com/vci/common/utility/ClassLoaderUtil.class deleted file mode 100644 index e9a5bd8..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/ClassLoaderUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/Converter.class b/Bin/lib/common/plt-common/com/vci/common/utility/Converter.class deleted file mode 100644 index 0992bac..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/Converter.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/ObjectUtility.class b/Bin/lib/common/plt-common/com/vci/common/utility/ObjectUtility.class deleted file mode 100644 index 7f52978..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/ObjectUtility.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID20.class b/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID20.class deleted file mode 100644 index 3da5006..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID20.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID36.class b/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID36.class deleted file mode 100644 index 8d609e1..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID36.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID8.class b/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID8.class deleted file mode 100644 index b2f6632..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/RandomGUID8.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/common/utility/SnowFlake.class b/Bin/lib/common/plt-common/com/vci/common/utility/SnowFlake.class deleted file mode 100644 index 957ee22..0000000 --- a/Bin/lib/common/plt-common/com/vci/common/utility/SnowFlake.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/mw/ClientContextVariable.class b/Bin/lib/common/plt-common/com/vci/mw/ClientContextVariable.class deleted file mode 100644 index 7409b6b..0000000 --- a/Bin/lib/common/plt-common/com/vci/mw/ClientContextVariable.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/mw/IInvocationContext.class b/Bin/lib/common/plt-common/com/vci/mw/IInvocationContext.class deleted file mode 100644 index a1c1a6c..0000000 --- a/Bin/lib/common/plt-common/com/vci/mw/IInvocationContext.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/mw/InvocationUtility.class b/Bin/lib/common/plt-common/com/vci/mw/InvocationUtility.class deleted file mode 100644 index 57a3da1..0000000 --- a/Bin/lib/common/plt-common/com/vci/mw/InvocationUtility.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/mw/LaunchModeEnum.class b/Bin/lib/common/plt-common/com/vci/mw/LaunchModeEnum.class deleted file mode 100644 index 360be95..0000000 --- a/Bin/lib/common/plt-common/com/vci/mw/LaunchModeEnum.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/AttributeConstants.class b/Bin/lib/common/plt-common/com/vci/omd/constants/AttributeConstants.class deleted file mode 100644 index 185bbbd..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/AttributeConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/BusinessConstants.class b/Bin/lib/common/plt-common/com/vci/omd/constants/BusinessConstants.class deleted file mode 100644 index 2d8af9f..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/BusinessConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/FileObjectType.class b/Bin/lib/common/plt-common/com/vci/omd/constants/FileObjectType.class deleted file mode 100644 index 4017c24..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/FileObjectType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/LinkConstants.class b/Bin/lib/common/plt-common/com/vci/omd/constants/LinkConstants.class deleted file mode 100644 index dfe3a1c..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/LinkConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/LinkTypeConstants.class b/Bin/lib/common/plt-common/com/vci/omd/constants/LinkTypeConstants.class deleted file mode 100644 index 9387bb0..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/LinkTypeConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/OmdConstants.class b/Bin/lib/common/plt-common/com/vci/omd/constants/OmdConstants.class deleted file mode 100644 index d5be5d1..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/OmdConstants.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/constants/SystemAttribute.class b/Bin/lib/common/plt-common/com/vci/omd/constants/SystemAttribute.class deleted file mode 100644 index 74fe7d7..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/constants/SystemAttribute.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/dataType/VTDataType.class b/Bin/lib/common/plt-common/com/vci/omd/dataType/VTDataType.class deleted file mode 100644 index 4608634..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/dataType/VTDataType.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/objects/OtherInfo.class b/Bin/lib/common/plt-common/com/vci/omd/objects/OtherInfo.class deleted file mode 100644 index 20374bc..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/objects/OtherInfo.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/utils/AbComparator.class b/Bin/lib/common/plt-common/com/vci/omd/utils/AbComparator.class deleted file mode 100644 index 155d061..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/utils/AbComparator.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/utils/BTComparator.class b/Bin/lib/common/plt-common/com/vci/omd/utils/BTComparator.class deleted file mode 100644 index 2bde5ef..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/utils/BTComparator.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/utils/LinkTypeComparator.class b/Bin/lib/common/plt-common/com/vci/omd/utils/LinkTypeComparator.class deleted file mode 100644 index 826ccbf..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/utils/LinkTypeComparator.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/com/vci/omd/utils/ObjectTool.class b/Bin/lib/common/plt-common/com/vci/omd/utils/ObjectTool.class deleted file mode 100644 index 1d03cbd..0000000 --- a/Bin/lib/common/plt-common/com/vci/omd/utils/ObjectTool.class +++ /dev/null Binary files differ diff --git a/Bin/lib/common/plt-common/properties/conf.properties b/Bin/lib/common/plt-common/properties/conf.properties deleted file mode 100644 index 9098410..0000000 --- a/Bin/lib/common/plt-common/properties/conf.properties +++ /dev/null @@ -1,116 +0,0 @@ -#conf.properties version by Eclipse -#Sat Oct 19 14:06:56 CST 2013 - - -#鏂囦欢浼犺緭鍧楀ぇ灏� -blockLength=32 - -########################################### 骞冲彴UIF 闇�瑕佺殑閰嶇疆 BEGIN ########################################### -#浜哄憳淇℃伅鍏ユ椂,鏄惁闇�瑕佸瘑绾у瓧娈� -exportSecretGrade=false - -# 鍔犲瘑瀵嗛挜 -encrypt.key=www.liming.portal.comwww.liming.portal.com -# 鐧诲綍绐楀彛锛屾槸鍚︽樉绀衡�樹繚瀛樷�欏閫夋 -logon.saveBut=false -# 绯荤粺鐢ㄦ埛鐧诲綍瓒呮椂鏃堕棿(鍗曚綅鍒嗗垎閽燂級 -logon.loginovertime=1000 -# 涓绘鏋朵笂锛屾槸鍚︽樉绀洪《閮ㄥ浘鐗� -top.logon.image.show=false -# 涓绘鏋朵笂锛岄《閮ㄥ浘鐗囧悕绉帮紙璇ュ浘鐗囦綅浜� com.vci.rmip.logon.client 鍖呬笅锛� -top.logon.image.name=title.jpg -# 涓绘鏋朵笂锛屾槸鍚︽樉绀鸿彍鍗� true:鏄剧ず false:涓嶆樉绀� -top.menuBar.show=true -# 涓昏彍鍗曚笅锛屾槸鍚︽樉绀衡�橀噸鏂扮櫥褰曗�� true:鏄剧ず false:涓嶆樉绀� -top.menuBar.menuItem.relogin=true -# 涓昏彍鍗曚笅锛屾槸鍚︽樉绀衡�樹慨鏀瑰瘑鐮佲�� true:鏄剧ず false:涓嶆樉绀� -top.menuBar.menuItem.changePassword=true - -# 绯荤粺鍏充簬閰嶇疆,淇敼閰嶇疆鏄娉ㄦ剰涓枃瀛楃鐨勭紪鐮佷娇鐢╱tf-8 -system.about.title = \u5173\u4E8E -# 鏈�浣冲浘鐗囧昂瀵�400*90锛岄粯璁ゅ�间负about.png -system.about.imageName=about.png -# 浜у搧鍚嶇О -system.about.softNameProduct= VCI Innovation 2022 -# 鐗堟潈_涓枃 -system.about.softNameCopyrightC = \u5B8F\u535A\u8FDC\u8FBE \u7248\u6743\u6240\u6709 -# 鐗堟潈_鑻辨枃 -system.about.softNameCopyrightE = Copyright(C) 2011-2022 Contributors. All rights reserved. -# 椤圭洰鍚嶇О -system.about.softName = \u5317\u4EAC\u5B8F\u535A\u8FDC\u8FBE\u79D1\u6280\u6709\u9650\u516C\u53F8 - \u7CFB\u7EDF\u5F00\u53D1\u5E73\u53F0 -# 骞冲彴鐗堟湰 -system.about.version = v2022.01.15 -# 鍏徃缃戝潃 -system.about.visit = http://www.vci-tech.com - - -# 绠$悊鍛樼敤鎴峰悕 -user.admin=admin -# 瓒呯骇绠$悊鍛樼敤鎴峰悕 -user.developer=developer -# 瀹夊叏绠$悊鍛樿鑹插悕绉� -user.Sysadmin=\u5b89\u5168\u7ba1\u7406\u5458 -user.rooter=root - -# 鏃ュ織妯″潡锛屾槸鍚﹀惎鐢ㄦ煡璇� on:鍚敤 off:绂佺敤 -log.query.switch=off -period=1 -# 鏃ュ織妯″潡锛屽畾鏈熷垹闄ゆ棩蹇楁椂锛屾敮鎸佺殑鍙�夊�硷紙 -log.save.periods=\ufeff1\#\u4e00\u4e2a\u6708\:\:2\#\u4e24\u4e2a\u6708\:\:3\#\u4e09\u4e2a\u6708\:\:6\#\u534a\u5e74\:\:12\#\u4e00\u5e74\:\:18\#\u4e00\u5e74\u534a\:\:24\#\u4e24\u5e74 -# 鏃ュ織妯″潡锛屽垎椤垫煡璇㈡椂锛岄〉鏁版嵁澶у皬 -log.query.pagesize=30 -# 鏃ュ織妯″潡锛屾槸鍚﹀惎鐢ㄥ畾鏃跺垹闄ゆ棩蹇� Y:鍚敤 N:绂佺敤 -log.delete.auto=N -# 鏃ュ織妯″潡锛屽畾鏃跺垹闄ゆ棩蹇楁椂锛岃淇濈暀鏈�杩戠殑澶╂暟 -log.autoDelete.rate=7 -# 鏃ュ織鍒犻櫎鏃堕棿 -log.autoDelete.time=0\:\:0\:\:0 - -########################################### 骞冲彴UIF 闇�瑕佺殑閰嶇疆 BEGIN ########################################### -#鏁版嵁鏉冮檺鏄惁鐢熸晥 on:寮�鍚� off锛氬叧闂� -right.switch=off -#鍔熻兘妯″潡鎺堟潈楠岃瘉鏄惁璁� on锛氬紑鍚� off锛氬叧闂� -function.right.swith=on -#UI鎺堟潈鏄惁鐢熸晥 on:寮�鎴� off锛氬叧闂� -ui.right.swith=on -# tablePanel 榛樿鏀寔鐨刾ageSize鍒楄〃 -tablePanel.pageSizeList=100,200,300,500,800,1000 -#鍙傜収鎺т欢锛屽湪闆嗘垚鏃讹紝鍙嚜瀹氫箟鍙傜収鏂瑰紡锛屽�间负绫� -engin.refObjectChoose = -# 绯荤粺淇℃伅鎻愮ず妗嗘樉绀烘柟寮� popup:寮瑰嚭妗� ;lowerRight:鍙充笅瑙掋�� 榛樿涓哄彸涓嬭 -PromptMessage.DisplayModes=popup -# 濡傛灉鍦ㄥ彸涓嬭鏄剧ず绯荤粺娑堟伅鏃讹紝璁剧疆娑堟伅绐楀彛鐨勬樉绀烘椂闂达紝姣銆傞粯璁や负3000姣 -PromptMessage.DisplayTime=3000 -#鍒嗙被鏍戝鑸椂锛屾敮鎸佺殑浜嬩欢鍚嶇О -uidesign.eventKey=SelectionEvent,DBClickEvent,ClickEvent -# 棣栭〉鑷畾涔夌被锛屽彲浠ユ湁澶氱粍锛屾瘡缁勪箣闂寸敤鍒嗗彿;鍒嗛殧锛岃嚜瀹氫箟绫讳笌鏍囬涔嬮棿鐢ㄩ�楀彿,鍒嗛殧 -# 鏍煎紡锛氳嚜瀹氫箟绫诲畬鏁磋矾寰�1,鏍囬1锛圲NOCIDE鏍煎紡锛�,鍥炬爣鏂囦欢瀹屾暣璺緞.;鑷畾涔夌被瀹屾暣璺緞2,鏍囬2锛圲NOCIDE鏍煎紡锛�,鍥炬爣鏂囦欢瀹屾暣璺緞; -# 绀轰緥锛歱lm617.engine.HomePageForTaskMessagePanel,\u6211\u7684\u6d88\u606f\u0096\u0087, -#HomePageClasses=plm.uif.engine.client.UILayoutPanel?type=workitem&context=workItemHomePage,\u6211\u7684\u6d88\u606f\u0096\u0087,/com/vci/base/ui/image/email.png -########################################### 骞冲彴UIF 闇�瑕佺殑閰嶇疆 END ########################################### - - - -########################################### CS绯荤粺涓绘瀯鏋舵敮鎸佺殑鎵╁睍鏈嶅姟 BEGIN ########################################### -# 鐧诲綍鎴愬姛鍚庝娇鐢ㄥ弽灏勬満鍒讹紝鑷姩鎵ц璇ョ被涓殑鍏叡鎺ュ彛 showMessage() 锛堟棤鍙傛暟浼犻�掞級 -# 浠ユ敮鎸佺櫥褰曟垚鍔熷悗绔嬪嵆鎵ц鐩稿叧鑷畾涔夋墿灞曢�昏緫# -#e.g:extendservice.0=xxx.xx.xx -extendservicecount=0 -#extendservice.0= -#extendservice.1= -#extendservice.1= -########################################### CS绯荤粺涓绘瀯鏋舵敮鎸佺殑鎵╁睍鏈嶅姟 END ########################################### - - -########################################### UI&鍏冩暟鎹紙妯″瀷锛夌紦瀛樼浉鍏崇殑閰嶇疆 BEGIN ########################################### -#鍚敤UI缂撳瓨鍙婄紦瀛樺畾鏃跺埛鏂版湇鍔� -UI.cache.enable=true -#鏄惁姣忔璁块棶閮藉埛鏂版暟鎹簱锛宼rue浠g爜鍒锋柊锛屽惁鍒欎笉鍒锋柊 -UI.cache.refreshEveryTime=true -#瀹氭椂鍣紝鍦ㄦ湇鍔″惎鍔ㄦ椂寮�鍚� -time_schedule_count=2 -#鍔犺浇鏁版嵁妯″瀷鍒扮紦瀛� -time_schedule_0=com.vci.cache.server.util.DataModelCacheTimer -#鍔犺浇UI閰嶇疆鍒扮紦瀛� -time_schedule_1=plm.portal.tools.UICacheTimer -########################################### UI&鍏冩暟鎹紙妯″瀷锛夌紦瀛樼浉鍏崇殑閰嶇疆 END ########################################### diff --git a/Bin/lib/common/plt-common/properties/log4j2.xml b/Bin/lib/common/plt-common/properties/log4j2.xml deleted file mode 100644 index 0c48fc2..0000000 --- a/Bin/lib/common/plt-common/properties/log4j2.xml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<Configuration status="WARN"> - <Appenders> - <Console name="Console" target="SYSTEM_OUT"> - <PatternLayout pattern="[%-5p] %d{YYYY-MM-dd HH:mm:ss} [%t] %c{1}:%L - %msg%n" /> - </Console> - - <RollingFile name="RollingFile" filename="./logs/server_log.log" filepattern="${logPath}/server_%d{YYYYMMddHHmmss}.log"> - <PatternLayout pattern="[%-5p] %d{YYYY-MM-dd HH:mm:ss} [%t] %c{1}:%L - %msg%n" /> - <Policies> - <SizeBasedTriggeringPolicy size="10 MB" /> - </Policies> - <DefaultRolloverStrategy max="20" /> - </RollingFile> - - </Appenders> - <Loggers> - <Logger name="ServerLog" level="DEBUG" additivity="true"> - <AppenderRef ref="Console" /> - <AppenderRef ref="RollingFile" /> - </Logger> - <Root level="ERROR"> - <AppenderRef ref="Console" /> - <AppenderRef ref="RollingFile" /> - </Root> - </Loggers> -</Configuration> diff --git a/Bin/lib/common/plt-slice.jar b/Bin/lib/common/plt-slice.jar deleted file mode 100644 index 96264cf..0000000 --- a/Bin/lib/common/plt-slice.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/common/spring-core-3.2.0.RELEASE.jar b/Bin/lib/common/spring-core-3.2.0.RELEASE.jar deleted file mode 100644 index 1d4dffb..0000000 --- a/Bin/lib/common/spring-core-3.2.0.RELEASE.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/BOFService.jar b/Bin/lib/service/BOFService.jar deleted file mode 100644 index 02856bd..0000000 --- a/Bin/lib/service/BOFService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/CacheService.jar b/Bin/lib/service/CacheService.jar deleted file mode 100644 index 28856b3..0000000 --- a/Bin/lib/service/CacheService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/FrameService.jar b/Bin/lib/service/FrameService.jar deleted file mode 100644 index e8bf9a2..0000000 --- a/Bin/lib/service/FrameService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/OMDService.jar b/Bin/lib/service/OMDService.jar deleted file mode 100644 index a4a1419..0000000 --- a/Bin/lib/service/OMDService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/OQService.jar b/Bin/lib/service/OQService.jar deleted file mode 100644 index 64cc1fe..0000000 --- a/Bin/lib/service/OQService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/ServiceBase.jar b/Bin/lib/service/ServiceBase.jar deleted file mode 100644 index 9b3cc0d..0000000 --- a/Bin/lib/service/ServiceBase.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService.jar b/Bin/lib/service/UIService.jar deleted file mode 100644 index 3bdfbb9..0000000 --- a/Bin/lib/service/UIService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/META-INF/MANIFEST.MF b/Bin/lib/service/UIService/META-INF/MANIFEST.MF deleted file mode 100644 index 2de5caa..0000000 --- a/Bin/lib/service/UIService/META-INF/MANIFEST.MF +++ /dev/null @@ -1,8 +0,0 @@ -Manifest-Version: 1.0 -Ant-Version: Apache Ant 1.10.12 -Created-By: 17.0.8.1+1 (Eclipse Adoptium) -Built-By: Jason -Implementation-Title: platform-UIService -Built-Time: 2024.03.01.10.07 -platform-version: 2024 - diff --git a/Bin/lib/service/UIService/com/vci/server/UIBoxService.class b/Bin/lib/service/UIService/com/vci/server/UIBoxService.class deleted file mode 100644 index 85ddb65..0000000 --- a/Bin/lib/service/UIService/com/vci/server/UIBoxService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/PortalServiceImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/PortalServiceImpl.class deleted file mode 100644 index 13a505b..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/PortalServiceImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionCacheUtil.class deleted file mode 100644 index 6eb1393..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionClsCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionClsCacheUtil.class deleted file mode 100644 index 16fde02..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionClsCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionParamCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionParamCacheUtil.class deleted file mode 100644 index 2936363..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/ActionParamCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/ButtonParamCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/ButtonParamCacheUtil.class deleted file mode 100644 index 92ae338..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/ButtonParamCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/ComponentBtnCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/ComponentBtnCacheUtil.class deleted file mode 100644 index d0e8ece..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/ComponentBtnCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/ComponentCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/ComponentCacheUtil.class deleted file mode 100644 index e0b8eff..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/ComponentCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/PortalVICacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/PortalVICacheUtil.class deleted file mode 100644 index d922d81..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/PortalVICacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/TabPageCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/TabPageCacheUtil.class deleted file mode 100644 index 35e35b5..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/TabPageCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/UICacheBaseUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/UICacheBaseUtil.class deleted file mode 100644 index 1b3589d..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/UICacheBaseUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/UICacheNames.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/UICacheNames.class deleted file mode 100644 index 6173b65..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/UICacheNames.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/cache/UIContextCacheUtil.class b/Bin/lib/service/UIService/com/vci/server/portal/cache/UIContextCacheUtil.class deleted file mode 100644 index d3d9641..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/cache/UIContextCacheUtil.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionClsEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionClsEntityDao.class deleted file mode 100644 index 42d80a7..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionClsEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionEntityDao.class deleted file mode 100644 index 58163bc..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionParamEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionParamEntityDao.class deleted file mode 100644 index 652f400..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLActionParamEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLCommandParameterEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLCommandParameterEntityDao.class deleted file mode 100644 index d88be2a..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLCommandParameterEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLPageDefinationEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLPageDefinationEntityDao.class deleted file mode 100644 index d5bc4ba..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLPageDefinationEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTabButtonEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTabButtonEntityDao.class deleted file mode 100644 index 8c3e617..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTabButtonEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTabPageEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTabPageEntityDao.class deleted file mode 100644 index d29abfa..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTabPageEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTypeActionEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTypeActionEntityDao.class deleted file mode 100644 index 0d24a0b..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLTypeActionEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLUILayoutEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PLUILayoutEntityDao.class deleted file mode 100644 index 2e060f8..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PLUILayoutEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/PortalVIEntityDao.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/PortalVIEntityDao.class deleted file mode 100644 index c172d0c..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/PortalVIEntityDao.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionClsEntityDaoImp.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionClsEntityDaoImp.class deleted file mode 100644 index 98835d2..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionClsEntityDaoImp.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionEntityDaoImpl.class deleted file mode 100644 index 295f483..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionParamEntityDaoImp.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionParamEntityDaoImp.class deleted file mode 100644 index e18be54..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLActionParamEntityDaoImp.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLCommandParameterEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLCommandParameterEntityDaoImpl.class deleted file mode 100644 index 45c00dc..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLCommandParameterEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLPageDefinationEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLPageDefinationEntityDaoImpl.class deleted file mode 100644 index b02b06c..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLPageDefinationEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTabButtonEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTabButtonEntityDaoImpl.class deleted file mode 100644 index a5d7315..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTabButtonEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTabPageEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTabPageEntityDaoImpl.class deleted file mode 100644 index ac6816e..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTabPageEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTypeActionEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTypeActionEntityDaoImpl.class deleted file mode 100644 index cd7a92c..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLTypeActionEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLUILayoutEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLUILayoutEntityDaoImpl.class deleted file mode 100644 index 87aec58..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PLUILayoutEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PortalVIEntityDaoImpl.class b/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PortalVIEntityDaoImpl.class deleted file mode 100644 index 41f13d8..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/dao/impl/PortalVIEntityDaoImpl.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/delegate/IPortalServiceDelegate.class b/Bin/lib/service/UIService/com/vci/server/portal/delegate/IPortalServiceDelegate.class deleted file mode 100644 index 768075f..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/delegate/IPortalServiceDelegate.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate$1.class b/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate$1.class deleted file mode 100644 index 74ecfc4..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate$1.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate$2.class b/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate$2.class deleted file mode 100644 index 9601359..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate$2.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate.class b/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate.class deleted file mode 100644 index 2ca9bf2..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/delegate/PortalServiceDelegate.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionClsEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionClsEntity.class deleted file mode 100644 index 2b74723..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionClsEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionEntity.class deleted file mode 100644 index 90c8a6f..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionParamEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionParamEntity.class deleted file mode 100644 index 9d4cb62..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLActionParamEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLCommandParameterEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLCommandParameterEntity.class deleted file mode 100644 index 41cb0c7..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLCommandParameterEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLPageDefinationEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLPageDefinationEntity.class deleted file mode 100644 index 61d52b5..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLPageDefinationEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTabButtonEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTabButtonEntity.class deleted file mode 100644 index 516ee6d..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTabButtonEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTabPageEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTabPageEntity.class deleted file mode 100644 index 5cf7cb9..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTabPageEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTypeActionEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTypeActionEntity.class deleted file mode 100644 index 3faca4e..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLTypeActionEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLUILayoutEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PLUILayoutEntity.class deleted file mode 100644 index 8481fe1..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PLUILayoutEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/entity/PortalVIEntity.class b/Bin/lib/service/UIService/com/vci/server/portal/entity/PortalVIEntity.class deleted file mode 100644 index 8232ff5..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/entity/PortalVIEntity.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionClsEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionClsEntity.hbm.xml deleted file mode 100644 index e978830..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionClsEntity.hbm.xml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLActionClsEntity" table="PLACTIONCLS" - dynamic-update="true" dynamic-insert="true"> - <id name="oid" type="java.lang.String"> - <column name="OID" not-null="true"/> - <generator class="assigned" /> - </id> - <property name="name" type="java.lang.String"> - <column name="NAME"/> - </property> - <property name="pid" type="java.lang.String"> - <column name="PID"/> - </property> - <property name="description" type="java.lang.String"> - <column name="DESCRIPTION"/> - </property> - <property name="creator" type="java.lang.String"> - <column name="CREATOR"/> - </property> - <property name="createTime" type="java.util.Date"> - <column name="CREATETIME"/> - </property> - <property name="serialNo" type="java.lang.Short"> - <column name="SERIALNO"/> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionEntity.hbm.xml deleted file mode 100644 index 2009e52..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionEntity.hbm.xml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLActionEntity" table="PLACTION" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="plCode" type="java.lang.String"> - <column name="PLCODE" not-null="true" /> - </property> - <property name="plName" type="java.lang.String"> - <column name="PLNAME" not-null="true" /> - </property> - <property name="plBSUrl" type="java.lang.String"> - <column name="PLBSURL" not-null="false" /> - </property> - <property name="plCSClass" type="java.lang.String"> - <column name="PLCSCLASS" not-null="false" /> - </property> - <property name="plDesc" type="java.lang.String"> - <column name="plDesc" not-null="false" /> - </property> - <property name="plTypeType" type="java.lang.String"> - <column name="plTypeType" not-null="true" /> - </property> - <property name="plCreateTime" type="java.util.Date"> - <column name="plCreateTime" not-null="true" /> - </property> - <property name="plCreateUser" type="java.lang.String"> - <column name="plCreateUser" not-null="true" /> - </property> - <property name="plModifyTime" type="java.util.Date"> - <column name="plModifyTime" not-null="true" /> - </property> - <property name="plModifyUser" type="java.lang.String"> - <column name="plModifyUser" not-null="true" /> - </property> - <property name="plLicensOrs" type="java.lang.String"> - <column name="plLicensOrs" not-null="false" /> - </property> - <property name="plActionCls" type="java.lang.String"> - <column name="plActionCls" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionParamEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionParamEntity.hbm.xml deleted file mode 100644 index 0f5b318..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLActionParamEntity.hbm.xml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLActionParamEntity" table="PLACTIONPARAM" - dynamic-update="true" dynamic-insert="true"> - <id name="oid" type="java.lang.String"> - <column name="OID" not-null="true"/> - <generator class="assigned" /> - </id> - <property name="name" type="java.lang.String"> - <column name="NAME"/> - </property> - <property name="defaultValue" type="java.lang.String"> - <column name="DEFAULTVALUE"/> - </property> - <property name="description" type="java.lang.String"> - <column name="DESCRIPTION"/> - </property> - <property name="action" type="java.lang.String"> - <column name="ACTION"/> - </property> - </class> -</hibernate-mapping> diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLCommandParameterEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLCommandParameterEntity.hbm.xml deleted file mode 100644 index 673d4b2..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLCommandParameterEntity.hbm.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLCommandParameterEntity" table="PLCommandParameter" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="plCommandOId" type="java.lang.String"> - <column name="plCommandOId" not-null="true" /> - </property> - <property name="plKey" type="java.lang.String"> - <column name="plKey" not-null="true" /> - </property> - <property name="plValue" type="java.lang.String"> - <column name="plValue" not-null="true" /> - </property> - <property name="plCreateTime" type="java.util.Date"> - <column name="plCreateTime" not-null="true" /> - </property> - <property name="plCreateUser" type="java.lang.String"> - <column name="plCreateUser" not-null="true" /> - </property> - <property name="plModifyTime" type="java.util.Date"> - <column name="plModifyTime" not-null="true" /> - </property> - <property name="plModifyUser" type="java.lang.String"> - <column name="plModifyUser" not-null="true" /> - </property> - <property name="plLicensOrs" type="java.lang.String"> - <column name="plLicensOrs" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLPageDefinationEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLPageDefinationEntity.hbm.xml deleted file mode 100644 index 94c824b..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLPageDefinationEntity.hbm.xml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLPageDefinationEntity" table="PLPAGEDEFINATION" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="plTabPageOId" type="java.lang.String"> - <column name="plPageContextOId" not-null="true" /> - </property> - <property name="plType" type="java.lang.Short"> - <column name="plType" not-null="true" /> - </property> - <property name="plDefination" type="text"> - <column name="plDefination" not-null="false" /> - </property> - <property name="name" type="java.lang.String"> - <column name="plname" not-null="false" /> - </property> - <property name="desc" type="java.lang.String"> - <column name="pldesc" not-null="false" /> - </property> - <property name="seq" type="java.lang.Short"> - <column name="plseq" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTabButtonEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTabButtonEntity.hbm.xml deleted file mode 100644 index 966c7f6..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTabButtonEntity.hbm.xml +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLTabButtonEntity" table="PLTabButton" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="plTableOId" type="java.lang.String"> - <column name="plTableOId" not-null="false" /> - </property> - <property name="plPageOId" type="java.lang.String"> - <column name="plPageOId" not-null="false" /> - </property> - <property name="plActionOId" type="java.lang.String"> - <column name="plActionOId" not-null="false" /> - </property> - <property name="plLabel" type="java.lang.String"> - <column name="plLabel" not-null="false" /> - </property> - <property name="plAreaType" type="java.lang.String"> - <column name="PLAREATYPE" not-null="false" /> - </property> - <property name="plDesc" type="java.lang.String"> - <column name="plDesc" not-null="false" /> - </property> - <property name="plSeq" type="java.lang.Short"> - <column name="plSeq" not-null="true" /> - </property> - <property name="plCreateTime" type="java.util.Date"> - <column name="plCreateTime" not-null="true" /> - </property> - <property name="plCreateUser" type="java.lang.String"> - <column name="plCreateUser" not-null="true" /> - </property> - <property name="plModifyTime" type="java.util.Date"> - <column name="plModifyTime" not-null="true" /> - </property> - <property name="plModifyUser" type="java.lang.String"> - <column name="plModifyUser" not-null="true" /> - </property> - <property name="plLicensOrs" type="java.lang.String"> - <column name="plLicensOrs" not-null="false" /> - </property> - <property name="plParentOid" type="java.lang.String"> - <column name="PLPARENTOID" not-null="false" /> - </property> - <property name="displayMode" type="java.lang.String"> - <column name="PLDISPLAYMODE" not-null="false" /> - </property> - <property name="iconPath" type="java.lang.String"> - <column name="PLICONPATH" not-null="false" /> - </property> - <property name="authorization" type="java.lang.String"> - <column name="AUTHORIZATION" not-null="false" /> - </property> - <property name="show" type="java.lang.String"> - <column name="PLSHOW" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTabPageEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTabPageEntity.hbm.xml deleted file mode 100644 index b13cde7..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTabPageEntity.hbm.xml +++ /dev/null @@ -1,61 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLTabPageEntity" table="PLTabPage" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="plCode" type="java.lang.String"> - <column name="PLCODE" not-null="true" /> - </property> - <property name="plName" type="java.lang.String"> - <column name="PLNAME" not-null="true" /> - </property> - <property name="plIsOpen" type="java.lang.Short"> - <column name="plIsOpen" not-null="true" /> - </property> - <property name="plLabel" type="java.lang.String"> - <column name="plLabel" not-null="false" /> - </property> - <property name="plDesc" type="java.lang.String"> - <column name="plDesc" not-null="false" /> - </property> - <property name="plSeq" type="java.lang.Short"> - <column name="plSeq" not-null="true" /> - </property> - <property name="plContextOId" type="java.lang.String"> - <column name="plPageDefinationOId" not-null="true" /> - </property> - <property name="areaType" type="java.lang.Short"> - <column name="PLAREATYPE" not-null="true" /> - </property> - <property name="plCreateTime" type="java.util.Date"> - <column name="plCreateTime" not-null="true" /> - </property> - <property name="plCreateUser" type="java.lang.String"> - <column name="plCreateUser" not-null="true" /> - </property> - <property name="plModifyTime" type="java.util.Date"> - <column name="plModifyTime" not-null="true" /> - </property> - <property name="plModifyUser" type="java.lang.String"> - <column name="plModifyUser" not-null="true" /> - </property> - <property name="plLicensOrs" type="java.lang.String"> - <column name="plLicensOrs" not-null="false" /> - </property> - <property name="plOpenExpression" type="java.lang.String"> - <column name="plopenexpression" not-null="false" /> - </property> - - <property name="plUIParser" type="java.lang.String"> - <column name="PLUIPARSER" not-null="false" /> - </property> - <property name="plExtAttr" type="java.lang.String"> - <column name="PLEXTATTR" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTypeActionEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTypeActionEntity.hbm.xml deleted file mode 100644 index d60adac..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLTypeActionEntity.hbm.xml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLTypeActionEntity" table="PLTYPEACTION" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="typeName" type="java.lang.String"> - <column name="typeName" not-null="true" /> - </property> - <property name="actionoId" type="java.lang.String"> - <column name="actionoId" not-null="true" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLUILayoutEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLUILayoutEntity.hbm.xml deleted file mode 100644 index 2208118..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PLUILayoutEntity.hbm.xml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PLUILayoutEntity" table="PLUILayout" - dynamic-update="true" dynamic-insert="true"> - <id name="plOId" type="java.lang.String"> - <column name="PLOID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="plCode" type="java.lang.String"> - <column name="PLCODE" not-null="true" /> - </property> - <property name="plName" type="java.lang.String"> - <column name="PLNAME" not-null="true" /> - </property> - <property name="plRelatedType" type="java.lang.String"> - <column name="plRelatedType" not-null="true" /> - </property> - <property name="plStyle" type="java.lang.String"> - <column name="plStyle" /> - </property> - <property name="plDesc" type="java.lang.String"> - <column name="plDesc" not-null="false" /> - </property> - <property name="plIsShowTab" type="java.lang.Short"> - <column name="plIsShowTab" not-null="false" /> - </property> - <property name="plIsShowForm" type="java.lang.Short"> - <column name="plIsShowForm" not-null="false" /> - </property> - <property name="plIsShowNavigator" type="java.lang.Short"> - <column name="plIsShowNavigator" not-null="false" /> - </property> - <property name="plCreateTime" type="java.util.Date"> - <column name="plCreateTime" not-null="true" /> - </property> - <property name="plCreateUser" type="java.lang.String"> - <column name="plCreateUser" not-null="true" /> - </property> - <property name="plModifyTime" type="java.util.Date"> - <column name="plModifyTime" not-null="true" /> - </property> - <property name="plModifyUser" type="java.lang.String"> - <column name="plModifyUser" not-null="true" /> - </property> - <property name="plLicensOrs" type="java.lang.String"> - <column name="plLicensOrs" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PortalVIEntity.hbm.xml b/Bin/lib/service/UIService/com/vci/server/portal/hbm/PortalVIEntity.hbm.xml deleted file mode 100644 index b204158..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/hbm/PortalVIEntity.hbm.xml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" -"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> -<hibernate-mapping package=""> - <class name="com.vci.server.portal.entity.PortalVIEntity" table="PLPORTALVI" - dynamic-update="true" dynamic-insert="true"> - <id name="id" type="java.lang.String"> - <column name="ID" not-null="true" /> - <generator class="assigned" /> - </id> - <property name="typeFlag" type="java.lang.Short"> - <column name="TYPEFLAG" not-null="false" /> - </property> - <property name="typeName" type="java.lang.String"> - <column name="TYPENAME" not-null="true" /> - </property> - <property name="viName" type="java.lang.String"> - <column name="VINAME" not-null="true" /> - </property> - <property name="viType" type="java.lang.Short"> - <column name="VITYPE" not-null="true" /> - </property> - <property name="prm" type="text"> - <column name="PRM" not-null="false" /> - </property> - </class> -</hibernate-mapping> \ No newline at end of file diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLActionEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLActionEntityService.class deleted file mode 100644 index ebaa4ce..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLActionEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLCommandParameterEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLCommandParameterEntityService.class deleted file mode 100644 index f87e36d..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLCommandParameterEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLPageDefinationEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLPageDefinationEntityService.class deleted file mode 100644 index a872214..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLPageDefinationEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLTabButtonEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLTabButtonEntityService.class deleted file mode 100644 index 37429b2..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLTabButtonEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLTabPageEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLTabPageEntityService.class deleted file mode 100644 index c9fa05e..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLTabPageEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLTypeActionEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLTypeActionEntityService.class deleted file mode 100644 index caaf19b..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLTypeActionEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PLUILayoutEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PLUILayoutEntityService.class deleted file mode 100644 index b5ca96f..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PLUILayoutEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/PortalVIEntityService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/PortalVIEntityService.class deleted file mode 100644 index 865bf8d..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/PortalVIEntityService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/service/UIDeleteService.class b/Bin/lib/service/UIService/com/vci/server/portal/service/UIDeleteService.class deleted file mode 100644 index 136aac0..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/service/UIDeleteService.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/com/vci/server/portal/tools/ServerTool.class b/Bin/lib/service/UIService/com/vci/server/portal/tools/ServerTool.class deleted file mode 100644 index 6feeafb..0000000 --- a/Bin/lib/service/UIService/com/vci/server/portal/tools/ServerTool.class +++ /dev/null Binary files differ diff --git a/Bin/lib/service/UIService/properties/PLMUIService.properties b/Bin/lib/service/UIService/properties/PLMUIService.properties deleted file mode 100644 index f61a78b..0000000 --- a/Bin/lib/service/UIService/properties/PLMUIService.properties +++ /dev/null @@ -1,54 +0,0 @@ -P0010UIService-00001=\u4fdd\u5b58\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00002=\u66f4\u65b0\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00003=\u5220\u9664\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00004=\u83b7\u53d6\u6307\u5b9a\u7c7b\u578b\u4e0b\u7684\u6240\u6709\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00005=\u83b7\u53d6\u6307\u5b9aID\u7684\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00006=\u4fdd\u5b58Action\u51fa\u9519\uff1a{0} -P0010UIService-00007=\u66f4\u65b0Action\u51fa\u9519\uff1a{0} -P0010UIService-00008=\u5220\u9664Action\u51fa\u9519\uff1a{0} -P0010UIService-00009=\u4fdd\u5b58command\u53c2\u6570\u51fa\u9519\uff1a{0} -P0010UIService-00010=\u66f4\u65b0command\u53c2\u6570\u51fa\u9519\uff1a{0} -P0010UIService-00011=\u5220\u9664command\u53c2\u6570\u51fa\u9519\uff1a{0} -P0010UIService-00012=\u4fdd\u5b58\u9875\u9762\u5e03\u5c40\u51fa\u9519\uff1a{0} -P0010UIService-00013=\u66f4\u65b0\u9875\u9762\u5e03\u5c40\u51fa\u9519\uff1a{0} -P0010UIService-00014=\u5220\u9664\u9875\u9762\u5e03\u5c40\u51fa\u9519\uff1a{0} -P0010UIService-00015=\u4fdd\u5b58\u9875\u7b7e\u6309\u94ae\u51fa\u9519\uff1a{0} -P0010UIService-00016=\u66f4\u65b0\u9875\u7b7e\u6309\u94ae\u51fa\u9519\uff1a{0} -P0010UIService-00017=\u5220\u9664\u9875\u7b7e\u6309\u94ae\u51fa\u9519\uff1a{0} -P0010UIService-00018=\u4fdd\u5b58\u9875\u7b7e\u51fa\u9519\uff1a{0} -P0010UIService-00019=\u66f4\u65b0\u9875\u7b7e\u51fa\u9519\uff1a{0} -P0010UIService-00020=\u5220\u9664\u9875\u7b7e\u51fa\u9519\uff1a{0} -P0010UIService-00021=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLAction\u51fa\u9519\uff1a{0} -P0010UIService-00022=\u83b7\u53d6\u6240\u6709PLAction\u51fa\u9519\uff1a{0} -P0010UIService-00023=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLCommandParameter\u51fa\u9519\uff1a{0} -P0010UIService-00024=\u6839\u636eplCommandOId\u83b7\u53d6PLCommandParameterArray\u51fa\u9519\uff1a{0} -P0010UIService-00025=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLPageLayoutDefination\u51fa\u9519\uff1a{0} -P0010UIService-00026=\u6839\u636e\u5173\u8054\u7c7b\u578b\u83b7\u53d6PLPageLayoutDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00027=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLTabPage\u51fa\u9519\uff1a{0} -P0010UIService-00028=\u6839\u636eplPageDefinationOId\u83b7\u53d6PLPageLayoutDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00029=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLTabButton\u51fa\u9519\uff1a{0} -P0010UIService-00030=\u6839\u636eplTableOId\u83b7\u53d6PLTabButtonArray\u51fa\u9519\uff1a{0} -P0010UIService-00031=\u4fdd\u5b58\u754c\u9762\u51fa\u9519\uff1a{0} -P0010UIService-00032=\u66f4\u65b0\u754c\u9762\u51fa\u9519\uff1a{0} -P0010UIService-00033=\u5220\u9664\u754c\u9762\u51fa\u9519\uff1a{0} -P0010UIService-00034=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLPageDefination\u51fa\u9519\uff1a{0} -P0010UIService-00035=\u6839\u636eplPageContextOId\u83b7\u53d6\u6307\u5b9a\u7684PLPageDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00036=\u6839\u636etype,code\u83b7\u53d6\u6307\u5b9a\u7684PLTabPage\u51fa\u9519\uff1a{0} -P0010UIService-00037=\u6839\u636e\u7c7b\u578b\u540d\u548c\u89c6\u56fe\u540d\u83b7\u53d6\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00038=\u6839\u636e\u7ea6\u675f\u6761\u4ef6\u7ec4\u67e5\u8be2\u6570\u7ec4, \u67e5\u8be2PLActions\u51fa\u9519\uff1a{0} -P0010UIService-00039=\u6839\u636e\u7ed9\u5b9a\u503c\u6a21\u7cca\u67e5\u8be2\u6570\u7ec4, \u67e5\u8be2PLPageDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00040=\u4fdd\u5b58\u7c7b\u578b\u4e0eaction\u5173\u7cfb\u65f6\u51fa\u9519\uff1a{0} -P0010UIService-00041=\u5220\u9664\u7c7b\u578b\u4e0eaction\u5173\u7cfb\u65f6\u51fa\u9519\uff1a{0} -P0010UIService-00042=\u901a\u8fc7\u7c7b\u578b\u67e5\u8be2\u6240\u6709\u7684action\u5bf9\u8c61\u65f6\u51fa\u9519\uff1a{0} -P0010UIService-00043=\u5224\u65ad\u8868\u5355\u8868\u683c\u4fee\u6539\u540d\u79f0\u65f6\u662f\u5426\u5df2\u7ecf\u88ab\u5f15\u7528\uff1a{0} -P0010UIService-00044=\u5224\u65ad\u5220\u9664\u8868\u5355\u65f6\u8be5\u8868\u5355\u662f\u5426\u5df2\u7ecf\u88ab\u8868\u683c\u5f15\u7528\uff1a{0} -P0010UIService-00045=\u6839\u636e\u5173\u8054\u7c7b\u578b\u548c\u7f16\u53f7\u83b7\u53d6PLPageLayoutDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00046=\u91cd\u65b0\u52a0\u8f7d\u7f13\u5b58\u51fa\u73b0\u9519\u8bef\uff0c\u8bf7\u518d\u6b21\u52a0\u8f7d\u6216\u8054\u7cfb\u7ba1\u7406\u5458\u3002{0} - -P0010UIService-00047=\u590d\u5236\u9875\u7b7e\u5230\u4e0a\u4e0b\u6587\u65f6\u53d1\u751f\u9519\u8bef\uff01{0} -P0010UIService-00048=\u590d\u5236\u7ec4\u4ef6\u5230\u9875\u7b7e\u65f6\u53d1\u751f\u9519\u8bef\uff01{0} - -common.msg.executingHasError=\u6267\u884c{0}\u65f6\u53d1\u751f\u9519\u8bef\uff01\n{1} -common.msg.pleaseChooseData=\u8bf7\u5148\u9009\u62e9\u6570\u636e\uff01{0} -common.msg.onlyChooseOneDataToSomeOpt=\u4e00\u6b21\u53ea\u80fd\u9009\u62e9\u4e00\u6761\u6570\u636e\u8fdb\u884c\u6b64\u64cd\u4f5c\uff01{0} -common.msg.confirmDelete=\u786e\u5b9a\u8981\u6267\u884c\u5220\u9664\u5417\uff1f{0} \ No newline at end of file diff --git a/Bin/lib/service/UIService/properties/PLMUIService_zh.properties b/Bin/lib/service/UIService/properties/PLMUIService_zh.properties deleted file mode 100644 index f61a78b..0000000 --- a/Bin/lib/service/UIService/properties/PLMUIService_zh.properties +++ /dev/null @@ -1,54 +0,0 @@ -P0010UIService-00001=\u4fdd\u5b58\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00002=\u66f4\u65b0\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00003=\u5220\u9664\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00004=\u83b7\u53d6\u6307\u5b9a\u7c7b\u578b\u4e0b\u7684\u6240\u6709\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00005=\u83b7\u53d6\u6307\u5b9aID\u7684\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00006=\u4fdd\u5b58Action\u51fa\u9519\uff1a{0} -P0010UIService-00007=\u66f4\u65b0Action\u51fa\u9519\uff1a{0} -P0010UIService-00008=\u5220\u9664Action\u51fa\u9519\uff1a{0} -P0010UIService-00009=\u4fdd\u5b58command\u53c2\u6570\u51fa\u9519\uff1a{0} -P0010UIService-00010=\u66f4\u65b0command\u53c2\u6570\u51fa\u9519\uff1a{0} -P0010UIService-00011=\u5220\u9664command\u53c2\u6570\u51fa\u9519\uff1a{0} -P0010UIService-00012=\u4fdd\u5b58\u9875\u9762\u5e03\u5c40\u51fa\u9519\uff1a{0} -P0010UIService-00013=\u66f4\u65b0\u9875\u9762\u5e03\u5c40\u51fa\u9519\uff1a{0} -P0010UIService-00014=\u5220\u9664\u9875\u9762\u5e03\u5c40\u51fa\u9519\uff1a{0} -P0010UIService-00015=\u4fdd\u5b58\u9875\u7b7e\u6309\u94ae\u51fa\u9519\uff1a{0} -P0010UIService-00016=\u66f4\u65b0\u9875\u7b7e\u6309\u94ae\u51fa\u9519\uff1a{0} -P0010UIService-00017=\u5220\u9664\u9875\u7b7e\u6309\u94ae\u51fa\u9519\uff1a{0} -P0010UIService-00018=\u4fdd\u5b58\u9875\u7b7e\u51fa\u9519\uff1a{0} -P0010UIService-00019=\u66f4\u65b0\u9875\u7b7e\u51fa\u9519\uff1a{0} -P0010UIService-00020=\u5220\u9664\u9875\u7b7e\u51fa\u9519\uff1a{0} -P0010UIService-00021=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLAction\u51fa\u9519\uff1a{0} -P0010UIService-00022=\u83b7\u53d6\u6240\u6709PLAction\u51fa\u9519\uff1a{0} -P0010UIService-00023=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLCommandParameter\u51fa\u9519\uff1a{0} -P0010UIService-00024=\u6839\u636eplCommandOId\u83b7\u53d6PLCommandParameterArray\u51fa\u9519\uff1a{0} -P0010UIService-00025=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLPageLayoutDefination\u51fa\u9519\uff1a{0} -P0010UIService-00026=\u6839\u636e\u5173\u8054\u7c7b\u578b\u83b7\u53d6PLPageLayoutDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00027=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLTabPage\u51fa\u9519\uff1a{0} -P0010UIService-00028=\u6839\u636eplPageDefinationOId\u83b7\u53d6PLPageLayoutDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00029=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLTabButton\u51fa\u9519\uff1a{0} -P0010UIService-00030=\u6839\u636eplTableOId\u83b7\u53d6PLTabButtonArray\u51fa\u9519\uff1a{0} -P0010UIService-00031=\u4fdd\u5b58\u754c\u9762\u51fa\u9519\uff1a{0} -P0010UIService-00032=\u66f4\u65b0\u754c\u9762\u51fa\u9519\uff1a{0} -P0010UIService-00033=\u5220\u9664\u754c\u9762\u51fa\u9519\uff1a{0} -P0010UIService-00034=\u6839\u636eID\u83b7\u53d6\u6307\u5b9a\u7684PLPageDefination\u51fa\u9519\uff1a{0} -P0010UIService-00035=\u6839\u636eplPageContextOId\u83b7\u53d6\u6307\u5b9a\u7684PLPageDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00036=\u6839\u636etype,code\u83b7\u53d6\u6307\u5b9a\u7684PLTabPage\u51fa\u9519\uff1a{0} -P0010UIService-00037=\u6839\u636e\u7c7b\u578b\u540d\u548c\u89c6\u56fe\u540d\u83b7\u53d6\u89c6\u56fe\u51fa\u9519\uff1a{0} -P0010UIService-00038=\u6839\u636e\u7ea6\u675f\u6761\u4ef6\u7ec4\u67e5\u8be2\u6570\u7ec4, \u67e5\u8be2PLActions\u51fa\u9519\uff1a{0} -P0010UIService-00039=\u6839\u636e\u7ed9\u5b9a\u503c\u6a21\u7cca\u67e5\u8be2\u6570\u7ec4, \u67e5\u8be2PLPageDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00040=\u4fdd\u5b58\u7c7b\u578b\u4e0eaction\u5173\u7cfb\u65f6\u51fa\u9519\uff1a{0} -P0010UIService-00041=\u5220\u9664\u7c7b\u578b\u4e0eaction\u5173\u7cfb\u65f6\u51fa\u9519\uff1a{0} -P0010UIService-00042=\u901a\u8fc7\u7c7b\u578b\u67e5\u8be2\u6240\u6709\u7684action\u5bf9\u8c61\u65f6\u51fa\u9519\uff1a{0} -P0010UIService-00043=\u5224\u65ad\u8868\u5355\u8868\u683c\u4fee\u6539\u540d\u79f0\u65f6\u662f\u5426\u5df2\u7ecf\u88ab\u5f15\u7528\uff1a{0} -P0010UIService-00044=\u5224\u65ad\u5220\u9664\u8868\u5355\u65f6\u8be5\u8868\u5355\u662f\u5426\u5df2\u7ecf\u88ab\u8868\u683c\u5f15\u7528\uff1a{0} -P0010UIService-00045=\u6839\u636e\u5173\u8054\u7c7b\u578b\u548c\u7f16\u53f7\u83b7\u53d6PLPageLayoutDefinationArray\u51fa\u9519\uff1a{0} -P0010UIService-00046=\u91cd\u65b0\u52a0\u8f7d\u7f13\u5b58\u51fa\u73b0\u9519\u8bef\uff0c\u8bf7\u518d\u6b21\u52a0\u8f7d\u6216\u8054\u7cfb\u7ba1\u7406\u5458\u3002{0} - -P0010UIService-00047=\u590d\u5236\u9875\u7b7e\u5230\u4e0a\u4e0b\u6587\u65f6\u53d1\u751f\u9519\u8bef\uff01{0} -P0010UIService-00048=\u590d\u5236\u7ec4\u4ef6\u5230\u9875\u7b7e\u65f6\u53d1\u751f\u9519\u8bef\uff01{0} - -common.msg.executingHasError=\u6267\u884c{0}\u65f6\u53d1\u751f\u9519\u8bef\uff01\n{1} -common.msg.pleaseChooseData=\u8bf7\u5148\u9009\u62e9\u6570\u636e\uff01{0} -common.msg.onlyChooseOneDataToSomeOpt=\u4e00\u6b21\u53ea\u80fd\u9009\u62e9\u4e00\u6761\u6570\u636e\u8fdb\u884c\u6b64\u64cd\u4f5c\uff01{0} -common.msg.confirmDelete=\u786e\u5b9a\u8981\u6267\u884c\u5220\u9664\u5417\uff1f{0} \ No newline at end of file diff --git a/Bin/lib/service/UIService/properties/PLMUIService_zhNative.properties b/Bin/lib/service/UIService/properties/PLMUIService_zhNative.properties deleted file mode 100644 index 1333aa1..0000000 --- a/Bin/lib/service/UIService/properties/PLMUIService_zhNative.properties +++ /dev/null @@ -1,54 +0,0 @@ -P0010UIService-00001=淇濆瓨瑙嗗浘鍑洪敊锛歿0} -P0010UIService-00002=鏇存柊瑙嗗浘鍑洪敊锛歿0} -P0010UIService-00003=鍒犻櫎瑙嗗浘鍑洪敊锛歿0} -P0010UIService-00004=鑾峰彇鎸囧畾绫诲瀷涓嬬殑鎵�鏈夎鍥惧嚭閿欙細{0} -P0010UIService-00005=鑾峰彇鎸囧畾ID鐨勮鍥惧嚭閿欙細{0} -P0010UIService-00006=淇濆瓨Action鍑洪敊锛歿0} -P0010UIService-00007=鏇存柊Action鍑洪敊锛歿0} -P0010UIService-00008=鍒犻櫎Action鍑洪敊锛歿0} -P0010UIService-00009=淇濆瓨command鍙傛暟鍑洪敊锛歿0} -P0010UIService-00010=鏇存柊command鍙傛暟鍑洪敊锛歿0} -P0010UIService-00011=鍒犻櫎command鍙傛暟鍑洪敊锛歿0} -P0010UIService-00012=淇濆瓨椤甸潰甯冨眬鍑洪敊锛歿0} -P0010UIService-00013=鏇存柊椤甸潰甯冨眬鍑洪敊锛歿0} -P0010UIService-00014=鍒犻櫎椤甸潰甯冨眬鍑洪敊锛歿0} -P0010UIService-00015=淇濆瓨椤电鎸夐挳鍑洪敊锛歿0} -P0010UIService-00016=鏇存柊椤电鎸夐挳鍑洪敊锛歿0} -P0010UIService-00017=鍒犻櫎椤电鎸夐挳鍑洪敊锛歿0} -P0010UIService-00018=淇濆瓨椤电鍑洪敊锛歿0} -P0010UIService-00019=鏇存柊椤电鍑洪敊锛歿0} -P0010UIService-00020=鍒犻櫎椤电鍑洪敊锛歿0} -P0010UIService-00021=鏍规嵁ID鑾峰彇鎸囧畾鐨凱LAction鍑洪敊锛歿0} -P0010UIService-00022=鑾峰彇鎵�鏈塒LAction鍑洪敊锛歿0} -P0010UIService-00023=鏍规嵁ID鑾峰彇鎸囧畾鐨凱LCommandParameter鍑洪敊锛歿0} -P0010UIService-00024=鏍规嵁plCommandOId鑾峰彇PLCommandParameterArray鍑洪敊锛歿0} -P0010UIService-00025=鏍规嵁ID鑾峰彇鎸囧畾鐨凱LPageLayoutDefination鍑洪敊锛歿0} -P0010UIService-00026=鏍规嵁鍏宠仈绫诲瀷鑾峰彇PLPageLayoutDefinationArray鍑洪敊锛歿0} -P0010UIService-00027=鏍规嵁ID鑾峰彇鎸囧畾鐨凱LTabPage鍑洪敊锛歿0} -P0010UIService-00028=鏍规嵁plPageDefinationOId鑾峰彇PLPageLayoutDefinationArray鍑洪敊锛歿0} -P0010UIService-00029=鏍规嵁ID鑾峰彇鎸囧畾鐨凱LTabButton鍑洪敊锛歿0} -P0010UIService-00030=鏍规嵁plTableOId鑾峰彇PLTabButtonArray鍑洪敊锛歿0} -P0010UIService-00031=淇濆瓨鐣岄潰鍑洪敊锛歿0} -P0010UIService-00032=鏇存柊鐣岄潰鍑洪敊锛歿0} -P0010UIService-00033=鍒犻櫎鐣岄潰鍑洪敊锛歿0} -P0010UIService-00034=鏍规嵁ID鑾峰彇鎸囧畾鐨凱LPageDefination鍑洪敊锛歿0} -P0010UIService-00035=鏍规嵁plPageContextOId鑾峰彇鎸囧畾鐨凱LPageDefinationArray鍑洪敊锛歿0} -P0010UIService-00036=鏍规嵁type,code鑾峰彇鎸囧畾鐨凱LTabPage鍑洪敊锛歿0} -P0010UIService-00037=鏍规嵁绫诲瀷鍚嶅拰瑙嗗浘鍚嶈幏鍙栬鍥惧嚭閿欙細{0} -P0010UIService-00038=鏍规嵁绾︽潫鏉′欢缁勬煡璇㈡暟缁�, 鏌ヨPLActions鍑洪敊锛歿0} -P0010UIService-00039=鏍规嵁缁欏畾鍊兼ā绯婃煡璇㈡暟缁�, 鏌ヨPLPageDefinationArray鍑洪敊锛歿0} -P0010UIService-00040=淇濆瓨绫诲瀷涓巃ction鍏崇郴鏃跺嚭閿欙細{0} -P0010UIService-00041=鍒犻櫎绫诲瀷涓巃ction鍏崇郴鏃跺嚭閿欙細{0} -P0010UIService-00042=閫氳繃绫诲瀷鏌ヨ鎵�鏈夌殑action瀵硅薄鏃跺嚭閿欙細{0} -P0010UIService-00043=鍒ゆ柇琛ㄥ崟琛ㄦ牸淇敼鍚嶇О鏃舵槸鍚﹀凡缁忚寮曠敤锛歿0} -P0010UIService-00044=鍒ゆ柇鍒犻櫎琛ㄥ崟鏃惰琛ㄥ崟鏄惁宸茬粡琚〃鏍煎紩鐢細{0} -P0010UIService-00045=鏍规嵁鍏宠仈绫诲瀷鍜岀紪鍙疯幏鍙朠LPageLayoutDefinationArray鍑洪敊锛歿0} -P0010UIService-00046=閲嶆柊鍔犺浇缂撳瓨鍑虹幇閿欒锛岃鍐嶆鍔犺浇鎴栬仈绯荤鐞嗗憳銆倇0} - -P0010UIService-00047=澶嶅埗椤电鍒颁笂涓嬫枃鏃跺彂鐢熼敊璇紒{0} -P0010UIService-00048=澶嶅埗缁勪欢鍒伴〉绛炬椂鍙戠敓閿欒锛亄0} - -common.msg.executingHasError=鎵ц{0}鏃跺彂鐢熼敊璇紒\n{1} -common.msg.pleaseChooseData=璇峰厛閫夋嫨鏁版嵁锛亄0} -common.msg.onlyChooseOneDataToSomeOpt=涓�娆″彧鑳介�夋嫨涓�鏉℃暟鎹繘琛屾鎿嶄綔锛亄0} -common.msg.confirmDelete=纭畾瑕佹墽琛屽垹闄ゅ悧锛焮0} \ No newline at end of file diff --git a/Bin/lib/service/UIService/properties/hibernate.map.xml b/Bin/lib/service/UIService/properties/hibernate.map.xml deleted file mode 100644 index 74f90a9..0000000 --- a/Bin/lib/service/UIService/properties/hibernate.map.xml +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<hbmfiles> - <!-- portal_START--> - <mapping resource="com/vci/server/portal/hbm/PLActionClsEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLActionParamEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLTypeActionEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PortalVIEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLActionEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLUILayoutEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLTabPageEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLTabButtonEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLCommandParameterEntity.hbm.xml"/> - <mapping resource="com/vci/server/portal/hbm/PLPageDefinationEntity.hbm.xml"/> -</hbmfiles> \ No newline at end of file diff --git a/Bin/lib/service/VciServiceMain.jar b/Bin/lib/service/VciServiceMain.jar deleted file mode 100644 index e4bd80e..0000000 --- a/Bin/lib/service/VciServiceMain.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/VolumeService.jar b/Bin/lib/service/VolumeService.jar deleted file mode 100644 index ab4afc4..0000000 --- a/Bin/lib/service/VolumeService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/WFPlugins.jar b/Bin/lib/service/WFPlugins.jar deleted file mode 100644 index 8042853..0000000 --- a/Bin/lib/service/WFPlugins.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/service/WFService.jar b/Bin/lib/service/WFService.jar deleted file mode 100644 index 25dbf09..0000000 --- a/Bin/lib/service/WFService.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/IKAnalyzer2012FF_u1.jar b/Bin/lib/thrid/IKAnalyzer2012FF_u1.jar deleted file mode 100644 index 9ec77c8..0000000 --- a/Bin/lib/thrid/IKAnalyzer2012FF_u1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/XmlSchema-1.1.jar b/Bin/lib/thrid/XmlSchema-1.1.jar deleted file mode 100644 index a52c562..0000000 --- a/Bin/lib/thrid/XmlSchema-1.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/activation.jar b/Bin/lib/thrid/activation.jar deleted file mode 100644 index df8003b..0000000 --- a/Bin/lib/thrid/activation.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/antlr-2.7.6.jar b/Bin/lib/thrid/antlr-2.7.6.jar deleted file mode 100644 index 3702b64..0000000 --- a/Bin/lib/thrid/antlr-2.7.6.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/avalon-framework-4.1.5.jar b/Bin/lib/thrid/avalon-framework-4.1.5.jar deleted file mode 100644 index a24b1c7..0000000 --- a/Bin/lib/thrid/avalon-framework-4.1.5.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/axis-ant.jar b/Bin/lib/thrid/axis-ant.jar deleted file mode 100644 index 17527ff..0000000 --- a/Bin/lib/thrid/axis-ant.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/axis.jar b/Bin/lib/thrid/axis.jar deleted file mode 100644 index 20b09a5..0000000 --- a/Bin/lib/thrid/axis.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/bsf-2.3.0.jar b/Bin/lib/thrid/bsf-2.3.0.jar deleted file mode 100644 index caa4dea..0000000 --- a/Bin/lib/thrid/bsf-2.3.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/bsh.jar b/Bin/lib/thrid/bsh.jar deleted file mode 100644 index e326510..0000000 --- a/Bin/lib/thrid/bsh.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/c3p0-0.9.1.jar b/Bin/lib/thrid/c3p0-0.9.1.jar deleted file mode 100644 index 693667a..0000000 --- a/Bin/lib/thrid/c3p0-0.9.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-codec-1.3.jar b/Bin/lib/thrid/commons-codec-1.3.jar deleted file mode 100644 index 957b675..0000000 --- a/Bin/lib/thrid/commons-codec-1.3.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-collections-3.1.jar b/Bin/lib/thrid/commons-collections-3.1.jar deleted file mode 100644 index 41e230f..0000000 --- a/Bin/lib/thrid/commons-collections-3.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-dbcp-1.1.jar b/Bin/lib/thrid/commons-dbcp-1.1.jar deleted file mode 100644 index c3c4d1f..0000000 --- a/Bin/lib/thrid/commons-dbcp-1.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-discovery-0.2.jar b/Bin/lib/thrid/commons-discovery-0.2.jar deleted file mode 100644 index b885548..0000000 --- a/Bin/lib/thrid/commons-discovery-0.2.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-fileupload-1.2.2.jar b/Bin/lib/thrid/commons-fileupload-1.2.2.jar deleted file mode 100644 index 131f192..0000000 --- a/Bin/lib/thrid/commons-fileupload-1.2.2.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-httpclient-3.0.jar b/Bin/lib/thrid/commons-httpclient-3.0.jar deleted file mode 100644 index 54a9300..0000000 --- a/Bin/lib/thrid/commons-httpclient-3.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-io-2.0.1.jar b/Bin/lib/thrid/commons-io-2.0.1.jar deleted file mode 100644 index 5b64b7d..0000000 --- a/Bin/lib/thrid/commons-io-2.0.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-logging-1.0.4.jar b/Bin/lib/thrid/commons-logging-1.0.4.jar deleted file mode 100644 index b73a80f..0000000 --- a/Bin/lib/thrid/commons-logging-1.0.4.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-net-1.4.1.jar b/Bin/lib/thrid/commons-net-1.4.1.jar deleted file mode 100644 index 9666a92..0000000 --- a/Bin/lib/thrid/commons-net-1.4.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/commons-pool2-2.6.2.jar b/Bin/lib/thrid/commons-pool2-2.6.2.jar deleted file mode 100644 index 4233f08..0000000 --- a/Bin/lib/thrid/commons-pool2-2.6.2.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/geronimo-stax-api_1.0_spec-1.0.jar b/Bin/lib/thrid/geronimo-stax-api_1.0_spec-1.0.jar deleted file mode 100644 index 0d6d374..0000000 --- a/Bin/lib/thrid/geronimo-stax-api_1.0_spec-1.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/guava-20.0.jar b/Bin/lib/thrid/guava-20.0.jar deleted file mode 100644 index 632772f..0000000 --- a/Bin/lib/thrid/guava-20.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/hibernate-jpa-2.0-api-1.0.1.Final.jar b/Bin/lib/thrid/hibernate-jpa-2.0-api-1.0.1.Final.jar deleted file mode 100644 index 1e9f71b..0000000 --- a/Bin/lib/thrid/hibernate-jpa-2.0-api-1.0.1.Final.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/hibernate3.jar b/Bin/lib/thrid/hibernate3.jar deleted file mode 100644 index 73df7b1..0000000 --- a/Bin/lib/thrid/hibernate3.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/inforbroker-core-5.1.0.jar b/Bin/lib/thrid/inforbroker-core-5.1.0.jar deleted file mode 100644 index 352b2a5..0000000 --- a/Bin/lib/thrid/inforbroker-core-5.1.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/javassist-3.12.0.GA.jar b/Bin/lib/thrid/javassist-3.12.0.GA.jar deleted file mode 100644 index 8f692f4..0000000 --- a/Bin/lib/thrid/javassist-3.12.0.GA.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jaxen-1.1-beta-9.jar b/Bin/lib/thrid/jaxen-1.1-beta-9.jar deleted file mode 100644 index e290706..0000000 --- a/Bin/lib/thrid/jaxen-1.1-beta-9.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jaxrpc.jar b/Bin/lib/thrid/jaxrpc.jar deleted file mode 100644 index a2c13d9..0000000 --- a/Bin/lib/thrid/jaxrpc.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jbpm-4.3.2.jar b/Bin/lib/thrid/jbpm-4.3.2.jar deleted file mode 100644 index 21ccd58..0000000 --- a/Bin/lib/thrid/jbpm-4.3.2.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jcalendar-1.3.3.jar b/Bin/lib/thrid/jcalendar-1.3.3.jar deleted file mode 100644 index 2e13b77..0000000 --- a/Bin/lib/thrid/jcalendar-1.3.3.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jcommon-1.0.17.jar b/Bin/lib/thrid/jcommon-1.0.17.jar deleted file mode 100644 index f1bd165..0000000 --- a/Bin/lib/thrid/jcommon-1.0.17.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jdom-1.0.jar b/Bin/lib/thrid/jdom-1.0.jar deleted file mode 100644 index 30d3977..0000000 --- a/Bin/lib/thrid/jdom-1.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jdsl.jar b/Bin/lib/thrid/jdsl.jar deleted file mode 100644 index c225421..0000000 --- a/Bin/lib/thrid/jdsl.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jedis-2.9.0.jar b/Bin/lib/thrid/jedis-2.9.0.jar deleted file mode 100644 index f4d27d3..0000000 --- a/Bin/lib/thrid/jedis-2.9.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jee-management-1.1.jar b/Bin/lib/thrid/jee-management-1.1.jar deleted file mode 100644 index 1911f08..0000000 --- a/Bin/lib/thrid/jee-management-1.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jfreechart-1.0.14.jar b/Bin/lib/thrid/jfreechart-1.0.14.jar deleted file mode 100644 index 0e4d020..0000000 --- a/Bin/lib/thrid/jfreechart-1.0.14.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jms-1.1.jar b/Bin/lib/thrid/jms-1.1.jar deleted file mode 100644 index dad227f..0000000 --- a/Bin/lib/thrid/jms-1.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/jta-1.1.jar b/Bin/lib/thrid/jta-1.1.jar deleted file mode 100644 index 6d225b7..0000000 --- a/Bin/lib/thrid/jta-1.1.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/juel-engine.jar b/Bin/lib/thrid/juel-engine.jar deleted file mode 100644 index d1de8a7..0000000 --- a/Bin/lib/thrid/juel-engine.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/juel-impl.jar b/Bin/lib/thrid/juel-impl.jar deleted file mode 100644 index 53c3522..0000000 --- a/Bin/lib/thrid/juel-impl.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/juel.jar b/Bin/lib/thrid/juel.jar deleted file mode 100644 index 6fda56c..0000000 --- a/Bin/lib/thrid/juel.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/livetribe-jsr223.jar b/Bin/lib/thrid/livetribe-jsr223.jar deleted file mode 100644 index 8d38ba1..0000000 --- a/Bin/lib/thrid/livetribe-jsr223.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/logkit-1.2.jar b/Bin/lib/thrid/logkit-1.2.jar deleted file mode 100644 index 67d4866..0000000 --- a/Bin/lib/thrid/logkit-1.2.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/ognl-2.6.11.jar b/Bin/lib/thrid/ognl-2.6.11.jar deleted file mode 100644 index 19cd379..0000000 --- a/Bin/lib/thrid/ognl-2.6.11.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/ojdbc8.jar b/Bin/lib/thrid/ojdbc8.jar deleted file mode 100644 index bf41243..0000000 --- a/Bin/lib/thrid/ojdbc8.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/picocontainer-1.2.jar b/Bin/lib/thrid/picocontainer-1.2.jar deleted file mode 100644 index fbb1c92..0000000 --- a/Bin/lib/thrid/picocontainer-1.2.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/plugin.jar b/Bin/lib/thrid/plugin.jar deleted file mode 100644 index 52a401b..0000000 --- a/Bin/lib/thrid/plugin.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/poi-3.9-20121203.jar b/Bin/lib/thrid/poi-3.9-20121203.jar deleted file mode 100644 index 0f46288..0000000 --- a/Bin/lib/thrid/poi-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/poi-ooxml-3.9-20121203.jar b/Bin/lib/thrid/poi-ooxml-3.9-20121203.jar deleted file mode 100644 index 8792d46..0000000 --- a/Bin/lib/thrid/poi-ooxml-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/poi-ooxml-schemas-3.9-20121203.jar b/Bin/lib/thrid/poi-ooxml-schemas-3.9-20121203.jar deleted file mode 100644 index eda4ef4..0000000 --- a/Bin/lib/thrid/poi-ooxml-schemas-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/poi-scratchpad-3.9-20121203.jar b/Bin/lib/thrid/poi-scratchpad-3.9-20121203.jar deleted file mode 100644 index 1520855..0000000 --- a/Bin/lib/thrid/poi-scratchpad-3.9-20121203.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/portalcustom.jar b/Bin/lib/thrid/portalcustom.jar deleted file mode 100644 index 2c0af22..0000000 --- a/Bin/lib/thrid/portalcustom.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/proxool-0.8.3.jar b/Bin/lib/thrid/proxool-0.8.3.jar deleted file mode 100644 index c4f700c..0000000 --- a/Bin/lib/thrid/proxool-0.8.3.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/quartz-all-1.8.6.jar b/Bin/lib/thrid/quartz-all-1.8.6.jar deleted file mode 100644 index 86901d1..0000000 --- a/Bin/lib/thrid/quartz-all-1.8.6.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/rsyntax.jar b/Bin/lib/thrid/rsyntax.jar deleted file mode 100644 index 6903d1a..0000000 --- a/Bin/lib/thrid/rsyntax.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/saaj.jar b/Bin/lib/thrid/saaj.jar deleted file mode 100644 index 4ea696e..0000000 --- a/Bin/lib/thrid/saaj.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/sapjco.jar b/Bin/lib/thrid/sapjco.jar deleted file mode 100644 index e18912e..0000000 --- a/Bin/lib/thrid/sapjco.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/slf4j-api-1.7.14.jar b/Bin/lib/thrid/slf4j-api-1.7.14.jar deleted file mode 100644 index d5d64c4..0000000 --- a/Bin/lib/thrid/slf4j-api-1.7.14.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/slf4j-jdk14-1.7.14.jar b/Bin/lib/thrid/slf4j-jdk14-1.7.14.jar deleted file mode 100644 index 720f7fd..0000000 --- a/Bin/lib/thrid/slf4j-jdk14-1.7.14.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/xml-apis.jar b/Bin/lib/thrid/xml-apis.jar deleted file mode 100644 index d42c0ea..0000000 --- a/Bin/lib/thrid/xml-apis.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/xmlbeans-2.3.0.jar b/Bin/lib/thrid/xmlbeans-2.3.0.jar deleted file mode 100644 index ccd8163..0000000 --- a/Bin/lib/thrid/xmlbeans-2.3.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/xmlsec-1.3.0.jar b/Bin/lib/thrid/xmlsec-1.3.0.jar deleted file mode 100644 index 6b69b80..0000000 --- a/Bin/lib/thrid/xmlsec-1.3.0.jar +++ /dev/null Binary files differ diff --git a/Bin/lib/thrid/xstream-1.3.1.jar b/Bin/lib/thrid/xstream-1.3.1.jar deleted file mode 100644 index 4ef4219..0000000 --- a/Bin/lib/thrid/xstream-1.3.1.jar +++ /dev/null Binary files differ diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java index e5d8d37..0141b1b 100644 --- a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java @@ -1571,5 +1571,6 @@ //return UIContentDO2VO(context,true); return UIContentDO2VO(null,true); } + } diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/BeanUtil.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/BeanUtil.java new file mode 100644 index 0000000..da93b8c --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/BeanUtil.java @@ -0,0 +1,424 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ +package com.vci.web.util; + + +import com.vci.web.util.beans.BeanProperty; +import com.vci.web.util.beans.BladeBeanCopier; +import com.vci.web.util.convert.BladeConverter; +import com.vci.web.util.beans.BladeBeanMap; +import org.springframework.beans.BeanWrapper; +import org.springframework.beans.BeansException; +import org.springframework.beans.PropertyAccessorFactory; +import org.springframework.cglib.beans.BeanGenerator; +import org.springframework.lang.Nullable; + +import java.util.*; + +/** + * 瀹炰綋宸ュ叿绫� + * + * @author L.cm + */ +public class BeanUtil extends org.springframework.beans.BeanUtils { + + /** + * 瀹炰緥鍖栧璞� + * + * @param clazz 绫� + * @param <T> 娉涘瀷鏍囪 + * @return 瀵硅薄 + */ + @SuppressWarnings("unchecked") + public static <T> T newInstance(Class<?> clazz) { + return (T) instantiateClass(clazz); + } + + /** + * 瀹炰緥鍖栧璞� + * + * @param clazzStr 绫诲悕 + * @param <T> 娉涘瀷鏍囪 + * @return 瀵硅薄 + */ + public static <T> T newInstance(String clazzStr) { + try { + Class<?> clazz = ClassUtil.forName(clazzStr, null); + return newInstance(clazz); + } catch (ClassNotFoundException e) { + throw new RuntimeException(e); + } + } + + /** + * 鑾峰彇Bean鐨勫睘鎬�, 鏀寔 propertyName 澶氱骇 锛歵est.user.name + * + * @param bean bean + * @param propertyName 灞炴�у悕 + * @return 灞炴�у�� + */ + @Nullable + public static Object getProperty(@Nullable Object bean, String propertyName) { + if (bean == null) { + return null; + } + BeanWrapper beanWrapper = PropertyAccessorFactory.forBeanPropertyAccess(bean); + return beanWrapper.getPropertyValue(propertyName); + } + + /** + * 璁剧疆Bean灞炴��, 鏀寔 propertyName 澶氱骇 锛歵est.user.name + * + * @param bean bean + * @param propertyName 灞炴�у悕 + * @param value 灞炴�у�� + */ + public static void setProperty(Object bean, String propertyName, Object value) { + Objects.requireNonNull(bean, "bean Could not null"); + BeanWrapper beanWrapper = PropertyAccessorFactory.forBeanPropertyAccess(bean); + beanWrapper.setPropertyValue(propertyName, value); + } + + /** + * 娣卞鍒� + * + * <p> + * 鏀寔 map bean + * </p> + * + * @param source 婧愬璞� + * @param <T> 娉涘瀷鏍囪 + * @return T + */ + @SuppressWarnings("unchecked") + @Nullable + public static <T> T clone(@Nullable T source) { + if (source == null) { + return null; + } + return (T) BeanUtil.copy(source, source.getClass()); + } + + /** + * copy 瀵硅薄灞炴�э紝榛樿涓嶄娇鐢–onvert + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param source 婧愬璞� + * @param clazz 绫诲悕 + * @param <T> 娉涘瀷鏍囪 + * @return T + */ + @Nullable + public static <T> T copy(@Nullable Object source, Class<T> clazz) { + if (source == null) { + return null; + } + return BeanUtil.copy(source, source.getClass(), clazz); + } + + /** + * copy 瀵硅薄灞炴�э紝榛樿涓嶄娇鐢–onvert + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param source 婧愬璞� + * @param sourceClazz 婧愮被鍨� + * @param targetClazz 杞崲鎴愮殑绫诲瀷 + * @param <T> 娉涘瀷鏍囪 + * @return T + */ + @Nullable + public static <T> T copy(@Nullable Object source, Class sourceClazz, Class<T> targetClazz) { + if (source == null) { + return null; + } + BladeBeanCopier copier = BladeBeanCopier.create(sourceClazz, targetClazz, false); + T to = newInstance(targetClazz); + copier.copy(source, to, null); + return to; + } + + /** + * copy 鍒楄〃瀵硅薄锛岄粯璁や笉浣跨敤Convert + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param sourceList 婧愬垪琛� + * @param targetClazz 杞崲鎴愮殑绫诲瀷 + * @param <T> 娉涘瀷鏍囪 + * @return T + */ + public static <T> List<T> copy(@Nullable Collection<?> sourceList, Class<T> targetClazz) { + if (sourceList == null || sourceList.isEmpty()) { + return Collections.emptyList(); + } + List<T> outList = new ArrayList<>(sourceList.size()); + Class<?> sourceClazz = null; + for (Object source : sourceList) { + if (source == null) { + continue; + } + if (sourceClazz == null) { + sourceClazz = source.getClass(); + } + T bean = BeanUtil.copy(source, sourceClazz, targetClazz); + outList.add(bean); + } + return outList; + } + + /** + * 鎷疯礉瀵硅薄 + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param source 婧愬璞� + * @param targetBean 闇�瑕佽祴鍊肩殑瀵硅薄 + */ + public static void copy(@Nullable Object source, @Nullable Object targetBean) { + if (source == null || targetBean == null) { + return; + } + BladeBeanCopier copier = BladeBeanCopier + .create(source.getClass(), targetBean.getClass(), false); + + copier.copy(source, targetBean, null); + } + + /** + * 鎷疯礉瀵硅薄锛宻ource 灞炴�у仛 null 鍒ゆ柇锛孧ap 涓嶆敮鎸侊紝map 浼氬仛 instanceof 鍒ゆ柇锛屼笉浼� + * + * <p> + * 鏀寔 bean copy + * </p> + * + * @param source 婧愬璞� + * @param targetBean 闇�瑕佽祴鍊肩殑瀵硅薄 + */ + public static void copyNonNull(@Nullable Object source, @Nullable Object targetBean) { + if (source == null || targetBean == null) { + return; + } + BladeBeanCopier copier = BladeBeanCopier + .create(source.getClass(), targetBean.getClass(), false, true); + + copier.copy(source, targetBean, null); + } + + /** + * 鎷疯礉瀵硅薄骞跺涓嶅悓绫诲瀷灞炴�ц繘琛岃浆鎹� + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param source 婧愬璞� + * @param targetClazz 杞崲鎴愮殑绫� + * @param <T> 娉涘瀷鏍囪 + * @return T + */ + @Nullable + public static <T> T copyWithConvert(@Nullable Object source, Class<T> targetClazz) { + if (source == null) { + return null; + } + return BeanUtil.copyWithConvert(source, source.getClass(), targetClazz); + } + + /** + * 鎷疯礉瀵硅薄骞跺涓嶅悓绫诲瀷灞炴�ц繘琛岃浆鎹� + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param source 婧愬璞� + * @param sourceClazz 婧愮被 + * @param targetClazz 杞崲鎴愮殑绫� + * @param <T> 娉涘瀷鏍囪 + * @return T + */ + @Nullable + public static <T> T copyWithConvert(@Nullable Object source, Class<?> sourceClazz, Class<T> targetClazz) { + if (source == null) { + return null; + } + BladeBeanCopier copier = BladeBeanCopier.create(sourceClazz, targetClazz, true); + T to = newInstance(targetClazz); + copier.copy(source, to, new BladeConverter(sourceClazz, targetClazz)); + return to; + } + + /** + * 鎷疯礉鍒楄〃骞跺涓嶅悓绫诲瀷灞炴�ц繘琛岃浆鎹� + * + * <p> + * 鏀寔 map bean copy + * </p> + * + * @param sourceList 婧愬璞″垪琛� + * @param targetClazz 杞崲鎴愮殑绫� + * @param <T> 娉涘瀷鏍囪 + * @return List + */ + public static <T> List<T> copyWithConvert(@Nullable Collection<?> sourceList, Class<T> targetClazz) { + if (sourceList == null || sourceList.isEmpty()) { + return Collections.emptyList(); + } + List<T> outList = new ArrayList<>(sourceList.size()); + Class<?> sourceClazz = null; + for (Object source : sourceList) { + if (source == null) { + continue; + } + if (sourceClazz == null) { + sourceClazz = source.getClass(); + } + T bean = BeanUtil.copyWithConvert(source, sourceClazz, targetClazz); + outList.add(bean); + } + return outList; + } + + /** + * Copy the property values of the given source bean into the target class. + * <p>Note: The source and target classes do not have to match or even be derived + * from each other, as long as the properties match. Any bean properties that the + * source bean exposes but the target bean does not will silently be ignored. + * <p>This is just a convenience method. For more complex transfer needs, + * + * @param source the source bean + * @param targetClazz the target bean class + * @param <T> 娉涘瀷鏍囪 + * @return T + * @throws BeansException if the copying failed + */ + @Nullable + public static <T> T copyProperties(@Nullable Object source, Class<T> targetClazz) throws BeansException { + if (source == null) { + return null; + } + T to = newInstance(targetClazz); + BeanUtil.copyProperties(source, to); + return to; + } + + /** + * Copy the property values of the given source bean into the target class. + * <p>Note: The source and target classes do not have to match or even be derived + * from each other, as long as the properties match. Any bean properties that the + * source bean exposes but the target bean does not will silently be ignored. + * <p>This is just a convenience method. For more complex transfer needs, + * + * @param sourceList the source list bean + * @param targetClazz the target bean class + * @param <T> 娉涘瀷鏍囪 + * @return List + * @throws BeansException if the copying failed + */ + public static <T> List<T> copyProperties(@Nullable Collection<?> sourceList, Class<T> targetClazz) throws BeansException { + if (sourceList == null || sourceList.isEmpty()) { + return Collections.emptyList(); + } + List<T> outList = new ArrayList<>(sourceList.size()); + for (Object source : sourceList) { + if (source == null) { + continue; + } + T bean = BeanUtil.copyProperties(source, targetClazz); + outList.add(bean); + } + return outList; + } + + /** + * 灏嗗璞¤鎴恗ap褰㈠紡 + * + * @param bean 婧愬璞� + * @return {Map} + */ + @SuppressWarnings("unchecked") + public static Map<String, Object> toMap(@Nullable Object bean) { + if (bean == null) { + return new HashMap<>(0); + } + return BladeBeanMap.create(bean); + } + + /** + * 灏唌ap 杞负 bean + * + * @param beanMap map + * @param valueType 瀵硅薄绫诲瀷 + * @param <T> 娉涘瀷鏍囪 + * @return {T} + */ + public static <T> T toBean(Map<String, Object> beanMap, Class<T> valueType) { + Objects.requireNonNull(beanMap, "beanMap Could not null"); + T to = newInstance(valueType); + if (beanMap.isEmpty()) { + return to; + } + BeanUtil.copy(beanMap, to); + return to; + } + + /** + * 缁欎竴涓狟ean娣诲姞瀛楁 + * + * @param superBean 鐖剁骇Bean + * @param props 鏂板灞炴�� + * @return {Object} + */ + @Nullable + public static Object generator(@Nullable Object superBean, BeanProperty... props) { + if (superBean == null) { + return null; + } + Class<?> superclass = superBean.getClass(); + Object genBean = generator(superclass, props); + BeanUtil.copy(superBean, genBean); + return genBean; + } + + /** + * 缁欎竴涓猚lass娣诲姞瀛楁 + * + * @param superclass 鐖剁骇 + * @param props 鏂板灞炴�� + * @return {Object} + */ + public static Object generator(Class<?> superclass, BeanProperty... props) { + BeanGenerator generator = new BeanGenerator(); + generator.setSuperclass(superclass); + generator.setUseCache(true); + for (BeanProperty prop : props) { + generator.addProperty(prop.getName(), prop.getType()); + } + return generator.create(); + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ClassUtil.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ClassUtil.java new file mode 100644 index 0000000..23d23b2 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ClassUtil.java @@ -0,0 +1,130 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ +package com.vci.web.util; + +import org.springframework.core.BridgeMethodResolver; +import org.springframework.core.DefaultParameterNameDiscoverer; +import org.springframework.core.MethodParameter; +import org.springframework.core.ParameterNameDiscoverer; +import org.springframework.core.annotation.AnnotatedElementUtils; +import org.springframework.core.annotation.SynthesizingMethodParameter; +import org.springframework.web.method.HandlerMethod; + +import java.lang.annotation.Annotation; +import java.lang.reflect.Constructor; +import java.lang.reflect.Method; + +/** + * 绫绘搷浣滃伐鍏� + * + * @author L.cm + */ +public class ClassUtil extends org.springframework.util.ClassUtils { + + private static final ParameterNameDiscoverer PARAMETER_NAME_DISCOVERER = new DefaultParameterNameDiscoverer(); + + /** + * 鑾峰彇鏂规硶鍙傛暟淇℃伅 + * + * @param constructor 鏋勯�犲櫒 + * @param parameterIndex 鍙傛暟搴忓彿 + * @return {MethodParameter} + */ + public static MethodParameter getMethodParameter(Constructor<?> constructor, int parameterIndex) { + MethodParameter methodParameter = new SynthesizingMethodParameter(constructor, parameterIndex); + methodParameter.initParameterNameDiscovery(PARAMETER_NAME_DISCOVERER); + return methodParameter; + } + + /** + * 鑾峰彇鏂规硶鍙傛暟淇℃伅 + * + * @param method 鏂规硶 + * @param parameterIndex 鍙傛暟搴忓彿 + * @return {MethodParameter} + */ + public static MethodParameter getMethodParameter(Method method, int parameterIndex) { + MethodParameter methodParameter = new SynthesizingMethodParameter(method, parameterIndex); + methodParameter.initParameterNameDiscovery(PARAMETER_NAME_DISCOVERER); + return methodParameter; + } + + /** + * 鑾峰彇Annotation + * + * @param method Method + * @param annotationType 娉ㄨВ绫� + * @param <A> 娉涘瀷鏍囪 + * @return {Annotation} + */ + public static <A extends Annotation> A getAnnotation(Method method, Class<A> annotationType) { + Class<?> targetClass = method.getDeclaringClass(); + // The method may be on an interface, but we need attributes from the target class. + // If the target class is null, the method will be unchanged. + Method specificMethod = ClassUtil.getMostSpecificMethod(method, targetClass); + // If we are dealing with method with generic parameters, find the original method. + specificMethod = BridgeMethodResolver.findBridgedMethod(specificMethod); + // 鍏堟壘鏂规硶锛屽啀鎵炬柟娉曚笂鐨勭被 + A annotation = AnnotatedElementUtils.findMergedAnnotation(specificMethod, annotationType); + ; + if (null != annotation) { + return annotation; + } + // 鑾峰彇绫讳笂闈㈢殑Annotation锛屽彲鑳藉寘鍚粍鍚堟敞瑙o紝鏁呴噰鐢╯pring鐨勫伐鍏风被 + return AnnotatedElementUtils.findMergedAnnotation(specificMethod.getDeclaringClass(), annotationType); + } + + /** + * 鑾峰彇Annotation + * + * @param handlerMethod HandlerMethod + * @param annotationType 娉ㄨВ绫� + * @param <A> 娉涘瀷鏍囪 + * @return {Annotation} + */ + public static <A extends Annotation> A getAnnotation(HandlerMethod handlerMethod, Class<A> annotationType) { + // 鍏堟壘鏂规硶锛屽啀鎵炬柟娉曚笂鐨勭被 + A annotation = handlerMethod.getMethodAnnotation(annotationType); + if (null != annotation) { + return annotation; + } + // 鑾峰彇绫讳笂闈㈢殑Annotation锛屽彲鑳藉寘鍚粍鍚堟敞瑙o紝鏁呴噰鐢╯pring鐨勫伐鍏风被 + Class<?> beanType = handlerMethod.getBeanType(); + return AnnotatedElementUtils.findMergedAnnotation(beanType, annotationType); + } + + + /** + * 鍒ゆ柇鏄惁鏈夋敞瑙� Annotation + * + * @param method Method + * @param annotationType 娉ㄨВ绫� + * @param <A> 娉涘瀷鏍囪 + * @return {boolean} + */ + public static <A extends Annotation> boolean isAnnotated(Method method, Class<A> annotationType) { + // 鍏堟壘鏂规硶锛屽啀鎵炬柟娉曚笂鐨勭被 + boolean isMethodAnnotated = AnnotatedElementUtils.isAnnotated(method, annotationType); + if (isMethodAnnotated) { + return true; + } + // 鑾峰彇绫讳笂闈㈢殑Annotation锛屽彲鑳藉寘鍚粍鍚堟敞瑙o紝鏁呴噰鐢╯pring鐨勫伐鍏风被 + Class<?> targetClass = method.getDeclaringClass(); + return AnnotatedElementUtils.isAnnotated(targetClass, annotationType); + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ConvertUtil.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ConvertUtil.java new file mode 100644 index 0000000..77556a0 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ConvertUtil.java @@ -0,0 +1,81 @@ +package com.vci.web.util; + +import com.vci.web.util.convert.BladeConversionService; +import org.springframework.core.convert.TypeDescriptor; +import org.springframework.core.convert.support.GenericConversionService; +import org.springframework.lang.Nullable; + +/** + * 鍩轰簬 spring ConversionService 绫诲瀷杞崲 + * + * @author L.cm + */ +@SuppressWarnings("unchecked") +public class ConvertUtil { + + /** + * Convenience operation for converting a source object to the specified targetType. + * {@link TypeDescriptor#forObject(Object)}. + * @param source the source object + * @param targetType the target type + * @param <T> 娉涘瀷鏍囪 + * @return the converted value + * @throws IllegalArgumentException if targetType is {@code null}, + * or sourceType is {@code null} but source is not {@code null} + */ + @Nullable + public static <T> T convert(@Nullable Object source, Class<T> targetType) { + if (source == null) { + return null; + } + if (ClassUtil.isAssignableValue(targetType, source)) { + return (T) source; + } + GenericConversionService conversionService = BladeConversionService.getInstance(); + return conversionService.convert(source, targetType); + } + + /** + * Convenience operation for converting a source object to the specified targetType, + * where the target type is a descriptor that provides additional conversion context. + * {@link TypeDescriptor#forObject(Object)}. + * @param source the source object + * @param sourceType the source type + * @param targetType the target type + * @param <T> 娉涘瀷鏍囪 + * @return the converted value + * @throws IllegalArgumentException if targetType is {@code null}, + * or sourceType is {@code null} but source is not {@code null} + */ + @Nullable + public static <T> T convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { + if (source == null) { + return null; + } + GenericConversionService conversionService = BladeConversionService.getInstance(); + return (T) conversionService.convert(source, sourceType, targetType); + } + + /** + * Convenience operation for converting a source object to the specified targetType, + * where the target type is a descriptor that provides additional conversion context. + * Simply delegates to {@link #convert(Object, TypeDescriptor, TypeDescriptor)} and + * encapsulates the construction of the source type descriptor using + * {@link TypeDescriptor#forObject(Object)}. + * @param source the source object + * @param targetType the target type + * @param <T> 娉涘瀷鏍囪 + * @return the converted value + * @throws IllegalArgumentException if targetType is {@code null}, + * or sourceType is {@code null} but source is not {@code null} + */ + @Nullable + public static <T> T convert(@Nullable Object source, TypeDescriptor targetType) { + if (source == null) { + return null; + } + GenericConversionService conversionService = BladeConversionService.getInstance(); + return (T) conversionService.convert(source, targetType); + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Func.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Func.java index 4d14c13..ffb3a4e 100644 --- a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Func.java +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Func.java @@ -1,12 +1,8 @@ package com.vci.web.util; -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.date.DateUtil; -import com.aspose.words.ConvertUtil; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.JsonNode; -import com.sun.jndi.toolkit.url.UrlUtil; import com.vci.web.util.jackson.JsonUtil; import org.springframework.util.StringUtils; import org.springframework.beans.BeansException; diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ReflectUtil.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ReflectUtil.java new file mode 100644 index 0000000..996fe45 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/ReflectUtil.java @@ -0,0 +1,180 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ +package com.vci.web.util; + +import org.springframework.beans.BeansException; +import org.springframework.cglib.core.CodeGenerationException; +import org.springframework.core.convert.Property; +import org.springframework.core.convert.TypeDescriptor; +import org.springframework.lang.Nullable; +import org.springframework.util.ReflectionUtils; + +import java.beans.PropertyDescriptor; +import java.lang.annotation.Annotation; +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.List; + +/** + * 鍙嶅皠宸ュ叿绫� + * + * @author L.cm + */ +public class ReflectUtil extends ReflectionUtils { + + /** + * 鑾峰彇 Bean 鐨勬墍鏈� get鏂规硶 + * + * @param type 绫� + * @return PropertyDescriptor鏁扮粍 + */ + public static PropertyDescriptor[] getBeanGetters(Class type) { + return getPropertiesHelper(type, true, false); + } + + /** + * 鑾峰彇 Bean 鐨勬墍鏈� set鏂规硶 + * + * @param type 绫� + * @return PropertyDescriptor鏁扮粍 + */ + public static PropertyDescriptor[] getBeanSetters(Class type) { + return getPropertiesHelper(type, false, true); + } + + /** + * 鑾峰彇 Bean 鐨勬墍鏈� PropertyDescriptor + * + * @param type 绫� + * @param read 璇诲彇鏂规硶 + * @param write 鍐欐柟娉� + * @return PropertyDescriptor鏁扮粍 + */ + public static PropertyDescriptor[] getPropertiesHelper(Class type, boolean read, boolean write) { + try { + PropertyDescriptor[] all = BeanUtil.getPropertyDescriptors(type); + if (read && write) { + return all; + } else { + List<PropertyDescriptor> properties = new ArrayList<>(all.length); + for (PropertyDescriptor pd : all) { + if (read && pd.getReadMethod() != null) { + properties.add(pd); + } else if (write && pd.getWriteMethod() != null) { + properties.add(pd); + } + } + return properties.toArray(new PropertyDescriptor[0]); + } + } catch (BeansException ex) { + throw new CodeGenerationException(ex); + } + } + + /** + * 鑾峰彇 bean 鐨勫睘鎬т俊鎭� + * @param propertyType 绫诲瀷 + * @param propertyName 灞炴�у悕 + * @return {Property} + */ + @Nullable + public static Property getProperty(Class<?> propertyType, String propertyName) { + PropertyDescriptor propertyDescriptor = BeanUtil.getPropertyDescriptor(propertyType, propertyName); + if (propertyDescriptor == null) { + return null; + } + return ReflectUtil.getProperty(propertyType, propertyDescriptor, propertyName); + } + + /** + * 鑾峰彇 bean 鐨勫睘鎬т俊鎭� + * @param propertyType 绫诲瀷 + * @param propertyDescriptor PropertyDescriptor + * @param propertyName 灞炴�у悕 + * @return {Property} + */ + public static Property getProperty(Class<?> propertyType, PropertyDescriptor propertyDescriptor, String propertyName) { + Method readMethod = propertyDescriptor.getReadMethod(); + Method writeMethod = propertyDescriptor.getWriteMethod(); + return new Property(propertyType, readMethod, writeMethod, propertyName); + } + + /** + * 鑾峰彇 bean 鐨勫睘鎬т俊鎭� + * @param propertyType 绫诲瀷 + * @param propertyName 灞炴�у悕 + * @return {Property} + */ + @Nullable + public static TypeDescriptor getTypeDescriptor(Class<?> propertyType, String propertyName) { + Property property = ReflectUtil.getProperty(propertyType, propertyName); + if (property == null) { + return null; + } + return new TypeDescriptor(property); + } + + /** + * 鑾峰彇 绫诲睘鎬т俊鎭� + * @param propertyType 绫诲瀷 + * @param propertyDescriptor PropertyDescriptor + * @param propertyName 灞炴�у悕 + * @return {Property} + */ + public static TypeDescriptor getTypeDescriptor(Class<?> propertyType, PropertyDescriptor propertyDescriptor, String propertyName) { + Method readMethod = propertyDescriptor.getReadMethod(); + Method writeMethod = propertyDescriptor.getWriteMethod(); + Property property = new Property(propertyType, readMethod, writeMethod, propertyName); + return new TypeDescriptor(property); + } + + /** + * 鑾峰彇 绫诲睘鎬� + * @param clazz 绫讳俊鎭� + * @param fieldName 灞炴�у悕 + * @return Field + */ + @Nullable + public static Field getField(Class<?> clazz, String fieldName) { + while (clazz != Object.class) { + try { + return clazz.getDeclaredField(fieldName); + } catch (NoSuchFieldException e) { + clazz = clazz.getSuperclass(); + } + } + return null; + } + + /** + * 鑾峰彇 鎵�鏈� field 灞炴�т笂鐨勬敞瑙� + * @param clazz 绫� + * @param fieldName 灞炴�у悕 + * @param annotationClass 娉ㄨВ + * @param <T> 娉ㄨВ娉涘瀷 + * @return 娉ㄨВ + */ + @Nullable + public static <T extends Annotation> T getAnnotation(Class<?> clazz, String fieldName, Class<T> annotationClass) { + Field field = ReflectUtil.getField(clazz, fieldName); + if (field == null) { + return null; + } + return field.getAnnotation(annotationClass); + } +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Unchecked.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Unchecked.java new file mode 100644 index 0000000..737b21f --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/Unchecked.java @@ -0,0 +1,106 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util; + +import com.vci.web.util.function.*; +import java.util.Comparator; +import java.util.Objects; +import java.util.concurrent.Callable; +import java.util.function.Consumer; +import java.util.function.Function; +import java.util.function.Supplier; + +/** + * Lambda 鍙楁寮傚父澶勭悊 + * + * <p> + * https://segmentfault.com/a/1190000007832130 + * https://github.com/jOOQ/jOOL + * </p> + * + * @author L.cm + */ +public class Unchecked { + + public static <T, R> Function<T, R> function(CheckedFunction<T, R> mapper) { + Objects.requireNonNull(mapper); + return t -> { + try { + return mapper.apply(t); + } catch (Throwable e) { + throw Exceptions.unchecked(e); + } + }; + } + + public static <T> Consumer<T> consumer(CheckedConsumer<T> mapper) { + Objects.requireNonNull(mapper); + return t -> { + try { + mapper.accept(t); + } catch (Throwable e) { + throw Exceptions.unchecked(e); + } + }; + } + + public static <T> Supplier<T> supplier(CheckedSupplier<T> mapper) { + Objects.requireNonNull(mapper); + return () -> { + try { + return mapper.get(); + } catch (Throwable e) { + throw Exceptions.unchecked(e); + } + }; + } + + public static Runnable runnable(CheckedRunnable runnable) { + Objects.requireNonNull(runnable); + return () -> { + try { + runnable.run(); + } catch (Throwable e) { + throw Exceptions.unchecked(e); + } + }; + } + + public static <T> Callable<T> callable(CheckedCallable<T> callable) { + Objects.requireNonNull(callable); + return () -> { + try { + return callable.call(); + } catch (Throwable e) { + throw Exceptions.unchecked(e); + } + }; + } + + public static <T> Comparator<T> comparator(CheckedComparator<T> comparator) { + Objects.requireNonNull(comparator); + return (T o1, T o2) -> { + try { + return comparator.compare(o1, o2); + } catch (Throwable e) { + throw Exceptions.unchecked(e); + } + }; + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/UrlUtil.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/UrlUtil.java new file mode 100644 index 0000000..6ee51f2 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/UrlUtil.java @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ +package com.vci.web.util; + +import java.net.URI; +import java.net.URISyntaxException; +import java.nio.charset.Charset; + +/** + * url澶勭悊宸ュ叿绫� + * + * @author L.cm + */ +public class UrlUtil extends org.springframework.web.util.UriUtils { + + /** + * url 缂栫爜 + * + * @param source source + * @return sourced String + */ + public static String encode(String source) { + return UrlUtil.encode(source, Charsets.UTF_8); + } + + /** + * url 瑙g爜 + * + * @param source source + * @return decoded String + */ + public static String decode(String source) { + return UrlUtil.decode(source, Charsets.UTF_8); + } + + /** + * url 缂栫爜 + * + * @param source url + * @param charset 瀛楃闆� + * @return 缂栫爜鍚庣殑url + */ + @Deprecated + public static String encodeURL(String source, Charset charset) { + return UrlUtil.encode(source, charset.name()); + } + + /** + * url 瑙g爜 + * + * @param source url + * @param charset 瀛楃闆� + * @return 瑙g爜url + */ + @Deprecated + public static String decodeURL(String source, Charset charset) { + return UrlUtil.decode(source, charset.name()); + } + + /** + * 鑾峰彇url璺緞 + * + * @param uriStr 璺緞 + * @return url璺緞 + */ + public static String getPath(String uriStr) { + URI uri; + + try { + uri = new URI(uriStr); + } catch (URISyntaxException var3) { + throw new RuntimeException(var3); + } + + return uri.getPath(); + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BeanProperty.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BeanProperty.java new file mode 100644 index 0000000..e19bbf5 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BeanProperty.java @@ -0,0 +1,16 @@ +package com.vci.web.util.beans; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Bean灞炴�� + * + * @author Chill + */ +@Getter +@AllArgsConstructor +public class BeanProperty { + private final String name; + private final Class<?> type; +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopier.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopier.java new file mode 100644 index 0000000..d71fbf7 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopier.java @@ -0,0 +1,404 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.beans; + +import com.vci.web.util.BeanUtil; +import com.vci.web.util.ClassUtil; +import com.vci.web.util.ReflectUtil; +import com.vci.web.util.StringUtil; +import org.springframework.asm.ClassVisitor; +import org.springframework.asm.Label; +import org.springframework.asm.Opcodes; +import org.springframework.asm.Type; +import org.springframework.cglib.core.*; +import org.springframework.lang.Nullable; +import org.springframework.util.ClassUtils; + +import java.beans.PropertyDescriptor; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.security.ProtectionDomain; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +/** + * spring cglib 榄旀敼 + * + * <p> + * 1. 鏀寔閾惧紡 bean锛屾敮鎸� map + * 2. ClassLoader 璺� target 淇濇寔涓�鑷� + * </p> + * + * @author L.cm + */ +public abstract class BladeBeanCopier { + private static final Type CONVERTER = TypeUtils.parseType("org.springframework.cglib.core.Converter"); + private static final Type BEAN_COPIER = TypeUtils.parseType(BladeBeanCopier.class.getName()); + private static final Type BEAN_MAP = TypeUtils.parseType(Map.class.getName()); + private static final Signature COPY = new Signature("copy", Type.VOID_TYPE, new Type[]{Constants.TYPE_OBJECT, Constants.TYPE_OBJECT, CONVERTER}); + private static final Signature CONVERT = TypeUtils.parseSignature("Object convert(Object, Class, Object)"); + private static final Signature BEAN_MAP_GET = TypeUtils.parseSignature("Object get(Object)"); + private static final Type CLASS_UTILS = TypeUtils.parseType(ClassUtils.class.getName()); + private static final Signature IS_ASSIGNABLE_VALUE = TypeUtils.parseSignature("boolean isAssignableValue(Class, Object)"); + /** + * The map to store {@link BladeBeanCopier} of source type and class type for copy. + */ + private static final ConcurrentMap<BladeBeanCopierKey, BladeBeanCopier> BEAN_COPIER_MAP = new ConcurrentHashMap<>(); + + public static BladeBeanCopier create(Class source, Class target, boolean useConverter) { + return BladeBeanCopier.create(source, target, useConverter, false); + } + + public static BladeBeanCopier create(Class source, Class target, boolean useConverter, boolean nonNull) { + BladeBeanCopierKey copierKey = new BladeBeanCopierKey(source, target, useConverter, nonNull); + // 鍒╃敤 ConcurrentMap 缂撳瓨 鎻愰珮鎬ц兘锛屾帴杩� 鐩存帴 get set + return BEAN_COPIER_MAP.computeIfAbsent(copierKey, key -> { + Generator gen = new Generator(); + gen.setSource(key.getSource()); + gen.setTarget(key.getTarget()); + gen.setUseConverter(key.isUseConverter()); + gen.setNonNull(key.isNonNull()); + return gen.create(key); + }); + } + + /** + * Bean copy + * + * @param from from Bean + * @param to to Bean + * @param converter Converter + */ + abstract public void copy(Object from, Object to, @Nullable Converter converter); + + public static class Generator extends AbstractClassGenerator { + private static final Source SOURCE = new Source(BladeBeanCopier.class.getName()); + private Class source; + private Class target; + private boolean useConverter; + private boolean nonNull; + + Generator() { + super(SOURCE); + } + + public void setSource(Class source) { + if (!Modifier.isPublic(source.getModifiers())) { + setNamePrefix(source.getName()); + } + this.source = source; + } + + public void setTarget(Class target) { + if (!Modifier.isPublic(target.getModifiers())) { + setNamePrefix(target.getName()); + } + this.target = target; + } + + public void setUseConverter(boolean useConverter) { + this.useConverter = useConverter; + } + + public void setNonNull(boolean nonNull) { + this.nonNull = nonNull; + } + + @Override + protected ClassLoader getDefaultClassLoader() { + // L.cm 淇濊瘉 鍜� 杩斿洖浣跨敤鍚屼竴涓� ClassLoader + return target.getClassLoader(); + } + + @Override + protected ProtectionDomain getProtectionDomain() { + return ReflectUtils.getProtectionDomain(source); + } + + @Override + public BladeBeanCopier create(Object key) { + return (BladeBeanCopier) super.create(key); + } + + @Override + public void generateClass(ClassVisitor v) { + Type sourceType = Type.getType(source); + Type targetType = Type.getType(target); + ClassEmitter ce = new ClassEmitter(v); + ce.begin_class(Constants.V1_2, + Constants.ACC_PUBLIC, + getClassName(), + BEAN_COPIER, + null, + Constants.SOURCE_FILE); + + EmitUtils.null_constructor(ce); + CodeEmitter e = ce.begin_method(Constants.ACC_PUBLIC, COPY, null); + + // map 鍗曠嫭澶勭悊 + if (Map.class.isAssignableFrom(source)) { + generateClassFormMap(ce, e, sourceType, targetType); + return; + } + + // 2018.12.27 by L.cm 鏀寔閾惧紡 bean + // 娉ㄦ剰锛氭澶勯渶鍏煎閾惧紡bean 浣跨敤浜� spring 鐨勬柟娉曪紝姣旇緝鑰楁椂 + PropertyDescriptor[] getters = ReflectUtil.getBeanGetters(source); + PropertyDescriptor[] setters = ReflectUtil.getBeanSetters(target); + Map<String, PropertyDescriptor> names = new HashMap<>(16); + for (PropertyDescriptor getter : getters) { + names.put(getter.getName(), getter); + } + + Local targetLocal = e.make_local(); + Local sourceLocal = e.make_local(); + e.load_arg(1); + e.checkcast(targetType); + e.store_local(targetLocal); + e.load_arg(0); + e.checkcast(sourceType); + e.store_local(sourceLocal); + + for (PropertyDescriptor setter : setters) { + String propName = setter.getName(); + + CopyProperty targetIgnoreCopy = ReflectUtil.getAnnotation(target, propName, CopyProperty.class); + // set 涓婃湁蹇界暐鐨� 娉ㄨВ + if (targetIgnoreCopy != null) { + if (targetIgnoreCopy.ignore()) { + continue; + } + // 娉ㄨВ涓婄殑鍒悕锛屽鏋滃埆鍚嶄笉涓虹┖锛屼娇鐢ㄥ埆鍚� + String aliasTargetPropName = targetIgnoreCopy.value(); + if (StringUtil.isNotBlank(aliasTargetPropName)) { + propName = aliasTargetPropName; + } + } + // 鎵惧埌瀵瑰簲鐨� get + PropertyDescriptor getter = names.get(propName); + // 娌℃湁 get 璺冲嚭 + if (getter == null) { + continue; + } + + MethodInfo read = ReflectUtils.getMethodInfo(getter.getReadMethod()); + Method writeMethod = setter.getWriteMethod(); + MethodInfo write = ReflectUtils.getMethodInfo(writeMethod); + Type returnType = read.getSignature().getReturnType(); + Type setterType = write.getSignature().getArgumentTypes()[0]; + Class<?> getterPropertyType = getter.getPropertyType(); + Class<?> setterPropertyType = setter.getPropertyType(); + + // L.cm 2019.01.12 浼樺寲閫昏緫锛屽厛鍒ゆ柇绫诲瀷锛岀被鍨嬩竴鑷寸洿鎺� set锛屼笉鍚屽啀鍒ゆ柇 鏄惁 绫诲瀷杞崲 + // nonNull Label + Label l0 = e.make_label(); + // 鍒ゆ柇绫诲瀷鏄惁涓�鑷达紝鍖呮嫭 鍖呰绫诲瀷 + if (ClassUtil.isAssignable(setterPropertyType, getterPropertyType)) { + // 2018.12.27 by L.cm 鏀寔閾惧紡 bean + e.load_local(targetLocal); + e.load_local(sourceLocal); + e.invoke(read); + boolean getterIsPrimitive = getterPropertyType.isPrimitive(); + boolean setterIsPrimitive = setterPropertyType.isPrimitive(); + + if (nonNull) { + // 闇�瑕佽惤鏍堬紝寮哄埗瑁呯 + e.box(returnType); + Local var = e.make_local(); + e.store_local(var); + e.load_local(var); + // nonNull Label + e.ifnull(l0); + e.load_local(targetLocal); + e.load_local(var); + // 闇�瑕佽惤鏍堬紝寮哄埗鎷嗙 + e.unbox_or_zero(setterType); + } else { + // 濡傛灉 get 涓哄師濮嬬被鍨嬶紝闇�瑕佽绠� + if (getterIsPrimitive && !setterIsPrimitive) { + e.box(returnType); + } + // 濡傛灉 set 涓哄師濮嬬被鍨嬶紝闇�瑕佹媶绠� + if (!getterIsPrimitive && setterIsPrimitive) { + e.unbox_or_zero(setterType); + } + } + + // 鏋勯�� set 鏂规硶 + invokeWrite(e, write, writeMethod, nonNull, l0); + } else if (useConverter) { + e.load_local(targetLocal); + e.load_arg(2); + e.load_local(sourceLocal); + e.invoke(read); + e.box(returnType); + + if (nonNull) { + Local var = e.make_local(); + e.store_local(var); + e.load_local(var); + e.ifnull(l0); + e.load_local(targetLocal); + e.load_arg(2); + e.load_local(var); + } + + EmitUtils.load_class(e, setterType); + // 鏇存敼鎴愪簡灞炴�у悕锛屼箣鍓嶆槸 set 鏂规硶鍚� + e.push(propName); + e.invoke_interface(CONVERTER, CONVERT); + e.unbox_or_zero(setterType); + + // 鏋勯�� set 鏂规硶 + invokeWrite(e, write, writeMethod, nonNull, l0); + } + } + e.return_value(); + e.end_method(); + ce.end_class(); + } + + private static void invokeWrite(CodeEmitter e, MethodInfo write, Method writeMethod, boolean nonNull, Label l0) { + // 杩斿洖鍊硷紝鍒ゆ柇 閾惧紡 bean + Class<?> returnType = writeMethod.getReturnType(); + e.invoke(write); + // 閾惧紡 bean锛屾湁杩斿洖鍊奸渶瑕� pop + if (!returnType.equals(Void.TYPE)) { + e.pop(); + } + if (nonNull) { + e.visitLabel(l0); + } + } + + @Override + protected Object firstInstance(Class type) { + return BeanUtil.newInstance(type); + } + + @Override + protected Object nextInstance(Object instance) { + return instance; + } + + /** + * 澶勭悊 map 鐨� copy + * @param ce ClassEmitter + * @param e CodeEmitter + * @param sourceType sourceType + * @param targetType targetType + */ + public void generateClassFormMap(ClassEmitter ce, CodeEmitter e, Type sourceType, Type targetType) { + // 2018.12.27 by L.cm 鏀寔閾惧紡 bean + PropertyDescriptor[] setters = ReflectUtil.getBeanSetters(target); + + // 鍏ュ彛鍙橀噺 + Local targetLocal = e.make_local(); + Local sourceLocal = e.make_local(); + e.load_arg(1); + e.checkcast(targetType); + e.store_local(targetLocal); + e.load_arg(0); + e.checkcast(sourceType); + e.store_local(sourceLocal); + Type mapBox = Type.getType(Object.class); + + for (PropertyDescriptor setter : setters) { + String propName = setter.getName(); + + // set 涓婃湁蹇界暐鐨� 娉ㄨВ + CopyProperty targetIgnoreCopy = ReflectUtil.getAnnotation(target, propName, CopyProperty.class); + if (targetIgnoreCopy != null) { + if (targetIgnoreCopy.ignore()) { + continue; + } + // 娉ㄨВ涓婄殑鍒悕 + String aliasTargetPropName = targetIgnoreCopy.value(); + if (StringUtil.isNotBlank(aliasTargetPropName)) { + propName = aliasTargetPropName; + } + } + + Method writeMethod = setter.getWriteMethod(); + MethodInfo write = ReflectUtils.getMethodInfo(writeMethod); + Type setterType = write.getSignature().getArgumentTypes()[0]; + + e.load_local(targetLocal); + e.load_local(sourceLocal); + + e.push(propName); + // 鎵ц map get + e.invoke_interface(BEAN_MAP, BEAN_MAP_GET); + // box 瑁呯锛岄伩鍏� array[] 鏁扮粍闂 + e.box(mapBox); + + // 鐢熸垚鍙橀噺 + Local var = e.make_local(); + e.store_local(var); + e.load_local(var); + + // 鍏堝垽鏂� 涓嶄负null锛岀劧鍚庡仛绫诲瀷鍒ゆ柇 + Label l0 = e.make_label(); + e.ifnull(l0); + EmitUtils.load_class(e, setterType); + e.load_local(var); + // ClassUtils.isAssignableValue(Integer.class, id) + e.invoke_static(CLASS_UTILS, IS_ASSIGNABLE_VALUE); + Label l1 = new Label(); + // 杩斿洖鍊硷紝鍒ゆ柇 閾惧紡 bean + Class<?> returnType = writeMethod.getReturnType(); + if (useConverter) { + e.if_jump(Opcodes.IFEQ, l1); + e.load_local(targetLocal); + e.load_local(var); + e.unbox_or_zero(setterType); + e.invoke(write); + if (!returnType.equals(Void.TYPE)) { + e.pop(); + } + e.goTo(l0); + e.visitLabel(l1); + e.load_local(targetLocal); + e.load_arg(2); + e.load_local(var); + EmitUtils.load_class(e, setterType); + e.push(propName); + e.invoke_interface(CONVERTER, CONVERT); + e.unbox_or_zero(setterType); + e.invoke(write); + } else { + e.if_jump(Opcodes.IFEQ, l0); + e.load_local(targetLocal); + e.load_local(var); + e.unbox_or_zero(setterType); + e.invoke(write); + } + // 杩斿洖鍊硷紝鍒ゆ柇 閾惧紡 bean + if (!returnType.equals(Void.TYPE)) { + e.pop(); + } + e.visitLabel(l0); + } + e.return_value(); + e.end_method(); + ce.end_class(); + } + } +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopierKey.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopierKey.java new file mode 100644 index 0000000..9b96826 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanCopierKey.java @@ -0,0 +1,20 @@ +package com.vci.web.util.beans; + +import lombok.AllArgsConstructor; +import lombok.EqualsAndHashCode; +import lombok.Getter; + +/** + * copy key + * + * @author L.cm + */ +@Getter +@EqualsAndHashCode +@AllArgsConstructor +public class BladeBeanCopierKey { + private final Class<?> source; + private final Class<?> target; + private final boolean useConverter; + private final boolean nonNull; +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMap.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMap.java new file mode 100644 index 0000000..aa35969 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMap.java @@ -0,0 +1,125 @@ +package com.vci.web.util.beans; + +import org.springframework.asm.ClassVisitor; +import org.springframework.cglib.beans.BeanMap; +import org.springframework.cglib.core.AbstractClassGenerator; +import org.springframework.cglib.core.ReflectUtils; + +import java.security.ProtectionDomain; + +/** + * 閲嶅啓 cglib BeanMap锛屾敮鎸侀摼寮廱ean + * + * @author L.cm + */ +public abstract class BladeBeanMap extends BeanMap { + protected BladeBeanMap() { + } + + protected BladeBeanMap(Object bean) { + super(bean); + } + + public static BladeBeanMap create(Object bean) { + BladeGenerator gen = new BladeGenerator(); + gen.setBean(bean); + return gen.create(); + } + + /** + * newInstance + * + * @param o Object + * @return BladeBeanMap + */ + @Override + public abstract BladeBeanMap newInstance(Object o); + + public static class BladeGenerator extends AbstractClassGenerator { + private static final Source SOURCE = new Source(BladeBeanMap.class.getName()); + + private Object bean; + private Class beanClass; + private int require; + + public BladeGenerator() { + super(SOURCE); + } + + /** + * Set the bean that the generated map should reflect. The bean may be swapped + * out for another bean of the same type using {@link #setBean}. + * Calling this method overrides any value previously set using {@link #setBeanClass}. + * You must call either this method or {@link #setBeanClass} before {@link #create}. + * + * @param bean the initial bean + */ + public void setBean(Object bean) { + this.bean = bean; + if (bean != null) { + beanClass = bean.getClass(); + } + } + + /** + * Set the class of the bean that the generated map should support. + * You must call either this method or {@link #setBeanClass} before {@link #create}. + * + * @param beanClass the class of the bean + */ + public void setBeanClass(Class beanClass) { + this.beanClass = beanClass; + } + + /** + * Limit the properties reflected by the generated map. + * + * @param require any combination of {@link #REQUIRE_GETTER} and + * {@link #REQUIRE_SETTER}; default is zero (any property allowed) + */ + public void setRequire(int require) { + this.require = require; + } + + @Override + protected ClassLoader getDefaultClassLoader() { + return beanClass.getClassLoader(); + } + + @Override + protected ProtectionDomain getProtectionDomain() { + return ReflectUtils.getProtectionDomain(beanClass); + } + + /** + * Create a new instance of the <code>BeanMap</code>. An existing + * generated class will be reused if possible. + * + * @return {BladeBeanMap} + */ + public BladeBeanMap create() { + if (beanClass == null) { + throw new IllegalArgumentException("Class of bean unknown"); + } + setNamePrefix(beanClass.getName()); + BladeBeanMapKey key = new BladeBeanMapKey(beanClass, require); + return (BladeBeanMap) super.create(key); + } + + @Override + public void generateClass(ClassVisitor v) throws Exception { + new BladeBeanMapEmitter(v, getClassName(), beanClass, require); + } + + @Override + protected Object firstInstance(Class type) { + return ((BeanMap) ReflectUtils.newInstance(type)).newInstance(bean); + } + + @Override + protected Object nextInstance(Object instance) { + return ((BeanMap) instance).newInstance(bean); + } + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapEmitter.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapEmitter.java new file mode 100644 index 0000000..915edb5 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapEmitter.java @@ -0,0 +1,192 @@ +package com.vci.web.util.beans; + +import com.vci.web.util.ReflectUtil; +import org.springframework.asm.ClassVisitor; +import org.springframework.asm.Label; +import org.springframework.asm.Type; +import org.springframework.cglib.core.*; + +import java.beans.PropertyDescriptor; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; + +/** + * 閲嶅啓 cglib BeanMap 澶勭悊鍣� + * + * @author L.cm + */ +class BladeBeanMapEmitter extends ClassEmitter { + private static final Type BEAN_MAP = TypeUtils.parseType(BladeBeanMap.class.getName()); + private static final Type FIXED_KEY_SET = TypeUtils.parseType("org.springframework.cglib.beans.FixedKeySet"); + private static final Signature CSTRUCT_OBJECT = TypeUtils.parseConstructor("Object"); + private static final Signature CSTRUCT_STRING_ARRAY = TypeUtils.parseConstructor("String[]"); + private static final Signature BEAN_MAP_GET = TypeUtils.parseSignature("Object get(Object, Object)"); + private static final Signature BEAN_MAP_PUT = TypeUtils.parseSignature("Object put(Object, Object, Object)"); + private static final Signature KEY_SET = TypeUtils.parseSignature("java.util.Set keySet()"); + private static final Signature NEW_INSTANCE = new Signature("newInstance", BEAN_MAP, new Type[]{Constants.TYPE_OBJECT}); + private static final Signature GET_PROPERTY_TYPE = TypeUtils.parseSignature("Class getPropertyType(String)"); + + public BladeBeanMapEmitter(ClassVisitor v, String className, Class type, int require) { + super(v); + + begin_class(Constants.V1_2, Constants.ACC_PUBLIC, className, BEAN_MAP, null, Constants.SOURCE_FILE); + EmitUtils.null_constructor(this); + EmitUtils.factory_method(this, NEW_INSTANCE); + generateConstructor(); + + Map<String, PropertyDescriptor> getters = makePropertyMap(ReflectUtil.getBeanGetters(type)); + Map<String, PropertyDescriptor> setters = makePropertyMap(ReflectUtil.getBeanSetters(type)); + Map<String, PropertyDescriptor> allProps = new HashMap<>(32); + allProps.putAll(getters); + allProps.putAll(setters); + + if (require != 0) { + for (Iterator it = allProps.keySet().iterator(); it.hasNext(); ) { + String name = (String) it.next(); + if ((((require & BladeBeanMap.REQUIRE_GETTER) != 0) && !getters.containsKey(name)) || + (((require & BladeBeanMap.REQUIRE_SETTER) != 0) && !setters.containsKey(name))) { + it.remove(); + getters.remove(name); + setters.remove(name); + } + } + } + generateGet(type, getters); + generatePut(type, setters); + + String[] allNames = getNames(allProps); + generateKeySet(allNames); + generateGetPropertyType(allProps, allNames); + end_class(); + } + + private Map<String, PropertyDescriptor> makePropertyMap(PropertyDescriptor[] props) { + Map<String, PropertyDescriptor> names = new HashMap<>(16); + for (PropertyDescriptor prop : props) { + String propName = prop.getName(); + // 杩囨护 getClass锛孲pring 鐨勫伐鍏风被浼氭嬁鍒拌鏂规硶 + if (!"class".equals(propName)) { + names.put(propName, prop); + } + } + return names; + } + + private String[] getNames(Map<String, PropertyDescriptor> propertyMap) { + return propertyMap.keySet().toArray(new String[0]); + } + + private void generateConstructor() { + CodeEmitter e = begin_method(Constants.ACC_PUBLIC, CSTRUCT_OBJECT, null); + e.load_this(); + e.load_arg(0); + e.super_invoke_constructor(CSTRUCT_OBJECT); + e.return_value(); + e.end_method(); + } + + private void generateGet(Class type, final Map<String, PropertyDescriptor> getters) { + final CodeEmitter e = begin_method(Constants.ACC_PUBLIC, BEAN_MAP_GET, null); + e.load_arg(0); + e.checkcast(Type.getType(type)); + e.load_arg(1); + e.checkcast(Constants.TYPE_STRING); + EmitUtils.string_switch(e, getNames(getters), Constants.SWITCH_STYLE_HASH, new ObjectSwitchCallback() { + @Override + public void processCase(Object key, Label end) { + PropertyDescriptor pd = getters.get(key); + MethodInfo method = ReflectUtils.getMethodInfo(pd.getReadMethod()); + e.invoke(method); + e.box(method.getSignature().getReturnType()); + e.return_value(); + } + + @Override + public void processDefault() { + e.aconst_null(); + e.return_value(); + } + }); + e.end_method(); + } + + private void generatePut(Class type, final Map<String, PropertyDescriptor> setters) { + final CodeEmitter e = begin_method(Constants.ACC_PUBLIC, BEAN_MAP_PUT, null); + e.load_arg(0); + e.checkcast(Type.getType(type)); + e.load_arg(1); + e.checkcast(Constants.TYPE_STRING); + EmitUtils.string_switch(e, getNames(setters), Constants.SWITCH_STYLE_HASH, new ObjectSwitchCallback() { + @Override + public void processCase(Object key, Label end) { + PropertyDescriptor pd = setters.get(key); + if (pd.getReadMethod() == null) { + e.aconst_null(); + } else { + MethodInfo read = ReflectUtils.getMethodInfo(pd.getReadMethod()); + e.dup(); + e.invoke(read); + e.box(read.getSignature().getReturnType()); + } + // move old value behind bean + e.swap(); + // new value + e.load_arg(2); + MethodInfo write = ReflectUtils.getMethodInfo(pd.getWriteMethod()); + e.unbox(write.getSignature().getArgumentTypes()[0]); + e.invoke(write); + e.return_value(); + } + + @Override + public void processDefault() { + // fall-through + } + }); + e.aconst_null(); + e.return_value(); + e.end_method(); + } + + private void generateKeySet(String[] allNames) { + // static initializer + declare_field(Constants.ACC_STATIC | Constants.ACC_PRIVATE, "keys", FIXED_KEY_SET, null); + + CodeEmitter e = begin_static(); + e.new_instance(FIXED_KEY_SET); + e.dup(); + EmitUtils.push_array(e, allNames); + e.invoke_constructor(FIXED_KEY_SET, CSTRUCT_STRING_ARRAY); + e.putfield("keys"); + e.return_value(); + e.end_method(); + + // keySet + e = begin_method(Constants.ACC_PUBLIC, KEY_SET, null); + e.load_this(); + e.getfield("keys"); + e.return_value(); + e.end_method(); + } + + private void generateGetPropertyType(final Map allProps, String[] allNames) { + final CodeEmitter e = begin_method(Constants.ACC_PUBLIC, GET_PROPERTY_TYPE, null); + e.load_arg(0); + EmitUtils.string_switch(e, allNames, Constants.SWITCH_STYLE_HASH, new ObjectSwitchCallback() { + @Override + public void processCase(Object key, Label end) { + PropertyDescriptor pd = (PropertyDescriptor) allProps.get(key); + EmitUtils.load_class(e, Type.getType(pd.getPropertyType())); + e.return_value(); + } + + @Override + public void processDefault() { + e.aconst_null(); + e.return_value(); + } + }); + e.end_method(); + } +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapKey.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapKey.java new file mode 100644 index 0000000..e015ae4 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/BladeBeanMapKey.java @@ -0,0 +1,16 @@ +package com.vci.web.util.beans; + +import lombok.AllArgsConstructor; +import lombok.EqualsAndHashCode; + +/** + * bean map key锛屾彁楂樻�ц兘 + * + * @author L.cm + */ +@EqualsAndHashCode +@AllArgsConstructor +public class BladeBeanMapKey { + private final Class type; + private final int require; +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/CopyProperty.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/CopyProperty.java new file mode 100644 index 0000000..d387f01 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/beans/CopyProperty.java @@ -0,0 +1,26 @@ +package com.vci.web.util.beans; + +import java.lang.annotation.*; + +/** + * copy 瀛楁 閰嶇疆 + * + * @author L.cm + */ +@Target(ElementType.FIELD) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface CopyProperty { + + /** + * 灞炴�у悕锛岀敤浜庢寚瀹氬埆鍚嶏紝榛樿浣跨敤锛歠ield name + * @return 灞炴�у悕 + */ + String value() default ""; + + /** + * 蹇界暐锛氶粯璁や负 false + * @return 鏄惁蹇界暐 + */ + boolean ignore() default false; +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConversionService.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConversionService.java new file mode 100644 index 0000000..3540be5 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConversionService.java @@ -0,0 +1,51 @@ +package com.vci.web.util.convert; + +import com.vci.web.util.convert.EnumToStringConverter; +import org.springframework.boot.convert.ApplicationConversionService; +import org.springframework.core.convert.support.GenericConversionService; +import org.springframework.lang.Nullable; +import org.springframework.util.StringValueResolver; + +/** + * 绫诲瀷 杞崲 鏈嶅姟锛屾坊鍔犱簡 IEnum 杞崲 + * + * @author L.cm + */ +public class BladeConversionService extends ApplicationConversionService { + @Nullable + private static volatile BladeConversionService SHARED_INSTANCE; + + public BladeConversionService() { + this(null); + } + + public BladeConversionService(@Nullable StringValueResolver embeddedValueResolver) { + super(embeddedValueResolver); + super.addConverter(new EnumToStringConverter()); + super.addConverter(new StringToEnumConverter()); + } + + /** + * Return a shared default application {@code ConversionService} instance, lazily + * building it once needed. + * <p> + * Note: This method actually returns an {@link BladeConversionService} + * instance. However, the {@code ConversionService} signature has been preserved for + * binary compatibility. + * @return the shared {@code BladeConversionService} instance (never{@code null}) + */ + public static GenericConversionService getInstance() { + BladeConversionService sharedInstance = BladeConversionService.SHARED_INSTANCE; + if (sharedInstance == null) { + synchronized (BladeConversionService.class) { + sharedInstance = BladeConversionService.SHARED_INSTANCE; + if (sharedInstance == null) { + sharedInstance = new BladeConversionService(); + BladeConversionService.SHARED_INSTANCE = sharedInstance; + } + } + } + return sharedInstance; + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConverter.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConverter.java new file mode 100644 index 0000000..978214a --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/BladeConverter.java @@ -0,0 +1,77 @@ +package com.vci.web.util.convert; + +import com.vci.web.util.ClassUtil; +import com.vci.web.util.ConvertUtil; +import com.vci.web.util.ReflectUtil; +import com.vci.web.util.Unchecked; +import com.vci.web.util.function.CheckedFunction; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.cglib.core.Converter; +import org.springframework.core.convert.TypeDescriptor; +import org.springframework.lang.Nullable; + +import java.lang.reflect.Field; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +/** + * 缁勫悎 spring cglib Converter 鍜� spring ConversionService + * + * @author L.cm + */ +@Slf4j +@AllArgsConstructor +public class BladeConverter implements Converter { + private static final ConcurrentMap<String, TypeDescriptor> TYPE_CACHE = new ConcurrentHashMap<>(); + private final Class<?> sourceClazz; + private final Class<?> targetClazz; + + /** + * cglib convert + * + * @param value 婧愬璞″睘鎬� + * @param target 鐩爣瀵硅薄灞炴�х被 + * @param fieldName 鐩爣鐨刦ield鍚嶏紝鍘熶负 set 鏂规硶鍚嶏紝BladeBeanCopier 閲屽仛浜嗘洿鏀� + * @return {Object} + */ + @Override + @Nullable + public Object convert(Object value, Class target, final Object fieldName) { + if (value == null) { + return null; + } + // 绫诲瀷涓�鏍凤紝涓嶉渶瑕佽浆鎹� + if (ClassUtil.isAssignableValue(target, value)) { + return value; + } + try { + TypeDescriptor targetDescriptor = BladeConverter.getTypeDescriptor(targetClazz, (String) fieldName); + // 1. 鍒ゆ柇 sourceClazz 涓� Map + if (Map.class.isAssignableFrom(sourceClazz)) { + return ConvertUtil.convert(value, targetDescriptor); + } else { + TypeDescriptor sourceDescriptor = BladeConverter.getTypeDescriptor(sourceClazz, (String) fieldName); + return ConvertUtil.convert(value, sourceDescriptor, targetDescriptor); + } + } catch (Throwable e) { + log.warn("BladeConverter error", e); + return null; + } + } + + private static TypeDescriptor getTypeDescriptor(final Class<?> clazz, final String fieldName) { + String srcCacheKey = clazz.getName() + fieldName; + // 蹇界暐鎶涘嚭寮傚父鐨勫嚱鏁帮紝瀹氫箟瀹屾暣娉涘瀷锛岄伩鍏嶇紪璇戦棶棰� + CheckedFunction<String, TypeDescriptor> uncheckedFunction = (key) -> { + // 杩欓噷 property 鐞嗚涓婁笉浼氫负 null + Field field = ReflectUtil.getField(clazz, fieldName); + if (field == null) { + throw new NoSuchFieldException(fieldName); + } + return new TypeDescriptor(field); + }; + return TYPE_CACHE.computeIfAbsent(srcCacheKey, Unchecked.function(uncheckedFunction)); + } +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/EnumToStringConverter.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/EnumToStringConverter.java new file mode 100644 index 0000000..fe10cdf --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/EnumToStringConverter.java @@ -0,0 +1,126 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.convert; + +import com.fasterxml.jackson.annotation.JsonValue; +import com.vci.web.util.ConvertUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.convert.TypeDescriptor; +import org.springframework.core.convert.converter.ConditionalGenericConverter; +import org.springframework.lang.Nullable; + +import java.lang.reflect.AccessibleObject; +import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +/** + * 鎺ユ敹鍙傛暟 鍚� jackson Enum -銆� String 杞崲 + * + * @author L.cm + */ +@Slf4j +public class EnumToStringConverter implements ConditionalGenericConverter { + /** + * 缂撳瓨 Enum 绫讳俊鎭紝鎻愪緵鎬ц兘 + */ + private static final ConcurrentMap<Class<?>, AccessibleObject> ENUM_CACHE_MAP = new ConcurrentHashMap<>(8); + + @Nullable + private static AccessibleObject getAnnotation(Class<?> clazz) { + Set<AccessibleObject> accessibleObjects = new HashSet<>(); + // JsonValue METHOD, FIELD + Field[] fields = clazz.getDeclaredFields(); + Collections.addAll(accessibleObjects, fields); + // methods + Method[] methods = clazz.getDeclaredMethods(); + Collections.addAll(accessibleObjects, methods); + for (AccessibleObject accessibleObject : accessibleObjects) { + // 澶嶇敤 jackson 鐨� JsonValue 娉ㄨВ + JsonValue jsonValue = accessibleObject.getAnnotation(JsonValue.class); + if (jsonValue != null && jsonValue.value()) { + accessibleObject.setAccessible(true); + return accessibleObject; + } + } + return null; + } + + @Override + public boolean matches(TypeDescriptor sourceType, TypeDescriptor targetType) { + return true; + } + + @Override + public Set<ConvertiblePair> getConvertibleTypes() { + Set<ConvertiblePair> pairSet = new HashSet<>(3); + pairSet.add(new ConvertiblePair(Enum.class, String.class)); + pairSet.add(new ConvertiblePair(Enum.class, Integer.class)); + pairSet.add(new ConvertiblePair(Enum.class, Long.class)); + return Collections.unmodifiableSet(pairSet); + } + + @Override + public Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { + if (source == null) { + return null; + } + Class<?> sourceClazz = sourceType.getType(); + AccessibleObject accessibleObject = ENUM_CACHE_MAP.computeIfAbsent(sourceClazz, EnumToStringConverter::getAnnotation); + Class<?> targetClazz = targetType.getType(); + // 濡傛灉涓簄ull锛岃蛋榛樿鐨勮浆鎹� + if (accessibleObject == null) { + if (String.class == targetClazz) { + return ((Enum) source).name(); + } + int ordinal = ((Enum) source).ordinal(); + return ConvertUtil.convert(ordinal, targetClazz); + } + try { + return EnumToStringConverter.invoke(sourceClazz, accessibleObject, source, targetClazz); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + @Nullable + private static Object invoke(Class<?> clazz, AccessibleObject accessibleObject, Object source, Class<?> targetClazz) + throws IllegalAccessException, InvocationTargetException { + Object value = null; + if (accessibleObject instanceof Field) { + Field field = (Field) accessibleObject; + value = field.get(source); + } else if (accessibleObject instanceof Method) { + Method method = (Method) accessibleObject; + Class<?> paramType = method.getParameterTypes()[0]; + // 绫诲瀷杞崲 + Object object = ConvertUtil.convert(source, paramType); + value = method.invoke(clazz, object); + } + if (value == null) { + return null; + } + return ConvertUtil.convert(value, targetClazz); + } +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/StringToEnumConverter.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/StringToEnumConverter.java new file mode 100644 index 0000000..cb36729 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/convert/StringToEnumConverter.java @@ -0,0 +1,126 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.convert; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.vci.web.util.ConvertUtil; +import com.vci.web.util.StringUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.core.convert.TypeDescriptor; +import org.springframework.core.convert.converter.ConditionalGenericConverter; +import org.springframework.lang.Nullable; + +import java.lang.reflect.AccessibleObject; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.ConcurrentMap; + +/** + * 鎺ユ敹鍙傛暟 鍚� jackson String -銆� Enum 杞崲 + * + * @author L.cm + */ +@Slf4j +public class StringToEnumConverter implements ConditionalGenericConverter { + /** + * 缂撳瓨 Enum 绫讳俊鎭紝鎻愪緵鎬ц兘 + */ + private static final ConcurrentMap<Class<?>, AccessibleObject> ENUM_CACHE_MAP = new ConcurrentHashMap<>(8); + + @Nullable + private static AccessibleObject getAnnotation(Class<?> clazz) { + Set<AccessibleObject> accessibleObjects = new HashSet<>(); + // JsonCreator METHOD, CONSTRUCTOR + Constructor<?>[] constructors = clazz.getConstructors(); + Collections.addAll(accessibleObjects, constructors); + // methods + Method[] methods = clazz.getDeclaredMethods(); + Collections.addAll(accessibleObjects, methods); + for (AccessibleObject accessibleObject : accessibleObjects) { + // 澶嶇敤 jackson 鐨� JsonCreator娉ㄨВ + JsonCreator jsonCreator = accessibleObject.getAnnotation(JsonCreator.class); + if (jsonCreator != null && JsonCreator.Mode.DISABLED != jsonCreator.mode()) { + accessibleObject.setAccessible(true); + return accessibleObject; + } + } + return null; + } + + @Override + public boolean matches(TypeDescriptor sourceType, TypeDescriptor targetType) { + return true; + } + + @Override + public Set<ConvertiblePair> getConvertibleTypes() { + return Collections.singleton(new ConvertiblePair(String.class, Enum.class)); + } + + @Nullable + @Override + public Object convert(@Nullable Object source, TypeDescriptor sourceType, TypeDescriptor targetType) { + if (StringUtil.isBlank((String) source)) { + return null; + } + Class<?> clazz = targetType.getType(); + AccessibleObject accessibleObject = ENUM_CACHE_MAP.computeIfAbsent(clazz, StringToEnumConverter::getAnnotation); + String value = ((String) source).trim(); + // 濡傛灉涓簄ull锛岃蛋榛樿鐨勮浆鎹� + if (accessibleObject == null) { + return valueOf(clazz, value); + } + try { + return StringToEnumConverter.invoke(clazz, accessibleObject, value); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return null; + } + + @SuppressWarnings("unchecked") + private static <T extends Enum<T>> T valueOf(Class<?> clazz, String value){ + return Enum.valueOf((Class<T>) clazz, value); + } + + @Nullable + private static Object invoke(Class<?> clazz, AccessibleObject accessibleObject, String value) + throws IllegalAccessException, InvocationTargetException, InstantiationException { + if (accessibleObject instanceof Constructor) { + Constructor constructor = (Constructor) accessibleObject; + Class<?> paramType = constructor.getParameterTypes()[0]; + // 绫诲瀷杞崲 + Object object = ConvertUtil.convert(value, paramType); + return constructor.newInstance(object); + } + if (accessibleObject instanceof Method) { + Method method = (Method) accessibleObject; + Class<?> paramType = method.getParameterTypes()[0]; + // 绫诲瀷杞崲 + Object object = ConvertUtil.convert(value, paramType); + return method.invoke(clazz, object); + } + return null; + } + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedCallable.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedCallable.java new file mode 100644 index 0000000..e61dd7c --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedCallable.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.function; + +import org.springframework.lang.Nullable; + +/** + * 鍙楁鐨� Callable + * + * @author L.cm + */ +@FunctionalInterface +public interface CheckedCallable<T> { + + /** + * Run this callable. + * + * @return result + * @throws Throwable CheckedException + */ + @Nullable + T call() throws Throwable; +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedComparator.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedComparator.java new file mode 100644 index 0000000..7511b85 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedComparator.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.function; + +/** + * 鍙楁鐨� Comparator + * + * @author L.cm + */ +@FunctionalInterface +public interface CheckedComparator<T> { + + /** + * Compares its two arguments for order. + * + * @param o1 o1 + * @param o2 o2 + * @return int + * @throws Throwable CheckedException + */ + int compare(T o1, T o2) throws Throwable; + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedConsumer.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedConsumer.java new file mode 100644 index 0000000..11f9694 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedConsumer.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.function; + +import org.springframework.lang.Nullable; + +/** + * 鍙楁鐨� Consumer + * + * @author L.cm + */ +@FunctionalInterface +public interface CheckedConsumer<T> { + + /** + * Run the Consumer + * + * @param t T + * @throws Throwable UncheckedException + */ + @Nullable + void accept(@Nullable T t) throws Throwable; + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedFunction.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedFunction.java new file mode 100644 index 0000000..a1cb096 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedFunction.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.function; + +import org.springframework.lang.Nullable; + +/** + * 鍙楁鐨� function + * + * @author L.cm + */ +@FunctionalInterface +public interface CheckedFunction<T, R> { + + /** + * Run the Function + * + * @param t T + * @return R R + * @throws Throwable CheckedException + */ + @Nullable + R apply(@Nullable T t) throws Throwable; + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedRunnable.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedRunnable.java new file mode 100644 index 0000000..7bd0407 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedRunnable.java @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.function; + +/** + * 鍙楁鐨� runnable + * + * @author L.cm + */ +@FunctionalInterface +public interface CheckedRunnable { + + /** + * Run this runnable. + * + * @throws Throwable CheckedException + */ + void run() throws Throwable; + +} diff --git a/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedSupplier.java b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedSupplier.java new file mode 100644 index 0000000..cd55775 --- /dev/null +++ b/Source/platformProject/vci-platform-web/src/main/java/com/vci/web/util/function/CheckedSupplier.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2018-2028, DreamLu All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * Neither the name of the dreamlu.net developer nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com) + */ + +package com.vci.web.util.function; + +import org.springframework.lang.Nullable; + +/** + * 鍙楁鐨� Supplier + * + * @author L.cm + */ +@FunctionalInterface +public interface CheckedSupplier<T> { + + /** + * Run the Supplier + * + * @return T + * @throws Throwable CheckedException + */ + @Nullable + T get() throws Throwable; + +} -- Gitblit v1.9.3