已添加35个文件
已删除26个文件
已复制2个文件
已修改36个文件
已重命名5个文件
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-core:1.55.3"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core/1.55.3/azure-core-1.55.3.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core/1.55.3/azure-core-1.55.3-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core/1.55.3/azure-core-1.55.3-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-core-http-netty:1.15.11"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core-http-netty/1.15.11/azure-core-http-netty-1.15.11.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core-http-netty/1.15.11/azure-core-http-netty-1.15.11-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core-http-netty/1.15.11/azure-core-http-netty-1.15.11-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-identity:1.15.4"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-identity/1.15.4/azure-identity-1.15.4.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-identity/1.15.4/azure-identity-1.15.4-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-identity/1.15.4/azure-identity-1.15.4-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-json:1.5.0"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-json/1.5.0/azure-json-1.5.0.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-json/1.5.0/azure-json-1.5.0-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-json/1.5.0/azure-json-1.5.0-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-security-keyvault-secrets:4.9.4"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-security-keyvault-secrets/4.9.4/azure-security-keyvault-secrets-4.9.4.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-security-keyvault-secrets/4.9.4/azure-security-keyvault-secrets-4.9.4-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-security-keyvault-secrets/4.9.4/azure-security-keyvault-secrets-4.9.4-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-storage-blob:12.30.0"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-blob/12.30.0/azure-storage-blob-12.30.0.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-blob/12.30.0/azure-storage-blob-12.30.0-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-blob/12.30.0/azure-storage-blob-12.30.0-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
ÎļþÃû´Ó .idea/libraries/Maven__com_azure_azure_core_http_netty_1_15_0.xml ÐÞ¸Ä |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-core-http-netty:1.15.0"> |
| | | <library name="Maven: com.azure:azure-storage-common:12.29.0"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core-http-netty/1.15.0/azure-core-http-netty-1.15.0.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-common/12.29.0/azure-storage-common-12.29.0.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core-http-netty/1.15.0/azure-core-http-netty-1.15.0-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-common/12.29.0/azure-storage-common-12.29.0-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-core-http-netty/1.15.0/azure-core-http-netty-1.15.0-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-common/12.29.0/azure-storage-common-12.29.0-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-storage-internal-avro:12.15.0"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-internal-avro/12.15.0/azure-storage-internal-avro-12.15.0.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-internal-avro/12.15.0/azure-storage-internal-avro-12.15.0-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-storage-internal-avro/12.15.0/azure-storage-internal-avro-12.15.0-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
ÎļþÃû´Ó .idea/libraries/Maven__com_azure_azure_xml_1_0_0.xml ÐÞ¸Ä |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-xml:1.0.0"> |
| | | <library name="Maven: com.azure:azure-xml:1.2.0"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.0.0/azure-xml-1.0.0.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.2.0/azure-xml-1.2.0.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.0.0/azure-xml-1.0.0-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.2.0/azure-xml-1.2.0-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.0.0/azure-xml-1.0.0-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.2.0/azure-xml-1.2.0-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.github.stephenc.jcip:jcip-annotations:1.0-1"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.microsoft.azure:msal4j:1.19.1"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/microsoft/azure/msal4j/1.19.1/msal4j-1.19.1.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/microsoft/azure/msal4j/1.19.1/msal4j-1.19.1-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/microsoft/azure/msal4j/1.19.1/msal4j-1.19.1-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.microsoft.azure:msal4j-persistence-extension:1.3.0"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/microsoft/azure/msal4j-persistence-extension/1.3.0/msal4j-persistence-extension-1.3.0.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/microsoft/azure/msal4j-persistence-extension/1.3.0/msal4j-persistence-extension-1.3.0-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/microsoft/azure/msal4j-persistence-extension/1.3.0/msal4j-persistence-extension-1.3.0-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.nimbusds:content-type:2.3"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/content-type/2.3/content-type-2.3.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/content-type/2.3/content-type-2.3-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/content-type/2.3/content-type-2.3-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
copy from .idea/libraries/Maven__com_azure_azure_xml_1_0_0.xml
copy to .idea/libraries/Maven__com_nimbusds_lang_tag_1_7.xml
Îļþ´Ó .idea/libraries/Maven__com_azure_azure_xml_1_0_0.xml ¸´ÖÆ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.azure:azure-xml:1.0.0"> |
| | | <library name="Maven: com.nimbusds:lang-tag:1.7"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.0.0/azure-xml-1.0.0.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/lang-tag/1.7/lang-tag-1.7.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.0.0/azure-xml-1.0.0-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/lang-tag/1.7/lang-tag-1.7-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/azure/azure-xml/1.0.0/azure-xml-1.0.0-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/lang-tag/1.7/lang-tag-1.7-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.nimbusds:nimbus-jose-jwt:10.0.1"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/nimbus-jose-jwt/10.0.1/nimbus-jose-jwt-10.0.1.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/nimbus-jose-jwt/10.0.1/nimbus-jose-jwt-10.0.1-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/nimbus-jose-jwt/10.0.1/nimbus-jose-jwt-10.0.1-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: com.nimbusds:oauth2-oidc-sdk:11.23"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/oauth2-oidc-sdk/11.23/oauth2-oidc-sdk-11.23.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/oauth2-oidc-sdk/11.23/oauth2-oidc-sdk-11.23-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/com/nimbusds/oauth2-oidc-sdk/11.23/oauth2-oidc-sdk-11.23-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-buffer:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-buffer/4.1.118.Final/netty-buffer-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-buffer/4.1.118.Final/netty-buffer-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-buffer/4.1.118.Final/netty-buffer-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec/4.1.118.Final/netty-codec-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec/4.1.118.Final/netty-codec-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec/4.1.118.Final/netty-codec-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
ÎļþÃû´Ó .idea/libraries/Maven__io_netty_netty_codec_http_4_1_45_Final.xml ÐÞ¸Ä |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec-http:4.1.45.Final"> |
| | | <library name="Maven: io.netty:netty-codec-dns:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.45.Final/netty-codec-http-4.1.45.Final.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-dns/4.1.118.Final/netty-codec-dns-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.45.Final/netty-codec-http-4.1.45.Final-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-dns/4.1.118.Final/netty-codec-dns-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.45.Final/netty-codec-http-4.1.45.Final-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-dns/4.1.118.Final/netty-codec-dns-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec-http2:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http2/4.1.118.Final/netty-codec-http2-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http2/4.1.118.Final/netty-codec-http2-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http2/4.1.118.Final/netty-codec-http2-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
ÎļþÃû´Ó .idea/libraries/Maven__io_netty_netty_codec_http2_4_1_45_Final.xml ÐÞ¸Ä |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec-http2:4.1.45.Final"> |
| | | <library name="Maven: io.netty:netty-codec-http:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http2/4.1.45.Final/netty-codec-http2-4.1.45.Final.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.118.Final/netty-codec-http-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http2/4.1.45.Final/netty-codec-http2-4.1.45.Final-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.118.Final/netty-codec-http-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http2/4.1.45.Final/netty-codec-http2-4.1.45.Final-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.118.Final/netty-codec-http-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec-socks:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-socks/4.1.118.Final/netty-codec-socks-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-socks/4.1.118.Final/netty-codec-socks-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-socks/4.1.118.Final/netty-codec-socks-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-common:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-common/4.1.118.Final/netty-common-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-common/4.1.118.Final/netty-common-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-common/4.1.118.Final/netty-common-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-handler:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-handler/4.1.118.Final/netty-handler-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-handler/4.1.118.Final/netty-handler-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-handler/4.1.118.Final/netty-handler-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-handler-proxy:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-handler-proxy/4.1.118.Final/netty-handler-proxy-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-handler-proxy/4.1.118.Final/netty-handler-proxy-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-handler-proxy/4.1.118.Final/netty-handler-proxy-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
ÎļþÃû´Ó .idea/libraries/Maven__io_netty_netty_codec_dns_4_1_45_Final.xml ÐÞ¸Ä |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec-dns:4.1.45.Final"> |
| | | <library name="Maven: io.netty:netty-resolver:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-dns/4.1.45.Final/netty-codec-dns-4.1.45.Final.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver/4.1.118.Final/netty-resolver-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-dns/4.1.45.Final/netty-codec-dns-4.1.45.Final-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver/4.1.118.Final/netty-resolver-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-dns/4.1.45.Final/netty-codec-dns-4.1.45.Final-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver/4.1.118.Final/netty-resolver-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-resolver-dns:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns/4.1.118.Final/netty-resolver-dns-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns/4.1.118.Final/netty-resolver-dns-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns/4.1.118.Final/netty-resolver-dns-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-resolver-dns-classes-macos:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns-classes-macos/4.1.118.Final/netty-resolver-dns-classes-macos-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns-classes-macos/4.1.118.Final/netty-resolver-dns-classes-macos-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns-classes-macos/4.1.118.Final/netty-resolver-dns-classes-macos-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-resolver-dns-native-macos:osx-x86_64:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns-native-macos/4.1.118.Final/netty-resolver-dns-native-macos-4.1.118.Final-osx-x86_64.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns-native-macos/4.1.118.Final/netty-resolver-dns-native-macos-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-resolver-dns-native-macos/4.1.118.Final/netty-resolver-dns-native-macos-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
copy from .idea/libraries/Maven__io_netty_netty_codec_http_4_1_45_Final.xml
copy to .idea/libraries/Maven__io_netty_netty_transport_4_1_118_Final.xml
Îļþ´Ó .idea/libraries/Maven__io_netty_netty_codec_http_4_1_45_Final.xml ¸´ÖÆ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-codec-http:4.1.45.Final"> |
| | | <library name="Maven: io.netty:netty-transport:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.45.Final/netty-codec-http-4.1.45.Final.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport/4.1.118.Final/netty-transport-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.45.Final/netty-codec-http-4.1.45.Final-javadoc.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport/4.1.118.Final/netty-transport-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-codec-http/4.1.45.Final/netty-codec-http-4.1.45.Final-sources.jar!/" /> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport/4.1.118.Final/netty-transport-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-transport-classes-epoll:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-classes-epoll/4.1.118.Final/netty-transport-classes-epoll-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-classes-epoll/4.1.118.Final/netty-transport-classes-epoll-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-classes-epoll/4.1.118.Final/netty-transport-classes-epoll-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-transport-classes-kqueue:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-classes-kqueue/4.1.118.Final/netty-transport-classes-kqueue-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-classes-kqueue/4.1.118.Final/netty-transport-classes-kqueue-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-classes-kqueue/4.1.118.Final/netty-transport-classes-kqueue-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-transport-native-epoll:linux-x86_64:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-epoll/4.1.118.Final/netty-transport-native-epoll-4.1.118.Final-linux-x86_64.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-epoll/4.1.118.Final/netty-transport-native-epoll-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-epoll/4.1.118.Final/netty-transport-native-epoll-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-transport-native-kqueue:osx-x86_64:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-kqueue/4.1.118.Final/netty-transport-native-kqueue-4.1.118.Final-osx-x86_64.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-kqueue/4.1.118.Final/netty-transport-native-kqueue-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-kqueue/4.1.118.Final/netty-transport-native-kqueue-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.netty:netty-transport-native-unix-common:4.1.118.Final"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-unix-common/4.1.118.Final/netty-transport-native-unix-common-4.1.118.Final.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-unix-common/4.1.118.Final/netty-transport-native-unix-common-4.1.118.Final-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/netty/netty-transport-native-unix-common/4.1.118.Final/netty-transport-native-unix-common-4.1.118.Final-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.projectreactor.netty:reactor-netty-core:1.0.48"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/projectreactor/netty/reactor-netty-core/1.0.48/reactor-netty-core-1.0.48.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/projectreactor/netty/reactor-netty-core/1.0.48/reactor-netty-core-1.0.48-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/projectreactor/netty/reactor-netty-core/1.0.48/reactor-netty-core-1.0.48-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: io.projectreactor.netty:reactor-netty-http:1.0.48"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/projectreactor/netty/reactor-netty-http/1.0.48/reactor-netty-http-1.0.48.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/projectreactor/netty/reactor-netty-http/1.0.48/reactor-netty-http-1.0.48-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/io/projectreactor/netty/reactor-netty-http/1.0.48/reactor-netty-http-1.0.48-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: net.minidev:accessors-smart:2.5.2"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/net/minidev/accessors-smart/2.5.2/accessors-smart-2.5.2.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/net/minidev/accessors-smart/2.5.2/accessors-smart-2.5.2-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/net/minidev/accessors-smart/2.5.2/accessors-smart-2.5.2-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: net.minidev:json-smart:2.5.2"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/net/minidev/json-smart/2.5.2/json-smart-2.5.2.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/net/minidev/json-smart/2.5.2/json-smart-2.5.2-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/net/minidev/json-smart/2.5.2/json-smart-2.5.2-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <component name="libraryTable"> |
| | | <library name="Maven: org.ow2.asm:asm:9.7.1"> |
| | | <CLASSES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/org/ow2/asm/asm/9.7.1/asm-9.7.1.jar!/" /> |
| | | </CLASSES> |
| | | <JAVADOC> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/org/ow2/asm/asm/9.7.1/asm-9.7.1-javadoc.jar!/" /> |
| | | </JAVADOC> |
| | | <SOURCES> |
| | | <root url="jar://$PROJECT_DIR$/../../../maven/repository/org/ow2/asm/asm/9.7.1/asm-9.7.1-sources.jar!/" /> |
| | | </SOURCES> |
| | | </library> |
| | | </component> |
| | |
| | | # å
³éDEBUG |
| | | VUE_APP_DEBUG = 'off' |
| | | |
| | | VUE_APP_API_URL = 'https://test.doumee.cn/lianhelihua_interface' |
| | | VUE_APP_API_URL = 'https://lkshereporting-dev.unilever-china.com/lianhelihua_interface' |
| | |
| | | <!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/lianhelihua_admin/icon.png"><title>èåå©åäºä»¶ä¸æ¥ç³»ç»</title><link href="/lianhelihua_admin/static/css/app.39e777cc.css" rel="preload" as="style"><link href="/lianhelihua_admin/static/css/chunk-vendors.d9e68312.css" rel="preload" as="style"><link href="/lianhelihua_admin/static/js/app.27efc902.js" rel="preload" as="script"><link href="/lianhelihua_admin/static/js/chunk-vendors.fd387514.js" rel="preload" as="script"><link href="/lianhelihua_admin/static/css/chunk-vendors.d9e68312.css" rel="stylesheet"><link href="/lianhelihua_admin/static/css/app.39e777cc.css" rel="stylesheet"></head><body><div id="app"></div><script src="/lianhelihua_admin/static/js/chunk-vendors.fd387514.js"></script><script src="/lianhelihua_admin/static/js/app.27efc902.js"></script></body></html> |
| | | <!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="/lianhelihua_admin/icon.png"><title>èåå©åäºä»¶ä¸æ¥ç³»ç»</title><link href="/lianhelihua_admin/static/css/app.39e777cc.css" rel="preload" as="style"><link href="/lianhelihua_admin/static/css/chunk-vendors.d9e68312.css" rel="preload" as="style"><link href="/lianhelihua_admin/static/js/app.94e81d49.js" rel="preload" as="script"><link href="/lianhelihua_admin/static/js/chunk-vendors.52ca84c8.js" rel="preload" as="script"><link href="/lianhelihua_admin/static/css/chunk-vendors.d9e68312.css" rel="stylesheet"><link href="/lianhelihua_admin/static/css/app.39e777cc.css" rel="stylesheet"></head><body><div id="app"></div><script src="/lianhelihua_admin/static/js/chunk-vendors.52ca84c8.js"></script><script src="/lianhelihua_admin/static/js/app.94e81d49.js"></script></body></html> |
| | |
| | | "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", |
| | | "dev": true |
| | | }, |
| | | "qrcodejs2": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npmmirror.com/qrcodejs2/-/qrcodejs2-0.0.2.tgz", |
| | | "integrity": "sha512-+Y4HA+cb6qUzdgvI3KML8GYpMFwB24dFwzMkS/yXq6hwtUGNUnZQdUnksrV1XGMc2mid5ROw5SAuY9XhI3ValA==" |
| | | }, |
| | | "qs": { |
| | | "version": "6.5.2", |
| | | "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz?cache=0&sync_timestamp=1616385328325&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fqs%2Fdownload%2Fqs-6.5.2.tgz", |
| | |
| | | "private": true, |
| | | "scripts": { |
| | | "serve": "vue-cli-service serve", |
| | | "serve:test": "vue-cli-service serve --mode test", |
| | | "servetest": "vue-cli-service serve --mode test", |
| | | "build:test": "vue-cli-service build --mode test", |
| | | "build": "vue-cli-service build", |
| | | "lint": "vue-cli-service lint", |
| | |
| | | "axios": "^0.21.1", |
| | | "core-js": "^3.6.5", |
| | | "crypto-js": "^4.1.1", |
| | | "qrcodejs2": "0.0.2", |
| | | "dayjs": "^1.11.0", |
| | | "echarts": "^5.6.0", |
| | | "element-ui": "^2.3.6", |
| | |
| | | export function fetchList (data) { |
| | | return request.post('/system/dict/page', data) |
| | | } |
| | | export function qrcodeList (data) { |
| | | return request.post('/system/dict/qrcodeList', data) |
| | | } |
| | | |
| | | // æ°å»º |
| | | export function create (data) { |
| | |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="设置èå´" prop="isMember" :required="true"> |
| | | <el-radio-group v-model="form.isMember"> |
| | | <el-radio :label="0">ç´å±é¨é¨åå·¥</el-radio> |
| | | <el-radio :label="1">é¨é¨åå
¶ä¸çº§é¨é¨åå·¥</el-radio> |
| | | <el-radio :label="0">éæ©é¨é¨</el-radio> |
| | | <!-- <el-radio :label="1">é¨é¨åå
¶ä¸çº§é¨é¨åå·¥</el-radio>--> |
| | | <el-radio :label="2">æå®äººå</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="æå±ç»ç»" prop="companyId" v-if="form.isMember==0 || form.isMember==1" :required="true"> |
| | | <treeselect |
| | | <el-form-item label="æå±ç»ç»" prop="companyIds" v-if="form.isMember==0 || form.isMember==1" :required="true"> |
| | | <!-- <treeselect |
| | | v-model="form.companyId" |
| | | placeholder="è¯·éæ©" |
| | | :options="companyTree" |
| | |
| | | :default-expand-level="1" |
| | | noChildrenText="没æåé项" |
| | | noOptionsText="没æå¯é项" |
| | | noResultsText="没æå¹é
çç»æ" /> |
| | | noResultsText="没æå¹é
çç»æ" />--> |
| | | <el-tree |
| | | ref="tree" |
| | | :data="companyTree" |
| | | show-checkbox |
| | | node-key="id" |
| | | default-expand-all |
| | | @check-change="changeTree" |
| | | :expand-on-click-node="false" |
| | | :check-on-click-node="true" |
| | | :props="{children: 'childList',label: 'name'}"> |
| | | </el-tree> |
| | | </el-form-item> |
| | | <el-form-item label="éæ©è´è´£äººï¼" prop="memberIds" v-if="form.isMember==2" :required="true"> |
| | | <el-select v-model="form.memberIds" filterable :multiple="true" :loading="loading" placeholder="å¯è¾å
¥å§å | ææºå· | é¨é¨åç§°è¿è¡æç´¢"> |
| | |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import { allList } from '@/api/business/member' |
| | | import { treeList } from '@/api/business/company' |
| | | import { createRoleMenu } from '@/api/system/role' |
| | | import { create } from '@/api/business/managers' |
| | | |
| | | export default { |
| | | name: 'OperaManagersWindow', |
| | |
| | | companyId: null, |
| | | memberId: '', |
| | | memberIds: [], |
| | | companyIds: [], |
| | | remark: '', |
| | | isQw: 0, |
| | | isEmail: 0, |
| | |
| | | memberIds: [ |
| | | { required: true ,message: 'è¯·éæ©è´è´£äºº' } |
| | | ], |
| | | companyId: [ |
| | | companyIds: [ |
| | | { required: true, message: 'è¯·éæ©é¨é¨' } |
| | | ], |
| | | isMember: [ |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | changeTree(){ |
| | | const selectedMenus = this.$refs.tree.getCheckedNodes(false, true) |
| | | this.form.companyIds = selectedMenus.map(menu => menu.id) |
| | | console.log(this.form.companyIds) |
| | | }, |
| | | getfindCompanyTreePage () { |
| | | treeList({}) |
| | | .then(res => { |
| | | if (res && res.length > 0) { |
| | | res[0].fsStatus = 1 |
| | | this.companyTree = res |
| | | // æ¾åºå¶èç¹ |
| | | this.companyTree = this.companyTree.filter(menu => this.companyTree .findIndex(m => m.parentId === menu.id) === -1) |
| | | console.log(res) |
| | | // this.searchForm.erpOrgId = res[0].erpId |
| | | } |
| | | }) |
| | |
| | | // è·¨åæ¯å¦ä¼ é cookie ï¼é»è®¤ä¸º false |
| | | withCredentials: true, |
| | | // è¶
æ¶æ¶é´ï¼é»è®¤ä¸º 10 ç§ |
| | | timeout: 10 * 1000, // 10 ç§ |
| | | timeout: 10 * 10000, // 10 ç§ |
| | | // ä¸ä¼ å |
| | | onBeforeUpload (files) { |
| | | loadingInstance = Loading.service({ |
| | |
| | | // message: `${res.data.originalName} ä¸ä¼ 失败ï¼è¯·éæ°å°è¯` |
| | | // }); |
| | | } |
| | | if(res.data && res.data.url){ |
| | | insertFn(res.data.url, res.data.originname, res.data.imgname) |
| | | } |
| | | }, |
| | | |
| | | // å个æä»¶ä¸ä¼ æåä¹å |
| | | onSuccess (file, res) { |
| | | console.log(`${file.originalFilename} ä¸ä¼ æå`, res) |
| | |
| | | // message: `${res.data.originalName} ä¸ä¼ 失败ï¼è¯·éæ°å°è¯` |
| | | // }); |
| | | } |
| | | if(res.data && res.data.url){ |
| | | insertFn(res.data.url, res.data.url) |
| | | } |
| | | }, |
| | | // ä¸ä¼ è¿åº¦çåè°å½æ° |
| | | onProgress (progress) { |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <TableLayout > |
| | | <!-- è¡¨æ ¼åå页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> |
| | | <li><el-button type="primary" @click="handlePageChange">å·æ°</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | | :data="tableData.list" |
| | | stripe |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column prop="name" label="表åå
¥å£åç§°" min-width="100px"></el-table-column> |
| | | <el-table-column prop="url" label="äºç»´ç " min-width="100px"> |
| | | <template slot-scope="{ row }"> |
| | | <div :id="`qrcode${row.id}`" :ref="`qrcode${row.id}`"></div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="æä½" |
| | | min-width="120" > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="download(row)" >ä¸è½½</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <canvas id="QRCode_header" ref="canvas" title="æ«æäºç»´ç "></canvas> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import QRCode from 'qrcodejs2' |
| | | export default { |
| | | name: 'Category', |
| | | extends: BaseTable, |
| | | components: { TableLayout }, |
| | | data () { |
| | | return { |
| | | // æç´¢ |
| | | searchForm: { |
| | | id: '', |
| | | creator: '', |
| | | createDate: '', |
| | | editor: '', |
| | | editDate: '', |
| | | isdeleted: '', |
| | | name: '', |
| | | remark: '', |
| | | status: '', |
| | | sortnum: '', |
| | | imgurl: '', |
| | | type: '', |
| | | parentId: null, |
| | | namePath: '', |
| | | idPath: '' |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: 'äºç»´ç 管ç', |
| | | api: '/system/dict' |
| | | }) |
| | | this.handlePageChange() |
| | | }, |
| | | methods: { |
| | | handlePageChange () { |
| | | this.isWorking.search = true |
| | | var that = this |
| | | this.api.qrcodeList({}) |
| | | .then(data => { |
| | | that.tableData.list = data |
| | | setTimeout(function () { |
| | | that.tableData.list.forEach(row => { |
| | | that.$refs['qrcode' + row.id].innerHTML = '' |
| | | row.qrcodeImg = that.crateQrcodeShow('qrcode' + row.id, row.url) |
| | | }) |
| | | }, 1000) |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking.search = false |
| | | }) |
| | | }, |
| | | download (row) { |
| | | const nodeList = Array.prototype.slice.call(row.qrcodeImg._el.children) |
| | | const img = nodeList.find((item) => item.nodeName.toUpperCase() === 'IMG')// éåºå¾çç±»å |
| | | // æå»ºç»å¸ |
| | | const canvas = document.createElement('canvas') |
| | | canvas.width = 220 |
| | | canvas.height = 220 |
| | | const ctx = canvas.getContext('2d') |
| | | ctx.fillStyle = 'white' |
| | | ctx.fillRect(0, 0, canvas.width, canvas.height) // å¡«å
æ´ä¸ªç»å¸åºåï¼ç¡®ä¿èæ¯è²è¦çæ´ä¸ªç»å¸ |
| | | ctx.drawImage(img, 10,10,200,200) |
| | | // æé url |
| | | const url = canvas.toDataURL('image/png') |
| | | |
| | | const a = document.createElement('a') |
| | | a.href = url |
| | | a.download = `${row.name}-äºç»´ç .png` |
| | | a.click() |
| | | a.remove() |
| | | }, |
| | | crateQrcodeShow (div, qrcode1) { |
| | | if (qrcode1 == null || qrcode1 == '') { |
| | | return |
| | | } |
| | | return new QRCode(div, { |
| | | width: 120, |
| | | height: 120, |
| | | text: qrcode1 |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | <el-input v-model="searchForm.code" clearable placeholder="请è¾å
¥å·¥åå·" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ç¶ææè¿°" prop="status"> |
| | | <el-select v-model="searchForm.status" placeholder="è¯·éæ©"> |
| | | <el-select v-model="searchForm.status" placeholder="è¯·éæ©" clearable @change="search" > |
| | | <el-option label="å¾
åé
WTS" value="0"></el-option> |
| | | <el-option label="å¾
åé
å·¥ç¨å¸" value="1"></el-option> |
| | | <el-option label="SHEå
³é" value="2"></el-option> |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="䏿¥äººå" prop="memberName"> |
| | | <el-input v-model="searchForm.memberName" style="width: 120px" clearable placeholder="人åå§åæææºå·" @keypress.enter.native="search"></el-input> |
| | | <el-input v-model="searchForm.memberName" style="width: 150px" clearable placeholder="å§åæææºå·" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="å·¥åå·" prop="code"> |
| | | <el-input v-model="searchForm.code" style="width: 120px" clearable placeholder="å·¥åå·" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ç¶ææè¿°" prop="status"> |
| | | <el-select v-model="searchForm.status" placeholder="è¯·éæ©"> |
| | | <el-select v-model="searchForm.status" placeholder="è¯·éæ©" clearable @change="search" > |
| | | <el-option label="å¾
åé
WTS" value="0"></el-option> |
| | | <el-option label="å¾
åé
å·¥ç¨å¸" value="1"></el-option> |
| | | <el-option label="SHEå
³é" value="2"></el-option> |
| | |
| | | <artifactId>spring-boot-starter-parent</artifactId> |
| | | <version>2.2.5.RELEASE</version> |
| | | </parent> |
| | | |
| | | <properties> |
| | | <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| | | <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| | |
| | | <apache.shiro.version>1.7.0</apache.shiro.version> |
| | | <oshi.version>5.7.0</oshi.version> |
| | | <jna.version>5.7.0</jna.version> |
| | | <netty-version>4.1.118.Final</netty-version> |
| | | <poi.version>5.0.0</poi.version> |
| | | <jjwt.version>0.9.1</jjwt.version> |
| | | </properties> |
| | | <dependencyManagement> |
| | | <dependencies> |
| | | <dependency> |
| | | <groupId>com.azure.spring</groupId> |
| | | <artifactId>spring-cloud-azure-dependencies</artifactId> |
| | | <version>4.19.0</version> |
| | | <groupId>io.netty</groupId> |
| | | <artifactId>netty-bom</artifactId> |
| | | <version>${netty-version}</version> |
| | | <type>pom</type> |
| | | <scope>import</scope> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>com.azure</groupId> |
| | | <artifactId>azure-sdk-bom</artifactId> |
| | | <version>1.2.34</version> |
| | | <type>pom</type> |
| | | <scope>import</scope> |
| | | </dependency> |
| | |
| | | <dependency> |
| | | <groupId>org.springframework.boot</groupId> |
| | | <artifactId>spring-boot-starter-data-redis</artifactId> |
| | | <exclusions> |
| | | <exclusion> |
| | | <groupId>io.netty</groupId> |
| | | <artifactId>netty-bom</artifactId> |
| | | </exclusion> |
| | | <exclusion> |
| | | <artifactId>reactor-core</artifactId> |
| | | <groupId>io.projectreactor</groupId> |
| | | </exclusion> |
| | | </exclusions> |
| | | </dependency> |
| | | <!-- Shiro --> |
| | | <dependency> |
| | |
| | | <artifactId>bcprov-jdk15on</artifactId> |
| | | <version>1.60</version> |
| | | </dependency> |
| | | <!-- <dependency> |
| | | <groupId>com.azure.spring</groupId> |
| | | <artifactId>spring-cloud-azure-starter-storage-blob</artifactId> |
| | | </dependency>--> |
| | | <dependency> |
| | | <groupId>com.azure</groupId> |
| | | <artifactId>azure-storage-blob</artifactId> |
| | | <version>12.14.1</version> |
| | | <exclusions> |
| | | <exclusion> |
| | | <artifactId>reactor-core</artifactId> |
| | | <groupId>io.projectreactor</groupId> |
| | | </exclusion> |
| | | </exclusions> |
| | | <!-- <exclusions> |
| | | <exclusion> |
| | | <artifactId>reactor-core</artifactId> |
| | | <groupId>io.projectreactor</groupId> |
| | | </exclusion> |
| | | </exclusions>--> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.azure</groupId> |
| | | <artifactId>azure-security-keyvault-secrets</artifactId> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.azure</groupId> |
| | | <artifactId>azure-identity</artifactId> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.azure</groupId> |
| | | <artifactId>azure-storage-common</artifactId> |
| | | </dependency> |
| | | <!-- https://mvnrepository.com/artifact/io.projectreactor/reactor-core --> |
| | | <dependency> |
| | | <groupId>io.projectreactor</groupId> |
| | | <artifactId>reactor-core</artifactId> |
| | | <version>3.4.41</version> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Autowired |
| | | private EmailService emailService; |
| | | @Value("${upload.type") |
| | | @Value("${upload.type}") |
| | | private String uploadType; |
| | | |
| | | |
| | | public static FtpUtil ftp = null; |
| | | public static AzureBlobUtil azureBlobUtil = null; |
| | | |
| | | @GetMapping("/image/{folder}/{date}/{name}") |
| | | public void getImage(@PathVariable String folder,@PathVariable String date,@PathVariable String name, HttpServletResponse response) throws IOException { |
| | | try { |
| | | initUploadTool(); |
| | | response.setContentType("image/jpeg"); // æ ¹æ®ä½ çå¾çç±»å设置æ£ç¡®çMIMEç±»å |
| | | log.info("===================å¾çblobåç§°"+folder+"/"+date+"/"+name); |
| | | azureBlobUtil.downloadBlobToStream(folder+"/"+date+"/"+name,response.getOutputStream()); |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | @ApiOperation(value = "æµè¯ä¼ä¸ç´ æä¸ä¼ ä¸è½½") |
| | | @RequestMapping(method= RequestMethod.POST,value="/testQwImg") |
| | | @ResponseBody |
| | |
| | | String fileName = folder + fName; |
| | | boolean r1 =false; |
| | | if(StringUtils.equals(Constants.uploadType.blob,uploadType)){ |
| | | r1 = azureBlobUtil.uploadFileWithResponse( fileName,is);//ä¸ä¼ |
| | | r1 = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//ä¸ä¼ |
| | | }else{ |
| | | r1 = ftp.uploadInputstreamBatch(is, fileName, true,index); |
| | | } |
| | |
| | | String fileName = folder + fName; |
| | | boolean r =false; |
| | | if(StringUtils.equals(Constants.uploadType.blob,uploadType)){ |
| | | r = azureBlobUtil.uploadFileWithResponse( fileName,is);//ä¸ä¼ |
| | | r = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//ä¸ä¼ |
| | | }else{ |
| | | r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,fileList.size()),index); |
| | | } |
| | |
| | | //è·å¾æ¯ä¸ä¸ªæä»¶ |
| | | String endType = ".jpg"; |
| | | String originname = UUID.randomUUID().toString()+endType; |
| | | InputStream is = QywxUtil.getMediaInputstream(systemDictDataBiz.queryByCode(Constants.QYWX,Constants.QYWX_TOKEN).getCode(),media); |
| | | if(is == null){ |
| | | Map<String,Object> map = QywxUtil.getMediaInputstreamMap(systemDictDataBiz.queryByCode(Constants.QYWX,Constants.QYWX_TOKEN).getCode(),media); |
| | | if(map == null || map.get("data") == null){ |
| | | log.error("ä¼ä¸å¾®ä¿¡ç´ æä¸è½½å¤±è´¥ï¼========="+media); |
| | | continue; |
| | | } |
| | |
| | | String fileName = folder + fName; |
| | | boolean r =false; |
| | | if(StringUtils.equals(Constants.uploadType.blob,uploadType)){ |
| | | r = azureBlobUtil.uploadFileWithResponse( fileName,is);//ä¸ä¼ |
| | | r = azureBlobUtil.uploadFileWithResponseAndSize( fileName, (InputStream) map.get("data"),(Integer)map.get("size"));//ä¸ä¼ |
| | | }else{ |
| | | r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,param.getMediaIds().size()),index); |
| | | r = ftp.uploadInputstreamBatch( (InputStream) map.get("data"), fileName, Constants.equalsInteger(index ,param.getMediaIds().size()),index); |
| | | } |
| | | if (r) { |
| | | JSONObject fileJSON = new JSONObject(); |
| | |
| | | String fileName = folder + fName; |
| | | boolean r =false; |
| | | if(StringUtils.equals(Constants.uploadType.blob,uploadType)){ |
| | | r = azureBlobUtil.uploadFileWithResponse( fileName,is);//ä¸ä¼ |
| | | r = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//ä¸ä¼ |
| | | }else{ |
| | | r = ftp.uploadInputstreamBatch(is, fileName, Constants.equalsInteger(index ,fileList.size()),index); |
| | | } |
| | |
| | | private void initUploadTool() throws Exception{ |
| | | if(StringUtils.equals(Constants.uploadType.blob,uploadType)){ |
| | | if(azureBlobUtil == null){ |
| | | azureBlobUtil = new AzureBlobUtil(systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ACCESSNAME).getCode(), |
| | | azureBlobUtil = new AzureBlobUtil( |
| | | systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ACCESSNAME).getCode(), |
| | | systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ACCESSKEY).getCode(), |
| | | systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_ENDPOINT).getCode(), |
| | | systemDictDataBiz.queryByCode(Constants.AZURE_BLOB,Constants.AZURE_BLOB_CONTAINER).getCode()); |
| | | }else{ |
| | | azureBlobUtil.initClient(); |
| | | } |
| | | }else{ |
| | | if(ftp == null){ |
| | |
| | | String fileName = folder+"/"+fName; |
| | | boolean r =false; |
| | | if(StringUtils.equals(Constants.uploadType.blob,uploadType)){ |
| | | r = azureBlobUtil.uploadFileWithResponse( fileName,is);//ä¸ä¼ |
| | | r = azureBlobUtil.uploadFileWithResponseAndSize( fileName,is,null);//ä¸ä¼ |
| | | }else{ |
| | | r = ftp.uploadInputstream(is,fileName); |
| | | } |
| | |
| | | import com.doumee.dao.system.dto.QuerySystemDictDTO; |
| | | import com.doumee.dao.system.model.SystemDict; |
| | | import com.doumee.dao.system.vo.SystemDictListVO; |
| | | import com.doumee.dao.system.vo.SystemQrcodeListVO; |
| | | import com.doumee.service.system.SystemDictService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | |
| | | public ApiResponse<PageData<SystemDictListVO>> findPage (@RequestBody PageWrap<QuerySystemDictDTO> pageWrap) { |
| | | return ApiResponse.success(systemDictService.findPage(pageWrap)); |
| | | } |
| | | @ApiOperation("å页æ¥è¯¢") |
| | | @PostMapping("/qrcodeList") |
| | | @RequiresPermissions("system:dict:query") |
| | | public ApiResponse<List<SystemQrcodeListVO>> qrcodeList (@RequestBody QuerySystemDictDTO pageWrap) { |
| | | return ApiResponse.success(systemDictService.qrcodeList(pageWrap)); |
| | | } |
| | | } |
| | |
| | | snippet.setDistributeLimit(job.getDistributeLimit()); |
| | | snippet.setHandler(job.getHandler()); |
| | | snippet.setSnippetIndex(0); |
| | | snippet.setCreateTime(new Date()); |
| | | snippet.setSnippetCode(UUID.randomUUID().toString()); |
| | | snippet.setWithLog(job.getWithLog()); |
| | | snippet.setAllowServerIps(job.getAllowServerIps()); |
| | |
| | | snippet.setJobDistributeGroup(distributeGroup); |
| | | snippet.setHandler(job.getHandler()); |
| | | snippet.setSnippetIndex(i); |
| | | snippet.setCreateTime(new Date()); |
| | | snippet.setSnippetCode(UUID.randomUUID().toString()); |
| | | snippet.setSnippetData(JSON.toJSONString(snippetData)); |
| | | snippet.setSnippetDataSize(snippetData.size()); |
| | |
| | | /** |
| | | * ç»å±æ§èµå¼ |
| | | */ |
| | | private void setFieldValue(Field field, Object target, Object value) throws Exception { |
| | | private void setFieldValue(Field field, Object target, Object value) { |
| | | try { |
| | | field.setAccessible(true); |
| | | field.set(target, value); |
| | | field.setAccessible(false); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * è·å屿§å¼ |
| | | */ |
| | | private Object getFieldValue(Field field, Object target) throws Exception { |
| | | private Object getFieldValue(Field field, Object target) { |
| | | try { |
| | | field.setAccessible(true); |
| | | Object value = field.get(target); |
| | | field.setAccessible(false); |
| | | return value; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | |
| | | package com.doumee.config.quartz; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
| | | import com.doumee.core.constants.Constants; |
| | | import com.doumee.core.job.SchedulerProxy; |
| | |
| | | */ |
| | | @PostConstruct |
| | | public void initJobs () { |
| | | |
| | | log.debug("Initializing jobs"); |
| | | // ä¿®å¤JOB |
| | | this.repairJobs(); |
| | |
| | | queryJobDto.setDeleted(Boolean.FALSE); |
| | | List<SystemJob> jobs = systemJobService.findList(queryJobDto); |
| | | for (SystemJob job : jobs) { |
| | | try { |
| | | schedulerProxy.createJob(new SchedulerProxy.Job(job.getId(), job.getHandler(), job.getCronExpression(), job.getDisallowConcurrent())); |
| | | log.debug("job '{}' initialized.", job.getJobName()); |
| | | log.info("job '{}' initialized.", job.getJobName()); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("Jobs initialization failed: '{}''{}' ", JSONObject.toJSONString(job),e.getStackTrace()); |
| | | } |
| | | log.debug("Jobs initialization completed in {} ms", System.currentTimeMillis() - startTime); |
| | | } |
| | | log.info("Jobs initialization completed in {} ms", System.currentTimeMillis() - startTime); |
| | | } |
| | | |
| | | /** |
| | |
| | | public static final Integer FOUR = 4; |
| | | public static final Integer SIX = 6; |
| | | public static final Integer FIVE = 5; |
| | | public static final String QRCODE_URLS = "QRCODE_URLS"; |
| | | public static final String SHE_QRCODES_URL = "SHE_QRCODES_URL"; |
| | | public static final String DCA_QRCODES_URL = "DCA_QRCODES_URL"; |
| | | public static final String DBH_QRCODES_URL = "DBH_QRCODES_URL"; |
| | | public static boolean WORKORDER_SHE_EMAIL_SENDING = false; |
| | | public static boolean DEALING_COMPANY_SYNC = false ; |
| | | public static boolean DEALING_MEMBER_SYNC = false ; |
| | |
| | | package com.doumee.core.utils; |
| | | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | import javax.net.ssl.*; |
| | | import java.io.*; |
| | | import java.net.HttpURLConnection; |
| | |
| | | import java.security.SecureRandom; |
| | | import java.security.cert.CertificateException; |
| | | import java.security.cert.X509Certificate; |
| | | import java.util.HashMap; |
| | | import java.util.LinkedHashMap; |
| | | import java.util.Map; |
| | | |
| | | @Slf4j |
| | | public class HttpsUtil { |
| | | |
| | | public static String get(String url,boolean ignoreSSL) { |
| | |
| | | try { |
| | | URL _url = new URL(url); |
| | | connection = (HttpURLConnection) _url.openConnection(); |
| | | System.out.println(connection.getContentLength()); |
| | | connection.setDoOutput(true); |
| | | connection.setRequestMethod("GET"); |
| | | return connection.getInputStream(); |
| | |
| | | } |
| | | return null; |
| | | } |
| | | public static Map<String,Object> connInputsteamReturnMap(String url, String method, String data, String contentType ){ |
| | | HttpURLConnection connection = null; |
| | | try { |
| | | Map<String,Object> map = new HashMap<>(); |
| | | URL _url = new URL(url); |
| | | connection = (HttpURLConnection) _url.openConnection(); |
| | | connection.setDoOutput(true); |
| | | connection.setRequestMethod("GET"); |
| | | int size =connection.getContentLength(); |
| | | log.error("ä¼ä¸å¾çä¸è½½æµå®é
大å°ï¼=========================="+size); |
| | | InputStream in =connection.getInputStream(); |
| | | if(in == null){ |
| | | log.error("ä¼ä¸å¾çä¸è½½æµå®é
æµä¸ºç©ºï¼=========================="); |
| | | return null; |
| | | } |
| | | log.error("ä¼ä¸å¾çä¸è½½æµå¤§å°ï¼=========================="+in.available()); |
| | | map.put("data",in); |
| | | map.put("size",size); |
| | | return map; |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | public static String connectionHttp(String url,String method,String data,String contentType ){ |
| | | HttpURLConnection connection = null; |
| | | try { |
| | |
| | | package com.doumee.core.utils.azure; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.azure.core.http.rest.Response; |
| | | import com.azure.storage.blob.BlobClient; |
| | | import com.azure.storage.blob.BlobContainerClient; |
| | | import com.azure.storage.blob.BlobServiceClient; |
| | | import com.azure.storage.blob.BlobServiceClientBuilder; |
| | | import com.azure.storage.blob.models.BlobRequestConditions; |
| | | import com.azure.storage.blob.models.BlockBlobItem; |
| | | import com.azure.core.http.rest.RestProxy; |
| | | import com.azure.identity.DefaultAzureCredentialBuilder; |
| | | import com.azure.storage.blob.*; |
| | | import com.azure.storage.blob.models.*; |
| | | import com.azure.storage.blob.options.BlobParallelUploadOptions; |
| | | import com.azure.storage.blob.options.BlobUploadFromFileOptions; |
| | | import com.azure.storage.blob.sas.BlobContainerSasPermission; |
| | | import com.azure.storage.blob.specialized.BlobInputStream; |
| | | import com.azure.storage.common.StorageSharedKeyCredential; |
| | | import io.netty.handler.logging.ByteBufFormat; |
| | | import io.netty.handler.logging.LogLevel; |
| | | import reactor.util.context.ContextView; |
| | | import lombok.Data; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | import javax.servlet.ServletOutputStream; |
| | | import java.io.ByteArrayOutputStream; |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | import java.io.UncheckedIOException; |
| | | import java.nio.file.Path; |
| | | import java.time.OffsetDateTime; |
| | | |
| | | @Data |
| | | @Slf4j |
| | |
| | | |
| | | public AzureBlobUtil(String accountName, String accountKey, String endpoint, String container){ |
| | | try { |
| | | |
| | | this.accountKey = accountKey; |
| | | this.accountName = accountName; |
| | | this.endpoint = endpoint; |
| | | this.container = container; |
| | | this.connectionString = "DefaultEndpointsProtocol=https;AccountName=" + this.accountName + ";AccountKey=" + this.accountKey + ";EndpointSuffix=" + endpoint; |
| | | this.blobServiceClient = new BlobServiceClientBuilder().connectionString(connectionString).buildClient(); |
| | | this.blobContainerClient = this.blobServiceClient.getBlobContainerClient(this.container); |
| | | // this.connectionString = "DefaultEndpointsProtocol=https;AccountName=" + this.accountName + ";AccountKey=" + this.accountKey + ";EndpointSuffix=" + endpoint; |
| | | // this.blobServiceClient = new BlobServiceClientBuilder().connectionString(connectionString).buildClient(); |
| | | // this.blobServiceClient = new BlobServiceClientBuilder() |
| | | // .endpoint(endpoint) |
| | | // .sasToken(accountKey) |
| | | // .buildClient(); |
| | | initClient(); |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.error("åå§åBLOB客æ·ç«¯å¼å¸¸0=========="+e.getMessage()); |
| | | } |
| | | |
| | | } |
| | | |
| | | public void initClient( ) { |
| | | if(this.blobServiceClient!=null){ |
| | | log.error("åå§åBLOB客æ·ç«¯å·²å®æï¼æ éé夿æ=========="); |
| | | return; |
| | | } |
| | | try { |
| | | this.blobServiceClient = new BlobServiceClientBuilder().connectionString(connectionString).buildClient(); |
| | | this.blobContainerClient = this.blobServiceClient.getBlobContainerClient(this.container); |
| | | StorageSharedKeyCredential credential = new StorageSharedKeyCredential(accountName, accountKey); |
| | | // Azure SDK client builders accept the credential as a parameter |
| | | this.blobServiceClient = new BlobServiceClientBuilder() |
| | | .endpoint(endpoint) |
| | | .credential(credential) |
| | | .buildClient(); |
| | | this.blobContainerClient = this.blobServiceClient.createBlobContainerIfNotExists(this.container); |
| | | this.blobContainerClient.setAccessPolicy(PublicAccessType.CONTAINER, null); |
| | | // this.blobContainerClient = this.blobServiceClient.getBlobContainerClient(this.container); |
| | | // String endpointString = String.format("https://%s.blob.core.windows.net/%s", |
| | | // accountName, container); |
| | | // |
| | | // this.blobContainerClient = new BlobContainerClientBuilder() |
| | | // .endpoint(endpointString) |
| | | // .credential(new DefaultAzureCredentialBuilder().build()) |
| | | // .buildClient(); |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.error("åå§åBLOB客æ·ç«¯å¼å¸¸1=========="+e.getMessage()); |
| | | } |
| | | } |
| | | public void uploadFile(String fileName, InputStream data) { |
| | | |
| | | public void downloadBlobToStream(String blob, ServletOutputStream outputStream) { |
| | | BlobClient blobClient =this.getBlobContainerClient().getBlobClient(blob); |
| | | blobClient.downloadStream(outputStream); |
| | | } |
| | | public BlobInputStream readBlobFromStream(String blob) { |
| | | BlobClient blobClient =this.getBlobContainerClient().getBlobClient(blob); |
| | | // Opening a blob input stream allows you to read from a blob through a normal |
| | | // stream interface |
| | | try (BlobInputStream blobStream = blobClient.openInputStream()) { |
| | | blobStream.read(); |
| | | return blobStream ; |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | public BlobInputStream readBlobFromStream(BlobClient blobClient) { |
| | | // Opening a blob input stream allows you to read from a blob through a normal |
| | | // stream interface |
| | | try (BlobInputStream blobStream = blobClient.openInputStream()) { |
| | | blobStream.read(); |
| | | return blobStream; |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | public boolean upload(String fileName, InputStream data) { |
| | | try { |
| | | if(getBlobContainerClient() == null){ |
| | | initClient(); |
| | | } |
| | | BlobClient client = this.blobContainerClient.getBlobClient(fileName); |
| | | client.upload(data, data.available(), true); |
| | | return true; |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | return false; |
| | | } |
| | | public boolean uploadFileWithResponse(String fileName, InputStream inputStream) { |
| | | |
| | | public void uploadBlockBlobWithTransferOptions(BlobContainerClient blobContainerClient, Path filePath) { |
| | | String fileName = filePath.getFileName().toString(); |
| | | BlobClient blobClient = blobContainerClient.getBlobClient(fileName); |
| | | |
| | | ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions() |
| | | .setBlockSizeLong((long) (4 * 1024 * 1024)) // 4 MiB block size |
| | | .setMaxConcurrency(2) |
| | | .setMaxSingleUploadSizeLong((long) 8 * 1024 * 1024); // 8 MiB max size for single request upload |
| | | |
| | | BlobUploadFromFileOptions options = new BlobUploadFromFileOptions(filePath.toString()); |
| | | options.setParallelTransferOptions(parallelTransferOptions); |
| | | |
| | | try { |
| | | Response<BlockBlobItem> blockBlob = blobClient.uploadFromFileWithResponse(options, null, null); |
| | | } catch (UncheckedIOException ex) { |
| | | System.err.printf("Failed to upload from file: %s%n", ex.getMessage()); |
| | | } |
| | | } |
| | | /*public boolean uploadFileWithResponse(String fileName, InputStream inputStream) { |
| | | try { |
| | | log.error("BLOBä¸ä¼ å¼åï¼........"+fileName); |
| | | if(getBlobContainerClient() == null){ |
| | | log.error("BLOBä¸ä¼ å¼åï¼........åå§å客æ·ç«¯"); |
| | | initClient(); |
| | | } |
| | | BlobParallelUploadOptions options = new BlobParallelUploadOptions(inputStream, inputStream.available()); |
| | | options.setRequestConditions(new BlobRequestConditions().setIfNoneMatch("*")); |
| | | Response<BlockBlobItem> rsp = this.blobContainerClient.getBlobClient(fileName).uploadWithResponse(options, null, null); |
| | | if(rsp.getStatusCode()==201) { |
| | | log.info("ä¸ä¼ æåï¼........"+fileName); |
| | | if(rsp!=null && rsp.getStatusCode()==201) { |
| | | log.info("BLOBä¸ä¼ æåï¼........"+fileName); |
| | | log.error("BLOBä¸ä¼ æåï¼........"+fileName); |
| | | return true; |
| | | } |
| | | log.error("BLOBä¸ä¼ 失败ï¼........"+ JSONObject.toJSONString(rsp)); |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.info("ä¸ä¼ 失败ï¼........"+e.getMessage()); |
| | | log.error("BLOBä¸ä¼ 失败ï¼........"+e.getMessage()); |
| | | } |
| | | return false; |
| | | }*/ |
| | | public boolean uploadFileWithResponseAndSize(String fileName, InputStream inputStream,Integer size) { |
| | | try { |
| | | log.error("BLOBä¸ä¼ å¼åï¼........"+fileName+"===============size:"+size); |
| | | if(getBlobContainerClient() == null){ |
| | | log.error("BLOBä¸ä¼ å¼åï¼........åå§å客æ·ç«¯"); |
| | | initClient(); |
| | | } |
| | | BlobParallelUploadOptions options = new BlobParallelUploadOptions(inputStream,(size!=null && size>0)?size: inputStream.available()); |
| | | options.setRequestConditions(new BlobRequestConditions().setIfNoneMatch("*")); |
| | | Response<BlockBlobItem> rsp = this.blobContainerClient.getBlobClient(fileName).uploadWithResponse(options, null, null); |
| | | if(rsp!=null && rsp.getStatusCode()==201) { |
| | | log.info("BLOBä¸ä¼ æåï¼........"+fileName); |
| | | log.error("BLOBä¸ä¼ æåï¼........"+fileName); |
| | | return true; |
| | | } |
| | | log.error("BLOBä¸ä¼ 失败ï¼........"+ JSONObject.toJSONString(rsp)); |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.error("BLOBä¸ä¼ 失败ï¼........"+e.getMessage()); |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | } |
| | |
| | | public final static String DMSECRET = "mfmGJpvqj1WNPTwo0Cue42uibhUd5W6_iSWpF39XZQ0";//客管家åºç¨ SECRET |
| | | public final static String CORPSECRET = "8gl5ndGr824OHZ90CkZdcIewUKHoyk13XN4hfxBS_io"; |
| | | public final static String ACCESS_TOKEN = "aOpknXCW7KBBwgGAPuacwfhJRcT1PeIg-IroZicxWamj0JayKJ0rKw2sNXGzpQzK8AMDeDrEJC_kTvPPWTgtefDNLtfsdHS7IpXqBV1P8znLG1EmsYPNgvn78dsQd5bBomLl_qPpOob9hUUsSJJKcEmxXldCNEYVBhKmYnQ4yY8WE8i4xp7aLmm-hRql0AzhzaNhUA7nAzNN5BsgSgbXMA"; |
| | | //è·åaccesstoken,corpid=ä¼ä¸ID,corpsecret=åºç¨çåè¯å¯é¥ |
| | | //è·åaccesstoken,corpid=ä¼ä¸ID,corpsecret=åºç¨çåè¯å¯é¥ https://wecom-qyapiqa.unilever-china.com/cgi-bin/gettoken?corpid=wwe02e8fd876f8add1&corpsecret=5e0272fabfcfcee79840f1cef24cb364 |
| | | public final static String[] GET_ACCESS_TOKEN = new String[]{"/cgi-bin/gettoken?corpid=${corpid}&corpsecret=${secret}","è·åä¼ä¸å¾®ä¿¡accesstoken"}; |
| | | //è·åé¨é¨ä¿¡æ¯,é¨é¨idãè·åæå®é¨é¨åå
¶ä¸çåé¨é¨ï¼ä»¥åååé¨é¨çåé¨é¨ççï¼éå½ï¼ã 妿ä¸å¡«ï¼é»è®¤è·åå
¨éç»ç»æ¶æ |
| | | public final static String[] GET_DEPARTMENT_LIST = new String[]{"/cgi-bin/department/list?access_token=${accesstoken}&id=${id}","è·åé¨é¨ä¿¡æ¯"}; |
| | |
| | | import com.doumee.core.utils.HttpsUtil; |
| | | import com.doumee.core.utils.qiyeweixin.model.request.QywxSendMsgRequest; |
| | | import com.doumee.core.utils.qiyeweixin.model.response.*; |
| | | import lombok.Data; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | |
| | | @Component |
| | | @Slf4j |
| | | @Data |
| | | public class QywxUtil { |
| | | private static JSONObject json = new JSONObject(); |
| | | |
| | |
| | | @PostConstruct |
| | | private void init() { |
| | | qyUtil = this; |
| | | System.out.println(qyUtil.qiweiUrl); |
| | | System.out.println(qyUtil.getQiweiUrl()); |
| | | // QywxUtil.qiweiUrl = serviceurl; |
| | | } |
| | | |
| | |
| | | public static String getAccessToken(String corpId, String corpSecret) { |
| | | String[] interfaceUrl = QywxConstant.GET_ACCESS_TOKEN; |
| | | String url = interfaceUrl[0].replace("${corpid}",corpId).replace("${secret}",corpSecret); |
| | | QywxBaseResponse response = sendHttpRequest(url,interfaceUrl[1],"",new TypeReference<QywxBaseResponse<String>>(){}); |
| | | QywxBaseResponse response = sendHttpGetRequest(url,interfaceUrl[1], new TypeReference<QywxBaseResponse<String>>(){}); |
| | | if(response.getErrcode()!=null && response.getErrcode() ==0){ |
| | | return response.getAccess_token(); |
| | | } |
| | |
| | | String[] interfaceUrl = QywxConstant.SEND_MSG; |
| | | String url = interfaceUrl[0].replace("${accesstoken}",token); |
| | | QywxSendMsgResponse response = sendHttpRequestSingle(url,interfaceUrl[1],JSONObject.toJSONString(param) |
| | | ,new TypeReference<QywxSendMsgResponse>(){}); |
| | | ,new TypeReference<QywxSendMsgResponse>(){},true); |
| | | log.error("æ¨éæ¶æ¯ç»æ{}",JSONObject.toJSONString(response)); |
| | | if(response.getErrcode()!=null && response.getErrcode() ==0){ |
| | | return response; |
| | |
| | | |
| | | return null; |
| | | } |
| | | |
| | | public static Map<String,Object> getMediaInputstreamMap(String token, String media) { |
| | | try { |
| | | String[] interfaceUrl = QywxConstant.GET_MEDIA; |
| | | String url = qyUtil.qiweiUrl+interfaceUrl[0].replace("${accesstoken}",token).replace("${media_id}",media); |
| | | log.info("ä¼ä¸å¾®ä¿¡ä¸´æ¶ç´ æè·åurl=========="+url); |
| | | Map<String,Object> map = HttpsUtil.connInputsteamReturnMap(url,"GET",null,null); |
| | | return map; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("ä¼ä¸å¾®ä¿¡ä¸´æ¶ç´ æè·åerror=========="+e.getMessage()); |
| | | } |
| | | |
| | | return null; |
| | | } |
| | | public static QywxUserInfoResponse getUserInfo(String token,String id) { |
| | | String[] interfaceUrl = QywxConstant.GET_USER_DETAIL; |
| | | String url = interfaceUrl[0].replace("${accesstoken}",token).replace("${id}",id); |
| | | QywxUserInfoResponse response = sendHttpRequestSingle(url,interfaceUrl[1],"" |
| | | ,new TypeReference<QywxUserInfoResponse>(){}); |
| | | ,new TypeReference<QywxUserInfoResponse>(){},false); |
| | | if(response.getErrcode()!=null && response.getErrcode() ==0){ |
| | | return response; |
| | | } |
| | |
| | | * @param <T> |
| | | */ |
| | | public static <T> QywxBaseResponse<T> sendHttpRequest(String url, String name, String param, TypeReference<QywxBaseResponse<T>> typeReference){ |
| | | log.info("ã"+name+"ã================å¼å§===="+url+"\nparam==========================:"+ JSONObject.toJSONString(param)); |
| | | log.info("ã"+name+"ã================å¼å§===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ JSONObject.toJSONString(param)); |
| | | if ( StringUtils.isNotBlank(url)) { |
| | | String res = null; |
| | | try { |
| | | Map<String,String> headers = new HashMap<>(); |
| | | res = HttpsUtil.postJson(qyUtil.qiweiUrl+url,param); |
| | | res = HttpsUtil.get(qyUtil.qiweiUrl+url,true); |
| | | QywxBaseResponse result = JSONObject.parseObject(res, typeReference.getType()); |
| | | logResult(result,name); |
| | | return result; |
| | |
| | | } |
| | | return null; |
| | | } |
| | | public static <T> QywxBaseResponse<T> sendHttpGetRequest(String url, String name, TypeReference<QywxBaseResponse<T>> typeReference){ |
| | | log.info("ã"+name+"ã================å¼å§===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ JSONObject.toJSONString(url)); |
| | | if ( StringUtils.isNotBlank(url)) { |
| | | String res = null; |
| | | try { |
| | | Map<String,String> headers = new HashMap<>(); |
| | | res = HttpsUtil.get(qyUtil.qiweiUrl+url,true); |
| | | QywxBaseResponse result = JSONObject.parseObject(res, typeReference.getType()); |
| | | logResult(result,name); |
| | | return result; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("ã"+name+"ã================失败===="+ JSONObject.toJSONString(url)); |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | public static <T extends QywxBaseSingleResponse> T sendHttpRequestMultifile(String url, String name, String imgUrl , TypeReference<T> typeReference){ |
| | | log.info("ã"+name+"ã================å¼å§===="+ imgUrl); |
| | | log.info("ã"+name+"ã================å¼å§===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ imgUrl); |
| | | if ( StringUtils.isNotBlank(url)) { |
| | | String res = null; |
| | | try { |
| | |
| | | } |
| | | return null; |
| | | } |
| | | public static <T extends QywxBaseSingleResponse> T sendHttpRequestSingle(String url, String name, String param, TypeReference<T> typeReference){ |
| | | log.info("ã"+name+"ã================å¼å§===="+ JSONObject.toJSONString(param)); |
| | | public static <T extends QywxBaseSingleResponse> T sendHttpRequestSingle(String url, String name, String param, TypeReference<T> typeReference,boolean isPost){ |
| | | log.info("ã"+name+"ã================å¼å§===="+qyUtil.qiweiUrl+url+"\nparam==========================:"+ JSONObject.toJSONString(param)); |
| | | if ( StringUtils.isNotBlank(url)) { |
| | | String res = null; |
| | | try { |
| | | Map<String,String> headers = new HashMap<>(); |
| | | if(isPost){ |
| | | res = HttpsUtil.postJson(qyUtil.qiweiUrl+url,param); |
| | | }else{ |
| | | res = HttpsUtil.get(qyUtil.qiweiUrl+url,true); |
| | | } |
| | | T result = JSONObject.parseObject(res, typeReference.getType()); |
| | | // logResult(result,name); |
| | | return result; |
| | |
| | | @ApiModelProperty(value = "æ¯å¦ä¸ºé¨é¨è´è´£äºº0-å¦ï¼1-æ¯", example = "1") |
| | | @TableField(exist = false) |
| | | private Integer isLeader; |
| | | @ApiModelProperty(value = "æ¯å¦å
å«åèå") |
| | | @TableField(exist = false) |
| | | private Boolean hasChildren; |
| | | |
| | | } |
| | |
| | | @ApiModelProperty(value = "ç»ç»ç¼ç ID") |
| | | @TableField(exist = false) |
| | | private Integer companyId; |
| | | @ApiModelProperty(value = "ç»ç»ç¼ç IDs") |
| | | @TableField(exist = false) |
| | | private List<String> companyIds; |
| | | @ApiModelProperty(value = "设置èå´ 0ç´å±é¨é¨åå·¥ 1é¨é¨åå
¶ä¸çº§å¸æ©åå·¥ 2æå®äººå") |
| | | @TableField(exist = false) |
| | | private Integer isMember; |
| | |
| | | for (Company treeNode : nodeList){ |
| | | // 夿å½åèç¹æ¯å¦ä¸ºæ ¹èç¹ï¼æ¤å¤æ³¨æï¼è¥parentIdç±»åæ¯Stringï¼åè¦éç¨equals()æ¹æ³å¤æã |
| | | if(origin== 1){ |
| | | if( findParentIdFromList(treeNode.getQwParentId()) == null){ |
| | | treeNode.setQwParentId(null);//å»é¤æ²¡è·åçç¶èç¹çä¼å¾®ç¶çº§æ è¯ï¼ä½ä¸ºé¡¶èç¹ |
| | | } |
| | | if (StringUtils.isBlank(treeNode.getQwParentId()) || StringUtils.equals(treeNode.getQwId(),"1")) { |
| | | // æ¯ï¼æ·»å |
| | | rootNodeList.add(treeNode); |
| | |
| | | } |
| | | } |
| | | return rootNodeList; |
| | | } |
| | | |
| | | private Company findParentIdFromList(String qwParentId) { |
| | | for(Company c : nodeList){ |
| | | if(StringUtils.equals(c.getQwId(),qwParentId)){ |
| | | return c; |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | |
| | | } |
| | | // for循ç¯ç»æï¼å³èç¹ä¸æ²¡æä»»ä½èç¹ï¼æ å½¢æå»ºç»æï¼è®¾ç½®æ ç»æ |
| | | pNode.setChildList(childTree); |
| | | if(childTree == null || childTree.size() ==0){ |
| | | pNode.setHasChildren(Boolean.FALSE); |
| | | }else{ |
| | | pNode.setHasChildren(Boolean.TRUE); |
| | | } |
| | | return pNode; |
| | | } |
| | | |
| | |
| | | private Integer id; |
| | | |
| | | @ApiModelProperty(value = "æå±åå
¸", example = "1") |
| | | @NotNull(message = "æå±åå
¸ä¸è½ä¸ºç©º", groups = {Constants.OperaType.Create.class, Constants.OperaType.Update.class}) |
| | | @NotNull(message = "æå±åå
¸ä¸è½ä¸ºç©º", groups = {Constants.OperaType.Create.class }) |
| | | private Integer dictId; |
| | | |
| | | @ApiModelProperty(value = "æ°æ®å¼") |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.doumee.dao.system.vo; |
| | | |
| | | import com.doumee.dao.system.model.SystemDict; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author dm |
| | | * @since 2025/03/31 16:44 |
| | | */ |
| | | @Data |
| | | @ApiModel("äºç»´ç 管ç对象") |
| | | public class SystemQrcodeListVO { |
| | | |
| | | @ApiModelProperty(value = "ç¼ç ") |
| | | private String id; |
| | | @ApiModelProperty(value = "åç§°") |
| | | private String name; |
| | | @ApiModelProperty(value = "å°å") |
| | | private String url; |
| | | |
| | | } |
| | |
| | | //设置èå´ 0ç´å±é¨é¨åå·¥ 1é¨é¨åå
¶ä¸çº§å¸æ©åå·¥ 2æå®äººå |
| | | if(Constants.equalsInteger(managers.getIsMember(),Constants.ZERO) || Constants.equalsInteger(managers.getIsMember(),Constants.ONE)){ |
| | | //ç´å±é¨é¨ æ é¨é¨åå
¶åé¨é¨ |
| | | if(managers.getCompanyId() ==null ){ |
| | | /* if(managers.getCompanyId() ==null ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | Company company = companyMapper.selectById(managers.getCompanyId()); |
| | | if(company == null || Constants.equalsInteger(company.getIsdeleted(),Constants.ONE)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对ä¸èµ·ï¼é¨é¨ä¿¡æ¯ä¸åå¨ï¼è¯·å·æ°é¡µé¢éè¯ï¼"); |
| | | }*/ |
| | | if(managers.getCompanyIds() ==null || managers.getCompanyIds().size() ==0 ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | memberList =memberMapper.selectJoinList(Member.class,new MPJLambdaWrapper<Member>() |
| | | .selectAll(Member.class) |
| | | .eq(Member::getIsdeleted,Constants.ZERO) |
| | | .exists(Constants.equalsInteger(managers.getIsMember(),Constants.ZERO),"select (cm.id) from company_member cm where cm.company_id='"+company.getId()+"' and cm.member_id=t.id") |
| | | .exists(Constants.equalsInteger(managers.getIsMember(),Constants.ONE),"select (cm.id) from company_member cm where cm.company_id_path like '"+company.getIdPath()+"%' and cm.member_id=t.id")); |
| | | .exists(Constants.equalsInteger(managers.getIsMember(),Constants.ZERO),"select (cm.id) from company_member cm where cm.company_id in ("+String.join(",",managers.getCompanyIds())+" ) and cm.member_id=t.id") |
| | | // .exists(Constants.equalsInteger(managers.getIsMember(),Constants.ONE),"select (cm.id) from company_member cm where cm.company_id_path like '"+company.getIdPath()+"%' and cm.member_id=t.id") |
| | | ); |
| | | }else{ |
| | | if(managers.getMemberIds()==null || managers.getMemberIds().size()==0){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对ä¸èµ·ï¼è¯·æè¦æ±éæ©æå®å工信æ¯ï¼"); |
| | |
| | | if(StringUtils.isNotBlank(comNames)){ |
| | | comNames += ","; |
| | | } |
| | | comNames += c.getNamePath(); |
| | | comNames += StringUtils.defaultString(c.getNamePath(),c.getName()); |
| | | } |
| | | } |
| | | cm.setCompanyList(qycom); |
| | |
| | | status = 2; |
| | | info ="æ æå工信æ¯ï¼æ æ³åéé®ç®±"; |
| | | }else{ |
| | | //é®ç®±å·²åéï¼æåï¼["æ±èé®ç®±jp@doumee.com"]失败ï¼["æ±è/æ é®ç®±","æ´å¼ºå¼º/é®ç®±null","éé
ææ¦/é®ç®±null"] |
| | | List<String> successInfo = new ArrayList<>(); |
| | | List<String> errorInfo = new ArrayList<>(); |
| | | Map<String,String> contentForm = getEmailContentFormByModel(workorder); |
| | |
| | | package com.doumee.service.common; |
| | | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.context.annotation.AnnotationConfigApplicationContext; |
| | |
| | | import java.util.Map; |
| | | |
| | | @Service |
| | | @Slf4j |
| | | public class EmailService { |
| | | @Autowired |
| | | private JavaMailSender javaMailSender;//注å
¥JavaMailSender |
| | |
| | | } |
| | | } |
| | | public boolean sendEmailWithImages(String toEmail, String title, Map<String,String> contentForm, List<String> imgList) { |
| | | log.error("é®ä»¶å¼å§åé============"+toEmail); |
| | | try { |
| | | AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); |
| | | context.refresh(); |
| | |
| | | } |
| | | content += "</div></body><html>"; |
| | | helper.setText(content,true); |
| | | log.error("é®ä»¶å
容============"+content); |
| | | javaMailSender.send(message); |
| | | System.out.println("é®ä»¶åéæåï¼"); |
| | | log.error("é®ä»¶åçæå============"); |
| | | return true; |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.error("é®ä»¶åçæå============"+e.getMessage()); |
| | | return false; |
| | | } |
| | | } |
| | |
| | | import com.doumee.dao.system.dto.QuerySystemDictDTO; |
| | | import com.doumee.dao.system.model.SystemDict; |
| | | import com.doumee.dao.system.vo.SystemDictListVO; |
| | | import com.doumee.dao.system.vo.SystemQrcodeListVO; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | * @return long |
| | | */ |
| | | long count(SystemDict systemDict); |
| | | |
| | | List<SystemQrcodeListVO> qrcodeList(QuerySystemDictDTO pageWrap); |
| | | } |
| | |
| | | package com.doumee.service.system.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.doumee.core.constants.Constants; |
| | | import com.doumee.dao.system.SystemDictDataMapper; |
| | | import com.doumee.dao.system.model.SystemDictData; |
| | | import com.doumee.dao.system.vo.SystemQrcodeListVO; |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.doumee.core.model.PageData; |
| | |
| | | import com.doumee.service.system.SystemDictService; |
| | | import com.baomidou.mybatisplus.core.conditions.Wrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | |
| | | @Autowired |
| | | private SystemDictMapper systemDictMapper; |
| | | @Autowired |
| | | private SystemDictDataMapper systemDictDataMapper; |
| | | |
| | | @Override |
| | | public Integer create(SystemDict systemDict) { |
| | |
| | | PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | return PageData.from(new PageInfo<>(systemDictMapper.selectManageList(pageWrap.getModel(), pageWrap.getOrderByClause()))); |
| | | } |
| | | @Override |
| | | public List<SystemQrcodeListVO> qrcodeList(QuerySystemDictDTO pageWrap) { |
| | | List<SystemQrcodeListVO> list = new ArrayList<>(); |
| | | SystemDict dict =systemDictMapper.selectOne(new LambdaQueryWrapper<SystemDict>(). |
| | | eq(SystemDict::getCode,Constants.QRCODE_URLS) |
| | | .last("limit 1")) ; |
| | | if(dict!=null){ |
| | | List<SystemDictData> dataList = systemDictDataMapper.selectList(new LambdaQueryWrapper<SystemDictData>(). |
| | | eq(SystemDictData::getDictId,dict.getId())) ; |
| | | if(dataList!=null && dataList.size()>0){ |
| | | for(SystemDictData data :dataList){ |
| | | SystemQrcodeListVO t = new SystemQrcodeListVO(); |
| | | t.setId(data.getId()+""); |
| | | t.setName(data.getRemark()); |
| | | t.setUrl(data.getCode()); |
| | | if(StringUtils.equals(data.getLabel(),Constants.SHE_QRCODES_URL) |
| | | ||StringUtils.equals(data.getLabel(),Constants.DCA_QRCODES_URL) |
| | | ||StringUtils.equals(data.getLabel(),Constants.DBH_QRCODES_URL)){ |
| | | list.add(t); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public long count(SystemDict systemDict) { |
| | |
| | | # enable: true |
| | | # required: true |
| | | mail: |
| | | host: smtp.exmail.qq.com |
| | | username: jp@doumee.com |
| | | password: 2Jz9HFW2U7vRnCRu |
| | | # host: smtp.exmail.qq.com |
| | | # username: jp@doumee.com |
| | | # password: 2Jz9HFW2U7vRnCRu |
| | | host: smtp.aliyun.com |
| | | port: 80 |
| | | username: lkshereport@mail.unilever-china.com |
| | | password: f2fLk384RChX |
| | | default-encoding: UTF-8 |
| | | properties: |
| | | mail: |
| | |
| | | spring: |
| | | # æ°æ®æºé
ç½® |
| | | datasource: |
| | | url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/lianhelihua_sh?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai |
| | | username: doumee |
| | | password: rtjgfEr@&0c0m |
| | | url: jdbc:mysql://solution-cnn3-d-shereport-db-mysql01.mysql.database.chinacloudapi.cn:3306/lianhelihua?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai |
| | | username: service_account |
| | | password: yP5@jJzqME63 |
| | | driver-class-name: com.mysql.cj.jdbc.Driver |
| | | type: com.alibaba.druid.pool.DruidDataSource |
| | | redis: |
| | |
| | | spring: |
| | | # æ°æ®æºé
ç½® |
| | | datasource: |
| | | url: jdbc:mysql://112.26.66.25:3306/lianhelihua_sh?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai |
| | | username: root |
| | | password: Doumee@168&QWERT |
| | | url: jdbc:mysql://solution-cnn3-d-shereport-db-mysql01.mysql.database.chinacloudapi.cn:3306/lianhelihua?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai |
| | | username: service_account |
| | | password: yP5@jJzqME63 |
| | | driver-class-name: com.mysql.cj.jdbc.Driver |
| | | type: com.alibaba.druid.pool.DruidDataSource |
| | | redis: |
| | |
| | | # enable: true |
| | | # required: true |
| | | mail: |
| | | host: smtp.exmail.qq.com |
| | | username: jp@doumee.com |
| | | password: 2Jz9HFW2U7vRnCRu |
| | | host: smtpdm.aliyun.com |
| | | username: lkshereport@mail.unilever-china.com |
| | | password: f2fLk384RChX |
| | | default-encoding: UTF-8 |
| | | port: 80 |
| | | properties: |
| | | mail: |
| | | smtp: |
| | |
| | | type: blob |
| | | |
| | | qiwei: |
| | | serviceurl: https://qyapi.weixin.qq.com |
| | | serviceurl: https://wecom-qyapiqa.unilever-china.com |
| | |
| | | |
| | | spring: |
| | | profiles: |
| | | active: test |
| | | active: dev |
| | | # JSONè¿åé
ç½® |
| | | jackson: |
| | | # é»è®¤æ¶åº |
| | |
| | | <pattern>%highlight(%date{yyyy-MM-dd HH:mm:ss}) | %highlight(%-5level) | %highlight(%thread) | %highlight(%logger) | %msg%n</pattern> |
| | | </layout> |
| | | </appender> |
| | | <property name="log.path" value="/usr/local/jars/lianhelihua_sh/logs"></property> |
| | | <property name="log.path" value="/data/jars/lianhelihua/logs"></property> |
| | | <property name="log.fileSize" value="100MB"></property> |
| | | <property name="log.historyDays" value="7"></property> |
| | | <appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| | |
| | | /usr/local/nacos/nacos/bin/startup.sh -m standalone |
| | | |
| | | nohup java -jar /usr/local/jars/lianhelihua_sh/lianhelihua.jar > /dev/null 2>&1 & |
| | | |
| | | |
| | | |
| | | |
| | | //UATç¯å¢æ§è¡å½ä»¤ |
| | | sudo chown root:root lianhelihua.jar |
| | | sudo chmod 777 lianhelihua.jar |
| | | mv /home/service_account/lianhelihua.jar /data/jars/lianhelihua/ |
| | | sudo java -jar /data/jars/lianhelihua/lianhelihua.jar |
| | | nohup java -jar /data/jars/lianhelihua/lianhelihua.jar > /dev/null 2>&1 & |
| | | |
| | | cd /data/jars/lianhelihua/logs |
| | | tail -f /data/jars/lianhelihua/logs/info.2025-05-19.1.log |