From b2a5bedb30718843653fc365040def37f8194ca1 Mon Sep 17 00:00:00 2001 From: caiyuchao Date: Fri, 16 May 2025 14:46:48 +0800 Subject: [PATCH] init project --- .gitignore | 75 + .image/common/agt-cloud-architecture.png | Bin 0 -> 737448 bytes .image/common/agt-cloud-biz.png | Bin 0 -> 32992 bytes .image/common/infra-feature.png | Bin 0 -> 56087 bytes .image/common/system-feature.png | Bin 0 -> 46340 bytes LICENSE | 20 + README.md | 213 + agt-dependencies/pom.xml | 722 + agt-framework/agt-common/pom.xml | 149 + .../com/fhs/trans/service/AutoTransable.java | 59 + .../framework/common/core/ArrayValuable.java | 15 + .../agt/framework/common/core/KeyValue.java | 22 + .../common/enums/CommonStatusEnum.java | 46 + .../common/enums/DateIntervalEnum.java | 46 + .../framework/common/enums/DocumentEnum.java | 21 + .../framework/common/enums/RpcConstants.java | 17 + .../framework/common/enums/TerminalEnum.java | 40 + .../framework/common/enums/UserTypeEnum.java | 39 + .../common/enums/WebFilterOrderEnum.java | 36 + .../framework/common/exception/ErrorCode.java | 32 + .../common/exception/ServerException.java | 60 + .../common/exception/ServiceException.java | 60 + .../enums/GlobalErrorCodeConstants.java | 41 + .../enums/ServiceErrorCodeRange.java | 48 + .../exception/util/ServiceExceptionUtil.java | 77 + .../agt/framework/common/package-info.java | 6 + .../framework/common/pojo/CommonResult.java | 121 + .../agt/framework/common/pojo/PageParam.java | 36 + .../agt/framework/common/pojo/PageResult.java | 41 + .../common/pojo/SortablePageParam.java | 19 + .../framework/common/pojo/SortingField.java | 37 + .../common/util/cache/CacheUtils.java | 49 + .../common/util/collection/ArrayUtils.java | 58 + .../util/collection/CollectionUtils.java | 352 + .../common/util/collection/MapUtils.java | 68 + .../common/util/collection/SetUtils.java | 19 + .../framework/common/util/date/DateUtils.java | 149 + .../common/util/date/LocalDateTimeUtils.java | 315 + .../framework/common/util/http/HttpUtils.java | 175 + .../framework/common/util/io/FileUtils.java | 61 + .../agt/framework/common/util/io/IoUtils.java | 28 + .../framework/common/util/json/JsonUtils.java | 210 + .../util/json/databind/NumberSerializer.java | 37 + .../TimestampLocalDateTimeDeserializer.java | 27 + .../TimestampLocalDateTimeSerializer.java | 26 + .../common/util/monitor/TracerUtils.java | 30 + .../common/util/number/MoneyUtils.java | 131 + .../common/util/number/NumberUtils.java | 78 + .../common/util/object/BeanUtils.java | 69 + .../common/util/object/ObjectUtils.java | 63 + .../common/util/object/PageUtils.java | 67 + .../framework/common/util/package-info.java | 7 + .../common/util/servlet/ServletUtils.java | 105 + .../util/spring/SpringExpressionUtils.java | 123 + .../common/util/spring/SpringUtils.java | 24 + .../common/util/string/StrUtils.java | 107 + .../util/validation/ValidationUtils.java | 55 + .../framework/common/validation/InEnum.java | 35 + .../validation/InEnumCollectionValidator.java | 44 + .../common/validation/InEnumValidator.java | 43 + .../framework/common/validation/Mobile.java | 28 + .../common/validation/MobileValidator.java | 25 + .../common/validation/Telephone.java | 28 + .../common/validation/TelephoneValidator.java | 25 + .../common/validation/package-info.java | 4 + .../util/collection/CollectionUtilsTest.java | 64 + .../pom.xml | 59 + .../AgtDataPermissionAutoConfiguration.java | 46 + ...AgtDataPermissionRpcAutoConfiguration.java | 34 + ...gtDeptDataPermissionAutoConfiguration.java | 44 + .../core/annotation/DataPermission.java | 35 + .../aop/DataPermissionAnnotationAdvisor.java | 36 + .../DataPermissionAnnotationInterceptor.java | 72 + .../core/aop/DataPermissionContextHolder.java | 72 + .../core/db/DataPermissionRuleHandler.java | 64 + .../rpc/DataPermissionRequestInterceptor.java | 27 + .../core/rpc/DataPermissionRpcWebFilter.java | 38 + .../core/rule/DataPermissionRule.java | 36 + .../core/rule/DataPermissionRuleFactory.java | 28 + .../rule/DataPermissionRuleFactoryImpl.java | 62 + .../rule/dept/DeptDataPermissionRule.java | 207 + .../DeptDataPermissionRuleCustomizer.java | 20 + .../core/rule/dept/package-info.java | 6 + .../core/util/DataPermissionUtils.java | 73 + .../datapermission/package-info.java | 4 + ...ot.autoconfigure.AutoConfiguration.imports | 3 + ...taPermissionAnnotationInterceptorTest.java | 108 + .../aop/DataPermissionContextHolderTest.java | 66 + .../db/DataPermissionRuleHandlerTest.java | 540 + .../DataPermissionRuleFactoryImplTest.java | 145 + .../rule/dept/DeptDataPermissionRuleTest.java | 239 + .../core/util/DataPermissionUtilsTest.java | 15 + .../agt-spring-boot-starter-biz-ip/pom.xml | 54 + .../java/org/agt/framework/ip/core/Area.java | 61 + .../framework/ip/core/enums/AreaTypeEnum.java | 39 + .../framework/ip/core/utils/AreaUtils.java | 214 + .../agt/framework/ip/core/utils/IPUtils.java | 87 + .../org/agt/framework/ip/package-info.java | 11 + .../src/main/resources/area.csv | 3662 +++++ .../src/main/resources/ip2region.xdb | Bin 0 -> 4177309 bytes .../ip/core/utils/AreaUtilsTest.java | 36 + .../framework/ip/core/utils/IPUtilsTest.java | 47 + .../pom.xml | 92 + .../config/AgtTenantAutoConfiguration.java | 218 + .../config/AgtTenantRpcAutoConfiguration.java | 21 + .../tenant/config/TenantProperties.java | 57 + .../tenant/core/aop/TenantIgnore.java | 32 + .../tenant/core/aop/TenantIgnoreAspect.java | 41 + .../core/context/TenantContextHolder.java | 69 + .../tenant/core/db/TenantBaseDO.java | 21 + .../core/db/TenantDatabaseInterceptor.java | 83 + .../framework/tenant/core/job/TenantJob.java | 14 + .../tenant/core/job/TenantJobAspect.java | 75 + .../TenantKafkaEnvironmentPostProcessor.java | 37 + .../kafka/TenantKafkaProducerInterceptor.java | 47 + .../rabbitmq/TenantRabbitMQInitializer.java | 23 + .../TenantRabbitMQMessagePostProcessor.java | 31 + .../redis/TenantRedisMessageInterceptor.java | 42 + .../TenantRocketMQConsumeMessageHook.java | 46 + .../rocketmq/TenantRocketMQInitializer.java | 53 + .../TenantRocketMQSendMessageHook.java | 36 + .../core/redis/TenantRedisCacheManager.java | 46 + .../core/rpc/TenantRequestInterceptor.java | 25 + .../security/TenantSecurityWebFilter.java | 117 + .../core/service/TenantFrameworkService.java | 26 + .../service/TenantFrameworkServiceImpl.java | 66 + .../tenant/core/util/TenantUtils.java | 113 + .../core/web/TenantContextWebFilter.java | 37 + .../web/TenantVisitContextInterceptor.java | 65 + .../agt/framework/tenant/package-info.java | 17 + .../invocation/InvocableHandlerMethod.java | 275 + .../main/resources/META-INF/spring.factories | 2 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../agt-spring-boot-starter-env/pom.xml | 66 + .../config/AgtEnvRpcAutoConfiguration.java | 46 + .../config/AgtEnvWebAutoConfiguration.java | 32 + .../config/EnvEnvironmentPostProcessor.java | 50 + .../framework/env/config/EnvProperties.java | 22 + .../env/core/context/EnvContextHolder.java | 39 + .../env/core/fegin/EnvLoadBalancerClient.java | 83 + .../fegin/EnvLoadBalancerClientFactory.java | 30 + .../env/core/fegin/EnvRequestInterceptor.java | 24 + .../agt/framework/env/core/package-info.java | 1 + .../agt/framework/env/core/util/EnvUtils.java | 56 + .../framework/env/core/web/EnvWebFilter.java | 41 + .../org/agt/framework/env/package-info.java | 7 + .../main/resources/META-INF/spring.factories | 2 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../agt-spring-boot-starter-excel/pom.xml | 87 + .../dict/config/AgtDictAutoConfiguration.java | 18 + .../config/AgtDictRpcAutoConfiguration.java | 15 + .../dict/core/DictFrameworkUtils.java | 96 + .../org/agt/framework/dict/package-info.java | 6 + .../excel/core/annotations/DictFormat.java | 22 + .../core/annotations/ExcelColumnSelect.java | 27 + .../excel/core/convert/AreaConvert.java | 46 + .../excel/core/convert/DictConvert.java | 72 + .../excel/core/convert/JsonConvert.java | 34 + .../excel/core/convert/MoneyConvert.java | 39 + .../function/ExcelColumnSelectFunction.java | 28 + .../core/handler/SelectSheetWriteHandler.java | 158 + .../framework/excel/core/util/ExcelUtils.java | 52 + .../org/agt/framework/excel/package-info.java | 4 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../core/util/DictFrameworkUtilsTest.java | 51 + .../agt-spring-boot-starter-job/pom.xml | 50 + .../config/AgtAsyncAutoConfiguration.java | 37 + .../config/AgtXxlJobAutoConfiguration.java | 47 + .../quartz/config/XxlJobProperties.java | 99 + .../agt/framework/quartz/package-info.java | 5 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../agt-spring-boot-starter-monitor/pom.xml | 73 + .../config/AgtMetricsAutoConfiguration.java | 28 + .../config/AgtTracerAutoConfiguration.java | 55 + .../tracer/config/TracerProperties.java | 14 + .../tracer/core/annotation/BizTrace.java | 42 + .../tracer/core/aop/BizTraceAspect.java | 77 + .../tracer/core/filter/TraceFilter.java | 33 + .../core/util/TracerFrameworkUtils.java | 46 + .../agt/framework/tracer/package-info.java | 6 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../agt-spring-boot-starter-mq/pom.xml | 43 + .../org/agt/framework/mq/package-info.java | 4 + .../config/AgtRabbitMQAutoConfiguration.java | 28 + .../mq/rabbitmq/core/package-info.java | 4 + .../framework/mq/rabbitmq/package-info.java | 4 + .../AgtRedisMQConsumerAutoConfiguration.java | 163 + .../AgtRedisMQProducerAutoConfiguration.java | 31 + .../mq/redis/core/RedisMQTemplate.java | 87 + .../interceptor/RedisMessageInterceptor.java | 26 + .../job/RedisPendingMessageResendJob.java | 100 + .../job/RedisStreamMessageCleanupJob.java | 72 + .../core/message/AbstractRedisMessage.java | 29 + .../pubsub/AbstractRedisChannelMessage.java | 23 + .../AbstractRedisChannelMessageListener.java | 103 + .../stream/AbstractRedisStreamMessage.java | 23 + .../AbstractRedisStreamMessageListener.java | 113 + .../agt/framework/mq/redis/package-info.java | 6 + ...ot.autoconfigure.AutoConfiguration.imports | 3 + .../agt-spring-boot-starter-mybatis/pom.xml | 105 + .../AgtDataSourceAutoConfiguration.java | 40 + .../datasource/core/enums/DataSourceEnum.java | 22 + .../core/filter/DruidAdRemoveFilter.java | 38 + .../framework/datasource/package-info.java | 5 + .../config/AgtMybatisAutoConfiguration.java | 76 + .../IdTypeEnvironmentPostProcessor.java | 108 + .../mybatis/core/dataobject/BaseDO.java | 56 + .../mybatis/core/enums/DbTypeEnum.java | 95 + .../core/handler/DefaultDBFieldHandler.java | 62 + .../mybatis/core/mapper/BaseMapperX.java | 218 + .../core/query/LambdaQueryWrapperX.java | 135 + .../mybatis/core/query/MPJLambdaWrapperX.java | 349 + .../mybatis/core/query/QueryWrapperX.java | 166 + .../mybatis/core/type/EncryptTypeHandler.java | 75 + .../core/type/IntegerListTypeHandler.java | 56 + .../core/type/LongListTypeHandler.java | 57 + .../mybatis/core/type/LongSetTypeHandler.java | 58 + .../core/type/StringListTypeHandler.java | 58 + .../mybatis/core/util/JdbcUtils.java | 89 + .../mybatis/core/util/MyBatisUtils.java | 106 + .../agt/framework/mybatis/package-info.java | 4 + .../config/AgtTranslateAutoConfiguration.java | 18 + .../translate/core/TranslateUtils.java | 37 + .../agt/framework/translate/package-info.java | 4 + .../main/resources/META-INF/spring.factories | 2 + ...ot.autoconfigure.AutoConfiguration.imports | 3 + .../pom.xml | 47 + .../config/AgtIdempotentConfiguration.java | 46 + .../core/annotation/Idempotent.java | 63 + .../idempotent/core/aop/IdempotentAspect.java | 68 + .../keyresolver/IdempotentKeyResolver.java | 22 + .../impl/DefaultIdempotentKeyResolver.java | 25 + .../impl/ExpressionIdempotentKeyResolver.java | 64 + .../impl/UserIdempotentKeyResolver.java | 28 + .../core/redis/IdempotentRedisDAO.java | 41 + .../framework/idempotent/package-info.java | 12 + .../lock4j/config/AgtLock4jConfiguration.java | 18 + .../core/DefaultLockFailureStrategy.java | 21 + .../lock4j/core/Lock4jRedisKeyConstants.java | 19 + .../agt/framework/lock4j/package-info.java | 4 + .../config/AgtRateLimiterConfiguration.java | 55 + .../core/annotation/RateLimiter.java | 62 + .../core/aop/RateLimiterAspect.java | 60 + .../keyresolver/RateLimiterKeyResolver.java | 22 + .../impl/ClientIpRateLimiterKeyResolver.java | 27 + .../impl/DefaultRateLimiterKeyResolver.java | 25 + .../ExpressionRateLimiterKeyResolver.java | 64 + .../ServerNodeRateLimiterKeyResolver.java | 27 + .../impl/UserRateLimiterKeyResolver.java | 28 + .../core/redis/RateLimiterRedisDAO.java | 62 + .../framework/ratelimiter/package-info.java | 4 + .../AgtApiSignatureAutoConfiguration.java | 28 + .../core/annotation/ApiSignature.java | 59 + .../core/aop/ApiSignatureAspect.java | 174 + .../core/redis/ApiSignatureRedisDAO.java | 57 + .../agt/framework/signature/package-info.java | 6 + ...ot.autoconfigure.AutoConfiguration.imports | 4 + .../signature/core/ApiSignatureTest.java | 74 + .../agt-spring-boot-starter-redis/pom.xml | 41 + .../config/AgtCacheAutoConfiguration.java | 82 + .../redis/config/AgtCacheProperties.java | 27 + .../config/AgtRedisAutoConfiguration.java | 45 + .../redis/core/TimeoutRedisCacheManager.java | 86 + .../org/agt/framework/redis/package-info.java | 4 + ...ot.autoconfigure.AutoConfiguration.imports | 2 + .../agt-spring-boot-starter-rpc/pom.xml | 46 + .../framework/rpc/config/package-info.java | 4 + .../agt/framework/rpc/core/package-info.java | 4 + .../org/agt/framework/rpc/package-info.java | 6 + .../agt-spring-boot-starter-security/pom.xml | 79 + .../config/AgtOperateLogConfiguration.java | 27 + .../AgtOperateLogRpcAutoConfiguration.java | 15 + .../operatelog/core/package-info.java | 4 + .../core/service/LogRecordServiceImpl.java | 91 + .../framework/operatelog/package-info.java | 7 + .../config/AgtSecurityAutoConfiguration.java | 94 + .../AgtSecurityRpcAutoConfiguration.java | 25 + .../AgtWebSecurityConfigurerAdapter.java | 220 + .../config/AuthorizeRequestsCustomizer.java | 35 + .../security/config/SecurityProperties.java | 51 + .../framework/security/core/LoginUser.java | 75 + ...eadLocalSecurityContextHolderStrategy.java | 48 + .../filter/TokenAuthenticationFilter.java | 155 + .../core/handler/AccessDeniedHandlerImpl.java | 41 + .../handler/AuthenticationEntryPointImpl.java | 35 + .../core/rpc/LoginUserRequestInterceptor.java | 37 + .../service/SecurityFrameworkService.java | 59 + .../service/SecurityFrameworkServiceImpl.java | 121 + .../core/util/SecurityFrameworkUtils.java | 160 + .../agt/framework/security/package-info.java | 7 + ...ot.autoconfigure.AutoConfiguration.imports | 5 + .../agt-spring-boot-starter-test/pom.xml | 60 + .../test/config/RedisTestConfiguration.java | 35 + .../SqlInitializationTestConfiguration.java | 52 + .../test/core/ut/BaseDbAndRedisUnitTest.java | 55 + .../test/core/ut/BaseDbUnitTest.java | 47 + .../test/core/ut/BaseMockitoUnitTest.java | 13 + .../test/core/ut/BaseRedisUnitTest.java | 36 + .../framework/test/core/ut/package-info.java | 4 + .../framework/test/core/util/AssertUtils.java | 101 + .../framework/test/core/util/RandomUtils.java | 146 + .../org/agt/framework/test/package-info.java | 4 + .../agt-spring-boot-starter-web/pom.xml | 95 + .../config/AgtApiLogAutoConfiguration.java | 45 + .../config/AgtApiLogRpcAutoConfiguration.java | 16 + .../apilog/core/annotation/ApiAccessLog.java | 65 + .../apilog/core/enums/OperateTypeEnum.java | 51 + .../core/filter/ApiAccessLogFilter.java | 252 + .../interceptor/ApiAccessLogInterceptor.java | 103 + .../agt/framework/apilog/package-info.java | 8 + .../config/AgtBannerAutoConfiguration.java | 20 + .../banner/core/BannerApplicationRunner.java | 49 + .../agt/framework/banner/package-info.java | 6 + .../core/base/annotation/DesensitizeBy.java | 28 + .../base/handler/DesensitizationHandler.java | 40 + .../StringDesensitizeSerializer.java | 92 + .../regex/annotation/EmailDesensitize.java | 40 + .../regex/annotation/RegexDesensitize.java | 42 + .../AbstractRegexDesensitizationHandler.java | 46 + .../DefaultRegexDesensitizationHandler.java | 27 + .../handler/EmailDesensitizationHandler.java | 22 + .../annotation/BankCardDesensitize.java | 43 + .../annotation/CarLicenseDesensitize.java | 43 + .../annotation/ChineseNameDesensitize.java | 43 + .../annotation/FixedPhoneDesensitize.java | 43 + .../slider/annotation/IdCardDesensitize.java | 43 + .../slider/annotation/MobileDesensitize.java | 43 + .../annotation/PasswordDesensitize.java | 45 + .../slider/annotation/SliderDesensitize.java | 47 + .../AbstractSliderDesensitizationHandler.java | 77 + .../handler/BankCardDesensitization.java | 32 + .../handler/CarLicenseDesensitization.java | 32 + .../handler/ChineseNameDesensitization.java | 27 + .../DefaultDesensitizationHandler.java | 27 + .../handler/FixedPhoneDesensitization.java | 27 + .../slider/handler/IdCardDesensitization.java | 26 + .../slider/handler/MobileDesensitization.java | 27 + .../handler/PasswordDesensitization.java | 26 + .../framework/desensitize/package-info.java | 4 + .../config/AgtJacksonAutoConfiguration.java | 52 + .../framework/jackson/core/package-info.java | 1 + .../java/org/agt/framework/package-info.java | 4 + .../config/AgtSwaggerAutoConfiguration.java | 161 + .../swagger/config/SwaggerProperties.java | 60 + .../agt/framework/swagger/package-info.java | 6 + .../web/config/AgtWebAutoConfiguration.java | 132 + .../framework/web/config/WebProperties.java | 66 + .../web/core/filter/ApiRequestFilter.java | 27 + .../core/filter/CacheRequestBodyFilter.java | 31 + .../core/filter/CacheRequestBodyWrapper.java | 68 + .../framework/web/core/filter/DemoFilter.java | 35 + .../core/handler/GlobalExceptionHandler.java | 407 + .../handler/GlobalResponseBodyHandler.java | 45 + .../web/core/util/WebFrameworkUtils.java | 182 + .../org/agt/framework/web/package-info.java | 4 + .../xss/config/AgtXssAutoConfiguration.java | 63 + .../framework/xss/config/XssProperties.java | 29 + .../xss/core/clean/JsoupXssCleaner.java | 64 + .../framework/xss/core/clean/XssCleaner.java | 16 + .../framework/xss/core/filter/XssFilter.java | 52 + .../xss/core/filter/XssRequestWrapper.java | 92 + .../core/json/XssStringJsonDeserializer.java | 82 + .../org/agt/framework/xss/package-info.java | 6 + ...ot.autoconfigure.AutoConfiguration.imports | 6 + .../src/main/resources/banner.txt | 9 + .../desensitize/core/DesensitizeTest.java | 100 + .../desensitize/core/annotation/Address.java | 30 + .../core/handler/AddressHandler.java | 19 + .../agt-spring-boot-starter-websocket/pom.xml | 73 + .../config/AgtWebSocketAutoConfiguration.java | 183 + .../websocket/config/WebSocketProperties.java | 34 + .../handler/JsonWebSocketMessageHandler.java | 83 + .../listener/WebSocketMessageListener.java | 31 + .../core/message/JsonWebSocketMessage.java | 29 + .../LoginUserHandshakeInterceptor.java | 42 + .../WebSocketAuthorizeRequestsCustomizer.java | 24 + .../AbstractWebSocketMessageSender.java | 106 + .../core/sender/WebSocketMessageSender.java | 52 + .../sender/kafka/KafkaWebSocketMessage.java | 35 + .../kafka/KafkaWebSocketMessageConsumer.java | 28 + .../kafka/KafkaWebSocketMessageSender.java | 67 + .../local/LocalWebSocketMessageSender.java | 20 + .../rabbitmq/RabbitMQWebSocketMessage.java | 37 + .../RabbitMQWebSocketMessageConsumer.java | 39 + .../RabbitMQWebSocketMessageSender.java | 62 + .../sender/redis/RedisWebSocketMessage.java | 34 + .../redis/RedisWebSocketMessageConsumer.java | 23 + .../redis/RedisWebSocketMessageSender.java | 57 + .../rocketmq/RocketMQWebSocketMessage.java | 35 + .../RocketMQWebSocketMessageConsumer.java | 30 + .../RocketMQWebSocketMessageSender.java | 61 + .../WebSocketSessionHandlerDecorator.java | 49 + .../core/session/WebSocketSessionManager.java | 53 + .../session/WebSocketSessionManagerImpl.java | 125 + .../core/util/WebSocketFrameworkUtils.java | 67 + .../agt/framework/websocket/package-info.java | 4 + ...ot.autoconfigure.AutoConfiguration.imports | 1 + agt-framework/pom.xml | 49 + agt-gateway/Dockerfile | 19 + agt-gateway/pom.xml | 95 + .../agt/gateway/AgtGatewayApplication.java | 14 + .../agt/gateway/filter/cors/CorsFilter.java | 48 + .../filter/cors/CorsResponseHeaderFilter.java | 54 + .../gateway/filter/grey/GrayLoadBalancer.java | 111 + .../GrayReactiveLoadBalancerClientFilter.java | 139 + .../agt/gateway/filter/logging/AccessLog.java | 92 + .../filter/logging/AccessLogFilter.java | 263 + .../gateway/filter/security/LoginUser.java | 44 + .../security/TokenAuthenticationFilter.java | 168 + .../handler/GlobalExceptionHandler.java | 74 + .../jackson/JacksonAutoConfiguration.java | 51 + .../gateway/route/dynamic/package-info.java | 10 + .../org/agt/gateway/route/package-info.java | 4 + .../gateway/util/BannerApplicationRunner.java | 51 + .../java/org/agt/gateway/util/EnvUtils.java | 39 + .../gateway/util/SecurityFrameworkUtils.java | 118 + .../agt/gateway/util/WebFrameworkUtils.java | 116 + .../src/main/resources/application-dev.yaml | 14 + .../src/main/resources/application-local.yaml | 19 + .../src/main/resources/application.yaml | 253 + agt-gateway/src/main/resources/banner.txt | 9 + .../src/main/resources/logback-spring.xml | 76 + .../src/main/resources/static/favicon.ico | Bin 0 -> 3708 bytes .../src/test/java/org/agt/ProjectReactor.java | 147 + agt-module-infra/agt-module-infra-api/pom.xml | 47 + .../module/infra/api/config/ConfigApi.java | 21 + .../agt/module/infra/api/file/FileApi.java | 59 + .../infra/api/file/dto/FileCreateReqDTO.java | 25 + .../infra/api/logger/ApiAccessLogApi.java | 35 + .../infra/api/logger/ApiErrorLogApi.java | 35 + .../logger/dto/ApiAccessLogCreateReqDTO.java | 63 + .../logger/dto/ApiErrorLogCreateReqDTO.java | 68 + .../agt/module/infra/api/package-info.java | 4 + .../api/websocket/WebSocketSenderApi.java | 74 + .../websocket/dto/WebSocketSendReqDTO.java | 26 + .../agt/module/infra/enums/ApiConstants.java | 23 + .../module/infra/enums/DictTypeConstants.java | 20 + .../infra/enums/ErrorCodeConstants.java | 71 + .../agt-module-infra-biz/Dockerfile | 19 + agt-module-infra/agt-module-infra-biz/pom.xml | 171 + .../agt/module/infra/AgtInfraApplication.java | 20 + .../infra/api/config/ConfigApiImpl.java | 25 + .../module/infra/api/file/FileApiImpl.java | 26 + .../infra/api/logger/ApiAccessLogApiImpl.java | 26 + .../infra/api/logger/ApiErrorLogApiImpl.java | 26 + .../agt/module/infra/api/package-info.java | 1 + .../api/websocket/WebSocketSenderApiImpl.java | 36 + .../admin/codegen/CodegenController.java | 151 + .../codegen/vo/CodegenCreateListReqVO.java | 21 + .../admin/codegen/vo/CodegenDetailRespVO.java | 20 + .../codegen/vo/CodegenPreviewRespVO.java | 16 + .../admin/codegen/vo/CodegenUpdateReqVO.java | 24 + .../vo/column/CodegenColumnRespVO.java | 69 + .../vo/column/CodegenColumnSaveReqVO.java | 81 + .../vo/table/CodegenTablePageReqVO.java | 33 + .../codegen/vo/table/CodegenTableRespVO.java | 72 + .../vo/table/CodegenTableSaveReqVO.java | 100 + .../codegen/vo/table/DatabaseTableRespVO.java | 16 + .../admin/config/ConfigController.java | 108 + .../admin/config/vo/ConfigPageReqVO.java | 33 + .../admin/config/vo/ConfigRespVO.java | 56 + .../admin/config/vo/ConfigSaveReqVO.java | 45 + .../admin/db/DataSourceConfigController.java | 72 + .../admin/db/vo/DataSourceConfigRespVO.java | 27 + .../db/vo/DataSourceConfigSaveReqVO.java | 31 + .../demo/demo01/Demo01ContactController.java | 93 + .../demo01/vo/Demo01ContactPageReqVO.java | 30 + .../demo/demo01/vo/Demo01ContactRespVO.java | 46 + .../demo01/vo/Demo01ContactSaveReqVO.java | 36 + .../demo/demo02/Demo02CategoryController.java | 90 + .../demo02/vo/Demo02CategoryListReqVO.java | 25 + .../demo/demo02/vo/Demo02CategoryRespVO.java | 31 + .../demo02/vo/Demo02CategorySaveReqVO.java | 24 + .../demo/demo03/Demo03StudentController.java | 197 + .../admin/demo/demo03/package-info.java | 1 + .../demo03/vo/Demo03StudentPageReqVO.java | 33 + .../demo/demo03/vo/Demo03StudentRespVO.java | 42 + .../demo03/vo/Demo03StudentSaveReqVO.java | 41 + .../controller/admin/demo/package-info.java | 8 + .../admin/file/FileConfigController.http | 45 + .../admin/file/FileConfigController.java | 88 + .../controller/admin/file/FileController.java | 112 + .../file/vo/config/FileConfigPageReqVO.java | 30 + .../file/vo/config/FileConfigRespVO.java | 34 + .../file/vo/config/FileConfigSaveReqVO.java | 31 + .../admin/file/vo/file/FileCreateReqVO.java | 33 + .../admin/file/vo/file/FilePageReqVO.java | 30 + .../file/vo/file/FilePresignedUrlRespVO.java | 38 + .../admin/file/vo/file/FileRespVO.java | 36 + .../admin/file/vo/file/FileUploadReqVO.java | 20 + .../controller/admin/job/JobController.java | 27 + .../admin/logger/ApiAccessLogController.java | 60 + .../admin/logger/ApiErrorLogController.java | 74 + .../apiaccesslog/ApiAccessLogPageReqVO.java | 42 + .../vo/apiaccesslog/ApiAccessLogRespVO.java | 99 + .../vo/apierrorlog/ApiErrorLogPageReqVO.java | 39 + .../vo/apierrorlog/ApiErrorLogRespVO.java | 112 + .../admin/redis/RedisController.http | 4 + .../admin/redis/RedisController.java | 43 + .../admin/redis/vo/RedisMonitorRespVO.java | 43 + .../app/file/AppFileController.java | 62 + .../app/file/vo/AppFileUploadReqVO.java | 20 + .../infra/controller/app/package-info.java | 4 + .../module/infra/controller/package-info.java | 6 + .../infra/convert/codegen/CodegenConvert.java | 68 + .../infra/convert/config/ConfigConvert.java | 28 + .../infra/convert/file/FileConfigConvert.java | 22 + .../module/infra/convert/package-info.java | 6 + .../infra/convert/redis/RedisConvert.java | 29 + ...‹é“ Spring Boot å¯¹è±¡è½¬æ¢ MapStruct 入门》.md | 1 + .../dataobject/codegen/CodegenColumnDO.java | 138 + .../dataobject/codegen/CodegenTableDO.java | 160 + .../infra/dal/dataobject/config/ConfigDO.java | 66 + .../dal/dataobject/db/DataSourceConfigDO.java | 50 + .../demo/demo01/Demo01ContactDO.java | 54 + .../demo/demo02/Demo02CategoryDO.java | 40 + .../demo/demo03/Demo03CourseDO.java | 42 + .../dataobject/demo/demo03/Demo03GradeDO.java | 42 + .../demo/demo03/Demo03StudentDO.java | 50 + .../dal/dataobject/file/FileConfigDO.java | 113 + .../dal/dataobject/file/FileContentDO.java | 49 + .../infra/dal/dataobject/file/FileDO.java | 57 + .../dal/dataobject/logger/ApiAccessLogDO.java | 140 + .../dal/dataobject/logger/ApiErrorLogDO.java | 161 + .../mysql/codegen/CodegenColumnMapper.java | 24 + .../dal/mysql/codegen/CodegenTableMapper.java | 39 + .../infra/dal/mysql/config/ConfigMapper.java | 26 + .../dal/mysql/db/DataSourceConfigMapper.java | 14 + .../demo/demo01/Demo01ContactMapper.java | 26 + .../demo/demo02/Demo02CategoryMapper.java | 35 + .../mysql/demo/demo03/Demo03CourseMapper.java | 34 + .../mysql/demo/demo03/Demo03GradeMapper.java | 32 + .../demo/demo03/Demo03StudentMapper.java | 27 + .../dal/mysql/file/FileConfigMapper.java | 25 + .../dal/mysql/file/FileContentMapper.java | 25 + .../infra/dal/mysql/file/FileMapper.java | 26 + .../dal/mysql/logger/ApiAccessLogMapper.java | 45 + .../dal/mysql/logger/ApiErrorLogMapper.java | 44 + .../codegen/CodegenColumnHtmlTypeEnum.java | 29 + .../CodegenColumnListConditionEnum.java | 27 + .../enums/codegen/CodegenFrontTypeEnum.java | 31 + .../infra/enums/codegen/CodegenSceneEnum.java | 41 + .../codegen/CodegenTemplateTypeEnum.java | 53 + .../infra/enums/config/ConfigTypeEnum.java | 21 + .../logger/ApiErrorLogProcessStatusEnum.java | 28 + .../agt/module/infra/enums/package-info.java | 4 + .../codegen/config/CodegenConfiguration.java | 9 + .../codegen/config/CodegenProperties.java | 43 + .../infra/framework/codegen/package-info.java | 4 + .../file/config/AgtFileAutoConfiguration.java | 21 + .../file/core/client/AbstractFileClient.java | 69 + .../file/core/client/FileClient.java | 55 + .../file/core/client/FileClientConfig.java | 16 + .../file/core/client/FileClientFactory.java | 24 + .../core/client/FileClientFactoryImpl.java | 56 + .../file/core/client/db/DBFileClient.java | 55 + .../core/client/db/DBFileClientConfig.java | 23 + .../file/core/client/ftp/FtpFileClient.java | 75 + .../core/client/ftp/FtpFileClientConfig.java | 58 + .../core/client/local/LocalFileClient.java | 48 + .../client/local/LocalFileClientConfig.java | 29 + .../client/s3/FilePresignedUrlRespDTO.java | 29 + .../file/core/client/s3/S3FileClient.java | 146 + .../core/client/s3/S3FileClientConfig.java | 86 + .../file/core/client/sftp/SftpFileClient.java | 65 + .../client/sftp/SftpFileClientConfig.java | 51 + .../file/core/enums/FileStorageEnum.java | 55 + .../file/core/utils/FileTypeUtils.java | 97 + .../infra/framework/file/package-info.java | 12 + .../config/AdminServerConfiguration.java | 9 + .../infra/framework/monitor/package-info.java | 4 + ...€ŠèŠ‹é“ Spring Boot 监控工具 Admin 入门》.md | 1 + .../module/infra/framework/package-info.java | 6 + .../rpc/config/RpcConfiguration.java | 10 + .../infra/framework/rpc/package-info.java | 4 + .../config/SecurityConfiguration.java | 50 + .../framework/security/core/package-info.java | 4 + .../infra/job/logger/AccessLogCleanJob.java | 40 + .../infra/job/logger/ErrorLogCleanJob.java | 40 + .../agt/module/infra/job/package-info.java | 4 + .../infra/mq/consumer/package-info.java | 4 + .../module/infra/mq/message/package-info.java | 4 + .../infra/mq/producer/package-info.java | 4 + .../org/agt/module/infra/package-info.java | 9 + .../infra/service/codegen/CodegenService.java | 101 + .../service/codegen/CodegenServiceImpl.java | 296 + .../service/codegen/inner/CodegenBuilder.java | 221 + .../service/codegen/inner/CodegenEngine.java | 557 + .../infra/service/config/ConfigService.java | 63 + .../service/config/ConfigServiceImpl.java | 109 + .../service/db/DataSourceConfigService.java | 53 + .../db/DataSourceConfigServiceImpl.java | 106 + .../service/db/DatabaseTableService.java | 33 + .../service/db/DatabaseTableServiceImpl.java | 77 + .../demo/demo01/Demo01ContactService.java | 55 + .../demo/demo01/Demo01ContactServiceImpl.java | 71 + .../demo/demo02/Demo02CategoryService.java | 55 + .../demo02/Demo02CategoryServiceImpl.java | 134 + .../demo/demo03/Demo03StudentService.java | 158 + .../demo/demo03/Demo03StudentServiceImpl.java | 217 + .../infra/service/file/FileConfigService.java | 86 + .../service/file/FileConfigServiceImpl.java | 189 + .../infra/service/file/FileService.java | 71 + .../infra/service/file/FileServiceImpl.java | 174 + .../service/logger/ApiAccessLogService.java | 38 + .../logger/ApiAccessLogServiceImpl.java | 70 + .../service/logger/ApiErrorLogService.java | 47 + .../logger/ApiErrorLogServiceImpl.java | 87 + .../DemoWebSocketMessageListener.java | 48 + .../websocket/message/DemoReceiveMessage.java | 27 + .../websocket/message/DemoSendMessage.java | 24 + .../src/main/resources/application-dev.yaml | 130 + .../src/main/resources/application-local.yaml | 159 + .../src/main/resources/application.yaml | 170 + .../codegen/java/controller/controller.vm | 233 + .../codegen/java/controller/vo/listReqVO.vm | 45 + .../codegen/java/controller/vo/pageReqVO.vm | 47 + .../codegen/java/controller/vo/respVO.vm | 53 + .../codegen/java/controller/vo/saveReqVO.vm | 64 + .../src/main/resources/codegen/java/dal/do.vm | 52 + .../main/resources/codegen/java/dal/do_sub.vm | 49 + .../main/resources/codegen/java/dal/mapper.vm | 82 + .../resources/codegen/java/dal/mapper.xml.vm | 12 + .../resources/codegen/java/dal/mapper_sub.vm | 57 + .../resources/codegen/java/enums/errorcode.vm | 22 + .../resources/codegen/java/service/service.vm | 147 + .../codegen/java/service/serviceImpl.vm | 351 + .../codegen/java/test/serviceTest.vm | 168 + .../src/main/resources/codegen/sql/h2.vm | 37 + .../src/main/resources/codegen/sql/sql.vm | 28 + .../main/resources/codegen/vue/api/api.js.vm | 141 + .../vue/views/components/form_sub_erp.vue.vm | 205 + .../views/components/form_sub_inner.vue.vm | 2 + .../views/components/form_sub_normal.vue.vm | 347 + .../vue/views/components/list_sub_erp.vue.vm | 165 + .../views/components/list_sub_inner.vue.vm | 4 + .../resources/codegen/vue/views/form.vue.vm | 320 + .../resources/codegen/vue/views/index.vue.vm | 340 + .../main/resources/codegen/vue3/api/api.ts.vm | 115 + .../vue3/views/components/form_sub_erp.vue.vm | 204 + .../views/components/form_sub_inner.vue.vm | 2 + .../views/components/form_sub_normal.vue.vm | 360 + .../vue3/views/components/list_sub_erp.vue.vm | 184 + .../views/components/list_sub_inner.vue.vm | 4 + .../resources/codegen/vue3/views/form.vue.vm | 300 + .../resources/codegen/vue3/views/index.vue.vm | 374 + .../resources/codegen/vue3_vben/api/api.ts.vm | 32 + .../codegen/vue3_vben/views/data.ts.vm | 260 + .../codegen/vue3_vben/views/form.vue.vm | 58 + .../codegen/vue3_vben/views/index.vue.vm | 92 + .../vue3_vben5_antd/general/api/api.ts.vm | 153 + .../vue3_vben5_antd/general/views/form.vue.vm | 324 + .../general/views/index.vue.vm | 442 + .../general/views/modules/form_sub_erp.vue.vm | 212 + .../views/modules/form_sub_inner.vue.vm | 2 + .../views/modules/form_sub_normal.vue.vm | 338 + .../general/views/modules/list_sub_erp.vue.vm | 379 + .../views/modules/list_sub_inner.vue.vm | 4 + .../vue3_vben5_antd/schema/api/api.ts.vm | 153 + .../vue3_vben5_antd/schema/views/data.ts.vm | 676 + .../vue3_vben5_antd/schema/views/form.vue.vm | 154 + .../vue3_vben5_antd/schema/views/index.vue.vm | 251 + .../schema/views/modules/form_sub_erp.vue.vm | 90 + .../views/modules/form_sub_inner.vue.vm | 2 + .../views/modules/form_sub_normal.vue.vm | 196 + .../schema/views/modules/list_sub_erp.vue.vm | 181 + .../views/modules/list_sub_inner.vue.vm | 4 + .../src/main/resources/file/erweima.jpg | Bin 0 -> 18385 bytes .../src/main/resources/logback-spring.xml | 76 + .../file/core/ftp/FtpFileClientTest.java | 56 + .../file/core/local/LocalFileClientTest.java | 29 + .../file/core/s3/S3FileClientTest.java | 118 + .../file/core/sftp/SftpFileClientTest.java | 49 + .../service/DefaultDatabaseQueryTest.java | 37 + .../codegen/CodegenServiceImplTest.java | 561 + .../codegen/inner/CodegenBuilderTest.java | 87 + .../inner/CodegenEngineAbstractTest.java | 138 + .../codegen/inner/CodegenEngineVue2Test.java | 100 + .../codegen/inner/CodegenEngineVue3Test.java | 100 + .../service/config/ConfigServiceImplTest.java | 219 + .../db/DataSourceConfigServiceImplTest.java | 208 + .../db/DatabaseTableServiceImplTest.java | 89 + .../file/FileConfigServiceImplTest.java | 281 + .../service/file/FileServiceImplTest.java | 309 + .../logger/ApiAccessLogServiceImplTest.java | 110 + .../logger/ApiErrorLogServiceImplTest.java | 164 + .../test/resources/application-unit-test.yaml | 52 + .../resources/codegen/table/category.json | 52 + .../test/resources/codegen/table/contact.json | 143 + .../test/resources/codegen/table/student.json | 134 + .../test/resources/codegen/table/teacher.json | 143 + .../windows10/vue2_master_erp/assert.json | 73 + .../java/ErrorCodeConstants_手动æ“作 | 6 + .../java/InfraStudentContactDO | 71 + .../java/InfraStudentContactMapper | 30 + .../java/InfraStudentController | 183 + .../vue2_master_erp/java/InfraStudentDO | 67 + .../vue2_master_erp/java/InfraStudentMapper | 30 + .../java/InfraStudentPageReqVO | 34 + .../vue2_master_erp/java/InfraStudentRespVO | 60 + .../java/InfraStudentSaveReqVO | 52 + .../vue2_master_erp/java/InfraStudentService | 139 + .../java/InfraStudentServiceImpl | 180 + .../java/InfraStudentServiceImplTest | 146 + .../java/InfraStudentTeacherDO | 71 + .../java/InfraStudentTeacherMapper | 30 + .../windows10/vue2_master_erp/js/index | 141 + .../codegen/windows10/vue2_master_erp/sql/h2 | 17 + .../codegen/windows10/vue2_master_erp/sql/sql | 55 + .../vue2_master_erp/vue/StudentContactForm | 151 + .../vue2_master_erp/vue/StudentContactList | 129 + .../windows10/vue2_master_erp/vue/StudentForm | 149 + .../vue2_master_erp/vue/StudentTeacherForm | 151 + .../vue2_master_erp/vue/StudentTeacherList | 129 + .../windows10/vue2_master_erp/vue/index | 233 + .../vue2_master_erp/xml/InfraStudentMapper | 12 + .../windows10/vue2_master_inner/assert.json | 73 + .../java/ErrorCodeConstants_手动æ“作 | 3 + .../java/InfraStudentContactDO | 71 + .../java/InfraStudentContactMapper | 28 + .../java/InfraStudentController | 117 + .../vue2_master_inner/java/InfraStudentDO | 67 + .../vue2_master_inner/java/InfraStudentMapper | 30 + .../java/InfraStudentPageReqVO | 34 + .../vue2_master_inner/java/InfraStudentRespVO | 60 + .../java/InfraStudentSaveReqVO | 58 + .../java/InfraStudentService | 77 + .../java/InfraStudentServiceImpl | 147 + .../java/InfraStudentServiceImplTest | 146 + .../java/InfraStudentTeacherDO | 71 + .../java/InfraStudentTeacherMapper | 28 + .../windows10/vue2_master_inner/js/index | 74 + .../windows10/vue2_master_inner/sql/h2 | 17 + .../windows10/vue2_master_inner/sql/sql | 55 + .../vue2_master_inner/vue/StudentContactForm | 177 + .../vue2_master_inner/vue/StudentContactList | 89 + .../vue2_master_inner/vue/StudentForm | 180 + .../vue2_master_inner/vue/StudentTeacherForm | 127 + .../vue2_master_inner/vue/StudentTeacherList | 93 + .../windows10/vue2_master_inner/vue/index | 222 + .../vue2_master_inner/xml/InfraStudentMapper | 12 + .../windows10/vue2_master_normal/assert.json | 67 + .../java/ErrorCodeConstants_手动æ“作 | 3 + .../java/InfraStudentContactDO | 71 + .../java/InfraStudentContactMapper | 28 + .../java/InfraStudentController | 117 + .../vue2_master_normal/java/InfraStudentDO | 67 + .../java/InfraStudentMapper | 30 + .../java/InfraStudentPageReqVO | 34 + .../java/InfraStudentRespVO | 60 + .../java/InfraStudentSaveReqVO | 58 + .../java/InfraStudentService | 77 + .../java/InfraStudentServiceImpl | 147 + .../java/InfraStudentServiceImplTest | 146 + .../java/InfraStudentTeacherDO | 71 + .../java/InfraStudentTeacherMapper | 28 + .../windows10/vue2_master_normal/js/index | 74 + .../windows10/vue2_master_normal/sql/h2 | 17 + .../windows10/vue2_master_normal/sql/sql | 55 + .../vue2_master_normal/vue/StudentContactForm | 177 + .../vue2_master_normal/vue/StudentForm | 180 + .../vue2_master_normal/vue/StudentTeacherForm | 127 + .../windows10/vue2_master_normal/vue/index | 205 + .../vue2_master_normal/xml/InfraStudentMapper | 12 + .../codegen/windows10/vue2_one/assert.json | 49 + .../vue2_one/java/ErrorCodeConstants_手动æ“作 | 3 + .../vue2_one/java/InfraStudentController | 95 + .../windows10/vue2_one/java/InfraStudentDO | 67 + .../vue2_one/java/InfraStudentMapper | 30 + .../vue2_one/java/InfraStudentPageReqVO | 34 + .../vue2_one/java/InfraStudentRespVO | 60 + .../vue2_one/java/InfraStudentSaveReqVO | 50 + .../vue2_one/java/InfraStudentService | 55 + .../vue2_one/java/InfraStudentServiceImpl | 74 + .../vue2_one/java/InfraStudentServiceImplTest | 146 + .../codegen/windows10/vue2_one/js/index | 53 + .../codegen/windows10/vue2_one/sql/h2 | 17 + .../codegen/windows10/vue2_one/sql/sql | 55 + .../windows10/vue2_one/vue/StudentForm | 149 + .../codegen/windows10/vue2_one/vue/index | 205 + .../windows10/vue2_one/xml/InfraStudentMapper | 12 + .../codegen/windows10/vue2_tree/assert.json | 49 + .../java/ErrorCodeConstants_手动æ“作 | 8 + .../vue2_tree/java/InfraCategoryController | 94 + .../windows10/vue2_tree/java/InfraCategoryDO | 39 + .../vue2_tree/java/InfraCategoryListReqVO | 15 + .../vue2_tree/java/InfraCategoryMapper | 34 + .../vue2_tree/java/InfraCategoryRespVO | 26 + .../vue2_tree/java/InfraCategorySaveReqVO | 24 + .../vue2_tree/java/InfraCategoryService | 55 + .../vue2_tree/java/InfraCategoryServiceImpl | 136 + .../java/InfraCategoryServiceImplTest | 129 + .../codegen/windows10/vue2_tree/js/index | 53 + .../codegen/windows10/vue2_tree/sql/h2 | 10 + .../codegen/windows10/vue2_tree/sql/sql | 55 + .../windows10/vue2_tree/vue/CategoryForm | 130 + .../codegen/windows10/vue2_tree/vue/index | 161 + .../vue2_tree/xml/InfraCategoryMapper | 12 + .../windows10/vue3_master_erp/assert.json | 73 + .../java/ErrorCodeConstants_手动æ“作 | 6 + .../java/InfraStudentContactDO | 71 + .../java/InfraStudentContactMapper | 30 + .../java/InfraStudentController | 183 + .../vue3_master_erp/java/InfraStudentDO | 67 + .../vue3_master_erp/java/InfraStudentMapper | 30 + .../java/InfraStudentPageReqVO | 34 + .../vue3_master_erp/java/InfraStudentRespVO | 60 + .../java/InfraStudentSaveReqVO | 52 + .../vue3_master_erp/java/InfraStudentService | 139 + .../java/InfraStudentServiceImpl | 180 + .../java/InfraStudentServiceImplTest | 146 + .../java/InfraStudentTeacherDO | 71 + .../java/InfraStudentTeacherMapper | 30 + .../codegen/windows10/vue3_master_erp/sql/h2 | 17 + .../codegen/windows10/vue3_master_erp/sql/sql | 55 + .../windows10/vue3_master_erp/ts/index | 95 + .../vue3_master_erp/vue/StudentContactForm | 155 + .../vue3_master_erp/vue/StudentContactList | 146 + .../windows10/vue3_master_erp/vue/StudentForm | 152 + .../vue3_master_erp/vue/StudentTeacherForm | 155 + .../vue3_master_erp/vue/StudentTeacherList | 146 + .../windows10/vue3_master_erp/vue/index | 278 + .../vue3_master_erp/xml/InfraStudentMapper | 12 + .../windows10/vue3_master_inner/assert.json | 73 + .../java/ErrorCodeConstants_手动æ“作 | 3 + .../java/InfraStudentContactDO | 71 + .../java/InfraStudentContactMapper | 28 + .../java/InfraStudentController | 117 + .../vue3_master_inner/java/InfraStudentDO | 67 + .../vue3_master_inner/java/InfraStudentMapper | 30 + .../java/InfraStudentPageReqVO | 34 + .../vue3_master_inner/java/InfraStudentRespVO | 60 + .../java/InfraStudentSaveReqVO | 58 + .../java/InfraStudentService | 77 + .../java/InfraStudentServiceImpl | 147 + .../java/InfraStudentServiceImplTest | 146 + .../java/InfraStudentTeacherDO | 71 + .../java/InfraStudentTeacherMapper | 28 + .../windows10/vue3_master_inner/sql/h2 | 17 + .../windows10/vue3_master_inner/sql/sql | 55 + .../windows10/vue3_master_inner/ts/index | 57 + .../vue3_master_inner/vue/StudentContactForm | 174 + .../vue3_master_inner/vue/StudentContactList | 72 + .../vue3_master_inner/vue/StudentForm | 184 + .../vue3_master_inner/vue/StudentTeacherForm | 122 + .../vue3_master_inner/vue/StudentTeacherList | 76 + .../windows10/vue3_master_inner/vue/index | 267 + .../vue3_master_inner/xml/InfraStudentMapper | 12 + .../windows10/vue3_master_normal/assert.json | 67 + .../java/ErrorCodeConstants_手动æ“作 | 3 + .../java/InfraStudentContactDO | 71 + .../java/InfraStudentContactMapper | 28 + .../java/InfraStudentController | 117 + .../vue3_master_normal/java/InfraStudentDO | 67 + .../java/InfraStudentMapper | 30 + .../java/InfraStudentPageReqVO | 34 + .../java/InfraStudentRespVO | 60 + .../java/InfraStudentSaveReqVO | 58 + .../java/InfraStudentService | 77 + .../java/InfraStudentServiceImpl | 147 + .../java/InfraStudentServiceImplTest | 146 + .../java/InfraStudentTeacherDO | 71 + .../java/InfraStudentTeacherMapper | 28 + .../windows10/vue3_master_normal/sql/h2 | 17 + .../windows10/vue3_master_normal/sql/sql | 55 + .../windows10/vue3_master_normal/ts/index | 57 + .../vue3_master_normal/vue/StudentContactForm | 174 + .../vue3_master_normal/vue/StudentForm | 184 + .../vue3_master_normal/vue/StudentTeacherForm | 122 + .../windows10/vue3_master_normal/vue/index | 252 + .../vue3_master_normal/xml/InfraStudentMapper | 12 + .../codegen/windows10/vue3_one/assert.json | 49 + .../vue3_one/java/ErrorCodeConstants_手动æ“作 | 3 + .../vue3_one/java/InfraStudentController | 95 + .../windows10/vue3_one/java/InfraStudentDO | 67 + .../vue3_one/java/InfraStudentMapper | 30 + .../vue3_one/java/InfraStudentPageReqVO | 34 + .../vue3_one/java/InfraStudentRespVO | 60 + .../vue3_one/java/InfraStudentSaveReqVO | 50 + .../vue3_one/java/InfraStudentService | 55 + .../vue3_one/java/InfraStudentServiceImpl | 74 + .../vue3_one/java/InfraStudentServiceImplTest | 146 + .../codegen/windows10/vue3_one/sql/h2 | 17 + .../codegen/windows10/vue3_one/sql/sql | 55 + .../codegen/windows10/vue3_one/ts/index | 43 + .../windows10/vue3_one/vue/StudentForm | 152 + .../codegen/windows10/vue3_one/vue/index | 252 + .../windows10/vue3_one/xml/InfraStudentMapper | 12 + .../codegen/windows10/vue3_tree/assert.json | 49 + .../java/ErrorCodeConstants_手动æ“作 | 8 + .../vue3_tree/java/InfraCategoryController | 94 + .../windows10/vue3_tree/java/InfraCategoryDO | 39 + .../vue3_tree/java/InfraCategoryListReqVO | 15 + .../vue3_tree/java/InfraCategoryMapper | 34 + .../vue3_tree/java/InfraCategoryRespVO | 26 + .../vue3_tree/java/InfraCategorySaveReqVO | 24 + .../vue3_tree/java/InfraCategoryService | 55 + .../vue3_tree/java/InfraCategoryServiceImpl | 136 + .../java/InfraCategoryServiceImplTest | 129 + .../codegen/windows10/vue3_tree/sql/h2 | 10 + .../codegen/windows10/vue3_tree/sql/sql | 55 + .../codegen/windows10/vue3_tree/ts/index | 37 + .../windows10/vue3_tree/vue/CategoryForm | 114 + .../codegen/windows10/vue3_tree/vue/index | 185 + .../vue3_tree/xml/InfraCategoryMapper | 12 + .../src/test/resources/logback.xml | 4 + .../src/test/resources/sql/clean.sql | 11 + .../src/test/resources/sql/create_tables.sql | 216 + agt-module-infra/pom.xml | 25 + .../agt-module-system-api/pom.xml | 48 + .../agt/module/system/api/dept/DeptApi.java | 56 + .../agt/module/system/api/dept/PostApi.java | 45 + .../system/api/dept/dto/DeptRespDTO.java | 25 + .../system/api/dept/dto/PostRespDTO.java | 30 + .../module/system/api/dict/DictDataApi.java | 85 + .../system/api/dict/dto/DictDataRespDTO.java | 22 + .../module/system/api/logger/LoginLogApi.java | 24 + .../system/api/logger/OperateLogApi.java | 43 + .../api/logger/dto/LoginLogCreateReqDTO.java | 40 + .../logger/dto/OperateLogCreateReqDTO.java | 50 + .../api/logger/dto/OperateLogPageReqDTO.java | 20 + .../api/logger/dto/OperateLogRespDTO.java | 52 + .../module/system/api/mail/MailSendApi.java | 28 + .../mail/dto/MailSendSingleToUserReqDTO.java | 27 + .../api/notify/NotifyMessageSendApi.java | 28 + .../dto/NotifySendSingleToUserReqDTO.java | 23 + .../system/api/oauth2/OAuth2TokenApi.java | 52 + .../dto/OAuth2AccessTokenCheckRespDTO.java | 33 + .../dto/OAuth2AccessTokenCreateReqDTO.java | 32 + .../oauth2/dto/OAuth2AccessTokenRespDTO.java | 30 + .../agt/module/system/api/package-info.java | 4 + .../system/api/permission/PermissionApi.java | 51 + .../module/system/api/permission/RoleApi.java | 25 + .../dto/DeptDataPermissionRespDTO.java | 28 + .../agt/module/system/api/sms/SmsCodeApi.java | 36 + .../agt/module/system/api/sms/SmsSendApi.java | 28 + .../api/sms/dto/code/SmsCodeSendReqDTO.java | 30 + .../api/sms/dto/code/SmsCodeUseReqDTO.java | 34 + .../sms/dto/code/SmsCodeValidateReqDTO.java | 30 + .../dto/send/SmsSendSingleToUserReqDTO.java | 26 + .../system/api/social/SocialClientApi.java | 83 + .../system/api/social/SocialUserApi.java | 56 + .../api/social/dto/SocialUserBindReqDTO.java | 39 + .../api/social/dto/SocialUserRespDTO.java | 26 + .../social/dto/SocialUserUnbindReqDTO.java | 36 + .../dto/SocialWxJsapiSignatureRespDTO.java | 25 + .../dto/SocialWxPhoneNumberInfoRespDTO.java | 18 + .../api/social/dto/SocialWxQrcodeReqDTO.java | 57 + ...ialWxaOrderNotifyConfirmReceiveReqDTO.java | 30 + ...ocialWxaOrderUploadShippingInfoReqDTO.java | 67 + .../SocialWxaSubscribeMessageSendReqDTO.java | 43 + .../SocialWxaSubscribeTemplateRespDTO.java | 25 + .../module/system/api/tenant/TenantApi.java | 29 + .../module/system/api/user/AdminUserApi.java | 96 + .../system/api/user/dto/AdminUserRespDTO.java | 34 + .../agt/module/system/enums/ApiConstants.java | 23 + .../system/enums/DictTypeConstants.java | 26 + .../system/enums/ErrorCodeConstants.java | 171 + .../system/enums/LogRecordConstants.java | 33 + .../module/system/enums/common/SexEnum.java | 27 + .../system/enums/logger/LoginLogTypeEnum.java | 27 + .../system/enums/logger/LoginResultEnum.java | 26 + .../system/enums/mail/MailSendStatusEnum.java | 24 + .../system/enums/notice/NoticeTypeEnum.java | 23 + .../enums/notify/NotifyTemplateTypeEnum.java | 26 + .../enums/oauth2/OAuth2ClientConstants.java | 12 + .../enums/oauth2/OAuth2GrantTypeEnum.java | 29 + .../enums/permission/DataScopeEnum.java | 40 + .../system/enums/permission/MenuTypeEnum.java | 25 + .../system/enums/permission/RoleCodeEnum.java | 32 + .../system/enums/permission/RoleTypeEnum.java | 21 + .../enums/sms/SmsReceiveStatusEnum.java | 23 + .../module/system/enums/sms/SmsSceneEnum.java | 53 + .../system/enums/sms/SmsSendStatusEnum.java | 24 + .../system/enums/sms/SmsTemplateTypeEnum.java | 25 + .../system/enums/social/SocialTypeEnum.java | 78 + .../agt-module-system-biz/Dockerfile | 19 + .../agt-module-system-biz/pom.xml | 188 + .../module/system/AgtSystemApplication.java | 21 + .../module/system/api/dept/DeptApiImpl.java | 49 + .../module/system/api/dept/PostApiImpl.java | 36 + .../system/api/dict/DictDataApiImpl.java | 48 + .../system/api/logger/LoginLogApiImpl.java | 26 + .../system/api/logger/OperateLogApiImpl.java | 36 + .../system/api/mail/MailSendApiImpl.java | 32 + .../api/notify/NotifyMessageSendApiImpl.java | 32 + .../system/api/oauth2/OAuth2TokenApiImpl.java | 50 + .../api/permission/PermissionApiImpl.java | 42 + .../system/api/permission/RoleApiImpl.java | 25 + .../module/system/api/sms/SmsCodeApiImpl.java | 40 + .../module/system/api/sms/SmsSendApiImpl.java | 32 + .../api/social/SocialClientApiImpl.java | 111 + .../system/api/social/SocialUserApiImpl.java | 44 + .../system/api/tenant/TenantApiImpl.java | 35 + .../system/api/user/AdminUserApiImpl.java | 94 + .../controller/admin/auth/AuthController.http | 33 + .../controller/admin/auth/AuthController.java | 184 + .../admin/auth/vo/AuthLoginReqVO.java | 56 + .../admin/auth/vo/AuthLoginRespVO.java | 30 + .../admin/auth/vo/AuthMenuRespVO.java | 53 + .../auth/vo/AuthPermissionInfoRespVO.java | 102 + .../admin/auth/vo/AuthRegisterReqVO.java | 31 + .../admin/auth/vo/AuthResetPasswordReqVO.java | 32 + .../admin/auth/vo/AuthSmsLoginReqVO.java | 27 + .../admin/auth/vo/AuthSmsSendReqVO.java | 31 + .../admin/auth/vo/AuthSocialLoginReqVO.java | 33 + .../auth/vo/CaptchaVerificationReqVO.java | 22 + .../admin/captcha/CaptchaController.java | 55 + .../controller/admin/dept/DeptController.java | 84 + .../controller/admin/dept/PostController.java | 106 + .../admin/dept/vo/dept/DeptListReqVO.java | 16 + .../admin/dept/vo/dept/DeptRespVO.java | 39 + .../admin/dept/vo/dept/DeptSaveReqVO.java | 48 + .../admin/dept/vo/dept/DeptSimpleRespVO.java | 23 + .../admin/dept/vo/post/PostPageReqVO.java | 22 + .../admin/dept/vo/post/PostRespVO.java | 45 + .../admin/dept/vo/post/PostSaveReqVO.java | 39 + .../admin/dept/vo/post/PostSimpleRespVO.java | 19 + .../admin/dict/DictDataController.http | 4 + .../admin/dict/DictDataController.java | 104 + .../admin/dict/DictTypeController.java | 102 + .../admin/dict/vo/data/DictDataPageReqVO.java | 28 + .../admin/dict/vo/data/DictDataRespVO.java | 55 + .../admin/dict/vo/data/DictDataSaveReqVO.java | 51 + .../dict/vo/data/DictDataSimpleRespVO.java | 25 + .../admin/dict/vo/type/DictTypePageReqVO.java | 33 + .../admin/dict/vo/type/DictTypeRespVO.java | 41 + .../admin/dict/vo/type/DictTypeSaveReqVO.java | 34 + .../dict/vo/type/DictTypeSimpleRespVO.java | 19 + .../controller/admin/ip/AreaController.http | 5 + .../controller/admin/ip/AreaController.java | 50 + .../admin/ip/vo/AreaNodeRespVO.java | 23 + .../admin/logger/LoginLogController.java | 59 + .../admin/logger/OperateLogController.http | 4 + .../admin/logger/OperateLogController.java | 59 + .../logger/vo/loginlog/LoginLogPageReqVO.java | 31 + .../logger/vo/loginlog/LoginLogRespVO.java | 57 + .../vo/operatelog/OperateLogPageReqVO.java | 35 + .../vo/operatelog/OperateLogRespVO.java | 68 + .../admin/mail/MailAccountController.java | 81 + .../admin/mail/MailLogController.java | 49 + .../admin/mail/MailTemplateController.http | 14 + .../admin/mail/MailTemplateController.java | 89 + .../mail/vo/account/MailAccountPageReqVO.java | 21 + .../mail/vo/account/MailAccountRespVO.java | 39 + .../mail/vo/account/MailAccountSaveReqVO.java | 44 + .../vo/account/MailAccountSimpleRespVO.java | 16 + .../admin/mail/vo/log/MailLogPageReqVO.java | 42 + .../admin/mail/vo/log/MailLogRespVO.java | 64 + .../vo/template/MailTemplatePageReqVO.java | 36 + .../mail/vo/template/MailTemplateRespVO.java | 46 + .../vo/template/MailTemplateSaveReqVO.java | 46 + .../vo/template/MailTemplateSendReqVO.java | 25 + .../vo/template/MailTemplateSimpleRespVO.java | 16 + .../admin/notice/NoticeController.java | 92 + .../admin/notice/vo/NoticePageReqVO.java | 19 + .../admin/notice/vo/NoticeRespVO.java | 30 + .../admin/notice/vo/NoticeSaveReqVO.java | 32 + .../admin/notify/NotifyMessageController.java | 98 + .../notify/NotifyTemplateController.java | 91 + .../vo/message/NotifyMessageMyPageReqVO.java | 27 + .../vo/message/NotifyMessagePageReqVO.java | 36 + .../vo/message/NotifyMessageRespVO.java | 49 + .../vo/template/NotifyTemplatePageReqVO.java | 33 + .../vo/template/NotifyTemplateRespVO.java | 43 + .../vo/template/NotifyTemplateSaveReqVO.java | 46 + .../vo/template/NotifyTemplateSendReqVO.java | 29 + .../admin/oauth2/OAuth2ClientController.http | 23 + .../admin/oauth2/OAuth2ClientController.java | 73 + .../admin/oauth2/OAuth2OpenController.http | 54 + .../admin/oauth2/OAuth2OpenController.java | 297 + .../admin/oauth2/OAuth2TokenController.java | 50 + .../admin/oauth2/OAuth2UserController.http | 14 + .../admin/oauth2/OAuth2UserController.java | 81 + .../vo/client/OAuth2ClientPageReqVO.java | 21 + .../oauth2/vo/client/OAuth2ClientRespVO.java | 64 + .../vo/client/OAuth2ClientSaveReqVO.java | 81 + .../vo/open/OAuth2OpenAccessTokenRespVO.java | 34 + .../open/OAuth2OpenAuthorizeInfoRespVO.java | 38 + .../vo/open/OAuth2OpenCheckTokenRespVO.java | 40 + .../vo/token/OAuth2AccessTokenPageReqVO.java | 22 + .../vo/token/OAuth2AccessTokenRespVO.java | 40 + .../oauth2/vo/user/OAuth2UserInfoRespVO.java | 70 + .../oauth2/vo/user/OAuth2UserUpdateReqVO.java | 34 + .../admin/permission/MenuController.http | 4 + .../admin/permission/MenuController.java | 88 + .../permission/PermissionController.java | 82 + .../admin/permission/RoleController.http | 42 + .../admin/permission/RoleController.java | 100 + .../permission/vo/menu/MenuListReqVO.java | 16 + .../admin/permission/vo/menu/MenuRespVO.java | 69 + .../admin/permission/vo/menu/MenuSaveVO.java | 64 + .../permission/vo/menu/MenuSimpleRespVO.java | 22 + .../PermissionAssignRoleDataScopeReqVO.java | 28 + .../PermissionAssignRoleMenuReqVO.java | 21 + .../PermissionAssignUserRoleReqVO.java | 21 + .../permission/vo/role/RolePageReqVO.java | 31 + .../admin/permission/vo/role/RoleRespVO.java | 59 + .../permission/vo/role/RoleSaveReqVO.java | 47 + .../permission/vo/role/RoleSimpleRespVO.java | 16 + .../admin/sms/SmsCallbackController.java | 65 + .../admin/sms/SmsChannelController.java | 82 + .../admin/sms/SmsLogController.java | 60 + .../admin/sms/SmsTemplateController.http | 14 + .../admin/sms/SmsTemplateController.java | 103 + .../sms/vo/channel/SmsChannelPageReqVO.java | 30 + .../sms/vo/channel/SmsChannelRespVO.java | 45 + .../sms/vo/channel/SmsChannelSaveReqVO.java | 42 + .../vo/channel/SmsChannelSimpleRespVO.java | 19 + .../admin/sms/vo/log/SmsLogPageReqVO.java | 43 + .../admin/sms/vo/log/SmsLogRespVO.java | 116 + .../sms/vo/template/SmsTemplatePageReqVO.java | 42 + .../sms/vo/template/SmsTemplateRespVO.java | 69 + .../sms/vo/template/SmsTemplateSaveReqVO.java | 46 + .../sms/vo/template/SmsTemplateSendReqVO.java | 24 + .../admin/socail/SocialClientController.http | 20 + .../admin/socail/SocialClientController.java | 83 + .../admin/socail/SocialUserController.java | 81 + .../vo/client/SocialClientPageReqVO.java | 30 + .../socail/vo/client/SocialClientRespVO.java | 39 + .../vo/client/SocialClientSaveReqVO.java | 61 + .../socail/vo/user/SocialUserBindReqVO.java | 34 + .../socail/vo/user/SocialUserPageReqVO.java | 33 + .../socail/vo/user/SocialUserRespVO.java | 48 + .../socail/vo/user/SocialUserUnbindReqVO.java | 30 + .../admin/tenant/TenantController.http | 21 + .../admin/tenant/TenantController.java | 127 + .../admin/tenant/TenantPackageController.java | 83 + .../vo/packages/TenantPackagePageReqVO.java | 32 + .../vo/packages/TenantPackageRespVO.java | 31 + .../vo/packages/TenantPackageSaveReqVO.java | 35 + .../packages/TenantPackageSimpleRespVO.java | 20 + .../tenant/vo/tenant/TenantPageReqVO.java | 36 + .../admin/tenant/vo/tenant/TenantRespVO.java | 55 + .../tenant/vo/tenant/TenantSaveReqVO.java | 70 + .../controller/admin/user/UserController.http | 11 + .../controller/admin/user/UserController.java | 172 + .../admin/user/UserProfileController.http | 4 + .../admin/user/UserProfileController.java | 79 + .../user/vo/profile/UserProfileRespVO.java | 59 + .../UserProfileUpdatePasswordReqVO.java | 23 + .../vo/profile/UserProfileUpdateReqVO.java | 36 + .../admin/user/vo/user/UserImportExcelVO.java | 46 + .../admin/user/vo/user/UserImportRespVO.java | 24 + .../admin/user/vo/user/UserPageReqVO.java | 41 + .../admin/user/vo/user/UserRespVO.java | 75 + .../admin/user/vo/user/UserSaveReqVO.java | 80 + .../admin/user/vo/user/UserSimpleRespVO.java | 25 + .../user/vo/user/UserUpdatePasswordReqVO.java | 23 + .../user/vo/user/UserUpdateStatusReqVO.java | 23 + .../app/dict/AppDictDataController.java | 43 + .../app/dict/vo/AppDictDataRespVO.java | 26 + .../controller/app/ip/AppAreaController.java | 36 + .../app/ip/vo/AppAreaNodeRespVO.java | 23 + .../system/controller/app/package-info.java | 4 + .../system/controller/package-info.java | 6 + .../system/convert/auth/AuthConvert.java | 88 + .../convert/oauth2/OAuth2OpenConvert.java | 56 + .../module/system/convert/package-info.java | 6 + .../convert/social/SocialUserConvert.java | 17 + .../system/convert/tenant/TenantConvert.java | 26 + .../system/convert/user/UserConvert.java | 56 + ...‹é“ Spring Boot å¯¹è±¡è½¬æ¢ MapStruct 入门》.md | 1 + .../system/dal/dataobject/dept/DeptDO.java | 66 + .../system/dal/dataobject/dept/PostDO.java | 50 + .../dal/dataobject/dept/UserPostDO.java | 40 + .../dal/dataobject/dict/DictDataDO.java | 67 + .../dal/dataobject/dict/DictTypeDO.java | 58 + .../dal/dataobject/logger/LoginLogDO.java | 72 + .../dal/dataobject/logger/OperateLogDO.java | 85 + .../dal/dataobject/mail/MailAccountDO.java | 61 + .../system/dal/dataobject/mail/MailLogDO.java | 125 + .../dal/dataobject/mail/MailTemplateDO.java | 75 + .../dal/dataobject/notice/NoticeDO.java | 47 + .../dataobject/notify/NotifyMessageDO.java | 99 + .../dataobject/notify/NotifyTemplateDO.java | 74 + .../oauth2/OAuth2AccessTokenDO.java | 75 + .../dataobject/oauth2/OAuth2ApproveDO.java | 63 + .../dal/dataobject/oauth2/OAuth2ClientDO.java | 109 + .../dal/dataobject/oauth2/OAuth2CodeDO.java | 68 + .../oauth2/OAuth2RefreshTokenDO.java | 63 + .../dal/dataobject/permission/MenuDO.java | 109 + .../dal/dataobject/permission/RoleDO.java | 78 + .../dal/dataobject/permission/RoleMenuDO.java | 35 + .../dal/dataobject/permission/UserRoleDO.java | 35 + .../dal/dataobject/sms/SmsChannelDO.java | 64 + .../system/dal/dataobject/sms/SmsCodeDO.java | 67 + .../system/dal/dataobject/sms/SmsLogDO.java | 163 + .../dal/dataobject/sms/SmsTemplateDO.java | 93 + .../dal/dataobject/social/SocialClientDO.java | 76 + .../dataobject/social/SocialUserBindDO.java | 56 + .../dal/dataobject/social/SocialUserDO.java | 73 + .../dal/dataobject/tenant/TenantDO.java | 82 + .../dataobject/tenant/TenantPackageDO.java | 54 + .../dal/dataobject/user/AdminUserDO.java | 96 + .../system/dal/mysql/dept/DeptMapper.java | 37 + .../system/dal/mysql/dept/PostMapper.java | 38 + .../system/dal/mysql/dept/UserPostMapper.java | 32 + .../system/dal/mysql/dict/DictDataMapper.java | 49 + .../system/dal/mysql/dict/DictTypeMapper.java | 37 + .../dal/mysql/logger/LoginLogMapper.java | 28 + .../dal/mysql/logger/OperateLogMapper.java | 33 + .../dal/mysql/mail/MailAccountMapper.java | 20 + .../system/dal/mysql/mail/MailLogMapper.java | 25 + .../dal/mysql/mail/MailTemplateMapper.java | 31 + .../system/dal/mysql/notice/NoticeMapper.java | 20 + .../dal/mysql/notify/NotifyMessageMapper.java | 70 + .../mysql/notify/NotifyTemplateMapper.java | 26 + .../mysql/oauth2/OAuth2AccessTokenMapper.java | 35 + .../dal/mysql/oauth2/OAuth2ApproveMapper.java | 28 + .../dal/mysql/oauth2/OAuth2ClientMapper.java | 30 + .../dal/mysql/oauth2/OAuth2CodeMapper.java | 14 + .../oauth2/OAuth2RefreshTokenMapper.java | 22 + .../module/system/dal/mysql/package-info.java | 9 + .../dal/mysql/permission/MenuMapper.java | 36 + .../dal/mysql/permission/RoleMapper.java | 39 + .../dal/mysql/permission/RoleMenuMapper.java | 40 + .../dal/mysql/permission/UserRoleMapper.java | 36 + .../dal/mysql/sms/SmsChannelMapper.java | 25 + .../system/dal/mysql/sms/SmsCodeMapper.java | 28 + .../system/dal/mysql/sms/SmsLogMapper.java | 25 + .../dal/mysql/sms/SmsTemplateMapper.java | 33 + .../dal/mysql/social/SocialClientMapper.java | 28 + .../mysql/social/SocialUserBindMapper.java | 44 + .../dal/mysql/social/SocialUserMapper.java | 33 + .../system/dal/mysql/tenant/TenantMapper.java | 50 + .../dal/mysql/tenant/TenantPackageMapper.java | 36 + .../dal/mysql/user/AdminUserMapper.java | 51 + .../system/dal/redis/RedisKeyConstants.java | 110 + .../oauth2/OAuth2AccessTokenRedisDAO.java | 59 + .../config/AgtCaptchaConfiguration.java | 34 + .../captcha/core/RedisCaptchaServiceImpl.java | 49 + .../framework/captcha/package-info.java | 8 + .../config/DataPermissionConfiguration.java | 28 + .../datapermission/package-info.java | 4 + .../config/AgtJustAuthConfiguration.java | 39 + .../justauth/core/AuthRequestFactory.java | 321 + .../framework/justauth/package-info.java | 6 + .../core/AdminUserParseFunction.java | 51 + .../operatelog/core/AreaParseFunction.java | 39 + .../operatelog/core/BooleanParseFunction.java | 39 + .../operatelog/core/DeptParseFunction.java | 46 + .../operatelog/core/PostParseFunction.java | 46 + .../operatelog/core/SexParseFunction.java | 39 + .../framework/operatelog/package-info.java | 4 + .../module/system/framework/package-info.java | 6 + .../rpc/config/RpcConfiguration.java | 12 + .../system/framework/rpc/package-info.java | 4 + .../config/SecurityConfiguration.java | 40 + .../framework/security/core/package-info.java | 4 + .../sms/config/SmsCodeProperties.java | 41 + .../sms/config/SmsConfiguration.java | 23 + .../framework/sms/core/client/SmsClient.java | 56 + .../sms/core/client/SmsClientFactory.java | 37 + .../core/client/dto/SmsReceiveRespDTO.java | 48 + .../sms/core/client/dto/SmsSendRespDTO.java | 43 + .../core/client/dto/SmsTemplateRespDTO.java | 33 + .../core/client/impl/AbstractSmsClient.java | 48 + .../sms/core/client/impl/AliyunSmsClient.java | 191 + .../client/impl/DebugDingTalkSmsClient.java | 91 + .../sms/core/client/impl/HuaweiSmsClient.java | 162 + .../sms/core/client/impl/QiniuSmsClient.java | 155 + .../client/impl/SmsClientFactoryImpl.java | 90 + .../core/client/impl/TencentSmsClient.java | 201 + .../sms/core/enums/SmsChannelEnum.java | 38 + .../enums/SmsTemplateAuditStatusEnum.java | 21 + .../core/property/SmsChannelProperties.java | 51 + .../agt/module/system/job/demo/DemoJob.java | 16 + .../agt/module/system/job/package-info.java | 1 + .../mq/consumer/mail/MailSendConsumer.java | 31 + .../mq/consumer/sms/SmsSendConsumer.java | 31 + .../mq/message/mail/MailSendMessage.java | 47 + .../system/mq/message/sms/SmsSendMessage.java | 42 + .../system/mq/producer/mail/MailProducer.java | 41 + .../system/mq/producer/sms/SmsProducer.java | 41 + .../org/agt/module/system/package-info.java | 8 + .../system/service/auth/AdminAuthService.java | 87 + .../service/auth/AdminAuthServiceImpl.java | 303 + .../system/service/dept/DeptService.java | 117 + .../system/service/dept/DeptServiceImpl.java | 223 + .../system/service/dept/PostService.java | 84 + .../system/service/dept/PostServiceImpl.java | 153 + .../system/service/dict/DictDataService.java | 110 + .../service/dict/DictDataServiceImpl.java | 179 + .../system/service/dict/DictTypeService.java | 70 + .../service/dict/DictTypeServiceImpl.java | 140 + .../service/logger/LoginLogService.java | 30 + .../service/logger/LoginLogServiceImpl.java | 35 + .../service/logger/OperateLogService.java | 39 + .../service/logger/OperateLogServiceImpl.java | 44 + .../service/mail/MailAccountService.java | 72 + .../service/mail/MailAccountServiceImpl.java | 99 + .../system/service/mail/MailLogService.java | 61 + .../service/mail/MailLogServiceImpl.java | 78 + .../system/service/mail/MailSendService.java | 60 + .../service/mail/MailSendServiceImpl.java | 173 + .../service/mail/MailTemplateService.java | 90 + .../service/mail/MailTemplateServiceImpl.java | 138 + .../system/service/member/MemberService.java | 26 + .../service/member/MemberServiceImpl.java | 54 + .../system/service/member/package-info.java | 4 + .../system/service/notice/NoticeService.java | 51 + .../service/notice/NoticeServiceImpl.java | 73 + .../service/notify/NotifyMessageService.java | 97 + .../notify/NotifyMessageServiceImpl.java | 75 + .../service/notify/NotifySendService.java | 55 + .../service/notify/NotifySendServiceImpl.java | 87 + .../service/notify/NotifyTemplateService.java | 73 + .../notify/NotifyTemplateServiceImpl.java | 138 + .../service/oauth2/OAuth2ApproveService.java | 52 + .../oauth2/OAuth2ApproveServiceImpl.java | 103 + .../service/oauth2/OAuth2ClientService.java | 90 + .../oauth2/OAuth2ClientServiceImpl.java | 153 + .../service/oauth2/OAuth2CodeService.java | 39 + .../service/oauth2/OAuth2CodeServiceImpl.java | 64 + .../service/oauth2/OAuth2GrantService.java | 113 + .../oauth2/OAuth2GrantServiceImpl.java | 104 + .../service/oauth2/OAuth2TokenService.java | 80 + .../oauth2/OAuth2TokenServiceImpl.java | 219 + .../service/permission/MenuService.java | 95 + .../service/permission/MenuServiceImpl.java | 289 + .../service/permission/PermissionService.java | 146 + .../permission/PermissionServiceImpl.java | 341 + .../service/permission/RoleService.java | 124 + .../service/permission/RoleServiceImpl.java | 262 + .../system/service/sms/SmsChannelService.java | 81 + .../service/sms/SmsChannelServiceImpl.java | 103 + .../system/service/sms/SmsCodeService.java | 40 + .../service/sms/SmsCodeServiceImpl.java | 112 + .../system/service/sms/SmsLogService.java | 68 + .../system/service/sms/SmsLogServiceImpl.java | 79 + .../system/service/sms/SmsSendService.java | 78 + .../service/sms/SmsSendServiceImpl.java | 191 + .../service/sms/SmsTemplateService.java | 82 + .../service/sms/SmsTemplateServiceImpl.java | 199 + .../service/social/SocialClientService.java | 153 + .../social/SocialClientServiceImpl.java | 506 + .../service/social/SocialUserService.java | 89 + .../service/social/SocialUserServiceImpl.java | 173 + .../service/tenant/TenantPackageService.java | 72 + .../tenant/TenantPackageServiceImpl.java | 140 + .../system/service/tenant/TenantService.java | 138 + .../service/tenant/TenantServiceImpl.java | 313 + .../tenant/handler/TenantInfoHandler.java | 21 + .../tenant/handler/TenantMenuHandler.java | 21 + .../system/service/user/AdminUserService.java | 210 + .../service/user/AdminUserServiceImpl.java | 520 + .../system/util/oauth2/OAuth2Utils.java | 103 + .../agt/module/system/util/package-info.java | 4 + ...m.anji.captcha.service.CaptchaCacheService | 1 + .../src/main/resources/application-dev.yaml | 184 + .../src/main/resources/application-local.yaml | 214 + .../src/main/resources/application.yaml | 187 + .../resources/images/jigsaw/original/bg1.png | Bin 0 -> 17827 bytes .../resources/images/jigsaw/original/bg2.png | Bin 0 -> 28732 bytes .../resources/images/jigsaw/original/bg3.png | Bin 0 -> 25814 bytes .../resources/images/jigsaw/original/bg4.png | Bin 0 -> 27859 bytes .../resources/images/jigsaw/original/bg5.png | Bin 0 -> 24036 bytes .../resources/images/jigsaw/original/bg6.png | Bin 0 -> 19160 bytes .../resources/images/jigsaw/original/bg7.png | Bin 0 -> 21445 bytes .../resources/images/jigsaw/original/bg8.png | Bin 0 -> 30332 bytes .../resources/images/jigsaw/original/bg9.png | Bin 0 -> 26977 bytes .../images/jigsaw/slidingBlock/1.png | Bin 0 -> 2158 bytes .../images/jigsaw/slidingBlock/11/10.png | Bin 0 -> 1657 bytes .../images/jigsaw/slidingBlock/11/11.png | Bin 0 -> 1657 bytes .../images/jigsaw/slidingBlock/11/12.png | Bin 0 -> 1657 bytes .../images/jigsaw/slidingBlock/11/13.png | Bin 0 -> 1873 bytes .../images/jigsaw/slidingBlock/11/14.png | Bin 0 -> 1872 bytes .../images/jigsaw/slidingBlock/11/15.png | Bin 0 -> 1872 bytes .../images/jigsaw/slidingBlock/11/16.png | Bin 0 -> 1838 bytes .../images/jigsaw/slidingBlock/11/17.png | Bin 0 -> 1839 bytes .../images/jigsaw/slidingBlock/11/18.png | Bin 0 -> 1836 bytes .../images/jigsaw/slidingBlock/11/19.png | Bin 0 -> 1838 bytes .../images/jigsaw/slidingBlock/11/8.png | Bin 0 -> 1657 bytes .../images/jigsaw/slidingBlock/11/9.png | Bin 0 -> 1657 bytes .../images/jigsaw/slidingBlock/2.png | Bin 0 -> 2297 bytes .../images/jigsaw/slidingBlock/3.png | Bin 0 -> 2241 bytes .../images/jigsaw/slidingBlock/4.png | Bin 0 -> 2255 bytes .../main/resources/images/pic-click/bg1.png | Bin 0 -> 24041 bytes .../main/resources/images/pic-click/bg10.png | Bin 0 -> 27872 bytes .../main/resources/images/pic-click/bg2.png | Bin 0 -> 28394 bytes .../main/resources/images/pic-click/bg3.png | Bin 0 -> 23407 bytes .../main/resources/images/pic-click/bg4.png | Bin 0 -> 25379 bytes .../main/resources/images/pic-click/bg5.png | Bin 0 -> 16422 bytes .../main/resources/images/pic-click/bg6.png | Bin 0 -> 23607 bytes .../main/resources/images/pic-click/bg7.png | Bin 0 -> 26113 bytes .../main/resources/images/pic-click/bg8.png | Bin 0 -> 27260 bytes .../main/resources/images/pic-click/bg9.png | Bin 0 -> 29878 bytes .../src/main/resources/logback-spring.xml | 76 + .../oauth2/OAuth2OpenControllerTest.java | 337 + .../core/client/impl/AliyunSmsClientTest.java | 160 + .../core/client/impl/HuaweiSmsClientTest.java | 127 + .../core/client/impl/QiniuSmsClientTest.java | 131 + .../sms/core/client/impl/SmsClientTests.java | 151 + .../client/impl/TencentSmsClientTest.java | 218 + .../auth/AdminAuthServiceImplTest.java | 359 + .../service/dept/DeptServiceImplTest.java | 296 + .../service/dept/PostServiceImplTest.java | 248 + .../service/dict/DictDataServiceImplTest.java | 352 + .../service/dict/DictTypeServiceImplTest.java | 271 + .../logger/LoginLogServiceImplTest.java | 76 + .../logger/OperateLogServiceImplTest.java | 115 + .../mail/MailAccountServiceImplTest.java | 179 + .../service/mail/MailLogServiceImplTest.java | 183 + .../service/mail/MailSendServiceImplTest.java | 330 + .../mail/MailTemplateServiceImplTest.java | 215 + .../service/notice/NoticeServiceImplTest.java | 130 + .../notify/NotifyMessageServiceImplTest.java | 276 + .../notify/NotifySendServiceImplTest.java | 190 + .../notify/NotifyTemplateServiceImplTest.java | 178 + .../oauth2/OAuth2ApproveServiceImplTest.java | 272 + .../oauth2/OAuth2ClientServiceImplTest.java | 220 + .../oauth2/OAuth2CodeServiceImplTest.java | 101 + .../oauth2/OAuth2GrantServiceImplTest.java | 173 + .../oauth2/OAuth2TokenServiceImplTest.java | 329 + .../permission/MenuServiceImplTest.java | 331 + .../permission/PermissionServiceTest.java | 527 + .../permission/RoleServiceImplTest.java | 372 + .../service/sms/SmsChannelServiceTest.java | 217 + .../service/sms/SmsCodeServiceImplTest.java | 191 + .../service/sms/SmsLogServiceImplTest.java | 190 + .../service/sms/SmsSendServiceImplTest.java | 298 + .../sms/SmsTemplateServiceImplTest.java | 348 + .../social/SocialClientServiceImplTest.java | 471 + .../social/SocialUserServiceImplTest.java | 288 + .../tenant/TenantPackageServiceImplTest.java | 236 + .../service/tenant/TenantServiceImplTest.java | 458 + .../user/AdminUserServiceImplTest.java | 764 ++ .../test/resources/application-unit-test.yaml | 53 + .../src/test/resources/logback.xml | 4 + .../src/test/resources/sql/clean.sql | 33 + .../src/test/resources/sql/create_tables.sql | 615 + agt-module-system/pom.xml | 24 + agt-server/Dockerfile | 23 + agt-server/pom.xml | 178 + .../org/agt/server/AgtServerApplication.java | 29 + .../server/controller/DefaultController.java | 94 + .../src/main/resources/application-dev.yaml | 202 + .../src/main/resources/application-local.yaml | 250 + .../src/main/resources/application.yaml | 340 + .../src/main/resources/logback-spring.xml | 76 + lombok.config | 4 + pom.xml | 168 + script/docker/docker-compose.yml | 162 + script/idea/http-client.env.json | 28 + sql/db2/README.md | 3 + sql/dm/agt-cloud-dm8.sql | 4404 ++++++ .../liquibase/database/core/DmDatabase.java | 598 + .../liquibase/datatype/core/BooleanType.java | 165 + .../impl/AbstractEngineConfiguration.java | 2068 +++ .../main/resources/META-INF/package-info.md | 1 + .../services/liquibase.database.Database | 21 + sql/dm/quartz.sql | 179 + sql/kingbase/agt-cloud.sql | 4723 +++++++ sql/kingbase/quartz.sql | 170 + sql/mysql/agt-cloud.sql | 4069 ++++++ sql/mysql/quartz.sql | 284 + sql/opengauss/agt-cloud.sql | 4723 +++++++ sql/opengauss/quartz.sql | 253 + sql/oracle/agt-cloud.sql | 4582 +++++++ sql/oracle/quartz.sql | 845 ++ sql/postgresql/agt-cloud.sql | 4820 +++++++ sql/postgresql/quartz.sql | 253 + sql/sqlserver/agt-cloud.sql | 11310 ++++++++++++++++ sql/sqlserver/quartz.sql | 533 + sql/tools/.gitignore | 8 + sql/tools/README.md | 130 + sql/tools/convertor.py | 844 ++ sql/tools/docker-compose.yaml | 134 + sql/tools/oracle/1_create_user.sql | 3 + sql/tools/oracle/2_create_schema.sh | 1 + sql/tools/sqlserver/create_schema.sh | 5 + 1472 files changed, 152747 insertions(+) create mode 100644 .gitignore create mode 100644 .image/common/agt-cloud-architecture.png create mode 100644 .image/common/agt-cloud-biz.png create mode 100644 .image/common/infra-feature.png create mode 100644 .image/common/system-feature.png create mode 100644 LICENSE create mode 100644 README.md create mode 100644 agt-dependencies/pom.xml create mode 100644 agt-framework/agt-common/pom.xml create mode 100644 agt-framework/agt-common/src/main/java/com/fhs/trans/service/AutoTransable.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/core/ArrayValuable.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/core/KeyValue.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/CommonStatusEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DateIntervalEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DocumentEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/RpcConstants.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/TerminalEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/UserTypeEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/WebFilterOrderEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ErrorCode.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServerException.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServiceException.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/GlobalErrorCodeConstants.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/ServiceErrorCodeRange.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/util/ServiceExceptionUtil.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/package-info.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/CommonResult.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageParam.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageResult.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortablePageParam.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortingField.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/cache/CacheUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/ArrayUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/CollectionUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/MapUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/SetUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/DateUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/LocalDateTimeUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/http/HttpUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/FileUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/IoUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/JsonUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/NumberSerializer.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeDeserializer.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeSerializer.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/monitor/TracerUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/MoneyUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/NumberUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/BeanUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/ObjectUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/PageUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/package-info.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/servlet/ServletUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringExpressionUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/string/StrUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/util/validation/ValidationUtils.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnum.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumCollectionValidator.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumValidator.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Mobile.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/MobileValidator.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Telephone.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/TelephoneValidator.java create mode 100644 agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/package-info.java create mode 100644 agt-framework/agt-common/src/test/java/org/agt/framework/common/util/collection/CollectionUtilsTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDeptDataPermissionAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/annotation/DataPermission.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationAdvisor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolder.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRequestInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRpcWebFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRule.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactory.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleCustomizer.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/util/DataPermissionUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptorTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolderTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandlerTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImplTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/util/DataPermissionUtilsTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/Area.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/enums/AreaTypeEnum.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/AreaUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/IPUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/area.csv create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/ip2region.xdb create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/test/java/org/agt/framework/ip/core/utils/AreaUtilsTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-ip/src/test/java/org/agt/framework/ip/core/utils/IPUtilsTest.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/config/AgtTenantAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/config/AgtTenantRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/config/TenantProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/aop/TenantIgnore.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/aop/TenantIgnoreAspect.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/context/TenantContextHolder.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/db/TenantBaseDO.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/db/TenantDatabaseInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/job/TenantJob.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/job/TenantJobAspect.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/kafka/TenantKafkaEnvironmentPostProcessor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/kafka/TenantKafkaProducerInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/rabbitmq/TenantRabbitMQInitializer.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/rabbitmq/TenantRabbitMQMessagePostProcessor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/redis/TenantRedisMessageInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/rocketmq/TenantRocketMQConsumeMessageHook.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/rocketmq/TenantRocketMQInitializer.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/mq/rocketmq/TenantRocketMQSendMessageHook.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/redis/TenantRedisCacheManager.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/rpc/TenantRequestInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/security/TenantSecurityWebFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/service/TenantFrameworkService.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/service/TenantFrameworkServiceImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/util/TenantUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/web/TenantContextWebFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/core/web/TenantVisitContextInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/agt/framework/tenant/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/java/org/springframework/messaging/handler/invocation/InvocableHandlerMethod.java create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/resources/META-INF/spring.factories create mode 100644 agt-framework/agt-spring-boot-starter-biz-tenant/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-env/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/config/AgtEnvRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/config/AgtEnvWebAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/config/EnvEnvironmentPostProcessor.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/config/EnvProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/context/EnvContextHolder.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/fegin/EnvLoadBalancerClient.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/fegin/EnvLoadBalancerClientFactory.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/fegin/EnvRequestInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/util/EnvUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/core/web/EnvWebFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/java/org/agt/framework/env/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/resources/META-INF/spring.factories create mode 100644 agt-framework/agt-spring-boot-starter-env/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-excel/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/dict/config/AgtDictAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/dict/config/AgtDictRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/dict/core/DictFrameworkUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/dict/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/annotations/DictFormat.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/annotations/ExcelColumnSelect.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/convert/AreaConvert.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/convert/DictConvert.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/convert/JsonConvert.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/convert/MoneyConvert.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/function/ExcelColumnSelectFunction.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/handler/SelectSheetWriteHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/core/util/ExcelUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/java/org/agt/framework/excel/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-excel/src/test/java/org/agt/framework/dict/core/util/DictFrameworkUtilsTest.java create mode 100644 agt-framework/agt-spring-boot-starter-job/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-job/src/main/java/org/agt/framework/quartz/config/AgtAsyncAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-job/src/main/java/org/agt/framework/quartz/config/AgtXxlJobAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-job/src/main/java/org/agt/framework/quartz/config/XxlJobProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-job/src/main/java/org/agt/framework/quartz/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-job/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-monitor/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/config/AgtMetricsAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/config/AgtTracerAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/config/TracerProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/core/annotation/BizTrace.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/core/aop/BizTraceAspect.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/core/filter/TraceFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/core/util/TracerFrameworkUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/java/org/agt/framework/tracer/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-monitor/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-mq/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/rabbitmq/config/AgtRabbitMQAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/rabbitmq/core/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/rabbitmq/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/config/AgtRedisMQConsumerAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/config/AgtRedisMQProducerAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/RedisMQTemplate.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/interceptor/RedisMessageInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/job/RedisPendingMessageResendJob.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/job/RedisStreamMessageCleanupJob.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/message/AbstractRedisMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/pubsub/AbstractRedisChannelMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/pubsub/AbstractRedisChannelMessageListener.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/stream/AbstractRedisStreamMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/core/stream/AbstractRedisStreamMessageListener.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/java/org/agt/framework/mq/redis/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mq/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/datasource/config/AgtDataSourceAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/datasource/core/enums/DataSourceEnum.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/datasource/core/filter/DruidAdRemoveFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/datasource/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/config/AgtMybatisAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/config/IdTypeEnvironmentPostProcessor.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/dataobject/BaseDO.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/enums/DbTypeEnum.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/handler/DefaultDBFieldHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/mapper/BaseMapperX.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/query/LambdaQueryWrapperX.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/query/MPJLambdaWrapperX.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/query/QueryWrapperX.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/type/EncryptTypeHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/type/IntegerListTypeHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/type/LongListTypeHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/type/LongSetTypeHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/type/StringListTypeHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/util/JdbcUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/core/util/MyBatisUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/mybatis/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/translate/config/AgtTranslateAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/translate/core/TranslateUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/java/org/agt/framework/translate/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/resources/META-INF/spring.factories create mode 100644 agt-framework/agt-spring-boot-starter-mybatis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-protection/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/config/AgtIdempotentConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/annotation/Idempotent.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/aop/IdempotentAspect.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/keyresolver/IdempotentKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/keyresolver/impl/DefaultIdempotentKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/keyresolver/impl/ExpressionIdempotentKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/keyresolver/impl/UserIdempotentKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/core/redis/IdempotentRedisDAO.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/idempotent/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/lock4j/config/AgtLock4jConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/lock4j/core/DefaultLockFailureStrategy.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/lock4j/core/Lock4jRedisKeyConstants.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/lock4j/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/config/AgtRateLimiterConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/annotation/RateLimiter.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/aop/RateLimiterAspect.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/keyresolver/RateLimiterKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/keyresolver/impl/ClientIpRateLimiterKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/keyresolver/impl/DefaultRateLimiterKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/keyresolver/impl/ExpressionRateLimiterKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/keyresolver/impl/ServerNodeRateLimiterKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/keyresolver/impl/UserRateLimiterKeyResolver.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/core/redis/RateLimiterRedisDAO.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/ratelimiter/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/signature/config/AgtApiSignatureAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/signature/core/annotation/ApiSignature.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/signature/core/aop/ApiSignatureAspect.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/signature/core/redis/ApiSignatureRedisDAO.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/java/org/agt/framework/signature/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-protection/src/test/java/org/agt/framework/signature/core/ApiSignatureTest.java create mode 100644 agt-framework/agt-spring-boot-starter-redis/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-redis/src/main/java/org/agt/framework/redis/config/AgtCacheAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-redis/src/main/java/org/agt/framework/redis/config/AgtCacheProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-redis/src/main/java/org/agt/framework/redis/config/AgtRedisAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-redis/src/main/java/org/agt/framework/redis/core/TimeoutRedisCacheManager.java create mode 100644 agt-framework/agt-spring-boot-starter-redis/src/main/java/org/agt/framework/redis/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-redis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-rpc/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-rpc/src/main/java/org/agt/framework/rpc/config/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-rpc/src/main/java/org/agt/framework/rpc/core/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-rpc/src/main/java/org/agt/framework/rpc/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-security/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/operatelog/config/AgtOperateLogConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/operatelog/config/AgtOperateLogRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/operatelog/core/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/operatelog/core/service/LogRecordServiceImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/operatelog/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/config/AgtSecurityAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/config/AgtSecurityRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/config/AgtWebSecurityConfigurerAdapter.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/config/AuthorizeRequestsCustomizer.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/config/SecurityProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/LoginUser.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/context/TransmittableThreadLocalSecurityContextHolderStrategy.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/filter/TokenAuthenticationFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/handler/AccessDeniedHandlerImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/handler/AuthenticationEntryPointImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/rpc/LoginUserRequestInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/service/SecurityFrameworkService.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/service/SecurityFrameworkServiceImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/core/util/SecurityFrameworkUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/java/org/agt/framework/security/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-test/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/config/RedisTestConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/config/SqlInitializationTestConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/ut/BaseDbAndRedisUnitTest.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/ut/BaseDbUnitTest.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/ut/BaseMockitoUnitTest.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/ut/BaseRedisUnitTest.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/ut/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/util/AssertUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/core/util/RandomUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-test/src/main/java/org/agt/framework/test/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/config/AgtApiLogAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/config/AgtApiLogRpcAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/core/annotation/ApiAccessLog.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/core/enums/OperateTypeEnum.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/core/filter/ApiAccessLogFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/core/interceptor/ApiAccessLogInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/apilog/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/banner/config/AgtBannerAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/banner/core/BannerApplicationRunner.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/banner/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/base/annotation/DesensitizeBy.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/base/handler/DesensitizationHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/base/serializer/StringDesensitizeSerializer.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/regex/annotation/EmailDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/regex/annotation/RegexDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/regex/handler/AbstractRegexDesensitizationHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/regex/handler/DefaultRegexDesensitizationHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/regex/handler/EmailDesensitizationHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/BankCardDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/CarLicenseDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/ChineseNameDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/FixedPhoneDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/IdCardDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/MobileDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/PasswordDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/annotation/SliderDesensitize.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/AbstractSliderDesensitizationHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/BankCardDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/CarLicenseDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/ChineseNameDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/DefaultDesensitizationHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/FixedPhoneDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/IdCardDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/MobileDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/core/slider/handler/PasswordDesensitization.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/desensitize/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/jackson/config/AgtJacksonAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/jackson/core/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/swagger/config/AgtSwaggerAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/swagger/config/SwaggerProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/swagger/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/config/AgtWebAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/config/WebProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/filter/ApiRequestFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/filter/CacheRequestBodyFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/filter/CacheRequestBodyWrapper.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/filter/DemoFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/handler/GlobalExceptionHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/handler/GlobalResponseBodyHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/core/util/WebFrameworkUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/web/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/config/AgtXssAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/config/XssProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/core/clean/JsoupXssCleaner.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/core/clean/XssCleaner.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/core/filter/XssFilter.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/core/filter/XssRequestWrapper.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/core/json/XssStringJsonDeserializer.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/java/org/agt/framework/xss/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/agt-spring-boot-starter-web/src/main/resources/banner.txt create mode 100644 agt-framework/agt-spring-boot-starter-web/src/test/java/org/agt/framework/desensitize/core/DesensitizeTest.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/test/java/org/agt/framework/desensitize/core/annotation/Address.java create mode 100644 agt-framework/agt-spring-boot-starter-web/src/test/java/org/agt/framework/desensitize/core/handler/AddressHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/pom.xml create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/config/AgtWebSocketAutoConfiguration.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/config/WebSocketProperties.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/handler/JsonWebSocketMessageHandler.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/listener/WebSocketMessageListener.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/message/JsonWebSocketMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/security/LoginUserHandshakeInterceptor.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/security/WebSocketAuthorizeRequestsCustomizer.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/AbstractWebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/WebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/kafka/KafkaWebSocketMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/kafka/KafkaWebSocketMessageConsumer.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/kafka/KafkaWebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/local/LocalWebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/rabbitmq/RabbitMQWebSocketMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/rabbitmq/RabbitMQWebSocketMessageConsumer.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/rabbitmq/RabbitMQWebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/redis/RedisWebSocketMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/redis/RedisWebSocketMessageConsumer.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/redis/RedisWebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/rocketmq/RocketMQWebSocketMessage.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/rocketmq/RocketMQWebSocketMessageConsumer.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/sender/rocketmq/RocketMQWebSocketMessageSender.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/session/WebSocketSessionHandlerDecorator.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/session/WebSocketSessionManager.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/session/WebSocketSessionManagerImpl.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/core/util/WebSocketFrameworkUtils.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/java/org/agt/framework/websocket/package-info.java create mode 100644 agt-framework/agt-spring-boot-starter-websocket/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 agt-framework/pom.xml create mode 100644 agt-gateway/Dockerfile create mode 100644 agt-gateway/pom.xml create mode 100644 agt-gateway/src/main/java/org/agt/gateway/AgtGatewayApplication.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/cors/CorsFilter.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/cors/CorsResponseHeaderFilter.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/grey/GrayLoadBalancer.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/grey/GrayReactiveLoadBalancerClientFilter.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/logging/AccessLog.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/logging/AccessLogFilter.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/security/LoginUser.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/filter/security/TokenAuthenticationFilter.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/handler/GlobalExceptionHandler.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/jackson/JacksonAutoConfiguration.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/route/dynamic/package-info.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/route/package-info.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/util/BannerApplicationRunner.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/util/EnvUtils.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/util/SecurityFrameworkUtils.java create mode 100644 agt-gateway/src/main/java/org/agt/gateway/util/WebFrameworkUtils.java create mode 100644 agt-gateway/src/main/resources/application-dev.yaml create mode 100644 agt-gateway/src/main/resources/application-local.yaml create mode 100644 agt-gateway/src/main/resources/application.yaml create mode 100644 agt-gateway/src/main/resources/banner.txt create mode 100644 agt-gateway/src/main/resources/logback-spring.xml create mode 100644 agt-gateway/src/main/resources/static/favicon.ico create mode 100644 agt-gateway/src/test/java/org/agt/ProjectReactor.java create mode 100644 agt-module-infra/agt-module-infra-api/pom.xml create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/config/ConfigApi.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/file/FileApi.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/file/dto/FileCreateReqDTO.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/logger/ApiAccessLogApi.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/logger/ApiErrorLogApi.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/logger/dto/ApiAccessLogCreateReqDTO.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/logger/dto/ApiErrorLogCreateReqDTO.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/package-info.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/websocket/WebSocketSenderApi.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/api/websocket/dto/WebSocketSendReqDTO.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/enums/ApiConstants.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/enums/DictTypeConstants.java create mode 100644 agt-module-infra/agt-module-infra-api/src/main/java/org/agt/module/infra/enums/ErrorCodeConstants.java create mode 100644 agt-module-infra/agt-module-infra-biz/Dockerfile create mode 100644 agt-module-infra/agt-module-infra-biz/pom.xml create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/AgtInfraApplication.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/api/config/ConfigApiImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/api/file/FileApiImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/api/logger/ApiAccessLogApiImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/api/logger/ApiErrorLogApiImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/api/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/api/websocket/WebSocketSenderApiImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/CodegenController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/CodegenCreateListReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/CodegenDetailRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/CodegenPreviewRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/CodegenUpdateReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/column/CodegenColumnRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/column/CodegenColumnSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/table/CodegenTablePageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/table/CodegenTableRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/table/CodegenTableSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/codegen/vo/table/DatabaseTableRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/config/ConfigController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/config/vo/ConfigPageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/config/vo/ConfigRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/config/vo/ConfigSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/db/DataSourceConfigController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/db/vo/DataSourceConfigRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/db/vo/DataSourceConfigSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo01/Demo01ContactController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo01/vo/Demo01ContactPageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo01/vo/Demo01ContactRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo01/vo/Demo01ContactSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo02/Demo02CategoryController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo02/vo/Demo02CategoryListReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo02/vo/Demo02CategoryRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo02/vo/Demo02CategorySaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo03/Demo03StudentController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo03/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo03/vo/Demo03StudentPageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo03/vo/Demo03StudentRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/demo03/vo/Demo03StudentSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/demo/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/FileConfigController.http create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/FileConfigController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/FileController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/config/FileConfigPageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/config/FileConfigRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/config/FileConfigSaveReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/file/FileCreateReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/file/FilePageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/file/FilePresignedUrlRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/file/FileRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/file/vo/file/FileUploadReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/job/JobController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/logger/ApiAccessLogController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/logger/ApiErrorLogController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/logger/vo/apiaccesslog/ApiAccessLogPageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/logger/vo/apiaccesslog/ApiAccessLogRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/logger/vo/apierrorlog/ApiErrorLogPageReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/logger/vo/apierrorlog/ApiErrorLogRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/redis/RedisController.http create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/redis/RedisController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/admin/redis/vo/RedisMonitorRespVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/app/file/AppFileController.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/app/file/vo/AppFileUploadReqVO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/app/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/controller/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/convert/codegen/CodegenConvert.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/convert/config/ConfigConvert.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/convert/file/FileConfigConvert.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/convert/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/convert/redis/RedisConvert.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/convert/ã€ŠèŠ‹é“ Spring Boot å¯¹è±¡è½¬æ¢ MapStruct 入门》.md create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/codegen/CodegenColumnDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/codegen/CodegenTableDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/config/ConfigDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/db/DataSourceConfigDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/demo/demo01/Demo01ContactDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/demo/demo02/Demo02CategoryDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/demo/demo03/Demo03CourseDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/demo/demo03/Demo03GradeDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/demo/demo03/Demo03StudentDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/file/FileConfigDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/file/FileContentDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/file/FileDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/logger/ApiAccessLogDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/dataobject/logger/ApiErrorLogDO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/codegen/CodegenColumnMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/codegen/CodegenTableMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/config/ConfigMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/db/DataSourceConfigMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/demo/demo01/Demo01ContactMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/demo/demo02/Demo02CategoryMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/demo/demo03/Demo03CourseMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/demo/demo03/Demo03GradeMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/demo/demo03/Demo03StudentMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/file/FileConfigMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/file/FileContentMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/file/FileMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/logger/ApiAccessLogMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/dal/mysql/logger/ApiErrorLogMapper.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/codegen/CodegenColumnHtmlTypeEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/codegen/CodegenColumnListConditionEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/codegen/CodegenFrontTypeEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/codegen/CodegenSceneEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/codegen/CodegenTemplateTypeEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/config/ConfigTypeEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/logger/ApiErrorLogProcessStatusEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/enums/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/codegen/config/CodegenConfiguration.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/codegen/config/CodegenProperties.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/codegen/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/config/AgtFileAutoConfiguration.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/AbstractFileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/FileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/FileClientConfig.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/FileClientFactory.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/FileClientFactoryImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/db/DBFileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/db/DBFileClientConfig.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/ftp/FtpFileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/ftp/FtpFileClientConfig.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/local/LocalFileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/local/LocalFileClientConfig.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/s3/FilePresignedUrlRespDTO.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/s3/S3FileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/s3/S3FileClientConfig.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/sftp/SftpFileClient.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/client/sftp/SftpFileClientConfig.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/enums/FileStorageEnum.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/core/utils/FileTypeUtils.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/file/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/monitor/config/AdminServerConfiguration.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/monitor/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/monitor/ã€ŠèŠ‹é“ Spring Boot 监控工具 Admin 入门》.md create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/rpc/config/RpcConfiguration.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/rpc/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/security/config/SecurityConfiguration.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/framework/security/core/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/job/logger/AccessLogCleanJob.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/job/logger/ErrorLogCleanJob.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/job/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/mq/consumer/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/mq/message/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/mq/producer/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/package-info.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/codegen/CodegenService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/codegen/CodegenServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/codegen/inner/CodegenBuilder.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/codegen/inner/CodegenEngine.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/config/ConfigService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/config/ConfigServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/db/DataSourceConfigService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/db/DataSourceConfigServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/db/DatabaseTableService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/db/DatabaseTableServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/demo/demo01/Demo01ContactService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/demo/demo01/Demo01ContactServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/demo/demo02/Demo02CategoryService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/demo/demo02/Demo02CategoryServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/demo/demo03/Demo03StudentService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/demo/demo03/Demo03StudentServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/file/FileConfigService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/file/FileConfigServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/file/FileService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/file/FileServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/logger/ApiAccessLogService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/logger/ApiAccessLogServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/logger/ApiErrorLogService.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/service/logger/ApiErrorLogServiceImpl.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/websocket/DemoWebSocketMessageListener.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/websocket/message/DemoReceiveMessage.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/java/org/agt/module/infra/websocket/message/DemoSendMessage.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/application-dev.yaml create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/application-local.yaml create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/application.yaml create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/controller/controller.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/controller/vo/listReqVO.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/controller/vo/pageReqVO.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/controller/vo/respVO.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/controller/vo/saveReqVO.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/dal/do.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/dal/do_sub.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/dal/mapper.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/dal/mapper.xml.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/dal/mapper_sub.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/enums/errorcode.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/service/service.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/service/serviceImpl.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/java/test/serviceTest.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/sql/h2.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/sql/sql.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/api/api.js.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/components/form_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/components/form_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/components/form_sub_normal.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/components/list_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/components/list_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/form.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue/views/index.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/api/api.ts.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/components/form_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/components/form_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/components/form_sub_normal.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/components/list_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/components/list_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/form.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3/views/index.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben/api/api.ts.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben/views/data.ts.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben/views/form.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben/views/index.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/api/api.ts.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/form.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/index.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/modules/form_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/modules/form_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/modules/form_sub_normal.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/modules/list_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/general/views/modules/list_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/api/api.ts.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/data.ts.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/form.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/index.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/form_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/form_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/form_sub_normal.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_erp.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/codegen/vue3_vben5_antd/schema/views/modules/list_sub_inner.vue.vm create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/file/erweima.jpg create mode 100644 agt-module-infra/agt-module-infra-biz/src/main/resources/logback-spring.xml create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/framework/file/core/ftp/FtpFileClientTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/framework/file/core/local/LocalFileClientTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/framework/file/core/s3/S3FileClientTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/framework/file/core/sftp/SftpFileClientTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/DefaultDatabaseQueryTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/codegen/CodegenServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/codegen/inner/CodegenBuilderTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/codegen/inner/CodegenEngineAbstractTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/codegen/inner/CodegenEngineVue2Test.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/codegen/inner/CodegenEngineVue3Test.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/config/ConfigServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/db/DataSourceConfigServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/db/DatabaseTableServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/file/FileConfigServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/file/FileServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/logger/ApiAccessLogServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/java/org/agt/module/infra/service/logger/ApiErrorLogServiceImplTest.java create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/application-unit-test.yaml create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/table/category.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/table/contact.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/table/student.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/table/teacher.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentContactDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentContactMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentTeacherDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/java/InfraStudentTeacherMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/js/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/vue/StudentContactForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/vue/StudentContactList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/vue/StudentTeacherForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/vue/StudentTeacherList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_erp/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentContactDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentContactMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentTeacherDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/java/InfraStudentTeacherMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/js/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/vue/StudentContactForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/vue/StudentContactList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/vue/StudentTeacherForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/vue/StudentTeacherList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_inner/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentContactDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentContactMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentTeacherDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/java/InfraStudentTeacherMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/js/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/vue/StudentContactForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/vue/StudentTeacherForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_master_normal/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/js/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_one/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryListReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategorySaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/java/InfraCategoryServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/js/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/vue/CategoryForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue2_tree/xml/InfraCategoryMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentContactDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentContactMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentTeacherDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/java/InfraStudentTeacherMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/ts/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/vue/StudentContactForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/vue/StudentContactList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/vue/StudentTeacherForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/vue/StudentTeacherList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_erp/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentContactDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentContactMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentTeacherDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/java/InfraStudentTeacherMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/ts/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/vue/StudentContactForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/vue/StudentContactList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/vue/StudentTeacherForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/vue/StudentTeacherList create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_inner/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentContactDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentContactMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentTeacherDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/java/InfraStudentTeacherMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/ts/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/vue/StudentContactForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/vue/StudentTeacherForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_master_normal/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentPageReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentSaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/java/InfraStudentServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/ts/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/vue/StudentForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_one/xml/InfraStudentMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/assert.json create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/ErrorCodeConstants_手动æ“作 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryController create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryDO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryListReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryRespVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategorySaveReqVO create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryService create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryServiceImpl create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/java/InfraCategoryServiceImplTest create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/sql/h2 create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/sql/sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/ts/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/vue/CategoryForm create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/vue/index create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/codegen/windows10/vue3_tree/xml/InfraCategoryMapper create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/logback.xml create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/sql/clean.sql create mode 100644 agt-module-infra/agt-module-infra-biz/src/test/resources/sql/create_tables.sql create mode 100644 agt-module-infra/pom.xml create mode 100644 agt-module-system/agt-module-system-api/pom.xml create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/dept/DeptApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/dept/PostApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/dept/dto/DeptRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/dept/dto/PostRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/dict/DictDataApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/dict/dto/DictDataRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/logger/LoginLogApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/logger/OperateLogApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/logger/dto/LoginLogCreateReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/logger/dto/OperateLogCreateReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/logger/dto/OperateLogPageReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/logger/dto/OperateLogRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/mail/MailSendApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/mail/dto/MailSendSingleToUserReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/notify/NotifyMessageSendApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/notify/dto/NotifySendSingleToUserReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/oauth2/OAuth2TokenApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/oauth2/dto/OAuth2AccessTokenCheckRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/oauth2/dto/OAuth2AccessTokenCreateReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/oauth2/dto/OAuth2AccessTokenRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/package-info.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/permission/PermissionApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/permission/RoleApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/permission/dto/DeptDataPermissionRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/sms/SmsCodeApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/sms/SmsSendApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/sms/dto/code/SmsCodeSendReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/sms/dto/code/SmsCodeUseReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/sms/dto/code/SmsCodeValidateReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/sms/dto/send/SmsSendSingleToUserReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/SocialClientApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/SocialUserApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialUserBindReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialUserRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialUserUnbindReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxJsapiSignatureRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxPhoneNumberInfoRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxQrcodeReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxaOrderNotifyConfirmReceiveReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxaOrderUploadShippingInfoReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxaSubscribeMessageSendReqDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/social/dto/SocialWxaSubscribeTemplateRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/tenant/TenantApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/user/AdminUserApi.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/api/user/dto/AdminUserRespDTO.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/ApiConstants.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/DictTypeConstants.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/ErrorCodeConstants.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/LogRecordConstants.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/common/SexEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/logger/LoginLogTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/logger/LoginResultEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/mail/MailSendStatusEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/notice/NoticeTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/notify/NotifyTemplateTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/oauth2/OAuth2ClientConstants.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/oauth2/OAuth2GrantTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/permission/DataScopeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/permission/MenuTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/permission/RoleCodeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/permission/RoleTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/sms/SmsReceiveStatusEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/sms/SmsSceneEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/sms/SmsSendStatusEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/sms/SmsTemplateTypeEnum.java create mode 100644 agt-module-system/agt-module-system-api/src/main/java/org/agt/module/system/enums/social/SocialTypeEnum.java create mode 100644 agt-module-system/agt-module-system-biz/Dockerfile create mode 100644 agt-module-system/agt-module-system-biz/pom.xml create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/AgtSystemApplication.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/dept/DeptApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/dept/PostApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/dict/DictDataApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/logger/LoginLogApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/logger/OperateLogApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/mail/MailSendApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/notify/NotifyMessageSendApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/oauth2/OAuth2TokenApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/permission/PermissionApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/permission/RoleApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/sms/SmsCodeApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/sms/SmsSendApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/social/SocialClientApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/social/SocialUserApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/tenant/TenantApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/api/user/AdminUserApiImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/AuthController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/AuthController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthLoginReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthLoginRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthMenuRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthPermissionInfoRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthRegisterReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthResetPasswordReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthSmsLoginReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthSmsSendReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/AuthSocialLoginReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/auth/vo/CaptchaVerificationReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/captcha/CaptchaController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/DeptController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/PostController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/dept/DeptListReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/dept/DeptRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/post/PostPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/post/PostRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/post/PostSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dept/vo/post/PostSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/DictDataController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/DictDataController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/DictTypeController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/data/DictDataPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/data/DictDataRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/data/DictDataSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/data/DictDataSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/type/DictTypePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/type/DictTypeRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/type/DictTypeSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/dict/vo/type/DictTypeSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/ip/AreaController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/ip/AreaController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/ip/vo/AreaNodeRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/LoginLogController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/OperateLogController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/OperateLogController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/vo/loginlog/LoginLogPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/vo/loginlog/LoginLogRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/vo/operatelog/OperateLogPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/logger/vo/operatelog/OperateLogRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/MailAccountController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/MailLogController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/MailTemplateController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/MailTemplateController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/account/MailAccountPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/account/MailAccountRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/account/MailAccountSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/account/MailAccountSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/log/MailLogPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/log/MailLogRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/template/MailTemplatePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/template/MailTemplateRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/template/MailTemplateSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/template/MailTemplateSendReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/mail/vo/template/MailTemplateSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notice/NoticeController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notice/vo/NoticePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notice/vo/NoticeRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notice/vo/NoticeSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/NotifyMessageController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/NotifyTemplateController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/message/NotifyMessageMyPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/message/NotifyMessagePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/message/NotifyMessageRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/template/NotifyTemplatePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/template/NotifyTemplateRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/template/NotifyTemplateSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/notify/vo/template/NotifyTemplateSendReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2ClientController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2ClientController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2OpenController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2OpenController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2TokenController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2UserController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/OAuth2UserController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/client/OAuth2ClientPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/client/OAuth2ClientRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/client/OAuth2ClientSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAccessTokenRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAuthorizeInfoRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/open/OAuth2OpenCheckTokenRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/user/OAuth2UserInfoRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/oauth2/vo/user/OAuth2UserUpdateReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/MenuController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/MenuController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/PermissionController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/RoleController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/RoleController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/menu/MenuListReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/menu/MenuRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/menu/MenuSaveVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/menu/MenuSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/permission/PermissionAssignRoleDataScopeReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/permission/PermissionAssignRoleMenuReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/permission/PermissionAssignUserRoleReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/role/RolePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/role/RoleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/role/RoleSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/permission/vo/role/RoleSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/SmsCallbackController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/SmsChannelController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/SmsLogController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/SmsTemplateController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/SmsTemplateController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/channel/SmsChannelPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/channel/SmsChannelRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/channel/SmsChannelSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/channel/SmsChannelSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/log/SmsLogPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/log/SmsLogRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/template/SmsTemplatePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/template/SmsTemplateRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/template/SmsTemplateSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/sms/vo/template/SmsTemplateSendReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/SocialClientController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/SocialClientController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/SocialUserController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/client/SocialClientPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/client/SocialClientRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/client/SocialClientSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/user/SocialUserBindReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/user/SocialUserPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/user/SocialUserRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/socail/vo/user/SocialUserUnbindReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/TenantController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/TenantController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/TenantPackageController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/packages/TenantPackagePageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/packages/TenantPackageRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/packages/TenantPackageSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/packages/TenantPackageSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/UserController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/UserController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/UserProfileController.http create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/UserProfileController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/profile/UserProfileUpdatePasswordReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserImportExcelVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserImportRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserPageReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserSaveReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserSimpleRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserUpdatePasswordReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/admin/user/vo/user/UserUpdateStatusReqVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/app/dict/AppDictDataController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/app/dict/vo/AppDictDataRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/app/ip/AppAreaController.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/app/ip/vo/AppAreaNodeRespVO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/app/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/controller/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/auth/AuthConvert.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/oauth2/OAuth2OpenConvert.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/social/SocialUserConvert.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/tenant/TenantConvert.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/user/UserConvert.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/convert/ã€ŠèŠ‹é“ Spring Boot å¯¹è±¡è½¬æ¢ MapStruct 入门》.md create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/dept/DeptDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/dept/PostDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/dept/UserPostDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/dict/DictDataDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/dict/DictTypeDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/logger/LoginLogDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/logger/OperateLogDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/mail/MailAccountDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/mail/MailLogDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/mail/MailTemplateDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/notice/NoticeDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/notify/NotifyMessageDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/notify/NotifyTemplateDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/oauth2/OAuth2AccessTokenDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/oauth2/OAuth2ApproveDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/oauth2/OAuth2ClientDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/oauth2/OAuth2CodeDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/oauth2/OAuth2RefreshTokenDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/permission/MenuDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/permission/RoleDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/permission/RoleMenuDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/permission/UserRoleDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/sms/SmsChannelDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/sms/SmsCodeDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/sms/SmsLogDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/sms/SmsTemplateDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/social/SocialClientDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/social/SocialUserBindDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/social/SocialUserDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/tenant/TenantDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/tenant/TenantPackageDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/dataobject/user/AdminUserDO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/dept/DeptMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/dept/PostMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/dept/UserPostMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/dict/DictDataMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/dict/DictTypeMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/logger/LoginLogMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/logger/OperateLogMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/mail/MailAccountMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/mail/MailLogMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/mail/MailTemplateMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/notice/NoticeMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/notify/NotifyMessageMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/notify/NotifyTemplateMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/oauth2/OAuth2AccessTokenMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/oauth2/OAuth2ApproveMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/oauth2/OAuth2ClientMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/oauth2/OAuth2CodeMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/oauth2/OAuth2RefreshTokenMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/permission/MenuMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/permission/RoleMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/permission/RoleMenuMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/permission/UserRoleMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/sms/SmsChannelMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/sms/SmsCodeMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/sms/SmsLogMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/sms/SmsTemplateMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/social/SocialClientMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/social/SocialUserBindMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/social/SocialUserMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/tenant/TenantMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/tenant/TenantPackageMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/mysql/user/AdminUserMapper.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/redis/RedisKeyConstants.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/dal/redis/oauth2/OAuth2AccessTokenRedisDAO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/captcha/config/AgtCaptchaConfiguration.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/captcha/core/RedisCaptchaServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/captcha/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/datapermission/config/DataPermissionConfiguration.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/datapermission/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/justauth/config/AgtJustAuthConfiguration.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/justauth/core/AuthRequestFactory.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/justauth/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/core/AdminUserParseFunction.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/core/AreaParseFunction.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/core/BooleanParseFunction.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/core/DeptParseFunction.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/core/PostParseFunction.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/core/SexParseFunction.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/operatelog/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/rpc/config/RpcConfiguration.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/rpc/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/security/config/SecurityConfiguration.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/security/core/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/config/SmsCodeProperties.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/config/SmsConfiguration.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/SmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/SmsClientFactory.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/dto/SmsReceiveRespDTO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/dto/SmsSendRespDTO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/dto/SmsTemplateRespDTO.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/AbstractSmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/AliyunSmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/DebugDingTalkSmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/HuaweiSmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/QiniuSmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/SmsClientFactoryImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/client/impl/TencentSmsClient.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/enums/SmsChannelEnum.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/enums/SmsTemplateAuditStatusEnum.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/framework/sms/core/property/SmsChannelProperties.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/job/demo/DemoJob.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/job/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/mq/consumer/mail/MailSendConsumer.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/mq/consumer/sms/SmsSendConsumer.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/mq/message/mail/MailSendMessage.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/mq/message/sms/SmsSendMessage.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/mq/producer/mail/MailProducer.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/mq/producer/sms/SmsProducer.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/auth/AdminAuthService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/auth/AdminAuthServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dept/DeptService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dept/DeptServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dept/PostService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dept/PostServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dict/DictDataService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dict/DictDataServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dict/DictTypeService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/dict/DictTypeServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/logger/LoginLogService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/logger/LoginLogServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/logger/OperateLogService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/logger/OperateLogServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailAccountService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailAccountServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailLogService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailLogServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailSendService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailSendServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailTemplateService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/mail/MailTemplateServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/member/MemberService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/member/MemberServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/member/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notice/NoticeService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notice/NoticeServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notify/NotifyMessageService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notify/NotifyMessageServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notify/NotifySendService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notify/NotifySendServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notify/NotifyTemplateService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/notify/NotifyTemplateServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2ApproveService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2ApproveServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2ClientService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2ClientServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2CodeService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2CodeServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2GrantService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2GrantServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2TokenService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/oauth2/OAuth2TokenServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/permission/MenuService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/permission/MenuServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/permission/PermissionService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/permission/PermissionServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/permission/RoleService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/permission/RoleServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsChannelService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsChannelServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsCodeService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsCodeServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsLogService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsLogServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsSendService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsSendServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsTemplateService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/sms/SmsTemplateServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/social/SocialClientService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/social/SocialClientServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/social/SocialUserService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/social/SocialUserServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/tenant/TenantPackageService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/tenant/TenantPackageServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/tenant/TenantService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/tenant/TenantServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/tenant/handler/TenantInfoHandler.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/tenant/handler/TenantMenuHandler.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/user/AdminUserService.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/service/user/AdminUserServiceImpl.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/util/oauth2/OAuth2Utils.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/java/org/agt/module/system/util/package-info.java create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/META-INF/services/com.anji.captcha.service.CaptchaCacheService create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/application-dev.yaml create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/application-local.yaml create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/application.yaml create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg1.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg2.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg3.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg4.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg5.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg6.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg7.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg8.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/original/bg9.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/1.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/10.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/11.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/12.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/13.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/14.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/15.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/16.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/17.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/18.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/19.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/8.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/11/9.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/2.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/3.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/jigsaw/slidingBlock/4.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg1.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg10.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg2.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg3.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg4.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg5.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg6.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg7.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg8.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/images/pic-click/bg9.png create mode 100644 agt-module-system/agt-module-system-biz/src/main/resources/logback-spring.xml create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/controller/admin/oauth2/OAuth2OpenControllerTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/framework/sms/core/client/impl/AliyunSmsClientTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/framework/sms/core/client/impl/HuaweiSmsClientTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/framework/sms/core/client/impl/QiniuSmsClientTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/framework/sms/core/client/impl/SmsClientTests.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/framework/sms/core/client/impl/TencentSmsClientTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/auth/AdminAuthServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/dept/DeptServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/dept/PostServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/dict/DictDataServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/dict/DictTypeServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/logger/LoginLogServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/logger/OperateLogServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/mail/MailAccountServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/mail/MailLogServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/mail/MailSendServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/mail/MailTemplateServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/notice/NoticeServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/notify/NotifyMessageServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/notify/NotifySendServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/notify/NotifyTemplateServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/oauth2/OAuth2ApproveServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/oauth2/OAuth2ClientServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/oauth2/OAuth2CodeServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/oauth2/OAuth2GrantServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/oauth2/OAuth2TokenServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/permission/MenuServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/permission/PermissionServiceTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/permission/RoleServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/sms/SmsChannelServiceTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/sms/SmsCodeServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/sms/SmsLogServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/sms/SmsSendServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/sms/SmsTemplateServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/social/SocialClientServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/social/SocialUserServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/tenant/TenantPackageServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/tenant/TenantServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/java/org/agt/module/system/service/user/AdminUserServiceImplTest.java create mode 100644 agt-module-system/agt-module-system-biz/src/test/resources/application-unit-test.yaml create mode 100644 agt-module-system/agt-module-system-biz/src/test/resources/logback.xml create mode 100644 agt-module-system/agt-module-system-biz/src/test/resources/sql/clean.sql create mode 100644 agt-module-system/agt-module-system-biz/src/test/resources/sql/create_tables.sql create mode 100644 agt-module-system/pom.xml create mode 100644 agt-server/Dockerfile create mode 100644 agt-server/pom.xml create mode 100644 agt-server/src/main/java/org/agt/server/AgtServerApplication.java create mode 100644 agt-server/src/main/java/org/agt/server/controller/DefaultController.java create mode 100644 agt-server/src/main/resources/application-dev.yaml create mode 100644 agt-server/src/main/resources/application-local.yaml create mode 100644 agt-server/src/main/resources/application.yaml create mode 100644 agt-server/src/main/resources/logback-spring.xml create mode 100644 lombok.config create mode 100644 pom.xml create mode 100644 script/docker/docker-compose.yml create mode 100644 script/idea/http-client.env.json create mode 100644 sql/db2/README.md create mode 100644 sql/dm/agt-cloud-dm8.sql create mode 100644 sql/dm/flowable-patch/src/main/java/liquibase/database/core/DmDatabase.java create mode 100644 sql/dm/flowable-patch/src/main/java/liquibase/datatype/core/BooleanType.java create mode 100644 sql/dm/flowable-patch/src/main/java/org/flowable/common/engine/impl/AbstractEngineConfiguration.java create mode 100644 sql/dm/flowable-patch/src/main/resources/META-INF/package-info.md create mode 100644 sql/dm/flowable-patch/src/main/resources/META-INF/services/liquibase.database.Database create mode 100644 sql/dm/quartz.sql create mode 100644 sql/kingbase/agt-cloud.sql create mode 100644 sql/kingbase/quartz.sql create mode 100644 sql/mysql/agt-cloud.sql create mode 100644 sql/mysql/quartz.sql create mode 100644 sql/opengauss/agt-cloud.sql create mode 100644 sql/opengauss/quartz.sql create mode 100644 sql/oracle/agt-cloud.sql create mode 100644 sql/oracle/quartz.sql create mode 100644 sql/postgresql/agt-cloud.sql create mode 100644 sql/postgresql/quartz.sql create mode 100644 sql/sqlserver/agt-cloud.sql create mode 100644 sql/sqlserver/quartz.sql create mode 100644 sql/tools/.gitignore create mode 100644 sql/tools/README.md create mode 100644 sql/tools/convertor.py create mode 100644 sql/tools/docker-compose.yaml create mode 100644 sql/tools/oracle/1_create_user.sql create mode 100644 sql/tools/oracle/2_create_schema.sh create mode 100644 sql/tools/sqlserver/create_schema.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e55eb64 --- /dev/null +++ b/.gitignore @@ -0,0 +1,75 @@ + +# 查看更多 .gitignore é…ç½® -> https://help.github.com/articles/ignoring-files/ + +target/ +!.mvn/wrapper/maven-wrapper.jar + +.flattened-pom.xml + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr +*.class +target/* + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +/build/ + + + +### admin-web ### + +# dependencies +**/node_modules + +# roadhog-api-doc ignore +/src/utils/request-temp.js +_roadhog-api-doc + +# production +/dist +/.vscode + +# misc +.DS_Store +npm-debug.log* +yarn-error.log + +/coverage +.idea +yarn.lock +package-lock.json +*bak +.vscode + +# visual studio code +.history +*.log + +functions/mock +.temp/** + +# umi +.umi +.umi-production + +# screenshot +screenshot +.firebase +sessionStore diff --git a/.image/common/agt-cloud-architecture.png b/.image/common/agt-cloud-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..0eb9c9f224badd0eee65ddfdcf058578b492d21a GIT binary patch literal 737448 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�cMplnuuA^5i&Zdo4ks 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

    h3MV_1hweMK3yBzxHx2w)Pa8i*hq#! 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

    sL?)HeF)hEWxc0(QJphhYvn7YxDo;Wqq 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 TxX3il0Dz*bnoOnC8`%E>Oe*}# literal 0 HcmV?d00001 diff --git a/.image/common/infra-feature.png b/.image/common/infra-feature.png new file mode 100644 index 0000000000000000000000000000000000000000..e5a4d6eeda7286a94fee87e3b80facdb5ab0aac6 GIT binary patch literal 56087 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 literal 0 HcmV?d00001 diff --git a/.image/common/system-feature.png b/.image/common/system-feature.png new file mode 100644 index 0000000000000000000000000000000000000000..d22253cd7972b3c8dbb54299d581a14235369dbd GIT binary patch literal 46340 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 z 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 B5 + Coverage Status + Downloads + Downloads +

    + +# AGT-Cloudäº‘å¹³å° + +## å¹³å°ç®€ä»‹ + +![架构图](/.image/common/agt-cloud-architecture.png) + +* Java åŽç«¯ï¼šJDK 17/21 + Spring Boot 3.4.5 +* 管ç†åŽå°çš„电脑端:Vue3 采用 [vben(ant-design-vue)](https://doc.vben.pro/guide/introduction/vben.html) ä¼ä¸šçº§ç®¡ç†ç³»ç»Ÿæ¡†æž¶ +* 管ç†åŽå°çš„移动端:采用 [uni-app](https://zh.uniapp.dcloud.io) 方案,一份代ç å¤šç»ˆç«¯é€‚é…ï¼ŒåŒæ—¶æ”¯æŒ APPã€å°ç¨‹åºã€H5ï¼ +* åŽç«¯é‡‡ç”¨ Spring Cloud Alibaba å¾®æœåŠ¡æž¶æž„ï¼Œæ³¨å†Œä¸­å¿ƒ + é…置中心 Nacos,定时任务 XXL-Job,æœåŠ¡ä¿éšœ Sentinel,æœåŠ¡ç½‘å…³ Gateway,分布å¼äº‹åŠ¡ Seata +* æ•°æ®åº“å¯ä½¿ç”¨ MySQLã€Oracleã€PostgreSQLã€SQL Serverã€MariaDBã€å›½äº§è¾¾æ¢¦ DMã€TiDB 等,基于 MyBatis Plusã€Redis + Redisson æ“作 +* 消æ¯é˜Ÿåˆ—å¯ä½¿ç”¨ Eventã€Redisã€RabbitMQã€Kafkaã€RocketMQ ç­‰ +* æƒé™è®¤è¯ä½¿ç”¨ Spring Security & Token & Redis,支æŒå¤šç»ˆç«¯ã€å¤šç§ç”¨æˆ·çš„认è¯ç³»ç»Ÿï¼Œæ”¯æŒ SSO å•点登录 +* 支æŒåŠ è½½åŠ¨æ€æƒé™èœå•,按钮级别æƒé™æŽ§åˆ¶ï¼ŒRedis 缓存æå‡æ€§èƒ½ +* æ”¯æŒ SaaS 多租户,å¯è‡ªå®šä¹‰æ¯ä¸ªç§Ÿæˆ·çš„æƒé™ï¼Œæä¾›é€æ˜ŽåŒ–的多租户底层å°è£… +* 工作æµä½¿ç”¨ Flowable,支æŒåЍæ€è¡¨å•ã€åœ¨çº¿è®¾è®¡æµç¨‹ã€ä¼šç­¾ / 或签ã€å¤šç§ä»»åŠ¡åˆ†é…æ–¹å¼ +* 高效率开å‘,使用代ç ç”Ÿæˆå™¨å¯ä»¥ä¸€é”®ç”Ÿæˆ Javaã€Vue å‰åŽç«¯ä»£ç ã€SQL è„šæœ¬ã€æŽ¥å£æ–‡æ¡£ï¼Œæ”¯æŒå•è¡¨ã€æ ‘表ã€ä¸»å­è¡¨ +* 实时通信,采用 Spring WebSocket 实现,内置 Token èº«ä»½æ ¡éªŒï¼Œæ”¯æŒ WebSocket 集群 +* 集æˆå¾®ä¿¡å°ç¨‹åºã€å¾®ä¿¡å…¬ä¼—å·ã€ä¼ä¸šå¾®ä¿¡ã€é’‰é’‰ç­‰ä¸‰æ–¹ç™»é™†ï¼Œé›†æˆæ”¯ä»˜å®ã€å¾®ä¿¡ç­‰æ”¯ä»˜ä¸Žé€€æ¬¾ +* 集æˆé˜¿é‡Œäº‘ã€è…¾è®¯äº‘等短信渠é“ï¼Œé›†æˆ MinIOã€é˜¿é‡Œäº‘ã€è…¾è®¯äº‘ã€ä¸ƒç‰›äº‘等云存储æœåŠ¡ +* é›†æˆæŠ¥è¡¨è®¾è®¡å™¨ã€å¤§å±è®¾è®¡å™¨ï¼Œé€šè¿‡æ‹–拽å³å¯ç”Ÿæˆé…·ç‚«çš„æŠ¥è¡¨ä¸Žå¤§å± + +## 内置功能 + +系统内置多ç§å¤šç§ä¸šåŠ¡åŠŸèƒ½ï¼Œå¯ä»¥ç”¨äºŽå¿«é€Ÿä½ çš„业务系统: + +![功能分层](/.image/common/agt-cloud-biz.png) + +* 通用模å—(必选):系统功能ã€åŸºç¡€è®¾æ–½ +* 通用模å—(å¯é€‰ï¼‰ï¼šå·¥ä½œæµç¨‹ã€æ”¯ä»˜ç³»ç»Ÿã€æ•°æ®æŠ¥è¡¨ã€ä¼šå‘˜ä¸­å¿ƒ +* 业务系统(按需):ERP 系统ã€CRM 系统ã€å•†åŸŽç³»ç»Ÿã€å¾®ä¿¡å…¬ä¼—å·ã€AI 大模型 + +### 系统功能 + +| 功能 | æè¿° | +|------|-----------------------| +| ç”¨æˆ·ç®¡ç† | 用户是系统æ“作者,该功能主è¦å®Œæˆç³»ç»Ÿç”¨æˆ·é…ç½® | +| 在线用户 | 当å‰ç³»ç»Ÿä¸­æ´»è·ƒç”¨æˆ·çжæ€ç›‘æŽ§ï¼Œæ”¯æŒæ‰‹åŠ¨è¸¢ä¸‹çº¿ | +| è§’è‰²ç®¡ç† | 角色èœå•æƒé™åˆ†é…ã€è®¾ç½®è§’色按机构进行数æ®èŒƒå›´æƒé™åˆ’分 | +| èœå•ç®¡ç† | é…置系统èœå•ã€æ“作æƒé™ã€æŒ‰é’®æƒé™æ ‡è¯†ç­‰ï¼Œæœ¬åœ°ç¼“å­˜æä¾›æ€§èƒ½ | +| éƒ¨é—¨ç®¡ç† | é…置系统组织机构(公å¸ã€éƒ¨é—¨ã€å°ç»„ï¼‰ï¼Œæ ‘ç»“æž„å±•çŽ°æ”¯æŒæ•°æ®æƒé™ | +| å²—ä½ç®¡ç† | é…置系统用户所属担任èŒåŠ¡ | +| ç§Ÿæˆ·ç®¡ç† | é…ç½®ç³»ç»Ÿç§Ÿæˆ·ï¼Œæ”¯æŒ SaaS 场景下的多租户功能 | +| ç§Ÿæˆ·å¥—é¤ | é…置租户套é¤ï¼Œè‡ªå®šæ¯ä¸ªç§Ÿæˆ·çš„èœå•ã€æ“ä½œã€æŒ‰é’®çš„æƒé™ | +| å­—å…¸ç®¡ç† | 对系统中ç»å¸¸ä½¿ç”¨çš„一些较为固定的数æ®è¿›è¡Œç»´æŠ¤ | +| çŸ­ä¿¡ç®¡ç† | 短信渠é“ã€çŸ­æ¯æ¨¡æ¿ã€çŸ­ä¿¡æ—¥å¿—,对接阿里云ã€è…¾è®¯äº‘等主æµçŸ­ä¿¡å¹³å° | +| é‚®ä»¶ç®¡ç† | 邮箱账å·ã€é‚®ä»¶æ¨¡ç‰ˆã€é‚®ä»¶å‘逿—¥å¿—ï¼Œæ”¯æŒæ‰€æœ‰é‚®ä»¶å¹³å° | +| 站内信 | 系统内的消æ¯é€šçŸ¥ï¼Œæä¾›ç«™å†…信模版ã€ç«™å†…ä¿¡æ¶ˆæ¯ | +| æ“作日志 | 系统正常æ“ä½œæ—¥å¿—è®°å½•å’ŒæŸ¥è¯¢ï¼Œé›†æˆ Swagger ç”Ÿæˆæ—¥å¿—内容 | +| 登录日志 | 系统登录日志记录查询,包å«ç™»å½•异常 | +| 通知公告 | 系统通知公告信æ¯å‘布维护 | +| æ•æ„Ÿè¯ | é…ç½®ç³»ç»Ÿæ•æ„Ÿè¯ï¼Œæ”¯æŒæ ‡ç­¾åˆ†ç»„ | +| åº”ç”¨ç®¡ç† | ç®¡ç† SSO å•点登录的应用,支æŒå¤šç§ OAuth2 æŽˆæƒæ–¹å¼ | +| åœ°åŒºç®¡ç† | 展示çœä»½ã€åŸŽå¸‚ã€åŒºé•‡ç­‰åŸŽå¸‚ä¿¡æ¯ï¼Œæ”¯æŒ IP 对应城市 | + +![功能图](/.image/common/system-feature.png) + + +### 基础设施 + +| 功能 | æè¿° | +|-----|----------------------------------------------| +| 代ç ç”Ÿæˆ | å‰åŽç«¯ä»£ç çš„生æˆï¼ˆJavaã€Vueã€SQLã€å•å…ƒæµ‹è¯•ï¼‰ï¼Œæ”¯æŒ CRUD 下载 | +| ç³»ç»ŸæŽ¥å£ | 基于 Swagger 自动生æˆç›¸å…³çš„ RESTful API æŽ¥å£æ–‡æ¡£ | +| æ•°æ®åº“文档 | 基于 Screw è‡ªåŠ¨ç”Ÿæˆæ•°æ®åº“文档,支æŒå¯¼å‡º Wordã€HTMLã€MD æ ¼å¼ | +| è¡¨å•æž„建 | 拖动表å•元素生æˆç›¸åº”çš„ HTML 代ç ï¼Œæ”¯æŒå¯¼å‡º JSONã€Vue 文件 | +| é…ç½®ç®¡ç† | 对系统动æ€é…ç½®å¸¸ç”¨å‚æ•°ï¼Œæ”¯æŒ SpringBoot 加载 | +| 定时任务 | 在线(添加ã€ä¿®æ”¹ã€åˆ é™¤)ä»»åŠ¡è°ƒåº¦åŒ…å«æ‰§è¡Œç»“果日志 | +| 文件æœåŠ¡ | 支æŒå°†æ–‡ä»¶å­˜å‚¨åˆ° S3(MinIOã€é˜¿é‡Œäº‘ã€è…¾è®¯äº‘ã€ä¸ƒç‰›äº‘ï¼‰ã€æœ¬åœ°ã€FTPã€æ•°æ®åº“ç­‰ | +| WebSocket | æä¾› WebSocket 接入示例,支æŒä¸€å¯¹ä¸€ã€ä¸€å¯¹å¤šå‘逿–¹å¼ | +| API 日志 | 包括 RESTful API 访问日志ã€å¼‚常日志两部分,方便排查 API 相关的问题 | +| MySQL 监控 | 监视当å‰ç³»ç»Ÿæ•°æ®åº“连接池状æ€ï¼Œå¯è¿›è¡Œåˆ†æžSQL找出系统性能瓶颈 | +| Redis 监控 | 监控 Redis æ•°æ®åº“的使用情况,使用的 Redis Key ç®¡ç† | +| 消æ¯é˜Ÿåˆ— | 基于 Redis 实现消æ¯é˜Ÿåˆ—,Stream æä¾›é›†ç¾¤æ¶ˆè´¹ï¼ŒPub/Sub æä¾›å¹¿æ’­æ¶ˆè´¹ | +| Java 监控 | 基于 Spring Boot Admin 实现 Java 应用的监控 | +| 链路追踪 | 接入 SkyWalking 组件,实现链路追踪 | +| 日志中心 | 接入 SkyWalking 组件,实现日志中心 | +| æœåŠ¡ä¿éšœ | 基于 Redis 实现分布å¼é”ã€å¹‚ç­‰ã€é™æµåŠŸèƒ½ï¼Œæ»¡è¶³é«˜å¹¶å‘场景 | +| 日志æœåŠ¡ | è½»é‡çº§æ—¥å¿—中心,查看远程æœåŠ¡å™¨çš„æ—¥å¿— | +| å•元测试 | 基于 JUnit + Mockito 实现å•元测试,ä¿è¯åŠŸèƒ½çš„æ­£ç¡®æ€§ã€ä»£ç çš„è´¨é‡ç­‰ | + +![功能图](/.image/common/infra-feature.png) + +## 技术栈 + +### å¾®æœåŠ¡ + +| 项目 | 说明 | +|-----------------------|--------------------| +| `agt-dependencies` | Maven ä¾èµ–ç‰ˆæœ¬ç®¡ç† | +| `agt-framework` | Java 框架拓展 | +| `agt-server` | 管ç†åŽå° + 用户 APP çš„æœåŠ¡ç«¯ | +| `agt-module-system` | 系统功能的 Module æ¨¡å— | +| `agt-module-member` | 会员中心的 Module æ¨¡å— | +| `agt-module-infra` | 基础设施的 Module æ¨¡å— | +| `agt-module-bpm` | 工作æµç¨‹çš„ Module æ¨¡å— | +| `agt-module-pay` | 支付系统的 Module æ¨¡å— | +| `agt-module-mall` | 商城系统的 Module æ¨¡å— | +| `agt-module-erp` | ERP 系统的 Module æ¨¡å— | +| `agt-module-crm` | CRM 系统的 Module æ¨¡å— | +| `agt-module-ai` | AI 大模型的 Module æ¨¡å— | +| `agt-module-mp` | 微信公众å·çš„ Module æ¨¡å— | +| `agt-module-report` | å¤§å±æŠ¥è¡¨ Module æ¨¡å— | + +### 框架 + +| 框架 | 说明 | 版本 | +|---------------------------------------------------------------------------------------------|------------------|------------| +| [Spring Cloud Alibaba](https://github.com/alibaba/spring-cloud-alibaba) | å¾®æœåŠ¡æ¡†æž¶ | 2023.0.1 | +| [Nacos](https://github.com/alibaba/nacos) | é…置中心 & 注册中心 | 2.3.2 | +| [RocketMQ](https://github.com/apache/rocketmq) | 消æ¯é˜Ÿåˆ— | 5.2.0 | +| [Sentinel](https://github.com/alibaba/sentinel) | æœåŠ¡ä¿éšœ | 1.8.6 | +| [XXL Job](https://github.com/xuxueli/xxl-job) | 定时任务 | 2.4.0 | +| [Spring Cloud Gateway](https://github.com/spring-cloud/spring-cloud-gateway) | æœåŠ¡ç½‘å…³ | 4.1.0 | +| [Seata](https://github.com/seata/seata) | 分布å¼äº‹åŠ¡ | 1.6.1 | +| [MySQL](https://www.mysql.com/cn/) | æ•°æ®åº“æœåС噍 | 5.7 / 8.0+ | +| [Druid](https://github.com/alibaba/druid) | JDBC 连接池ã€ç›‘控组件 | 1.2.23 | +| [MyBatis Plus](https://mp.baomidou.com/) | MyBatis 增强工具包 | 3.5.7 | +| [Dynamic Datasource](https://dynamic-datasource.com/) | åŠ¨æ€æ•°æ®æº | 4.3.1 | +| [Redis](https://redis.io/) | key-value æ•°æ®åº“ | 5.0 / 6.0 | +| [Redisson](https://github.com/redisson/redisson) | Redis 客户端 | 3.32.0 | +| [Spring MVC](https://github.com/spring-projects/spring-framework/tree/master/spring-webmvc) | MVC 框架 | 6.1.10 | +| [Spring Security](https://github.com/spring-projects/spring-security) | Spring 安全框架 | 6.3.1 | +| [Hibernate Validator](https://github.com/hibernate/hibernate-validator) | 傿•°æ ¡éªŒç»„ä»¶ | 8.0.1 | +| [Flowable](https://github.com/flowable/flowable-engine) | 工作æµå¼•擎 | 7.0.0 | +| [Knife4j](https://gitee.com/xiaoym/knife4j) | Swagger 增强 UI 实现 | 4.5.0 | +| [SkyWalking](https://skywalking.apache.org/) | 分布å¼åº”用追踪系统 | 9.0.0 | +| [Spring Boot Admin](https://github.com/codecentric/spring-boot-admin) | Spring Boot ç›‘æŽ§å¹³å° | 3.6.1 | +| [Jackson](https://github.com/FasterXML/jackson) | JSON 工具库 | 2.17.1 | +| [MapStruct](https://mapstruct.org/) | Java Bean è½¬æ¢ | 1.6.3 | +| [Lombok](https://projectlombok.org/) | 消除冗长的 Java ä»£ç  | 1.18.34 | +| [JUnit](https://junit.org/junit5/) | Java å•元测试框架 | 5.10.1 | +| [Mockito](https://github.com/mockito/mockito) | Java Mock 框架 | 5.7.0 | + +## 快速å¯åЍ + +### 1. 基础设施(必选) + +#### 1.1 安装JDK + +安装JDK 17/21ï¼Œæœ€ä½Žç‰ˆæœ¬è¦æ±‚JDK 17 + +#### 1.2 åˆå§‹åŒ–æ•°æ®åº“ + +项目使用 MySQL 存储数æ®ï¼Œæ‰€ä»¥éœ€è¦å¯åŠ¨ä¸€ä¸ª MySQL æœåŠ¡ï¼Œå¦‚æžœæ˜¯ PostgreSQLã€Oracleã€SQL Serverã€DMã€å¤§é‡‘ 等其它数æ®åº“,也是å¯ä»¥çš„。 + +â‘  创建一个å字为 agt-cloud æ•°æ®åº“,ã€åªè¦ã€‘ 执行对应数æ®åº“类型的 sql 目录下的 agt-cloud.sql SQL 文件,进行åˆå§‹åŒ–。 + +â‘¡ 默认é…置下,MySQL 需è¦å¯åŠ¨åœ¨ 3306 端å£ï¼Œå¹¶ä¸”è´¦å·æ˜¯ rootï¼Œå¯†ç æ˜¯ 123456。如果ä¸ä¸€è‡´ï¼Œéœ€è¦ä¿®æ”¹ application-local.yaml é…置文件。 + +#### 1.3 åˆå§‹åŒ– Redis + +项目使用 Redis 缓存数æ®ï¼Œæ‰€ä»¥éœ€è¦å¯åŠ¨ä¸€ä¸ª Redis æœåŠ¡ã€‚ + +默认é…置下,Redis å¯åŠ¨åœ¨ 6379 端å£ï¼Œä¸è®¾ç½®è´¦å·å¯†ç ã€‚如果ä¸ä¸€è‡´ï¼Œéœ€è¦ä¿®æ”¹ application-local.yaml é…置文件。 + +#### 1.4 åˆå§‹åŒ– Nacos(å¾®æœåŠ¡å¿…é€‰) + +项目使用 Nacos 作为注册中心和é…置中心,所以需è¦å¯åŠ¨ä¸€ä¸ª Nacos æœåŠ¡ã€‚ + +å¯åŠ¨å®Œæˆä¹‹åŽï¼Œéœ€è¦åˆ›å»º dev 命å空间。 + +> 注æ„ï¼æ–°å»ºå‘½å空间时,它的“命å空间IDâ€ã€â€œå‘½å空间åâ€éƒ½è¦æ˜¯ dev + +### 2. 基础设施(å¯é€‰ï¼‰ + +* RocketMQ(消æ¯é˜Ÿåˆ—) +* XXL-Job(分布å¼å®šæ—¶ä»»åŠ¡ï¼‰ +* Seata(分布å¼äº‹åŠ¡ï¼‰ +* Sentinelï¼ˆåˆ†å¸ƒå¼æœåŠ¡ä¿éšœï¼‰ +* Elasticsearch(æœç´¢å¼•擎) + +### 3. å¯åЍåŽç«¯é¡¹ç›® + +#### 3.1 编译项目 + +直接执行 mvn clean install package '-Dmaven.test.skip=true' 命令 + +或者使用 IDEA 自带的 Maven æ’件,进行项目的编译。 + +#### 3.2 å¾®æœåŠ¡å¯åЍ + +便¬¡å¯åЍå„个微æœåŠ¡ + +##### 3.2.1 å¯åЍ gateway æœåŠ¡ + +执行 AgtGatewayApplication 类,进行å¯åŠ¨ã€‚ + +##### 3.2.2 å¯åЍ system æœåŠ¡ + +执行 AgtSystemApplication 类,进行å¯åŠ¨ã€‚ + +##### 3.2.3 å¯åЍ infra æœåŠ¡ + +执行 AgtInfraApplication 类,进行å¯åŠ¨ã€‚ + +#### 3.3 å•体å¯åŠ¨æ¨¡å¼ + +在 agt-cloud å¾®æœåŠ¡é¡¹ç›®çš„æ ¹ç›®å½•ï¼Œæœ‰ä¸€ä¸ª agt-server æ¨¡å— + +没错,它就是 agt-cloud å¾®æœåŠ¡é¡¹ç›®çš„ã€å•体å¯åŠ¨æ¨¡å¼ã€‘ï¼ä¸»è¦è§£å†³ä¸‰ä¸ªå¥½å¤„: + +* åŽæ‚”è¯ï¼šé¡¹ç›®ä¸€å¼€å§‹é‡‡ç”¨äº† agt-cloud å¾®æœåŠ¡æž¶æž„ï¼Œç»“æžœåŽç»­ä¸Šçº¿å‘现资æºä¸è¶³ï¼Œæˆ–者实际业务é‡ä¸å¤§ï¼Œåˆ™å¯ä»¥æ”¹æˆä½¿ç”¨ agt-server å•体å¯åŠ¨æ¨¡å¼éƒ¨ç½²ã€‚ +* å¼€å‘æé€Ÿï¼šæœ¬åœ°å¯åЍ agt-cloud 多个微æœåŠ¡å¾ˆéº»çƒ¦ï¼Œè€Œ agt-server 则å¯ä»¥ç›´æŽ¥å¯åŠ¨ä¸€ä¸ª agt-server 项目,å³å¯å¯åŠ¨æ‰€æœ‰çš„å¾®æœåŠ¡ï¼Œæ–¹ä¾¿å¼€å‘。 +* æž¶æž„å‡çº§ï¼šæŠ€æœ¯é€‰åž‹æ—¶ï¼Œä¸ç¡®å®šä½¿ç”¨å¾®æœåŠ¡æž¶æž„è¿˜æ˜¯å•体架构,则å¯ä»¥ç›´æŽ¥ä½¿ç”¨ agt-cloud 项目,最终按需部署微æœåŠ¡è¿˜æ˜¯å•体。 + +agt-server çš„å¯åЍéžå¸¸ç®€å•,åªéœ€è¦è¿è¡Œ AgtServerApplication ç±»å³å¯ï¼é»˜è®¤åªå¼€å¯ system å’Œ infra 模å—。其它模å—的开å¯ï¼Œå‚考对应模å—的“功能开å¯â€å³å¯ï¼ \ No newline at end of file diff --git a/agt-dependencies/pom.xml b/agt-dependencies/pom.xml new file mode 100644 index 0000000..e524da0 --- /dev/null +++ b/agt-dependencies/pom.xml @@ -0,0 +1,722 @@ + + + 4.0.0 + + org.agt + agt-dependencies + ${revision} + pom + + ${project.artifactId} + 基础 bom æ–‡ä»¶ï¼Œç®¡ç†æ•´ä¸ªé¡¹ç›®çš„ä¾èµ–版本 + https://github.com/agt/agt-cloud + + + 2.5.0-SNAPSHOT + 1.6.0 + + 3.4.5 + 2024.0.1 + 2023.0.3.2 + + 2.8.3 + 4.6.0 + + 1.2.24 + 3.5.19 + 3.5.10.1 + 4.3.1 + 1.4.13 + 3.0.6 + 3.41.0 + 8.1.3.140 + 8.6.0 + 5.1.0 + 3.3.3 + + 2.3.2 + + + + 2.4.0 + + 2.2.7 + + 9.0.0 + 3.4.5 + 0.33.0 + + 8.0.2.RELEASE + 1.1.4 + 5.2.0 + + 7.0.1 + + 1.4.0 + 1.18.1 + 1.18.36 + 1.6.3 + 5.8.35 + 6.0.0-M19 + 4.0.3 + 2.4.1 + 1.2.83 + 33.4.8-jre + 2.14.5 + 3.11.1 + 0.1.55 + 3.1.0 + 2.7.0 + 3.0.6 + 0.10.2 + 4.1.116.Final + 1.2.5 + 0.9.0 + 4.5.13 + + 2.17.0 + 1.27.1 + 2.30.14 + 1.16.7 + 1.4.0 + 1.9.4 + 4.7.5.B + + + + + + + io.netty + netty-bom + ${netty.version} + pom + import + + + org.springframework.boot + spring-boot-dependencies + ${spring.boot.version} + pom + import + + + org.springframework.cloud + spring-cloud-dependencies + ${spring.cloud.version} + pom + import + + + com.alibaba.cloud + spring-cloud-alibaba-dependencies + ${spring.cloud.alibaba.version} + pom + import + + + + + io.github.mouzt + bizlog-sdk + ${bizlog-sdk.version} + + + org.springframework.boot + spring-boot-starter + + + + + org.agt + agt-spring-boot-starter-biz-tenant + ${revision} + + + org.agt + agt-spring-boot-starter-biz-data-permission + ${revision} + + + org.agt + agt-spring-boot-starter-biz-ip + ${revision} + + + + + + org.springframework.boot + spring-boot-configuration-processor + ${spring.boot.version} + + + + org.agt + agt-spring-boot-starter-env + ${revision} + + + + + org.agt + agt-spring-boot-starter-web + ${revision} + + + + org.agt + agt-spring-boot-starter-security + ${revision} + + + + org.agt + agt-spring-boot-starter-websocket + ${revision} + + + + com.github.xingfudeshi + knife4j-openapi3-jakarta-spring-boot-starter + ${knife4j.version} + + + org.springdoc + springdoc-openapi-starter-webmvc-api + ${springdoc.version} + + + com.github.xiaoymin + knife4j-gateway-spring-boot-starter + 4.5.0 + + + + + org.agt + agt-spring-boot-starter-mybatis + ${revision} + + + + com.alibaba + druid-spring-boot-3-starter + ${druid.version} + + + + org.mybatis + mybatis + ${mybatis.version} + + + com.baomidou + mybatis-plus-spring-boot3-starter + ${mybatis-plus.version} + + + com.baomidou + mybatis-plus-jsqlparser + ${mybatis-plus.version} + + + com.baomidou + mybatis-plus-generator + ${mybatis-plus.version} + + + com.baomidou + dynamic-datasource-spring-boot3-starter + ${dynamic-datasource.version} + + + com.github.yulichang + mybatis-plus-join-boot-starter + ${mybatis-plus-join.version} + + + + com.fhs-opensource + easy-trans-spring-boot-starter + ${easy-trans.version} + + + org.springframework + spring-context + + + org.springframework.cloud + spring-cloud-commons + + + + + com.fhs-opensource + easy-trans-mybatis-plus-extend + ${easy-trans.version} + + + com.fhs-opensource + easy-trans-anno + ${easy-trans.version} + + + + org.agt + agt-spring-boot-starter-redis + ${revision} + + + + org.redisson + redisson-spring-boot-starter + ${redisson.version} + + + + com.dameng + DmJdbcDriver18 + ${dm8.jdbc.version} + + + + org.opengauss + opengauss-jdbc + ${opengauss.jdbc.version} + + + + cn.com.kingbase + kingbase8 + ${kingbase.jdbc.version} + + + + com.taosdata.jdbc + taos-jdbcdriver + ${taos.version} + + + + + org.agt + agt-spring-boot-starter-rpc + ${revision} + + + + + + + + + com.xuxueli + xxl-job-core + ${xxl-job.version} + + + org.agt + agt-spring-boot-starter-job + ${revision} + + + + + org.agt + agt-spring-boot-starter-mq + ${revision} + + + + org.apache.rocketmq + rocketmq-spring-boot-starter + ${rocketmq-spring.version} + + + + + org.agt + agt-spring-boot-starter-protection + ${revision} + + + + com.baomidou + lock4j-redisson-spring-boot-starter + ${lock4j.version} + + + redisson-spring-boot-starter + org.redisson + + + + + + + org.agt + agt-spring-boot-starter-monitor + ${revision} + + + + org.apache.skywalking + apm-toolkit-trace + ${skywalking.version} + + + org.apache.skywalking + apm-toolkit-logback-1.x + ${skywalking.version} + + + org.apache.skywalking + apm-toolkit-opentracing + ${skywalking.version} + + + + + + + + + + + + + io.opentracing + opentracing-api + ${opentracing.version} + + + io.opentracing + opentracing-util + ${opentracing.version} + + + io.opentracing + opentracing-noop + ${opentracing.version} + + + + de.codecentric + spring-boot-admin-starter-server + ${spring-boot-admin.version} + + + de.codecentric + spring-boot-admin-starter-client + ${spring-boot-admin.version} + + + + + org.agt + agt-spring-boot-starter-test + ${revision} + test + + + + org.mockito + mockito-inline + ${mockito-inline.version} + + + + org.springframework.boot + spring-boot-starter-test + ${spring.boot.version} + + + asm + org.ow2.asm + + + org.mockito + mockito-core + + + + + + com.github.fppt + jedis-mock + ${jedis-mock.version} + + + + uk.co.jemos.podam + podam + ${podam.version} + + + + + org.flowable + flowable-spring-boot-starter-process + ${flowable.version} + + + org.flowable + flowable-spring-boot-starter-actuator + ${flowable.version} + + + + + + org.agt + agt-common + ${revision} + + + + org.agt + agt-spring-boot-starter-excel + ${revision} + + + + org.projectlombok + lombok + ${lombok.version} + + + + org.mapstruct + mapstruct + ${mapstruct.version} + + + org.mapstruct + mapstruct-jdk8 + ${mapstruct.version} + + + org.mapstruct + mapstruct-processor + ${mapstruct.version} + + + + cn.hutool + hutool-all + ${hutool-5.version} + + + org.dromara.hutool + hutool-extra + ${hutool-6.version} + + + + com.alibaba + easyexcel + ${easyexcel.version} + + + + commons-io + commons-io + ${commons-io.version} + + + org.apache.commons + commons-compress + ${commons-compress.version} + + + + org.apache.tika + tika-core + ${tika-core.version} + + + + org.apache.velocity + velocity-engine-core + ${velocity.version} + + + + com.alibaba + fastjson + ${fastjson.version} + + + + com.google.guava + guava + ${guava.version} + + + + com.alibaba + transmittable-thread-local + ${transmittable-thread-local.version} + + + + commons-net + commons-net + ${commons-net.version} + + + com.jcraft + jsch + ${jsch.version} + + + + com.anji-plus + captcha-spring-boot-starter + ${anji-plus-captcha.version} + + + + org.lionsoul + ip2region + ${ip2region.version} + + + + org.jsoup + jsoup + ${jsoup.version} + + + + org.reflections + reflections + ${reflections.version} + + + + + software.amazon.awssdk + s3 + ${awssdk.version} + + + + com.github.binarywang + weixin-java-pay + ${weixin-java.version} + + + com.github.binarywang + wx-java-mp-spring-boot-starter + ${weixin-java.version} + + + com.github.binarywang + wx-java-miniapp-spring-boot-starter + ${weixin-java.version} + + + + me.zhyd.oauth + JustAuth + ${justauth.version} + + + com.xkcoding.justauth + justauth-spring-boot-starter + ${justauth-starter.version} + + + + + org.jeecgframework.jimureport + jimureport-spring-boot3-starter-fastjson2 + ${jimureport.version} + + + org.jeecgframework.jimureport + jimubi-spring-boot3-starter + ${jimureport.version} + + + com.github.jsqlparser + jsqlparser + + + + + + + org.pf4j + pf4j-spring + ${pf4j-spring.version} + + + org.slf4j + slf4j-log4j12 + + + + + + + io.vertx + vertx-core + ${vertx.version} + + + io.vertx + vertx-web + ${vertx.version} + + + io.vertx + vertx-mqtt + ${vertx.version} + + + + + org.eclipse.paho + org.eclipse.paho.client.mqttv3 + ${mqtt.version} + + + + + + + + + org.codehaus.mojo + flatten-maven-plugin + ${flatten-maven-plugin.version} + + bom + true + + + + + flatten + + flatten + process-resources + + + + clean + + flatten.clean + clean + + + + + + + diff --git a/agt-framework/agt-common/pom.xml b/agt-framework/agt-common/pom.xml new file mode 100644 index 0000000..9579567 --- /dev/null +++ b/agt-framework/agt-common/pom.xml @@ -0,0 +1,149 @@ + + + + org.agt + agt-framework + ${revision} + + 4.0.0 + agt-common + jar + + ${project.artifactId} + 定义基础 pojo ç±»ã€æžšä¸¾ã€å·¥å…·ç±»ç­‰ç­‰ + https://github.com/agt/agt-cloud + + + + + org.springframework + spring-core + provided + + + org.springframework + spring-expression + provided + + + org.springframework + spring-aop + provided + + + org.aspectj + aspectjweaver + provided + + + + + org.springframework.boot + spring-boot-configuration-processor + true + + + + + org.springframework + spring-web + provided + + + + jakarta.servlet + jakarta.servlet-api + provided + + + + org.springdoc + springdoc-openapi-starter-webmvc-api + provided + + + + + org.apache.skywalking + apm-toolkit-trace + + + + + org.projectlombok + lombok + + + + org.mapstruct + mapstruct + + + org.mapstruct + mapstruct-jdk8 + + + org.mapstruct + mapstruct-processor + + + + com.google.guava + guava + provided + + + + com.fasterxml.jackson.core + jackson-databind + provided + + + com.fasterxml.jackson.core + jackson-core + provided + + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + provided + + + + org.slf4j + slf4j-api + provided + + + + jakarta.validation + jakarta.validation-api + provided + + + + cn.hutool + hutool-all + + + + com.alibaba + transmittable-thread-local + + + + com.fhs-opensource + easy-trans-anno + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + diff --git a/agt-framework/agt-common/src/main/java/com/fhs/trans/service/AutoTransable.java b/agt-framework/agt-common/src/main/java/com/fhs/trans/service/AutoTransable.java new file mode 100644 index 0000000..2abd457 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/com/fhs/trans/service/AutoTransable.java @@ -0,0 +1,59 @@ +package com.fhs.trans.service; + +import com.fhs.core.trans.vo.VO; + +import java.util.ArrayList; +import java.util.List; + +/** + * åªæœ‰å®žçŽ°äº†è¿™ä¸ªæŽ¥å£çš„æ‰èƒ½è‡ªåŠ¨ç¿»è¯‘ + * + * 为什么è¦èµ‹å€¼ç²˜è´´åˆ° agt-common 包下? + * 因为 AutoTransable 属于 easy-trans-service 下,无法方便的在 agt-module-xxx-api 模å—下使用 + * + * @author jackwang + * @since 2020-05-19 10:26:15 + */ +public interface AutoTransable { + + /** + * æ ¹æ® ids 查询数æ®åˆ—表 + * + * 改方法已过期啦,请使用 selectByIds + * + * @param ids ç¼–å·æ•°ç»„ + * @return æ•°æ®åˆ—表 + */ + @Deprecated + default List findByIds(List ids){ + return new ArrayList<>(); + } + + /** + * æ ¹æ® ids 查询 + * + * @param ids ç¼–å·æ•°ç»„ + * @return æ•°æ®åˆ—表 + */ + default List selectByIds(List ids){ + return this.findByIds(ids); + } + + /** + * èŽ·å– db ä¸­æ‰€æœ‰çš„æ•°æ® + * + * @return db ä¸­æ‰€æœ‰çš„æ•°æ® + */ + default List select(){ + return new ArrayList<>(); + } + + /** + * æ ¹æ® id èŽ·å– vo + * + * @param primaryValue id + * @return vo + */ + V selectById(Object primaryValue); + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/core/ArrayValuable.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/core/ArrayValuable.java new file mode 100644 index 0000000..b23c1a1 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/core/ArrayValuable.java @@ -0,0 +1,15 @@ +package org.agt.framework.common.core; + +/** + * å¯ç”Ÿæˆ T æ•°ç»„çš„æŽ¥å£ + * + * @author HUIHUI + */ +public interface ArrayValuable { + + /** + * @return 数组 + */ + T[] array(); + +} \ No newline at end of file diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/core/KeyValue.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/core/KeyValue.java new file mode 100644 index 0000000..5bbc274 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/core/KeyValue.java @@ -0,0 +1,22 @@ +package org.agt.framework.common.core; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * Key Value 的键值对 + * + * @author åƒé€šæºç  + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class KeyValue implements Serializable { + + private K key; + private V value; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/CommonStatusEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/CommonStatusEnum.java new file mode 100644 index 0000000..296dcd2 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/CommonStatusEnum.java @@ -0,0 +1,46 @@ +package org.agt.framework.common.enums; + +import cn.hutool.core.util.ObjUtil; +import org.agt.framework.common.core.ArrayValuable; +import lombok.AllArgsConstructor; +import lombok.Getter; + +import java.util.Arrays; + +/** + * é€šç”¨çŠ¶æ€æžšä¸¾ + * + * @author åƒé€šæºç  + */ +@Getter +@AllArgsConstructor +public enum CommonStatusEnum implements ArrayValuable { + + ENABLE(0, "å¼€å¯"), + DISABLE(1, "关闭"); + + public static final Integer[] ARRAYS = Arrays.stream(values()).map(CommonStatusEnum::getStatus).toArray(Integer[]::new); + + /** + * 状æ€å€¼ + */ + private final Integer status; + /** + * 状æ€å + */ + private final String name; + + @Override + public Integer[] array() { + return ARRAYS; + } + + public static boolean isEnable(Integer status) { + return ObjUtil.equal(ENABLE.status, status); + } + + public static boolean isDisable(Integer status) { + return ObjUtil.equal(DISABLE.status, status); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DateIntervalEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DateIntervalEnum.java new file mode 100644 index 0000000..ab1961c --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DateIntervalEnum.java @@ -0,0 +1,46 @@ +package org.agt.framework.common.enums; + +import cn.hutool.core.util.ArrayUtil; +import org.agt.framework.common.core.ArrayValuable; +import lombok.AllArgsConstructor; +import lombok.Getter; + +import java.util.Arrays; + +/** + * 时间间隔的枚举 + * + * @author dhb52 + */ +@Getter +@AllArgsConstructor +public enum DateIntervalEnum implements ArrayValuable { + + DAY(1, "天"), + WEEK(2, "周"), + MONTH(3, "月"), + QUARTER(4, "季度"), + YEAR(5, "å¹´") + ; + + public static final Integer[] ARRAYS = Arrays.stream(values()).map(DateIntervalEnum::getInterval).toArray(Integer[]::new); + + /** + * 类型 + */ + private final Integer interval; + /** + * åç§° + */ + private final String name; + + @Override + public Integer[] array() { + return ARRAYS; + } + + public static DateIntervalEnum valueOf(Integer interval) { + return ArrayUtil.firstMatch(item -> item.getInterval().equals(interval), DateIntervalEnum.values()); + } + +} \ No newline at end of file diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DocumentEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DocumentEnum.java new file mode 100644 index 0000000..fcc5e3a --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/DocumentEnum.java @@ -0,0 +1,21 @@ +package org.agt.framework.common.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * æ–‡æ¡£åœ°å€ + * + * @author åƒé€šæºç  + */ +@Getter +@AllArgsConstructor +public enum DocumentEnum { + + REDIS_INSTALL("https://gitee.com/zhijiantianya/agt-cloud/issues/I4VCSJ", "Redis 安装文档"), + TENANT("https://doc.iocoder.cn", "SaaS 多租户文档"); + + private final String url; + private final String memo; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/RpcConstants.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/RpcConstants.java new file mode 100644 index 0000000..5017aaf --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/RpcConstants.java @@ -0,0 +1,17 @@ +package org.agt.framework.common.enums; + +/** + * RPC 相关的枚举 + * + * 虽然放在 agt-spring-boot-starter-rpc 会相对åˆé€‚,但是æ¯ä¸ª API 模å—需è¦ä½¿ç”¨åˆ°ï¼Œæ‰€ä»¥æš‚æ—¶åªå¥½æ”¾åœ¨æ­¤å¤„ + * + * @author åƒé€šæºç  + */ +public class RpcConstants { + + /** + * RPC API çš„å‰ç¼€ + */ + public static final String RPC_API_PREFIX = "/rpc-api"; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/TerminalEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/TerminalEnum.java new file mode 100644 index 0000000..ff8ce49 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/TerminalEnum.java @@ -0,0 +1,40 @@ +package org.agt.framework.common.enums; + +import org.agt.framework.common.core.ArrayValuable; +import lombok.Getter; +import lombok.RequiredArgsConstructor; + +import java.util.Arrays; + +/** + * 终端的枚举 + * + * @author åƒé€šæºç  + */ +@RequiredArgsConstructor +@Getter +public enum TerminalEnum implements ArrayValuable { + + UNKNOWN(0, "未知"), // 目的:在无法解æžåˆ° terminal 时,使用它 + WECHAT_MINI_PROGRAM(10, "微信å°ç¨‹åº"), + WECHAT_WAP(11, "微信公众å·"), + H5(20, "H5 网页"), + APP(31, "手机 App"), + ; + + public static final Integer[] ARRAYS = Arrays.stream(values()).map(TerminalEnum::getTerminal).toArray(Integer[]::new); + + /** + * 终端 + */ + private final Integer terminal; + /** + * 终端å + */ + private final String name; + + @Override + public Integer[] array() { + return ARRAYS; + } +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/UserTypeEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/UserTypeEnum.java new file mode 100644 index 0000000..b8616b7 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/UserTypeEnum.java @@ -0,0 +1,39 @@ +package org.agt.framework.common.enums; + +import cn.hutool.core.util.ArrayUtil; +import org.agt.framework.common.core.ArrayValuable; +import lombok.AllArgsConstructor; +import lombok.Getter; + +import java.util.Arrays; + +/** + * 全局用户类型枚举 + */ +@AllArgsConstructor +@Getter +public enum UserTypeEnum implements ArrayValuable { + + MEMBER(1, "会员"), // é¢å‘ c 端,普通用户 + ADMIN(2, "管ç†å‘˜"); // é¢å‘ b 端,管ç†åŽå° + + public static final Integer[] ARRAYS = Arrays.stream(values()).map(UserTypeEnum::getValue).toArray(Integer[]::new); + + /** + * 类型 + */ + private final Integer value; + /** + * 类型å + */ + private final String name; + + public static UserTypeEnum valueOf(Integer value) { + return ArrayUtil.firstMatch(userType -> userType.getValue().equals(value), UserTypeEnum.values()); + } + + @Override + public Integer[] array() { + return ARRAYS; + } +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/WebFilterOrderEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/WebFilterOrderEnum.java new file mode 100644 index 0000000..2963412 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/enums/WebFilterOrderEnum.java @@ -0,0 +1,36 @@ +package org.agt.framework.common.enums; + +/** + * Web 过滤器顺åºçš„æžšä¸¾ç±»ï¼Œä¿è¯è¿‡æ»¤å™¨æŒ‰ç…§ç¬¦åˆæˆ‘们的预期 + * + * 考虑到æ¯ä¸ª starter 都需è¦ç”¨åˆ°è¯¥å·¥å…·ç±»ï¼Œæ‰€ä»¥æ”¾åˆ° common 模å—下的 enum 包下 + * + * @author åƒé€šæºç  + */ +public interface WebFilterOrderEnum { + + int CORS_FILTER = Integer.MIN_VALUE; + + int TRACE_FILTER = CORS_FILTER + 1; + + int ENV_TAG_FILTER = TRACE_FILTER + 1; + + int REQUEST_BODY_CACHE_FILTER = Integer.MIN_VALUE + 500; + + // OrderedRequestContextFilter 默认为 -105,用于国际化上下文等等 + + int TENANT_CONTEXT_FILTER = - 104; // 需è¦ä¿è¯åœ¨ ApiAccessLogFilter å‰é¢ + + int API_ACCESS_LOG_FILTER = -103; // 需è¦ä¿è¯åœ¨ RequestBodyCacheFilter åŽé¢ + + int XSS_FILTER = -102; // 需è¦ä¿è¯åœ¨ RequestBodyCacheFilter åŽé¢ + + // Spring Security Filter 默认为 -100,å¯è§ org.springframework.boot.autoconfigure.security.SecurityProperties é…置属性类 + + int TENANT_SECURITY_FILTER = -99; // 需è¦ä¿è¯åœ¨ Spring Security 过滤器åŽé¢ + + int FLOWABLE_FILTER = -98; // 需è¦ä¿è¯åœ¨ Spring Security 过滤åŽé¢ + + int DEMO_FILTER = Integer.MAX_VALUE; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ErrorCode.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ErrorCode.java new file mode 100644 index 0000000..b3fed04 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ErrorCode.java @@ -0,0 +1,32 @@ +package org.agt.framework.common.exception; + +import org.agt.framework.common.exception.enums.GlobalErrorCodeConstants; +import org.agt.framework.common.exception.enums.ServiceErrorCodeRange; +import lombok.Data; + +/** + * 错误ç å¯¹è±¡ + * + * 全局错误ç ï¼Œå ç”¨ [0, 999], å‚è§ {@link GlobalErrorCodeConstants} + * 业务异常错误ç ï¼Œå ç”¨ [1 000 000 000, +∞),å‚è§ {@link ServiceErrorCodeRange} + * + * TODO 错误ç è®¾è®¡æˆå¯¹è±¡çš„原因,为未æ¥çš„ i18 国际化åšå‡†å¤‡ + */ +@Data +public class ErrorCode { + + /** + * é”™è¯¯ç  + */ + private final Integer code; + /** + * 错误æç¤º + */ + private final String msg; + + public ErrorCode(Integer code, String message) { + this.code = code; + this.msg = message; + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServerException.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServerException.java new file mode 100644 index 0000000..7e01177 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServerException.java @@ -0,0 +1,60 @@ +package org.agt.framework.common.exception; + +import org.agt.framework.common.exception.enums.GlobalErrorCodeConstants; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * æœåС噍异叏 Exception + */ +@Data +@EqualsAndHashCode(callSuper = true) +public final class ServerException extends RuntimeException { + + /** + * å…¨å±€é”™è¯¯ç  + * + * @see GlobalErrorCodeConstants + */ + private Integer code; + /** + * 错误æç¤º + */ + private String message; + + /** + * 空构造方法,é¿å…ååºåˆ—化问题 + */ + public ServerException() { + } + + public ServerException(ErrorCode errorCode) { + this.code = errorCode.getCode(); + this.message = errorCode.getMsg(); + } + + public ServerException(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public ServerException setCode(Integer code) { + this.code = code; + return this; + } + + @Override + public String getMessage() { + return message; + } + + public ServerException setMessage(String message) { + this.message = message; + return this; + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServiceException.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServiceException.java new file mode 100644 index 0000000..edc8d24 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/ServiceException.java @@ -0,0 +1,60 @@ +package org.agt.framework.common.exception; + +import org.agt.framework.common.exception.enums.ServiceErrorCodeRange; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 业务逻辑异常 Exception + */ +@Data +@EqualsAndHashCode(callSuper = true) +public final class ServiceException extends RuntimeException { + + /** + * ä¸šåŠ¡é”™è¯¯ç  + * + * @see ServiceErrorCodeRange + */ + private Integer code; + /** + * 错误æç¤º + */ + private String message; + + /** + * 空构造方法,é¿å…ååºåˆ—化问题 + */ + public ServiceException() { + } + + public ServiceException(ErrorCode errorCode) { + this.code = errorCode.getCode(); + this.message = errorCode.getMsg(); + } + + public ServiceException(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public ServiceException setCode(Integer code) { + this.code = code; + return this; + } + + @Override + public String getMessage() { + return message; + } + + public ServiceException setMessage(String message) { + this.message = message; + return this; + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/GlobalErrorCodeConstants.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/GlobalErrorCodeConstants.java new file mode 100644 index 0000000..61002ec --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/GlobalErrorCodeConstants.java @@ -0,0 +1,41 @@ +package org.agt.framework.common.exception.enums; + +import org.agt.framework.common.exception.ErrorCode; + +/** + * å…¨å±€é”™è¯¯ç æžšä¸¾ + * 0-999 系统异常编ç ä¿ç•™ + * + * 一般情况下,使用 HTTP å“应状æ€ç  https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status + * 虽然说,HTTP å“应状æ€ç ä½œä¸ºä¸šåŠ¡ä½¿ç”¨è¡¨è¾¾èƒ½åŠ›å弱,但是使用在系统层é¢è¿˜æ˜¯éžå¸¸ä¸é”™çš„ + * 比较特殊的是,因为之å‰ä¸€ç›´ä½¿ç”¨ 0 作为æˆåŠŸï¼Œå°±ä¸ä½¿ç”¨ 200 啦。 + * + * @author åƒé€šæºç  + */ +public interface GlobalErrorCodeConstants { + + ErrorCode SUCCESS = new ErrorCode(0, "æˆåŠŸ"); + + // ========== 客户端错误段 ========== + + ErrorCode BAD_REQUEST = new ErrorCode(400, "è¯·æ±‚å‚æ•°ä¸æ­£ç¡®"); + ErrorCode UNAUTHORIZED = new ErrorCode(401, "è´¦å·æœªç™»å½•"); + ErrorCode FORBIDDEN = new ErrorCode(403, "没有该æ“作æƒé™"); + ErrorCode NOT_FOUND = new ErrorCode(404, "请求未找到"); + ErrorCode METHOD_NOT_ALLOWED = new ErrorCode(405, "è¯·æ±‚æ–¹æ³•ä¸æ­£ç¡®"); + ErrorCode LOCKED = new ErrorCode(423, "请求失败,请ç¨åŽé‡è¯•"); // å¹¶å‘请求,ä¸å…许 + ErrorCode TOO_MANY_REQUESTS = new ErrorCode(429, "请求过于频ç¹ï¼Œè¯·ç¨åŽé‡è¯•"); + + // ========== æœåŠ¡ç«¯é”™è¯¯æ®µ ========== + + ErrorCode INTERNAL_SERVER_ERROR = new ErrorCode(500, "系统异常"); + ErrorCode NOT_IMPLEMENTED = new ErrorCode(501, "功能未实现/未开å¯"); + ErrorCode ERROR_CONFIGURATION = new ErrorCode(502, "错误的é…置项"); + + // ========== 自定义错误段 ========== + ErrorCode REPEATED_REQUESTS = new ErrorCode(900, "é‡å¤è¯·æ±‚,请ç¨åŽé‡è¯•"); // é‡å¤è¯·æ±‚ + ErrorCode DEMO_DENY = new ErrorCode(901, "演示模å¼ï¼Œç¦æ­¢å†™æ“作"); + + ErrorCode UNKNOWN = new ErrorCode(999, "未知错误"); + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/ServiceErrorCodeRange.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/ServiceErrorCodeRange.java new file mode 100644 index 0000000..3cb6b51 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/enums/ServiceErrorCodeRange.java @@ -0,0 +1,48 @@ +package org.agt.framework.common.exception.enums; + +/** + * 业务异常的错误ç åŒºé—´ï¼Œè§£å†³ï¼šè§£å†³å„模å—错误ç å®šä¹‰ï¼Œé¿å…é‡å¤ï¼Œåœ¨æ­¤åªå£°æ˜Žä¸åšå®žé™…使用 + * + * 一共 10 ä½ï¼Œåˆ†æˆå››æ®µ + * + * 第一段,1 ä½ï¼Œç±»åž‹ + * 1 - 业务级别异常 + * x - 预留 + * 第二段,3 ä½ï¼Œç³»ç»Ÿç±»åž‹ + * 001 - 用户系统 + * 002 - 商å“系统 + * 003 - 订å•系统 + * 004 - 支付系统 + * 005 - 优惠劵系统 + * ... - ... + * 第三段,3 ä½ï¼Œæ¨¡å— + * ä¸é™åˆ¶è§„则。 + * 一般建议,æ¯ä¸ªç³»ç»Ÿé‡Œé¢ï¼Œå¯èƒ½æœ‰å¤šä¸ªæ¨¡å—,å¯ä»¥å†åŽ»åšåˆ†æ®µã€‚以用户系统为例å­ï¼š + * 001 - OAuth2 æ¨¡å— + * 002 - User æ¨¡å— + * 003 - MobileCode æ¨¡å— + * 第四段,3 ä½ï¼Œé”™è¯¯ç  + * ä¸é™åˆ¶è§„则。 + * 一般建议,æ¯ä¸ªæ¨¡å—自增。 + * + * @author åƒé€šæºç  + */ +public class ServiceErrorCodeRange { + + // æ¨¡å— infra 错误ç åŒºé—´ [1-001-000-000 ~ 1-002-000-000) + // æ¨¡å— system 错误ç åŒºé—´ [1-002-000-000 ~ 1-003-000-000) + // æ¨¡å— report 错误ç åŒºé—´ [1-003-000-000 ~ 1-004-000-000) + // æ¨¡å— member 错误ç åŒºé—´ [1-004-000-000 ~ 1-005-000-000) + // æ¨¡å— mp 错误ç åŒºé—´ [1-006-000-000 ~ 1-007-000-000) + // æ¨¡å— pay 错误ç åŒºé—´ [1-007-000-000 ~ 1-008-000-000) + // æ¨¡å— bpm 错误ç åŒºé—´ [1-009-000-000 ~ 1-010-000-000) + + // æ¨¡å— product 错误ç åŒºé—´ [1-008-000-000 ~ 1-009-000-000) + // æ¨¡å— trade 错误ç åŒºé—´ [1-011-000-000 ~ 1-012-000-000) + // æ¨¡å— promotion 错误ç åŒºé—´ [1-013-000-000 ~ 1-014-000-000) + + // æ¨¡å— crm 错误ç åŒºé—´ [1-020-000-000 ~ 1-021-000-000) + + // æ¨¡å— ai 错误ç åŒºé—´ [1-022-000-000 ~ 1-023-000-000) + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/util/ServiceExceptionUtil.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/util/ServiceExceptionUtil.java new file mode 100644 index 0000000..f7251a3 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/exception/util/ServiceExceptionUtil.java @@ -0,0 +1,77 @@ +package org.agt.framework.common.exception.util; + +import org.agt.framework.common.exception.ErrorCode; +import org.agt.framework.common.exception.ServiceException; +import org.agt.framework.common.exception.enums.GlobalErrorCodeConstants; +import com.google.common.annotations.VisibleForTesting; +import lombok.extern.slf4j.Slf4j; + +/** + * {@link ServiceException} 工具类 + * + * 目的在于,格å¼åŒ–å¼‚å¸¸ä¿¡æ¯æç¤ºã€‚ + * 考虑到 String.format åœ¨å‚æ•°ä¸æ­£ç¡®æ—¶ä¼šæŠ¥é”™ï¼Œå› æ­¤ä½¿ç”¨ {} 作为å ä½ç¬¦ï¼Œå¹¶ä½¿ç”¨ {@link #doFormat(int, String, Object...)} æ–¹æ³•æ¥æ ¼å¼åŒ– + * + */ +@Slf4j +public class ServiceExceptionUtil { + + // ========== å’Œ ServiceException çš„é›†æˆ ========== + + public static ServiceException exception(ErrorCode errorCode) { + return exception0(errorCode.getCode(), errorCode.getMsg()); + } + + public static ServiceException exception(ErrorCode errorCode, Object... params) { + return exception0(errorCode.getCode(), errorCode.getMsg(), params); + } + + public static ServiceException exception0(Integer code, String messagePattern, Object... params) { + String message = doFormat(code, messagePattern, params); + return new ServiceException(code, message); + } + + public static ServiceException invalidParamException(String messagePattern, Object... params) { + return exception0(GlobalErrorCodeConstants.BAD_REQUEST.getCode(), messagePattern, params); + } + + // ========== æ ¼å¼åŒ–方法 ========== + + /** + * 将错误编å·å¯¹åº”的消æ¯ä½¿ç”¨ params 进行格å¼åŒ–。 + * + * @param code é”™è¯¯ç¼–å· + * @param messagePattern æ¶ˆæ¯æ¨¡ç‰ˆ + * @param params 傿•° + * @return æ ¼å¼åŒ–åŽçš„æç¤º + */ + @VisibleForTesting + public static String doFormat(int code, String messagePattern, Object... params) { + StringBuilder sbuf = new StringBuilder(messagePattern.length() + 50); + int i = 0; + int j; + int l; + for (l = 0; l < params.length; l++) { + j = messagePattern.indexOf("{}", i); + if (j == -1) { + log.error("[doFormat][傿•°è¿‡å¤šï¼šé”™è¯¯ç ({})|错误内容({})|傿•°({})", code, messagePattern, params); + if (i == 0) { + return messagePattern; + } else { + sbuf.append(messagePattern.substring(i)); + return sbuf.toString(); + } + } else { + sbuf.append(messagePattern, i, j); + sbuf.append(params[l]); + i = j + 2; + } + } + if (messagePattern.indexOf("{}", i) != -1) { + log.error("[doFormat][傿•°è¿‡å°‘:错误ç ({})|错误内容({})|傿•°({})", code, messagePattern, params); + } + sbuf.append(messagePattern.substring(i)); + return sbuf.toString(); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/package-info.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/package-info.java new file mode 100644 index 0000000..0af0a59 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/package-info.java @@ -0,0 +1,6 @@ +/** + * 基础的通用类,和框架无关 + * + * 例如说,CommonResult 为通用返回 + */ +package org.agt.framework.common; diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/CommonResult.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/CommonResult.java new file mode 100644 index 0000000..a521f28 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/CommonResult.java @@ -0,0 +1,121 @@ +package org.agt.framework.common.pojo; + +import cn.hutool.core.lang.Assert; +import org.agt.framework.common.exception.ErrorCode; +import org.agt.framework.common.exception.ServiceException; +import org.agt.framework.common.exception.enums.GlobalErrorCodeConstants; +import org.agt.framework.common.exception.util.ServiceExceptionUtil; +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.Data; + +import java.io.Serializable; +import java.util.Objects; + +/** + * 通用返回 + * + * @param æ•°æ®æ³›åž‹ + */ +@Data +public class CommonResult implements Serializable { + + /** + * é”™è¯¯ç  + * + * @see ErrorCode#getCode() + */ + private Integer code; + /** + * è¿”å›žæ•°æ® + */ + private T data; + /** + * 错误æç¤ºï¼Œç”¨æˆ·å¯é˜…读 + * + * @see ErrorCode#getMsg() () + */ + private String msg; + + /** + * 将传入的 result å¯¹è±¡ï¼Œè½¬æ¢æˆå¦å¤–一个泛型结果的对象 + * + * 因为 A 方法返回的 CommonResult å¯¹è±¡ï¼Œä¸æ»¡è¶³è°ƒç”¨å…¶çš„ B 方法的返回,所以需è¦è¿›è¡Œè½¬æ¢ã€‚ + * + * @param result 传入的 result 对象 + * @param 返回的泛型 + * @return æ–°çš„ CommonResult 对象 + */ + public static CommonResult error(CommonResult result) { + return error(result.getCode(), result.getMsg()); + } + + public static CommonResult error(Integer code, String message) { + Assert.notEquals(GlobalErrorCodeConstants.SUCCESS.getCode(), code, "code 必须是错误的ï¼"); + CommonResult result = new CommonResult<>(); + result.code = code; + result.msg = message; + return result; + } + + public static CommonResult error(ErrorCode errorCode, Object... params) { + Assert.notEquals(GlobalErrorCodeConstants.SUCCESS.getCode(), errorCode.getCode(), "code 必须是错误的ï¼"); + CommonResult result = new CommonResult<>(); + result.code = errorCode.getCode(); + result.msg = ServiceExceptionUtil.doFormat(errorCode.getCode(), errorCode.getMsg(), params); + return result; + } + + public static CommonResult error(ErrorCode errorCode) { + return error(errorCode.getCode(), errorCode.getMsg()); + } + + public static CommonResult success(T data) { + CommonResult result = new CommonResult<>(); + result.code = GlobalErrorCodeConstants.SUCCESS.getCode(); + result.data = data; + result.msg = ""; + return result; + } + + public static boolean isSuccess(Integer code) { + return Objects.equals(code, GlobalErrorCodeConstants.SUCCESS.getCode()); + } + + @JsonIgnore // é¿å… jackson åºåˆ—化 + public boolean isSuccess() { + return isSuccess(code); + } + + @JsonIgnore // é¿å… jackson åºåˆ—化 + public boolean isError() { + return !isSuccess(); + } + + // ========= å’Œ Exception å¼‚å¸¸ä½“ç³»é›†æˆ ========= + + /** + * åˆ¤æ–­æ˜¯å¦æœ‰å¼‚常。如果有,则抛出 {@link ServiceException} 异常 + */ + public void checkError() throws ServiceException { + if (isSuccess()) { + return; + } + // 业务异常 + throw new ServiceException(code, msg); + } + + /** + * åˆ¤æ–­æ˜¯å¦æœ‰å¼‚常。如果有,则抛出 {@link ServiceException} 异常 + * 如果没有,则返回 {@link #data} æ•°æ® + */ + @JsonIgnore // é¿å… jackson åºåˆ—化 + public T getCheckedData() { + checkError(); + return data; + } + + public static CommonResult error(ServiceException serviceException) { + return error(serviceException.getCode(), serviceException.getMessage()); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageParam.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageParam.java new file mode 100644 index 0000000..63b8414 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageParam.java @@ -0,0 +1,36 @@ +package org.agt.framework.common.pojo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.NotNull; +import java.io.Serializable; + +@Schema(description="åˆ†é¡µå‚æ•°") +@Data +public class PageParam implements Serializable { + + private static final Integer PAGE_NO = 1; + private static final Integer PAGE_SIZE = 10; + + /** + * æ¯é¡µæ¡æ•° - ä¸åˆ†é¡µ + * + * 例如说,导出接å£ï¼Œå¯ä»¥è®¾ç½® {@link #pageSize} 为 -1 ä¸åˆ†é¡µï¼ŒæŸ¥è¯¢æ‰€æœ‰æ•°æ®ã€‚ + */ + public static final Integer PAGE_SIZE_NONE = -1; + + @Schema(description = "页ç ï¼Œä»Ž 1 开始", requiredMode = Schema.RequiredMode.REQUIRED,example = "1") + @NotNull(message = "页ç ä¸èƒ½ä¸ºç©º") + @Min(value = 1, message = "é¡µç æœ€å°å€¼ä¸º 1") + private Integer pageNo = PAGE_NO; + + @Schema(description = "æ¯é¡µæ¡æ•°ï¼Œæœ€å¤§å€¼ä¸º 100", requiredMode = Schema.RequiredMode.REQUIRED, example = "10") + @NotNull(message = "æ¯é¡µæ¡æ•°ä¸èƒ½ä¸ºç©º") + @Min(value = 1, message = "æ¯é¡µæ¡æ•°æœ€å°å€¼ä¸º 1") + @Max(value = 100, message = "æ¯é¡µæ¡æ•°æœ€å¤§å€¼ä¸º 100") + private Integer pageSize = PAGE_SIZE; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageResult.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageResult.java new file mode 100644 index 0000000..fb90564 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/PageResult.java @@ -0,0 +1,41 @@ +package org.agt.framework.common.pojo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +@Schema(description = "分页结果") +@Data +public final class PageResult implements Serializable { + + @Schema(description = "æ•°æ®", requiredMode = Schema.RequiredMode.REQUIRED) + private List list; + + @Schema(description = "总é‡", requiredMode = Schema.RequiredMode.REQUIRED) + private Long total; + + public PageResult() { + } + + public PageResult(List list, Long total) { + this.list = list; + this.total = total; + } + + public PageResult(Long total) { + this.list = new ArrayList<>(); + this.total = total; + } + + public static PageResult empty() { + return new PageResult<>(0L); + } + + public static PageResult empty(Long total) { + return new PageResult<>(total); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortablePageParam.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortablePageParam.java new file mode 100644 index 0000000..70a721f --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortablePageParam.java @@ -0,0 +1,19 @@ +package org.agt.framework.common.pojo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +import java.util.List; + +@Schema(description = "坿ޒåºçš„åˆ†é¡µå‚æ•°") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class SortablePageParam extends PageParam { + + @Schema(description = "排åºå­—段") + private List sortingFields; + +} \ No newline at end of file diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortingField.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortingField.java new file mode 100644 index 0000000..575016e --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/pojo/SortingField.java @@ -0,0 +1,37 @@ +package org.agt.framework.common.pojo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * 排åºå­—段 DTO + * + * ç±»å加了 ing 的原因是,é¿å…å’Œ ES SortField é‡å。 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SortingField implements Serializable { + + /** + * é¡ºåº - å‡åº + */ + public static final String ORDER_ASC = "asc"; + /** + * é¡ºåº - é™åº + */ + public static final String ORDER_DESC = "desc"; + + /** + * 字段 + */ + private String field; + /** + * é¡ºåº + */ + private String order; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/cache/CacheUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/cache/CacheUtils.java new file mode 100644 index 0000000..f61c90e --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/cache/CacheUtils.java @@ -0,0 +1,49 @@ +package org.agt.framework.common.util.cache; + +import com.google.common.cache.CacheBuilder; +import com.google.common.cache.CacheLoader; +import com.google.common.cache.LoadingCache; + +import java.time.Duration; +import java.util.concurrent.Executors; + +/** + * Cache 工具类 + * + * @author åƒé€šæºç  + */ +public class CacheUtils { + + /** + * 构建异步刷新的 LoadingCache 对象 + * + * 注æ„:如果你的缓存和 ThreadLocal 有关系,è¦ä¹ˆè‡ªå·±å¤„ç† ThreadLocal 的传递,è¦ä¹ˆä½¿ç”¨ {@link #buildCache(Duration, CacheLoader)} 方法 + * + * 或者简å•ç†è§£ï¼š + * 1ã€å’Œâ€œäººâ€ç›¸å…³çš„,使用 {@link #buildCache(Duration, CacheLoader)} 方法 + * 2ã€å’Œâ€œå…¨å±€â€ã€â€œç³»ç»Ÿâ€ç›¸å…³çš„,使用当å‰ç¼“存方法 + * + * @param duration 过期时间 + * @param loader CacheLoader 对象 + * @return LoadingCache 对象 + */ + public static LoadingCache buildAsyncReloadingCache(Duration duration, CacheLoader loader) { + return CacheBuilder.newBuilder() + // åªé˜»å¡žå½“剿•°æ®åŠ è½½çº¿ç¨‹ï¼Œå…¶ä»–çº¿ç¨‹è¿”å›žæ—§å€¼ + .refreshAfterWrite(duration) + // 通过 asyncReloading 实现全异步加载,包括 refreshAfterWrite 被阻塞的加载线程 + .build(CacheLoader.asyncReloading(loader, Executors.newCachedThreadPool())); // TODO 芋艿:å¯èƒ½è¦æ€è€ƒä¸‹ï¼Œæœªæ¥è¦ä¸è¦åšæˆå¯é…ç½® + } + + /** + * æž„å»ºåŒæ­¥åˆ·æ–°çš„ LoadingCache 对象 + * + * @param duration 过期时间 + * @param loader CacheLoader 对象 + * @return LoadingCache 对象 + */ + public static LoadingCache buildCache(Duration duration, CacheLoader loader) { + return CacheBuilder.newBuilder().refreshAfterWrite(duration).build(loader); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/ArrayUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/ArrayUtils.java new file mode 100644 index 0000000..9850e77 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/ArrayUtils.java @@ -0,0 +1,58 @@ +package org.agt.framework.common.util.collection; + +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.collection.IterUtil; +import cn.hutool.core.util.ArrayUtil; + +import java.util.Collection; +import java.util.function.Consumer; +import java.util.function.Function; + +import static org.agt.framework.common.util.collection.CollectionUtils.convertList; + +/** + * Array 工具类 + * + * @author åƒé€šæºç  + */ +public class ArrayUtils { + + /** + * å°† object å’Œ newElements åˆå¹¶æˆä¸€ä¸ªæ•°ç»„ + * + * @param object 对象 + * @param newElements 数组 + * @param 泛型 + * @return 结果数组 + */ + @SafeVarargs + public static Consumer[] append(Consumer object, Consumer... newElements) { + if (object == null) { + return newElements; + } + Consumer[] result = ArrayUtil.newArray(Consumer.class, 1 + newElements.length); + result[0] = object; + System.arraycopy(newElements, 0, result, 1, newElements.length); + return result; + } + + public static V[] toArray(Collection from, Function mapper) { + return toArray(convertList(from, mapper)); + } + + @SuppressWarnings("unchecked") + public static T[] toArray(Collection from) { + if (CollectionUtil.isEmpty(from)) { + return (T[]) (new Object[0]); + } + return ArrayUtil.toArray(from, (Class) IterUtil.getElementType(from.iterator())); + } + + public static T get(T[] array, int index) { + if (null == array || index >= array.length) { + return null; + } + return array[index]; + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/CollectionUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/CollectionUtils.java new file mode 100644 index 0000000..d49fa37 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/CollectionUtils.java @@ -0,0 +1,352 @@ +package org.agt.framework.common.util.collection; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ArrayUtil; +import org.agt.framework.common.pojo.PageResult; +import com.google.common.collect.ImmutableMap; + +import java.util.*; +import java.util.function.*; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import static cn.hutool.core.convert.Convert.toCollection; +import static java.util.Arrays.asList; + +/** + * Collection 工具类 + * + * @author åƒé€šæºç  + */ +public class CollectionUtils { + + public static boolean containsAny(Object source, Object... targets) { + return asList(targets).contains(source); + } + + public static boolean isAnyEmpty(Collection... collections) { + return Arrays.stream(collections).anyMatch(CollectionUtil::isEmpty); + } + + public static boolean anyMatch(Collection from, Predicate predicate) { + return from.stream().anyMatch(predicate); + } + + public static List filterList(Collection from, Predicate predicate) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return from.stream().filter(predicate).collect(Collectors.toList()); + } + + public static List distinct(Collection from, Function keyMapper) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return distinct(from, keyMapper, (t1, t2) -> t1); + } + + public static List distinct(Collection from, Function keyMapper, BinaryOperator cover) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return new ArrayList<>(convertMap(from, keyMapper, Function.identity(), cover).values()); + } + + public static List convertList(T[] from, Function func) { + if (ArrayUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return convertList(Arrays.asList(from), func); + } + + public static List convertList(Collection from, Function func) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return from.stream().map(func).filter(Objects::nonNull).collect(Collectors.toList()); + } + + public static List convertList(Collection from, Function func, Predicate filter) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return from.stream().filter(filter).map(func).filter(Objects::nonNull).collect(Collectors.toList()); + } + + public static PageResult convertPage(PageResult from, Function func) { + if (ArrayUtil.isEmpty(from)) { + return new PageResult<>(from.getTotal()); + } + return new PageResult<>(convertList(from.getList(), func), from.getTotal()); + } + + public static List convertListByFlatMap(Collection from, + Function> func) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return from.stream().filter(Objects::nonNull).flatMap(func).filter(Objects::nonNull).collect(Collectors.toList()); + } + + public static List convertListByFlatMap(Collection from, + Function mapper, + Function> func) { + if (CollUtil.isEmpty(from)) { + return new ArrayList<>(); + } + return from.stream().map(mapper).filter(Objects::nonNull).flatMap(func).filter(Objects::nonNull).collect(Collectors.toList()); + } + + public static List mergeValuesFromMap(Map> map) { + return map.values() + .stream() + .flatMap(List::stream) + .collect(Collectors.toList()); + } + + public static Set convertSet(Collection from) { + return convertSet(from, v -> v); + } + + public static Set convertSet(Collection from, Function func) { + if (CollUtil.isEmpty(from)) { + return new HashSet<>(); + } + return from.stream().map(func).filter(Objects::nonNull).collect(Collectors.toSet()); + } + + public static Set convertSet(Collection from, Function func, Predicate filter) { + if (CollUtil.isEmpty(from)) { + return new HashSet<>(); + } + return from.stream().filter(filter).map(func).filter(Objects::nonNull).collect(Collectors.toSet()); + } + + public static Map convertMapByFilter(Collection from, Predicate filter, Function keyFunc) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return from.stream().filter(filter).collect(Collectors.toMap(keyFunc, v -> v)); + } + + public static Set convertSetByFlatMap(Collection from, + Function> func) { + if (CollUtil.isEmpty(from)) { + return new HashSet<>(); + } + return from.stream().filter(Objects::nonNull).flatMap(func).filter(Objects::nonNull).collect(Collectors.toSet()); + } + + public static Set convertSetByFlatMap(Collection from, + Function mapper, + Function> func) { + if (CollUtil.isEmpty(from)) { + return new HashSet<>(); + } + return from.stream().map(mapper).filter(Objects::nonNull).flatMap(func).filter(Objects::nonNull).collect(Collectors.toSet()); + } + + public static Map convertMap(Collection from, Function keyFunc) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return convertMap(from, keyFunc, Function.identity()); + } + + public static Map convertMap(Collection from, Function keyFunc, Supplier> supplier) { + if (CollUtil.isEmpty(from)) { + return supplier.get(); + } + return convertMap(from, keyFunc, Function.identity(), supplier); + } + + public static Map convertMap(Collection from, Function keyFunc, Function valueFunc) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return convertMap(from, keyFunc, valueFunc, (v1, v2) -> v1); + } + + public static Map convertMap(Collection from, Function keyFunc, Function valueFunc, BinaryOperator mergeFunction) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return convertMap(from, keyFunc, valueFunc, mergeFunction, HashMap::new); + } + + public static Map convertMap(Collection from, Function keyFunc, Function valueFunc, Supplier> supplier) { + if (CollUtil.isEmpty(from)) { + return supplier.get(); + } + return convertMap(from, keyFunc, valueFunc, (v1, v2) -> v1, supplier); + } + + public static Map convertMap(Collection from, Function keyFunc, Function valueFunc, BinaryOperator mergeFunction, Supplier> supplier) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return from.stream().collect(Collectors.toMap(keyFunc, valueFunc, mergeFunction, supplier)); + } + + public static Map> convertMultiMap(Collection from, Function keyFunc) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return from.stream().collect(Collectors.groupingBy(keyFunc, Collectors.mapping(t -> t, Collectors.toList()))); + } + + public static Map> convertMultiMap(Collection from, Function keyFunc, Function valueFunc) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return from.stream() + .collect(Collectors.groupingBy(keyFunc, Collectors.mapping(valueFunc, Collectors.toList()))); + } + + // 暂时没想好å字,先以 2 结尾噶 + public static Map> convertMultiMap2(Collection from, Function keyFunc, Function valueFunc) { + if (CollUtil.isEmpty(from)) { + return new HashMap<>(); + } + return from.stream().collect(Collectors.groupingBy(keyFunc, Collectors.mapping(valueFunc, Collectors.toSet()))); + } + + public static Map convertImmutableMap(Collection from, Function keyFunc) { + if (CollUtil.isEmpty(from)) { + return Collections.emptyMap(); + } + ImmutableMap.Builder builder = ImmutableMap.builder(); + from.forEach(item -> builder.put(keyFunc.apply(item), item)); + return builder.build(); + } + + /** + * 对比è€ã€æ–°ä¸¤ä¸ªåˆ—表,找出新增ã€ä¿®æ”¹ã€åˆ é™¤çš„æ•°æ® + * + * @param oldList è€åˆ—表 + * @param newList 新列表 + * @param sameFunc 对比函数,返回 true 表示相åŒï¼Œè¿”回 false 表示ä¸åŒ + * 注æ„,same 是通过æ¯ä¸ªå…ƒç´ çš„“标识â€ï¼Œåˆ¤æ–­å®ƒä»¬æ˜¯ä¸æ˜¯åŒä¸€ä¸ªæ•°æ® + * @return [新增列表ã€ä¿®æ”¹åˆ—表ã€åˆ é™¤åˆ—表] + */ + public static List> diffList(Collection oldList, Collection newList, + BiFunction sameFunc) { + List createList = new LinkedList<>(newList); // 默认都认为是新增的,åŽç»­ä¼šè¿›è¡Œç§»é™¤ + List updateList = new ArrayList<>(); + List deleteList = new ArrayList<>(); + + // 通过以 oldList 为主é历,找出 updateList å’Œ deleteList + for (T oldObj : oldList) { + // 1. å¯»æ‰¾æ˜¯å¦æœ‰åŒ¹é…çš„ + T foundObj = null; + for (Iterator iterator = createList.iterator(); iterator.hasNext(); ) { + T newObj = iterator.next(); + // 1.1 ä¸åŒ¹é…,则直接跳过 + if (!sameFunc.apply(oldObj, newObj)) { + continue; + } + // 1.2 匹é…,则移除,并结æŸå¯»æ‰¾ + iterator.remove(); + foundObj = newObj; + break; + } + // 2. åŒ¹é…æ·»åŠ åˆ° updateListï¼›ä¸åŒ¹é…则添加到 deleteList 中 + if (foundObj != null) { + updateList.add(foundObj); + } else { + deleteList.add(oldObj); + } + } + return asList(createList, updateList, deleteList); + } + + public static boolean containsAny(Collection source, Collection candidates) { + return org.springframework.util.CollectionUtils.containsAny(source, candidates); + } + + public static T getFirst(List from) { + return !CollectionUtil.isEmpty(from) ? from.get(0) : null; + } + + public static T findFirst(Collection from, Predicate predicate) { + return findFirst(from, predicate, Function.identity()); + } + + public static U findFirst(Collection from, Predicate predicate, Function func) { + if (CollUtil.isEmpty(from)) { + return null; + } + return from.stream().filter(predicate).findFirst().map(func).orElse(null); + } + + public static > V getMaxValue(Collection from, Function valueFunc) { + if (CollUtil.isEmpty(from)) { + return null; + } + assert !from.isEmpty(); // 断言,é¿å…告警 + T t = from.stream().max(Comparator.comparing(valueFunc)).get(); + return valueFunc.apply(t); + } + + public static > V getMinValue(List from, Function valueFunc) { + if (CollUtil.isEmpty(from)) { + return null; + } + assert from.size() > 0; // 断言,é¿å…告警 + T t = from.stream().min(Comparator.comparing(valueFunc)).get(); + return valueFunc.apply(t); + } + + public static > T getMinObject(List from, Function valueFunc) { + if (CollUtil.isEmpty(from)) { + return null; + } + assert from.size() > 0; // 断言,é¿å…告警 + return from.stream().min(Comparator.comparing(valueFunc)).get(); + } + + public static > V getSumValue(Collection from, Function valueFunc, + BinaryOperator accumulator) { + return getSumValue(from, valueFunc, accumulator, null); + } + + public static > V getSumValue(Collection from, Function valueFunc, + BinaryOperator accumulator, V defaultValue) { + if (CollUtil.isEmpty(from)) { + return defaultValue; + } + assert !from.isEmpty(); // 断言,é¿å…告警 + return from.stream().map(valueFunc).filter(Objects::nonNull).reduce(accumulator).orElse(defaultValue); + } + + public static void addIfNotNull(Collection coll, T item) { + if (item == null) { + return; + } + coll.add(item); + } + + public static Collection singleton(T obj) { + return obj == null ? Collections.emptyList() : Collections.singleton(obj); + } + + public static List newArrayList(List> list) { + return list.stream().filter(Objects::nonNull).flatMap(Collection::stream).collect(Collectors.toList()); + } + + /** + * 转æ¢ä¸º LinkedHashSet + * + * @param 元素类型 + * @param elementType 集åˆä¸­å…ƒç´ ç±»åž‹ + * @param value 被转æ¢çš„值 + * @return {@link LinkedHashSet} + */ + @SuppressWarnings("unchecked") + public static LinkedHashSet toLinkedHashSet(Class elementType, Object value) { + return (LinkedHashSet) toCollection(LinkedHashSet.class, elementType, value); + } + +} \ No newline at end of file diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/MapUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/MapUtils.java new file mode 100644 index 0000000..7d72cdd --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/MapUtils.java @@ -0,0 +1,68 @@ +package org.agt.framework.common.util.collection; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjUtil; +import org.agt.framework.common.core.KeyValue; +import com.google.common.collect.Maps; +import com.google.common.collect.Multimap; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.function.Consumer; + +/** + * Map 工具类 + * + * @author åƒé€šæºç  + */ +public class MapUtils { + + /** + * 从哈希表表中,获得 keys 对应的所有 value 数组 + * + * @param multimap 哈希表 + * @param keys keys + * @return value 数组 + */ + public static List getList(Multimap multimap, Collection keys) { + List result = new ArrayList<>(); + keys.forEach(k -> { + Collection values = multimap.get(k); + if (CollectionUtil.isEmpty(values)) { + return; + } + result.addAll(values); + }); + return result; + } + + /** + * 从哈希表查找到 key 对应的 value,然åŽè¿›ä¸€æ­¥å¤„ç† + * key 为 null æ—¶, ä¸å¤„ç† + * 注æ„,如果查找到的 value 为 null 时,ä¸è¿›è¡Œå¤„ç† + * + * @param map 哈希表 + * @param key key + * @param consumer 进一步处ç†çš„逻辑 + */ + public static void findAndThen(Map map, K key, Consumer consumer) { + if (ObjUtil.isNull(key) || CollUtil.isEmpty(map)) { + return; + } + V value = map.get(key); + if (value == null) { + return; + } + consumer.accept(value); + } + + public static Map convertMap(List> keyValues) { + Map map = Maps.newLinkedHashMapWithExpectedSize(keyValues.size()); + keyValues.forEach(keyValue -> map.put(keyValue.getKey(), keyValue.getValue())); + return map; + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/SetUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/SetUtils.java new file mode 100644 index 0000000..77657db --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/collection/SetUtils.java @@ -0,0 +1,19 @@ +package org.agt.framework.common.util.collection; + +import cn.hutool.core.collection.CollUtil; + +import java.util.Set; + +/** + * Set 工具类 + * + * @author åƒé€šæºç  + */ +public class SetUtils { + + @SafeVarargs + public static Set asSet(T... objs) { + return CollUtil.newHashSet(objs); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/DateUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/DateUtils.java new file mode 100644 index 0000000..fedb55f --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/DateUtils.java @@ -0,0 +1,149 @@ +package org.agt.framework.common.util.date; + +import cn.hutool.core.date.LocalDateTimeUtil; + +import java.time.*; +import java.util.Calendar; +import java.util.Date; + +/** + * 时间工具类 + * + * @author åƒé€šæºç  + */ +public class DateUtils { + + /** + * 时区 - 默认 + */ + public static final String TIME_ZONE_DEFAULT = "GMT+8"; + + /** + * ç§’è½¬æ¢æˆæ¯«ç§’ + */ + public static final long SECOND_MILLIS = 1000; + + public static final String FORMAT_YEAR_MONTH_DAY = "yyyy-MM-dd"; + + public static final String FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND = "yyyy-MM-dd HH:mm:ss"; + + /** + * å°† LocalDateTime è½¬æ¢æˆ Date + * + * @param date LocalDateTime + * @return LocalDateTime + */ + public static Date of(LocalDateTime date) { + if (date == null) { + return null; + } + // 将此日期时间与时区相结åˆä»¥åˆ›å»º ZonedDateTime + ZonedDateTime zonedDateTime = date.atZone(ZoneId.systemDefault()); + // 本地时间线 LocalDateTime åˆ°å³æ—¶æ—¶é—´çº¿ Instant 时间戳 + Instant instant = zonedDateTime.toInstant(); + // UTCæ—¶é—´(世界å调时间,UTC + 00:00)转北京(北京,UTC + 8:00)æ—¶é—´ + return Date.from(instant); + } + + /** + * å°† Date è½¬æ¢æˆ LocalDateTime + * + * @param date Date + * @return LocalDateTime + */ + public static LocalDateTime of(Date date) { + if (date == null) { + return null; + } + // 转为时间戳 + Instant instant = date.toInstant(); + // UTCæ—¶é—´(世界å调时间,UTC + 00:00)转北京(北京,UTC + 8:00)æ—¶é—´ + return LocalDateTime.ofInstant(instant, ZoneId.systemDefault()); + } + + public static Date addTime(Duration duration) { + return new Date(System.currentTimeMillis() + duration.toMillis()); + } + + public static boolean isExpired(LocalDateTime time) { + LocalDateTime now = LocalDateTime.now(); + return now.isAfter(time); + } + + /** + * 创建指定时间 + * + * @param year å¹´ + * @param mouth 月 + * @param day æ—¥ + * @return 指定时间 + */ + public static Date buildTime(int year, int mouth, int day) { + return buildTime(year, mouth, day, 0, 0, 0); + } + + /** + * 创建指定时间 + * + * @param year å¹´ + * @param mouth 月 + * @param day æ—¥ + * @param hour å°æ—¶ + * @param minute 分钟 + * @param second ç§’ + * @return 指定时间 + */ + public static Date buildTime(int year, int mouth, int day, + int hour, int minute, int second) { + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.YEAR, year); + calendar.set(Calendar.MONTH, mouth - 1); + calendar.set(Calendar.DAY_OF_MONTH, day); + calendar.set(Calendar.HOUR_OF_DAY, hour); + calendar.set(Calendar.MINUTE, minute); + calendar.set(Calendar.SECOND, second); + calendar.set(Calendar.MILLISECOND, 0); // 一般情况下,都是 0 毫秒 + return calendar.getTime(); + } + + public static Date max(Date a, Date b) { + if (a == null) { + return b; + } + if (b == null) { + return a; + } + return a.compareTo(b) > 0 ? a : b; + } + + public static LocalDateTime max(LocalDateTime a, LocalDateTime b) { + if (a == null) { + return b; + } + if (b == null) { + return a; + } + return a.isAfter(b) ? a : b; + } + + /** + * 是å¦ä»Šå¤© + * + * @param date 日期 + * @return æ˜¯å¦ + */ + public static boolean isToday(LocalDateTime date) { + return LocalDateTimeUtil.isSameDay(date, LocalDateTime.now()); + } + + /** + * æ˜¯å¦æ˜¨å¤© + * + * @param date 日期 + * @return æ˜¯å¦ + */ + public static boolean isYesterday(LocalDateTime date) { + return LocalDateTimeUtil.isSameDay(date, LocalDateTime.now().minusDays(1)); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/LocalDateTimeUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/LocalDateTimeUtils.java new file mode 100644 index 0000000..14bb457 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/date/LocalDateTimeUtils.java @@ -0,0 +1,315 @@ +package org.agt.framework.common.util.date; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.LocalDateTimeUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.StrUtil; +import org.agt.framework.common.enums.DateIntervalEnum; + +import java.time.*; +import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeParseException; +import java.time.temporal.ChronoUnit; +import java.time.temporal.TemporalAdjusters; +import java.util.ArrayList; +import java.util.List; + +import static cn.hutool.core.date.DatePattern.UTC_MS_WITH_XXX_OFFSET_PATTERN; +import static cn.hutool.core.date.DatePattern.createFormatter; + +/** + * 时间工具类,用于 {@link java.time.LocalDateTime} + * + * @author åƒé€šæºç  + */ +public class LocalDateTimeUtils { + + /** + * 空的 LocalDateTime 对象,主è¦ç”¨äºŽ DB 唯一索引的默认值 + */ + public static LocalDateTime EMPTY = buildTime(1970, 1, 1); + + public static DateTimeFormatter UTC_MS_WITH_XXX_OFFSET_FORMATTER = createFormatter(UTC_MS_WITH_XXX_OFFSET_PATTERN); + + /** + * è§£æžæ—¶é—´ + * + * 相比 {@link LocalDateTimeUtil#parse(CharSequence)} 方法æ¥è¯´ï¼Œä¼šå°½é‡åŽ»è§£æžï¼Œç›´åˆ°æˆåŠŸ + * + * @param time æ—¶é—´ + * @return 时间字符串 + */ + public static LocalDateTime parse(String time) { + try { + return LocalDateTimeUtil.parse(time, DatePattern.NORM_DATE_PATTERN); + } catch (DateTimeParseException e) { + return LocalDateTimeUtil.parse(time); + } + } + + public static LocalDateTime addTime(Duration duration) { + return LocalDateTime.now().plus(duration); + } + + public static LocalDateTime minusTime(Duration duration) { + return LocalDateTime.now().minus(duration); + } + + public static boolean beforeNow(LocalDateTime date) { + return date.isBefore(LocalDateTime.now()); + } + + public static boolean afterNow(LocalDateTime date) { + return date.isAfter(LocalDateTime.now()); + } + + /** + * 创建指定时间 + * + * @param year å¹´ + * @param mouth 月 + * @param day æ—¥ + * @return 指定时间 + */ + public static LocalDateTime buildTime(int year, int mouth, int day) { + return LocalDateTime.of(year, mouth, day, 0, 0, 0); + } + + public static LocalDateTime[] buildBetweenTime(int year1, int mouth1, int day1, + int year2, int mouth2, int day2) { + return new LocalDateTime[]{buildTime(year1, mouth1, day1), buildTime(year2, mouth2, day2)}; + } + + /** + * 判指定断时间,是å¦åœ¨è¯¥æ—¶é—´èŒƒå›´å†… + * + * @param startTime 开始时间 + * @param endTime ç»“æŸæ—¶é—´ + * @param time 指定时间 + * @return æ˜¯å¦ + */ + public static boolean isBetween(LocalDateTime startTime, LocalDateTime endTime, String time) { + if (startTime == null || endTime == null || time == null) { + return false; + } + return LocalDateTimeUtil.isIn(parse(time), startTime, endTime); + } + + /** + * åˆ¤æ–­å½“å‰æ—¶é—´æ˜¯å¦åœ¨è¯¥æ—¶é—´èŒƒå›´å†… + * + * @param startTime 开始时间 + * @param endTime ç»“æŸæ—¶é—´ + * @return æ˜¯å¦ + */ + public static boolean isBetween(LocalDateTime startTime, LocalDateTime endTime) { + if (startTime == null || endTime == null) { + return false; + } + return LocalDateTimeUtil.isIn(LocalDateTime.now(), startTime, endTime); + } + + /** + * åˆ¤æ–­å½“å‰æ—¶é—´æ˜¯å¦åœ¨è¯¥æ—¶é—´èŒƒå›´å†… + * + * @param startTime 开始时间 + * @param endTime ç»“æŸæ—¶é—´ + * @return æ˜¯å¦ + */ + public static boolean isBetween(String startTime, String endTime) { + if (startTime == null || endTime == null) { + return false; + } + LocalDate nowDate = LocalDate.now(); + return LocalDateTimeUtil.isIn(LocalDateTime.now(), + LocalDateTime.of(nowDate, LocalTime.parse(startTime)), + LocalDateTime.of(nowDate, LocalTime.parse(endTime))); + } + + /** + * 判断时间段是å¦é‡å  + * + * @param startTime1 开始 time1 + * @param endTime1 ç»“æŸ time1 + * @param startTime2 开始 time2 + * @param endTime2 ç»“æŸ time2 + * @return é‡å ï¼štrue ä¸é‡å ï¼šfalse + */ + public static boolean isOverlap(LocalTime startTime1, LocalTime endTime1, LocalTime startTime2, LocalTime endTime2) { + LocalDate nowDate = LocalDate.now(); + return LocalDateTimeUtil.isOverlap(LocalDateTime.of(nowDate, startTime1), LocalDateTime.of(nowDate, endTime1), + LocalDateTime.of(nowDate, startTime2), LocalDateTime.of(nowDate, endTime2)); + } + + /** + * èŽ·å–æŒ‡å®šæ—¥æœŸæ‰€åœ¨çš„æœˆä»½çš„开始时间 + * 例如:2023-09-30 00:00:00,000 + * + * @param date 日期 + * @return 月份的开始时间 + */ + public static LocalDateTime beginOfMonth(LocalDateTime date) { + return date.with(TemporalAdjusters.firstDayOfMonth()).with(LocalTime.MIN); + } + + /** + * èŽ·å–æŒ‡å®šæ—¥æœŸæ‰€åœ¨çš„æœˆä»½çš„æœ€åŽæ—¶é—´ + * 例如:2023-09-30 23:59:59,999 + * + * @param date 日期 + * @return æœˆä»½çš„ç»“æŸæ—¶é—´ + */ + public static LocalDateTime endOfMonth(LocalDateTime date) { + return date.with(TemporalAdjusters.lastDayOfMonth()).with(LocalTime.MAX); + } + + /** + * 获得指定日期所在季度 + * + * @param date 日期 + * @return 所在季度 + */ + public static int getQuarterOfYear(LocalDateTime date) { + return (date.getMonthValue() - 1) / 3 + 1; + } + + /** + * èŽ·å–æŒ‡å®šæ—¥æœŸåˆ°çŽ°åœ¨è¿‡äº†å‡ å¤©ï¼Œå¦‚æžœæŒ‡å®šæ—¥æœŸåœ¨å½“å‰æ—¥æœŸä¹‹åŽï¼ŒèŽ·å–结果为负 + * + * @param dateTime 日期 + * @return 相差天数 + */ + public static Long between(LocalDateTime dateTime) { + return LocalDateTimeUtil.between(dateTime, LocalDateTime.now(), ChronoUnit.DAYS); + } + + /** + * 获å–今天的开始时间 + * + * @return 今天 + */ + public static LocalDateTime getToday() { + return LocalDateTimeUtil.beginOfDay(LocalDateTime.now()); + } + + /** + * èŽ·å–æ˜¨å¤©çš„开始时间 + * + * @return 昨天 + */ + public static LocalDateTime getYesterday() { + return LocalDateTimeUtil.beginOfDay(LocalDateTime.now().minusDays(1)); + } + + /** + * èŽ·å–æœ¬æœˆçš„开始时间 + * + * @return 本月 + */ + public static LocalDateTime getMonth() { + return beginOfMonth(LocalDateTime.now()); + } + + /** + * èŽ·å–æœ¬å¹´çš„开始时间 + * + * @return 本年 + */ + public static LocalDateTime getYear() { + return LocalDateTime.now().with(TemporalAdjusters.firstDayOfYear()).with(LocalTime.MIN); + } + + public static List getDateRangeList(LocalDateTime startTime, + LocalDateTime endTime, + Integer interval) { + // 1.1 找到枚举 + DateIntervalEnum intervalEnum = DateIntervalEnum.valueOf(interval); + Assert.notNull(intervalEnum, "interval({}} 找ä¸åˆ°å¯¹åº”的枚举", interval); + // 1.2 å°†æ—¶é—´å¯¹é½ + startTime = LocalDateTimeUtil.beginOfDay(startTime); + endTime = LocalDateTimeUtil.endOfDay(endTime); + + // 2. å¾ªçŽ¯ï¼Œç”Ÿæˆæ—¶é—´èŒƒå›´ + List timeRanges = new ArrayList<>(); + switch (intervalEnum) { + case DAY: + while (startTime.isBefore(endTime)) { + timeRanges.add(new LocalDateTime[]{startTime, startTime.plusDays(1).minusNanos(1)}); + startTime = startTime.plusDays(1); + } + break; + case WEEK: + while (startTime.isBefore(endTime)) { + LocalDateTime endOfWeek = startTime.with(DayOfWeek.SUNDAY).plusDays(1).minusNanos(1); + timeRanges.add(new LocalDateTime[]{startTime, endOfWeek}); + startTime = endOfWeek.plusNanos(1); + } + break; + case MONTH: + while (startTime.isBefore(endTime)) { + LocalDateTime endOfMonth = startTime.with(TemporalAdjusters.lastDayOfMonth()).plusDays(1).minusNanos(1); + timeRanges.add(new LocalDateTime[]{startTime, endOfMonth}); + startTime = endOfMonth.plusNanos(1); + } + break; + case QUARTER: + while (startTime.isBefore(endTime)) { + int quarterOfYear = getQuarterOfYear(startTime); + LocalDateTime quarterEnd = quarterOfYear == 4 + ? startTime.with(TemporalAdjusters.lastDayOfYear()).plusDays(1).minusNanos(1) + : startTime.withMonth(quarterOfYear * 3 + 1).withDayOfMonth(1).minusNanos(1); + timeRanges.add(new LocalDateTime[]{startTime, quarterEnd}); + startTime = quarterEnd.plusNanos(1); + } + break; + case YEAR: + while (startTime.isBefore(endTime)) { + LocalDateTime endOfYear = startTime.with(TemporalAdjusters.lastDayOfYear()).plusDays(1).minusNanos(1); + timeRanges.add(new LocalDateTime[]{startTime, endOfYear}); + startTime = endOfYear.plusNanos(1); + } + break; + default: + throw new IllegalArgumentException("Invalid interval: " + interval); + } + // 3. 兜底,最åŽä¸€ä¸ªæ—¶é—´ï¼Œéœ€è¦ä¿æŒåœ¨ endTime ä¹‹å‰ + LocalDateTime[] lastTimeRange = CollUtil.getLast(timeRanges); + if (lastTimeRange != null) { + lastTimeRange[1] = endTime; + } + return timeRanges; + } + + /** + * æ ¼å¼åŒ–时间范围 + * + * @param startTime 开始时间 + * @param endTime ç»“æŸæ—¶é—´ + * @param interval æ—¶é—´é—´éš” + * @return 时间范围 + */ + public static String formatDateRange(LocalDateTime startTime, LocalDateTime endTime, Integer interval) { + // 1. 找到枚举 + DateIntervalEnum intervalEnum = DateIntervalEnum.valueOf(interval); + Assert.notNull(intervalEnum, "interval({}} 找ä¸åˆ°å¯¹åº”的枚举", interval); + + // 2. å¾ªçŽ¯ï¼Œç”Ÿæˆæ—¶é—´èŒƒå›´ + switch (intervalEnum) { + case DAY: + return LocalDateTimeUtil.format(startTime, DatePattern.NORM_DATE_PATTERN); + case WEEK: + return LocalDateTimeUtil.format(startTime, DatePattern.NORM_DATE_PATTERN) + + StrUtil.format("(第 {} 周)", LocalDateTimeUtil.weekOfYear(startTime)); + case MONTH: + return LocalDateTimeUtil.format(startTime, DatePattern.NORM_MONTH_PATTERN); + case QUARTER: + return StrUtil.format("{}-Q{}", startTime.getYear(), getQuarterOfYear(startTime)); + case YEAR: + return LocalDateTimeUtil.format(startTime, DatePattern.NORM_YEAR_PATTERN); + default: + throw new IllegalArgumentException("Invalid interval: " + interval); + } + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/http/HttpUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/http/HttpUtils.java new file mode 100644 index 0000000..e6f34c7 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/http/HttpUtils.java @@ -0,0 +1,175 @@ +package org.agt.framework.common.util.http; + +import cn.hutool.core.codec.Base64; +import cn.hutool.core.map.TableMap; +import cn.hutool.core.net.url.UrlBuilder; +import cn.hutool.core.util.ReflectUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.util.StringUtils; +import org.springframework.web.util.UriComponents; +import org.springframework.web.util.UriComponentsBuilder; + +import java.net.URI; +import java.net.URLEncoder; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; +import java.util.Map; + +/** + * HTTP 工具类 + * + * @author åƒé€šæºç  + */ +public class HttpUtils { + + /** + * ç¼–ç  URL 傿•° + * + * @param value 傿•° + * @return ç¼–ç åŽçš„傿•° + */ + public static String encodeUtf8(String value) { + return URLEncoder.encode(value, StandardCharsets.UTF_8); + } + + @SuppressWarnings("unchecked") + public static String replaceUrlQuery(String url, String key, String value) { + UrlBuilder builder = UrlBuilder.of(url, Charset.defaultCharset()); + // 先移除 + TableMap query = (TableMap) + ReflectUtil.getFieldValue(builder.getQuery(), "query"); + query.remove(key); + // åŽæ·»åŠ  + builder.addQuery(key, value); + return builder.build(); + } + + private String append(String base, Map query, boolean fragment) { + return append(base, query, null, fragment); + } + + /** + * 拼接 URL + * + * copy from Spring Security OAuth2 çš„ AuthorizationEndpoint 类的 append 方法 + * + * @param base 基础 URL + * @param query æŸ¥è¯¢å‚æ•° + * @param keys query çš„ key,对应的原本的 key 的映射。例如说 query 里有个 key 是 xx,实际它的 key 是 extra_xx,则通过 keys 里添加这个映射 + * @param fragment URL çš„ fragmentï¼Œå³æ‹¼æŽ¥åˆ° # 中 + * @return 拼接åŽçš„ URL + */ + public static String append(String base, Map query, Map keys, boolean fragment) { + UriComponentsBuilder template = UriComponentsBuilder.newInstance(); + UriComponentsBuilder builder = UriComponentsBuilder.fromUriString(base); + URI redirectUri; + try { + // assume it's encoded to start with (if it came in over the wire) + redirectUri = builder.build(true).toUri(); + } catch (Exception e) { + // ... but allow client registrations to contain hard-coded non-encoded values + redirectUri = builder.build().toUri(); + builder = UriComponentsBuilder.fromUri(redirectUri); + } + template.scheme(redirectUri.getScheme()).port(redirectUri.getPort()).host(redirectUri.getHost()) + .userInfo(redirectUri.getUserInfo()).path(redirectUri.getPath()); + + if (fragment) { + StringBuilder values = new StringBuilder(); + if (redirectUri.getFragment() != null) { + String append = redirectUri.getFragment(); + values.append(append); + } + for (String key : query.keySet()) { + if (values.length() > 0) { + values.append("&"); + } + String name = key; + if (keys != null && keys.containsKey(key)) { + name = keys.get(key); + } + values.append(name).append("={").append(key).append("}"); + } + if (values.length() > 0) { + template.fragment(values.toString()); + } + UriComponents encoded = template.build().expand(query).encode(); + builder.fragment(encoded.getFragment()); + } else { + for (String key : query.keySet()) { + String name = key; + if (keys != null && keys.containsKey(key)) { + name = keys.get(key); + } + template.queryParam(name, "{" + key + "}"); + } + template.fragment(redirectUri.getFragment()); + UriComponents encoded = template.build().expand(query).encode(); + builder.query(encoded.getQuery()); + } + return builder.build().toUriString(); + } + + public static String[] obtainBasicAuthorization(HttpServletRequest request) { + String clientId; + String clientSecret; + // 先从 Header ä¸­èŽ·å– + String authorization = request.getHeader("Authorization"); + authorization = StrUtil.subAfter(authorization, "Basic ", true); + if (StringUtils.hasText(authorization)) { + authorization = Base64.decodeStr(authorization); + clientId = StrUtil.subBefore(authorization, ":", false); + clientSecret = StrUtil.subAfter(authorization, ":", false); + // å†ä»Ž Param ä¸­èŽ·å– + } else { + clientId = request.getParameter("client_id"); + clientSecret = request.getParameter("client_secret"); + } + + // 如果两者éžç©ºï¼Œåˆ™è¿”回 + if (StrUtil.isNotEmpty(clientId) && StrUtil.isNotEmpty(clientSecret)) { + return new String[]{clientId, clientSecret}; + } + return null; + } + + /** + * HTTP post 请求,基于 {@link cn.hutool.http.HttpUtil} 实现 + * + * 为什么è¦å°è£…该方法,因为 HttpUtil 默认å°è£…的方法,没有å…许传递 headers 傿•° + * + * @param url URL + * @param headers 请求头 + * @param requestBody 请求体 + * @return 请求结果 + */ + public static String post(String url, Map headers, String requestBody) { + try (HttpResponse response = HttpRequest.post(url) + .addHeaders(headers) + .body(requestBody) + .execute()) { + return response.body(); + } + } + + /** + * HTTP get 请求,基于 {@link cn.hutool.http.HttpUtil} 实现 + * + * 为什么è¦å°è£…该方法,因为 HttpUtil 默认å°è£…的方法,没有å…许传递 headers 傿•° + * + * @param url URL + * @param headers 请求头 + * @return 请求结果 + */ + public static String get(String url, Map headers) { + try (HttpResponse response = HttpRequest.get(url) + .addHeaders(headers) + .execute()) { + return response.body(); + } + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/FileUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/FileUtils.java new file mode 100644 index 0000000..a53828a --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/FileUtils.java @@ -0,0 +1,61 @@ +package org.agt.framework.common.util.io; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.util.IdUtil; +import lombok.SneakyThrows; + +import java.io.File; + +/** + * 文件工具类 + * + * @author åƒé€šæºç  + */ +public class FileUtils { + + /** + * 创建临时文件 + * 该文件会在 JVM 退出时,进行删除 + * + * @param data 文件内容 + * @return 文件 + */ + @SneakyThrows + public static File createTempFile(String data) { + File file = createTempFile(); + // 写入内容 + FileUtil.writeUtf8String(data, file); + return file; + } + + /** + * 创建临时文件 + * 该文件会在 JVM 退出时,进行删除 + * + * @param data 文件内容 + * @return 文件 + */ + @SneakyThrows + public static File createTempFile(byte[] data) { + File file = createTempFile(); + // 写入内容 + FileUtil.writeBytes(data, file); + return file; + } + + /** + * 创建临时文件,无内容 + * 该文件会在 JVM 退出时,进行删除 + * + * @return 文件 + */ + @SneakyThrows + public static File createTempFile() { + // 创建文件,通过 UUID ä¿è¯å”¯ä¸€ + File file = File.createTempFile(IdUtil.simpleUUID(), null); + // 标记 JVM 退出时,自动删除 + file.deleteOnExit(); + return file; + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/IoUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/IoUtils.java new file mode 100644 index 0000000..b977d6d --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/io/IoUtils.java @@ -0,0 +1,28 @@ +package org.agt.framework.common.util.io; + +import cn.hutool.core.io.IORuntimeException; +import cn.hutool.core.io.IoUtil; +import cn.hutool.core.util.StrUtil; + +import java.io.InputStream; + +/** + * IO 工具类,用于 {@link cn.hutool.core.io.IoUtil} 缺失的方法 + * + * @author åƒé€šæºç  + */ +public class IoUtils { + + /** + * 从æµä¸­è¯»å– UTF8 ç¼–ç çš„内容 + * + * @param in è¾“å…¥æµ + * @param isClose 是å¦å…³é—­ + * @return 内容 + * @throws IORuntimeException IO 异常 + */ + public static String readUtf8(InputStream in, boolean isClose) throws IORuntimeException { + return StrUtil.utf8Str(IoUtil.read(in, isClose)); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/JsonUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/JsonUtils.java new file mode 100644 index 0000000..eea4634 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/JsonUtils.java @@ -0,0 +1,210 @@ +package org.agt.framework.common.util.json; + +import cn.hutool.core.util.ArrayUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONUtil; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; + +import java.io.IOException; +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; + +/** + * JSON 工具类 + * + * @author åƒé€šæºç  + */ +@Slf4j +public class JsonUtils { + + private static ObjectMapper objectMapper = new ObjectMapper(); + + static { + objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); // 忽略 null 值 + objectMapper.registerModules(new JavaTimeModule()); // 解决 LocalDateTime çš„åºåˆ—化 + } + + /** + * åˆå§‹åŒ– objectMapper 属性 + *

    b9g8HvS`v6)+Bk~j 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 z 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�qJkByYAbCF=M19haH0pko#&*dYnBN=7c?BELILZ5HJem=?nJ5#vESe>G zMzc|iNeCa`H1X5dCBuDpiaqccA-tN-DXsjsz*867Taw{J(6eJ zi*`xXV;+?x&##OQNFK{U)F*ki{pgtFu^dMg$^8wWLCG^3LaF50CU4{ncq8)4H=zlV z`0BD8Fiy=l6%;WdZK18DoI|KGO9#w0G*NC%2`CIjryoYOy$&@>K0=z%1j*;a zL^MhAUYU%hN*>D%=-HCT`5ZJ&@{F3%jgpV0>1c-JJvI~NCC{ON)=3`OdQ^;DH`*q- zzwM|;ax1;46gA7JPpTfR=$PbnIgU<9p5IASiJAjwP;#3?D3v_hq>Ur8jpqr!+s>jT zZRGrFFtXGkSBqm1Gh7ZxJ~^6E&bG zO8#4snl6zl?RxPTxxf>(R%gi5l6*7fs3B zU9XuXN;{)w7b;5r%cR}tOOg9BqST%a??GRww~~AnQEItuh*Dd@?Wi}}{1&3rKC68j zQEL6|K)WKh8}&t-{fJWg1okULsrB${bR=pXMU-02-ylk@zuzKCZM$QLQXBPg^gFGm zzcu+iIuW^(h*E3i52zBk0rcl+^At)Wmn>%AE~d?KdP|i>Iq4DYhc=X#o~m2{rBO3^ z3pL+T->wbirD{#oDWz(q3l*iS)k-%iMXrqcq*2QCql)CQ44}ct4WU$ejA|xt<*M=4 zx|&c%@~E>YCrwbzHk6mDBSWd=9+D*-^GlH1Y(R~YYc`>bR9zP|OM1TAoQ+x}‹ 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

    uGp7By%KjVMv)-r(5Z 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�|AXog z+p_vl1MeC_jkJ^NvoZ9RcW*<@w3FGJL+_}`k}aT?YI0m!L9Nx~s%rzaCAMYlpm){e zJiG_B_pSrc}1`s>91EDXplXo*;LW78XIvWfPQIm5!6dFcsJBLFfh>bE5`i9ti zqoC1hautk$#u9t?I}VzxCSy*4rh1nMO(V7s)1evK$&xdn@73h!{s7G)_FS3`&CyPl zoD0oUlO^XvKN5SE{{$`2PL^B<{j8mw+h3qX+R1v0p^X4>x=iet zU4gE9cLTaf?CSXsx}}|5J-4Ap_D9c33L#?8tW;2X?POarKpE9WuwEu8vzlyK7AUKl zESU{@l-RaB20gBw?Cld!c49wQ%K_z7lY1-|l$+QU@+6c;JGpxDLQiQYGdvCD(@tK2 z@#Ho~Fa0 z(cX=L#uD3>anMBXCP9;l9l!A(W$r;-SZBlEC{R?d+w$RUo$26`@Mn$@}@rP!%(qM)MSrhq3UXKJZnI4YI1$nglZ8R zvo=&mJNe997i#TY8>p>z^4Yf?^sbsd2ce$CM(G9h)=oz01AXk>Cs1GQMR4V?7EQttRJT z3^bO6PcUe_cJiIh1ZX0$C($Hmns&0@bZC~Ej5!;ckv{?*SChRx0i7mx$DM)B61(QlK^KYb(Ix1zn%o^%psU_pgRZN|oq7Yh zNo>sjpj+C>dbgoF#6HK}h3=`z{@sTjsL4J&gd)Ud4-PUOv3F}JptQugbWnQjh=uu*yt{;OQ_wETOyLR#n$pPh5llwgvl#kea`Jn>D&QU?=Ibzq+ z^H3o*d0i&>~_pEQWq1_UiN-w1n6(TM8}HPUc$=hT}@`#0qrJs_3VN6YA4&W58AILOCEp@5}WT3 zbXYsN zBKFCT0rOHJ~^(*}s}lEn@G;YD2H8$qcVSb%-6Mx=;h}8bXbT zT|JGVCfbc)%%;#=YO=R)L(SA=%;r!_Vq>;~+7f$ew1eJNlPCLoPH?8)#6)K^VL=?C>!lYRIUiuW!7 z`i$7SlFy+5-VKBXX(#(I7#iZ;P-vKT@)RBpjrMK~G*&x#Pc#l1PwXg7fF=^V&L%-q z)#Q~j5t^nZdpjMPLG0?834O2DmhJ~=mYQtYY-o|19Nopx5;a+JDfBzB`Tl^GsmXlH zp(J8kmJF>THs5M!jhb9pYoSfV?%RK%&BVss0&OMs*?t?eT}`gf9nfxKOYVX8dbbbS zuhx+z4?qWrEqMq!texz`5$LFz?B6lyxSH(y3FsuT^-e*jwUgP;Kxc{V-#O?!u_Z4+ z7qye0LS2F`6WjMI&>dn+-i7XIC*K0xhaRZOxqS#l)MU$o!^}nO)i4E=Qljr^Q$eZK z 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�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

    + * 通过这样的方å¼ï¼Œä½¿ç”¨ Spring 创建的 ObjectMapper Bean + * + * @param objectMapper ObjectMapper 对象 + */ + public static void init(ObjectMapper objectMapper) { + JsonUtils.objectMapper = objectMapper; + } + + @SneakyThrows + public static String toJsonString(Object object) { + return objectMapper.writeValueAsString(object); + } + + @SneakyThrows + public static byte[] toJsonByte(Object object) { + return objectMapper.writeValueAsBytes(object); + } + + @SneakyThrows + public static String toJsonPrettyString(Object object) { + return objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(object); + } + + public static T parseObject(String text, Class clazz) { + if (StrUtil.isEmpty(text)) { + return null; + } + try { + return objectMapper.readValue(text, clazz); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + public static T parseObject(String text, String path, Class clazz) { + if (StrUtil.isEmpty(text)) { + return null; + } + try { + JsonNode treeNode = objectMapper.readTree(text); + JsonNode pathNode = treeNode.path(path); + return objectMapper.readValue(pathNode.toString(), clazz); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + public static T parseObject(String text, Type type) { + if (StrUtil.isEmpty(text)) { + return null; + } + try { + return objectMapper.readValue(text, objectMapper.getTypeFactory().constructType(type)); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + /** + * å°†å­—ç¬¦ä¸²è§£æžæˆæŒ‡å®šç±»åž‹çš„对象 + * 使用 {@link #parseObject(String, Class)} 时,在@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS) 的场景下, + * 如果 text 没有 class 属性,则会报错。此时,使用这个方法,å¯ä»¥è§£å†³ã€‚ + * + * @param text 字符串 + * @param clazz 类型 + * @return 对象 + */ + public static T parseObject2(String text, Class clazz) { + if (StrUtil.isEmpty(text)) { + return null; + } + return JSONUtil.toBean(text, clazz); + } + + public static T parseObject(byte[] bytes, Class clazz) { + if (ArrayUtil.isEmpty(bytes)) { + return null; + } + try { + return objectMapper.readValue(bytes, clazz); + } catch (IOException e) { + log.error("json parse err,json:{}", bytes, e); + throw new RuntimeException(e); + } + } + + public static T parseObject(String text, TypeReference typeReference) { + try { + return objectMapper.readValue(text, typeReference); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + /** + * è§£æž JSON å­—ç¬¦ä¸²æˆæŒ‡å®šç±»åž‹çš„对象,如果解æžå¤±è´¥ï¼Œåˆ™è¿”回 null + * + * @param text 字符串 + * @param typeReference 类型引用 + * @return 指定类型的对象 + */ + public static T parseObjectQuietly(String text, TypeReference typeReference) { + try { + return objectMapper.readValue(text, typeReference); + } catch (IOException e) { + return null; + } + } + + public static List parseArray(String text, Class clazz) { + if (StrUtil.isEmpty(text)) { + return new ArrayList<>(); + } + try { + return objectMapper.readValue(text, objectMapper.getTypeFactory().constructCollectionType(List.class, clazz)); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + public static List parseArray(String text, String path, Class clazz) { + if (StrUtil.isEmpty(text)) { + return null; + } + try { + JsonNode treeNode = objectMapper.readTree(text); + JsonNode pathNode = treeNode.path(path); + return objectMapper.readValue(pathNode.toString(), objectMapper.getTypeFactory().constructCollectionType(List.class, clazz)); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + public static JsonNode parseTree(String text) { + try { + return objectMapper.readTree(text); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + public static JsonNode parseTree(byte[] text) { + try { + return objectMapper.readTree(text); + } catch (IOException e) { + log.error("json parse err,json:{}", text, e); + throw new RuntimeException(e); + } + } + + public static boolean isJson(String text) { + return JSONUtil.isTypeJSON(text); + } + + /** + * 判断字符串是å¦ä¸º JSON 类型的字符串 + * @param str 字符串 + */ + public static boolean isJsonObject(String str) { + return JSONUtil.isTypeJSONObject(str); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/NumberSerializer.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/NumberSerializer.java new file mode 100644 index 0000000..d61753d --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/NumberSerializer.java @@ -0,0 +1,37 @@ +package org.agt.framework.common.util.json.databind; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JacksonStdImpl; + +import java.io.IOException; + +/** + * Long åºåˆ—化规则 + * + * 会将超长 long 值转æ¢ä¸º string,解决å‰ç«¯ JavaScript 最大安全整数是 2^53-1 的问题 + * + * @author 星语 + */ +@JacksonStdImpl +public class NumberSerializer extends com.fasterxml.jackson.databind.ser.std.NumberSerializer { + + private static final long MAX_SAFE_INTEGER = 9007199254740991L; + private static final long MIN_SAFE_INTEGER = -9007199254740991L; + + public static final NumberSerializer INSTANCE = new NumberSerializer(Number.class); + + public NumberSerializer(Class rawType) { + super(rawType); + } + + @Override + public void serialize(Number value, JsonGenerator gen, SerializerProvider serializers) throws IOException { + // 超出范围 åºåˆ—化ä½å­—符串 + if (value.longValue() > MIN_SAFE_INTEGER && value.longValue() < MAX_SAFE_INTEGER) { + super.serialize(value, gen, serializers); + } else { + gen.writeString(value.toString()); + } + } +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeDeserializer.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeDeserializer.java new file mode 100644 index 0000000..8885e9c --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeDeserializer.java @@ -0,0 +1,27 @@ +package org.agt.framework.common.util.json.databind; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; + +import java.io.IOException; +import java.time.Instant; +import java.time.LocalDateTime; +import java.time.ZoneId; + +/** + * 基于时间戳的 LocalDateTime ååºåˆ—化器 + * + * @author è€äº” + */ +public class TimestampLocalDateTimeDeserializer extends JsonDeserializer { + + public static final TimestampLocalDateTimeDeserializer INSTANCE = new TimestampLocalDateTimeDeserializer(); + + @Override + public LocalDateTime deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { + // å°† Long 时间戳,转æ¢ä¸º LocalDateTime 对象 + return LocalDateTime.ofInstant(Instant.ofEpochMilli(p.getValueAsLong()), ZoneId.systemDefault()); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeSerializer.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeSerializer.java new file mode 100644 index 0000000..db53540 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/json/databind/TimestampLocalDateTimeSerializer.java @@ -0,0 +1,26 @@ +package org.agt.framework.common.util.json.databind; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.JsonSerializer; +import com.fasterxml.jackson.databind.SerializerProvider; + +import java.io.IOException; +import java.time.LocalDateTime; +import java.time.ZoneId; + +/** + * 基于时间戳的 LocalDateTime åºåˆ—化器 + * + * @author è€äº” + */ +public class TimestampLocalDateTimeSerializer extends JsonSerializer { + + public static final TimestampLocalDateTimeSerializer INSTANCE = new TimestampLocalDateTimeSerializer(); + + @Override + public void serialize(LocalDateTime value, JsonGenerator gen, SerializerProvider serializers) throws IOException { + // å°† LocalDateTime 对象,转æ¢ä¸º Long 时间戳 + gen.writeNumber(value.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli()); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/monitor/TracerUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/monitor/TracerUtils.java new file mode 100644 index 0000000..f42c4b3 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/monitor/TracerUtils.java @@ -0,0 +1,30 @@ +package org.agt.framework.common.util.monitor; + +import org.apache.skywalking.apm.toolkit.trace.TraceContext; + +/** + * 链路追踪工具类 + * + * 考虑到æ¯ä¸ª starter 都需è¦ç”¨åˆ°è¯¥å·¥å…·ç±»ï¼Œæ‰€ä»¥æ”¾åˆ° common 模å—下的 util 包下 + * + * @author åƒé€šæºç  + */ +public class TracerUtils { + + /** + * ç§æœ‰åŒ–构造方法 + */ + private TracerUtils() { + } + + /** + * 获得链路追踪编å·ï¼Œç›´æŽ¥è¿”回 SkyWalking çš„ TraceId。 + * 如果ä¸å­˜åœ¨çš„è¯ä¸ºç©ºå­—符串ï¼ï¼ï¼ + * + * @return é“¾è·¯è¿½è¸ªç¼–å· + */ + public static String getTraceId() { + return TraceContext.traceId(); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/MoneyUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/MoneyUtils.java new file mode 100644 index 0000000..f89df10 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/MoneyUtils.java @@ -0,0 +1,131 @@ +package org.agt.framework.common.util.number; + +import cn.hutool.core.math.Money; +import cn.hutool.core.util.NumberUtil; + +import java.math.BigDecimal; +import java.math.RoundingMode; + +/** + * 金é¢å·¥å…·ç±» + * + * @author åƒé€šæºç  + */ +public class MoneyUtils { + + /** + * 金é¢çš„å°æ•°ä½æ•° + */ + private static final int PRICE_SCALE = 2; + + /** + * 百分比对应的 BigDecimal 对象 + */ + public static final BigDecimal PERCENT_100 = BigDecimal.valueOf(100); + + /** + * 计算百分比金é¢ï¼Œå››èˆäº”å…¥ + * + * @param price é‡‘é¢ + * @param rate 百分比,例如说 56.77% 则传入 56.77 + * @return ç™¾åˆ†æ¯”é‡‘é¢ + */ + public static Integer calculateRatePrice(Integer price, Double rate) { + return calculateRatePrice(price, rate, 0, RoundingMode.HALF_UP).intValue(); + } + + /** + * 计算百分比金é¢ï¼Œå‘下传入 + * + * @param price é‡‘é¢ + * @param rate 百分比,例如说 56.77% 则传入 56.77 + * @return ç™¾åˆ†æ¯”é‡‘é¢ + */ + public static Integer calculateRatePriceFloor(Integer price, Double rate) { + return calculateRatePrice(price, rate, 0, RoundingMode.FLOOR).intValue(); + } + + /** + * è®¡ç®—ç™¾åˆ†æ¯”é‡‘é¢ + * + * @param price 金é¢ï¼ˆå•ä½åˆ†ï¼‰ + * @param count æ•°é‡ + * @param percent 折扣(å•ä½åˆ†ï¼‰ï¼Œåˆ—如 60.2%,则传入 6020 + * @return 商哿€»ä»· + */ + public static Integer calculator(Integer price, Integer count, Integer percent) { + price = price * count; + if (percent == null) { + return price; + } + return MoneyUtils.calculateRatePriceFloor(price, (double) (percent / 100)); + } + + /** + * è®¡ç®—ç™¾åˆ†æ¯”é‡‘é¢ + * + * @param price é‡‘é¢ + * @param rate 百分比,例如说 56.77% 则传入 56.77 + * @param scale ä¿ç•™å°æ•°ä½æ•° + * @param roundingMode èˆå…¥æ¨¡å¼ + */ + public static BigDecimal calculateRatePrice(Number price, Number rate, int scale, RoundingMode roundingMode) { + return NumberUtil.toBigDecimal(price).multiply(NumberUtil.toBigDecimal(rate)) // 乘以 + .divide(BigDecimal.valueOf(100), scale, roundingMode); // 除以 100 + } + + /** + * 分转元 + * + * @param fen 分 + * @return å…ƒ + */ + public static BigDecimal fenToYuan(int fen) { + return new Money(0, fen).getAmount(); + } + + /** + * 分转元(字符串) + * + * 例如说 fen 为 1 时,则结果为 0.01 + * + * @param fen 分 + * @return å…ƒ + */ + public static String fenToYuanStr(int fen) { + return new Money(0, fen).toString(); + } + + /** + * 金é¢ç›¸ä¹˜ï¼Œé»˜è®¤è¿›è¡Œå››èˆäº”å…¥ + * + * 使•°ï¼š{@link #PRICE_SCALE} + * + * @param price é‡‘é¢ + * @param count æ•°é‡ + * @return 金é¢ç›¸ä¹˜ç»“æžœ + */ + public static BigDecimal priceMultiply(BigDecimal price, BigDecimal count) { + if (price == null || count == null) { + return null; + } + return price.multiply(count).setScale(PRICE_SCALE, RoundingMode.HALF_UP); + } + + /** + * 金é¢ç›¸ä¹˜ï¼ˆç™¾åˆ†æ¯”),默认进行四èˆäº”å…¥ + * + * 使•°ï¼š{@link #PRICE_SCALE} + * + * @param price é‡‘é¢ + * @param percent 百分比 + * @return 金é¢ç›¸ä¹˜ç»“æžœ + */ + public static BigDecimal priceMultiplyPercent(BigDecimal price, BigDecimal percent) { + if (price == null || percent == null) { + return null; + } + return price.multiply(percent).divide(PERCENT_100, PRICE_SCALE, RoundingMode.HALF_UP); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/NumberUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/NumberUtils.java new file mode 100644 index 0000000..c2a22b8 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/number/NumberUtils.java @@ -0,0 +1,78 @@ +package org.agt.framework.common.util.number; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.StrUtil; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 数字的工具类,补全 {@link cn.hutool.core.util.NumberUtil} 的功能 + * + * @author åƒé€šæºç  + */ +public class NumberUtils { + + public static Long parseLong(String str) { + return StrUtil.isNotEmpty(str) ? Long.valueOf(str) : null; + } + + public static Integer parseInt(String str) { + return StrUtil.isNotEmpty(str) ? Integer.valueOf(str) : null; + } + + public static boolean isAllNumber(List values) { + if (CollUtil.isEmpty(values)) { + return false; + } + for (String value : values) { + if (!NumberUtil.isNumber(value)) { + return false; + } + } + return true; + } + + /** + * 通过ç»çº¬åº¦èŽ·å–地çƒä¸Šä¸¤ç‚¹ä¹‹é—´çš„è·ç¦» + * + * å‚考 <DistanceUtil> 实现,目å‰å®ƒå·²ç»è¢« hutool 删除 + * + * @param lat1 ç»åº¦1 + * @param lng1 纬度1 + * @param lat2 ç»åº¦2 + * @param lng2 纬度2 + * @return è·ç¦»ï¼Œå•ä½ï¼šåƒç±³ + */ + public static double getDistance(double lat1, double lng1, double lat2, double lng2) { + double radLat1 = lat1 * Math.PI / 180.0; + double radLat2 = lat2 * Math.PI / 180.0; + double a = radLat1 - radLat2; + double b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0; + double distance = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + + Math.cos(radLat1) * Math.cos(radLat2) + * Math.pow(Math.sin(b / 2), 2))); + distance = distance * 6378.137; + distance = Math.round(distance * 10000d) / 10000d; + return distance; + } + + /** + * æä¾›ç²¾ç¡®çš„乘法è¿ç®— + * + * å’Œ hutool {@link NumberUtil#mul(BigDecimal...)} 的差别是,如果存在 null,则返回 null + * + * @param values 多个被乘值 + * @return 积 + */ + public static BigDecimal mul(BigDecimal... values) { + for (BigDecimal value : values) { + if (value == null) { + return null; + } + } + return NumberUtil.mul(values); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/BeanUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/BeanUtils.java new file mode 100644 index 0000000..f1a5a8b --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/BeanUtils.java @@ -0,0 +1,69 @@ +package org.agt.framework.common.util.object; + +import cn.hutool.core.bean.BeanUtil; +import org.agt.framework.common.pojo.PageResult; +import org.agt.framework.common.util.collection.CollectionUtils; + +import java.util.List; +import java.util.function.Consumer; + +/** + * Bean 工具类 + * + * 1. 默认使用 {@link cn.hutool.core.bean.BeanUtil} 作为实现类,虽然ä¸åŒ bean 工具的性能有差别,但是对ç»å¤§å¤šæ•°åŒå­¦çš„项目,ä¸ç”¨åœ¨æ„这点性能 + * 2. é’ˆå¯¹å¤æ‚的对象转æ¢ï¼Œå¯ä»¥æœå‚考 AuthConvert 实现,通过 mapstruct + default é…åˆå®žçް + * + * @author åƒé€šæºç  + */ +public class BeanUtils { + + public static T toBean(Object source, Class targetClass) { + return BeanUtil.toBean(source, targetClass); + } + + public static T toBean(Object source, Class targetClass, Consumer peek) { + T target = toBean(source, targetClass); + if (target != null) { + peek.accept(target); + } + return target; + } + + public static List toBean(List source, Class targetType) { + if (source == null) { + return null; + } + return CollectionUtils.convertList(source, s -> toBean(s, targetType)); + } + + public static List toBean(List source, Class targetType, Consumer peek) { + List list = toBean(source, targetType); + if (list != null) { + list.forEach(peek); + } + return list; + } + + public static PageResult toBean(PageResult source, Class targetType) { + return toBean(source, targetType, null); + } + + public static PageResult toBean(PageResult source, Class targetType, Consumer peek) { + if (source == null) { + return null; + } + List list = toBean(source.getList(), targetType); + if (peek != null) { + list.forEach(peek); + } + return new PageResult<>(list, source.getTotal()); + } + + public static void copyProperties(Object source, Object target) { + if (source == null || target == null) { + return; + } + BeanUtil.copyProperties(source, target, false); + } + +} \ No newline at end of file diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/ObjectUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/ObjectUtils.java new file mode 100644 index 0000000..f9ed372 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/ObjectUtils.java @@ -0,0 +1,63 @@ +package org.agt.framework.common.util.object; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReflectUtil; + +import java.lang.reflect.Field; +import java.util.Arrays; +import java.util.function.Consumer; + +/** + * Object 工具类 + * + * @author åƒé€šæºç  + */ +public class ObjectUtils { + + /** + * å¤åˆ¶å¯¹è±¡ï¼Œå¹¶å¿½ç•¥ Id ç¼–å· + * + * @param object 被å¤åˆ¶å¯¹è±¡ + * @param consumer 消费者,å¯ä»¥äºŒæ¬¡ç¼–辑被å¤åˆ¶å¯¹è±¡ + * @return å¤åˆ¶åŽçš„对象 + */ + public static T cloneIgnoreId(T object, Consumer consumer) { + T result = ObjectUtil.clone(object); + // 忽略 id ç¼–å· + Field field = ReflectUtil.getField(object.getClass(), "id"); + if (field != null) { + ReflectUtil.setFieldValue(result, field, null); + } + // 二次编辑 + if (result != null) { + consumer.accept(result); + } + return result; + } + + public static > T max(T obj1, T obj2) { + if (obj1 == null) { + return obj2; + } + if (obj2 == null) { + return obj1; + } + return obj1.compareTo(obj2) > 0 ? obj1 : obj2; + } + + @SafeVarargs + public static T defaultIfNull(T... array) { + for (T item : array) { + if (item != null) { + return item; + } + } + return null; + } + + @SafeVarargs + public static boolean equalsAny(T obj, T... array) { + return Arrays.asList(array).contains(obj); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/PageUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/PageUtils.java new file mode 100644 index 0000000..0a165b8 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/object/PageUtils.java @@ -0,0 +1,67 @@ +package org.agt.framework.common.util.object; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.func.Func1; +import cn.hutool.core.lang.func.LambdaUtil; +import cn.hutool.core.util.ArrayUtil; +import org.agt.framework.common.pojo.PageParam; +import org.agt.framework.common.pojo.SortablePageParam; +import org.agt.framework.common.pojo.SortingField; +import org.springframework.util.Assert; + +import static java.util.Collections.singletonList; + +/** + * {@link org.agt.framework.common.pojo.PageParam} 工具类 + * + * @author åƒé€šæºç  + */ +public class PageUtils { + + private static final Object[] ORDER_TYPES = new String[]{SortingField.ORDER_ASC, SortingField.ORDER_DESC}; + + public static int getStart(PageParam pageParam) { + return (pageParam.getPageNo() - 1) * pageParam.getPageSize(); + } + + /** + * 构建排åºå­—段(默认倒åºï¼‰ + * + * @param func 排åºå­—段的 Lambda è¡¨è¾¾å¼ + * @param 排åºå­—段所属的类型 + * @return 排åºå­—段 + */ + public static SortingField buildSortingField(Func1 func) { + return buildSortingField(func, SortingField.ORDER_DESC); + } + + /** + * 构建排åºå­—段 + * + * @param func 排åºå­—段的 Lambda è¡¨è¾¾å¼ + * @param order 排åºç±»åž‹ {@link SortingField#ORDER_ASC} {@link SortingField#ORDER_DESC} + * @param 排åºå­—段所属的类型 + * @return 排åºå­—段 + */ + public static SortingField buildSortingField(Func1 func, String order) { + Assert.isTrue(ArrayUtil.contains(ORDER_TYPES, order), String.format("字段的排åºç±»åž‹åªèƒ½æ˜¯ %s/%s", ORDER_TYPES)); + + String fieldName = LambdaUtil.getFieldName(func); + return new SortingField(fieldName, order); + } + + /** + * 构建默认的排åºå­—段 + * 如果排åºå­—段为空,则设置排åºå­—段;å¦åˆ™å¿½ç•¥ + * + * @param sortablePageParam 排åºåˆ†é¡µæŸ¥è¯¢å‚æ•° + * @param func 排åºå­—段的 Lambda è¡¨è¾¾å¼ + * @param 排åºå­—段所属的类型 + */ + public static void buildDefaultSortingField(SortablePageParam sortablePageParam, Func1 func) { + if (sortablePageParam != null && CollUtil.isEmpty(sortablePageParam.getSortingFields())) { + sortablePageParam.setSortingFields(singletonList(buildSortingField(func))); + } + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/package-info.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/package-info.java new file mode 100644 index 0000000..59a1f7a --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/package-info.java @@ -0,0 +1,7 @@ +/** + * 对于工具类的选择,优先查找 Hutool 中有没对应的方法 + * 如果没有,则自己å°è£…对应的工具类,以 Utils 结尾,用于区分 + * + * ps:如果担心 Hutool 存在å‘的问题,å¯ä»¥é˜…读 Hutool 的实现æºç ï¼Œä»¥ç¡®ä¿å¯é æ€§ã€‚并且,å¯ä»¥è¡¥å……相关的å•元测试。 + */ +package org.agt.framework.common.util; diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/servlet/ServletUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/servlet/ServletUtils.java new file mode 100644 index 0000000..34ec0ef --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/servlet/ServletUtils.java @@ -0,0 +1,105 @@ +package org.agt.framework.common.util.servlet; + +import cn.hutool.core.util.StrUtil; +import cn.hutool.extra.servlet.JakartaServletUtil; +import org.agt.framework.common.util.json.JsonUtils; +import jakarta.servlet.ServletRequest; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.http.MediaType; +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import java.util.Map; + +/** + * 客户端工具类 + * + * @author åƒé€šæºç  + */ +public class ServletUtils { + + /** + * 返回 JSON 字符串 + * + * @param response å“应 + * @param object 对象,会åºåˆ—åŒ–æˆ JSON 字符串 + */ + @SuppressWarnings("deprecation") // 必须使用 APPLICATION_JSON_UTF8_VALUE,å¦åˆ™ä¼šä¹±ç  + public static void writeJSON(HttpServletResponse response, Object object) { + String content = JsonUtils.toJsonString(object); + JakartaServletUtil.write(response, content, MediaType.APPLICATION_JSON_UTF8_VALUE); + } + + /** + * @param request 请求 + * @return ua + */ + public static String getUserAgent(HttpServletRequest request) { + String ua = request.getHeader("User-Agent"); + return ua != null ? ua : ""; + } + + /** + * 获得请求 + * + * @return HttpServletRequest + */ + public static HttpServletRequest getRequest() { + RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes(); + if (!(requestAttributes instanceof ServletRequestAttributes)) { + return null; + } + return ((ServletRequestAttributes) requestAttributes).getRequest(); + } + + public static String getUserAgent() { + HttpServletRequest request = getRequest(); + if (request == null) { + return null; + } + return getUserAgent(request); + } + + public static String getClientIP() { + HttpServletRequest request = getRequest(); + if (request == null) { + return null; + } + return JakartaServletUtil.getClientIP(request); + } + + public static boolean isJsonRequest(ServletRequest request) { + return StrUtil.startWithIgnoreCase(request.getContentType(), MediaType.APPLICATION_JSON_VALUE); + } + + public static String getBody(HttpServletRequest request) { + // åªæœ‰åœ¨ json 请求在读å–ï¼Œå› ä¸ºåªæœ‰ CacheRequestBodyFilter æ‰ä¼šè¿›è¡Œç¼“存,支æŒé‡å¤è¯»å– + if (isJsonRequest(request)) { + return JakartaServletUtil.getBody(request); + } + return null; + } + + public static byte[] getBodyBytes(HttpServletRequest request) { + // åªæœ‰åœ¨ json 请求在读å–ï¼Œå› ä¸ºåªæœ‰ CacheRequestBodyFilter æ‰ä¼šè¿›è¡Œç¼“存,支æŒé‡å¤è¯»å– + if (isJsonRequest(request)) { + return JakartaServletUtil.getBodyBytes(request); + } + return null; + } + + public static String getClientIP(HttpServletRequest request) { + return JakartaServletUtil.getClientIP(request); + } + + public static Map getParamMap(HttpServletRequest request) { + return JakartaServletUtil.getParamMap(request); + } + + public static Map getHeaderMap(HttpServletRequest request) { + return JakartaServletUtil.getHeaderMap(request); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringExpressionUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringExpressionUtils.java new file mode 100644 index 0000000..8ebb33b --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringExpressionUtils.java @@ -0,0 +1,123 @@ +package org.agt.framework.common.util.spring; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.map.MapUtil; +import cn.hutool.core.util.ArrayUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.extra.spring.SpringUtil; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.reflect.MethodSignature; +import org.springframework.context.expression.BeanFactoryResolver; +import org.springframework.core.DefaultParameterNameDiscoverer; +import org.springframework.core.ParameterNameDiscoverer; +import org.springframework.expression.EvaluationContext; +import org.springframework.expression.Expression; +import org.springframework.expression.ExpressionParser; +import org.springframework.expression.spel.standard.SpelExpressionParser; +import org.springframework.expression.spel.support.StandardEvaluationContext; + +import java.lang.reflect.Method; +import java.util.Collections; +import java.util.List; +import java.util.Map; + +/** + * Spring EL 表达å¼çš„工具类 + * + * @author mashu + */ +public class SpringExpressionUtils { + + /** + * Spring EL 表达å¼è§£æžå™¨ + */ + private static final ExpressionParser EXPRESSION_PARSER = new SpelExpressionParser(); + /** + * 傿•°åå‘现器 + */ + private static final ParameterNameDiscoverer PARAMETER_NAME_DISCOVERER = new DefaultParameterNameDiscoverer(); + + private SpringExpressionUtils() { + } + + /** + * 从切é¢ä¸­ï¼Œå•ä¸ªè§£æž EL 表达å¼çš„结果 + * + * @param joinPoint 切é¢ç‚¹ + * @param expressionString EL è¡¨è¾¾å¼æ•°ç»„ + * @return æ‰§è¡Œç•Œé¢ + */ + public static Object parseExpression(JoinPoint joinPoint, String expressionString) { + Map result = parseExpressions(joinPoint, Collections.singletonList(expressionString)); + return result.get(expressionString); + } + + /** + * 从切é¢ä¸­ï¼Œæ‰¹é‡è§£æž EL 表达å¼çš„结果 + * + * @param joinPoint 切é¢ç‚¹ + * @param expressionStrings EL è¡¨è¾¾å¼æ•°ç»„ + * @return 结果,key 为表达å¼ï¼Œvalue 为对应值 + */ + public static Map parseExpressions(JoinPoint joinPoint, List expressionStrings) { + // 如果为空,则ä¸è¿›è¡Œè§£æž + if (CollUtil.isEmpty(expressionStrings)) { + return MapUtil.newHashMap(); + } + + // 第一步,构建解æžçš„上下文 EvaluationContext + // 通过 joinPoint 获å–被注解方法 + MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature(); + Method method = methodSignature.getMethod(); + // 使用 spring çš„ ParameterNameDiscoverer èŽ·å–æ–¹æ³•å½¢å‚åæ•°ç»„ + String[] paramNames = PARAMETER_NAME_DISCOVERER.getParameterNames(method); + // Spring 的表达å¼ä¸Šä¸‹æ–‡å¯¹è±¡ + EvaluationContext context = new StandardEvaluationContext(); + // 给上下文赋值 + if (ArrayUtil.isNotEmpty(paramNames)) { + Object[] args = joinPoint.getArgs(); + for (int i = 0; i < paramNames.length; i++) { + context.setVariable(paramNames[i], args[i]); + } + } + + // 第二步,é€ä¸ªå‚æ•°è§£æž + Map result = MapUtil.newHashMap(expressionStrings.size(), true); + expressionStrings.forEach(key -> { + Object value = EXPRESSION_PARSER.parseExpression(key).getValue(context); + result.put(key, value); + }); + return result; + } + + /** + * 从 Bean å·¥åŽ‚ï¼Œè§£æž EL 表达å¼çš„结果 + * + * @param expressionString EL è¡¨è¾¾å¼ + * @return æ‰§è¡Œç•Œé¢ + */ + public static Object parseExpression(String expressionString) { + return parseExpression(expressionString, null); + } + + /** + * 从 Bean å·¥åŽ‚ï¼Œè§£æž EL 表达å¼çš„结果 + * + * @param expressionString EL è¡¨è¾¾å¼ + * @param variables å˜é‡ + * @return æ‰§è¡Œç•Œé¢ + */ + public static Object parseExpression(String expressionString, Map variables) { + if (StrUtil.isBlank(expressionString)) { + return null; + } + Expression expression = EXPRESSION_PARSER.parseExpression(expressionString); + StandardEvaluationContext context = new StandardEvaluationContext(); + context.setBeanResolver(new BeanFactoryResolver(SpringUtil.getApplicationContext())); + if (MapUtil.isNotEmpty(variables)) { + context.setVariables(variables); + } + return expression.getValue(context); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringUtils.java new file mode 100644 index 0000000..7a8b385 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/spring/SpringUtils.java @@ -0,0 +1,24 @@ +package org.agt.framework.common.util.spring; + +import cn.hutool.extra.spring.SpringUtil; + +import java.util.Objects; + +/** + * Spring 工具类 + * + * @author åƒé€šæºç  + */ +public class SpringUtils extends SpringUtil { + + /** + * 是å¦ä¸ºç”Ÿäº§çŽ¯å¢ƒ + * + * @return 是å¦ç”Ÿäº§çŽ¯å¢ƒ + */ + public static boolean isProd() { + String activeProfile = getActiveProfile(); + return Objects.equals("prod", activeProfile); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/string/StrUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/string/StrUtils.java new file mode 100644 index 0000000..0b41a1d --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/string/StrUtils.java @@ -0,0 +1,107 @@ +package org.agt.framework.common.util.string; + +import cn.hutool.core.text.StrPool; +import cn.hutool.core.util.ArrayUtil; +import cn.hutool.core.util.StrUtil; +import org.aspectj.lang.JoinPoint; + +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * 字符串工具类 + * + * @author åƒé€šæºç  + */ +public class StrUtils { + + public static String maxLength(CharSequence str, int maxLength) { + return StrUtil.maxLength(str, maxLength - 3); // -3 的原因,是该方法会补充 ... æ°å¥½ + } + + /** + * 给定字符串是å¦ä»¥ä»»ä½•一个字符串开始 + * 给定字符串和数组为空都返回 false + * + * @param str 给定字符串 + * @param prefixes éœ€è¦æ£€æµ‹çš„开始字符串 + * @since 3.0.6 + */ + public static boolean startWithAny(String str, Collection prefixes) { + if (StrUtil.isEmpty(str) || ArrayUtil.isEmpty(prefixes)) { + return false; + } + + for (CharSequence suffix : prefixes) { + if (StrUtil.startWith(str, suffix, false)) { + return true; + } + } + return false; + } + + public static List splitToLong(String value, CharSequence separator) { + long[] longs = StrUtil.splitToLong(value, separator); + return Arrays.stream(longs).boxed().collect(Collectors.toList()); + } + + public static Set splitToLongSet(String value) { + return splitToLongSet(value, StrPool.COMMA); + } + + public static Set splitToLongSet(String value, CharSequence separator) { + long[] longs = StrUtil.splitToLong(value, separator); + return Arrays.stream(longs).boxed().collect(Collectors.toSet()); + } + + public static List splitToInteger(String value, CharSequence separator) { + int[] integers = StrUtil.splitToInt(value, separator); + return Arrays.stream(integers).boxed().collect(Collectors.toList()); + } + + /** + * ç§»é™¤å­—ç¬¦ä¸²ä¸­ï¼ŒåŒ…å«æŒ‡å®šå­—符串的行 + * + * @param content 字符串 + * @param sequence 包å«çš„字符串 + * @return 移除åŽçš„字符串 + */ + public static String removeLineContains(String content, String sequence) { + if (StrUtil.isEmpty(content) || StrUtil.isEmpty(sequence)) { + return content; + } + return Arrays.stream(content.split("\n")) + .filter(line -> !line.contains(sequence)) + .collect(Collectors.joining("\n")); + } + + /** + * æ‹¼æŽ¥æ–¹æ³•çš„å‚æ•° + * + * 特殊:排除一些无法åºåˆ—åŒ–çš„å‚æ•°ï¼Œå¦‚ ServletRequestã€ServletResponseã€MultipartFile + * + * @param joinPoint 连接点 + * @return 拼接åŽçš„傿•° + */ + public static String joinMethodArgs(JoinPoint joinPoint) { + Object[] args = joinPoint.getArgs(); + if (ArrayUtil.isEmpty(args)) { + return ""; + } + return ArrayUtil.join(args, ",", item -> { + if (item == null) { + return ""; + } + // 讨论å¯è§ï¼šhttps://t.zsxq.com/XUJVkã€https://t.zsxq.com/MnKcL + String clazzName = item.getClass().getName(); + if (StrUtil.startWithAny(clazzName, "javax.servlet", "jakarta.servlet", "org.springframework.web")) { + return ""; + } + return item; + }); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/validation/ValidationUtils.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/validation/ValidationUtils.java new file mode 100644 index 0000000..cf78dde --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/util/validation/ValidationUtils.java @@ -0,0 +1,55 @@ +package org.agt.framework.common.util.validation; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.lang.Assert; +import org.springframework.util.StringUtils; + +import jakarta.validation.ConstraintViolation; +import jakarta.validation.ConstraintViolationException; +import jakarta.validation.Validation; +import jakarta.validation.Validator; +import java.util.Set; +import java.util.regex.Pattern; + +/** + * 校验工具类 + * + * @author åƒé€šæºç  + */ +public class ValidationUtils { + + private static final Pattern PATTERN_MOBILE = Pattern.compile("^(?:(?:\\+|00)86)?1(?:(?:3[\\d])|(?:4[0,1,4-9])|(?:5[0-3,5-9])|(?:6[2,5-7])|(?:7[0-8])|(?:8[\\d])|(?:9[0-3,5-9]))\\d{8}$"); + + private static final Pattern PATTERN_URL = Pattern.compile("^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"); + + private static final Pattern PATTERN_XML_NCNAME = Pattern.compile("[a-zA-Z_][\\-_.0-9_a-zA-Z$]*"); + + public static boolean isMobile(String mobile) { + return StringUtils.hasText(mobile) + && PATTERN_MOBILE.matcher(mobile).matches(); + } + + public static boolean isURL(String url) { + return StringUtils.hasText(url) + && PATTERN_URL.matcher(url).matches(); + } + + public static boolean isXmlNCName(String str) { + return StringUtils.hasText(str) + && PATTERN_XML_NCNAME.matcher(str).matches(); + } + + public static void validate(Object object, Class... groups) { + Validator validator = Validation.buildDefaultValidatorFactory().getValidator(); + Assert.notNull(validator); + validate(validator, object, groups); + } + + public static void validate(Validator validator, Object object, Class... groups) { + Set> constraintViolations = validator.validate(object, groups); + if (CollUtil.isNotEmpty(constraintViolations)) { + throw new ConstraintViolationException(constraintViolations); + } + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnum.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnum.java new file mode 100644 index 0000000..883c06b --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnum.java @@ -0,0 +1,35 @@ +package org.agt.framework.common.validation; + +import org.agt.framework.common.core.ArrayValuable; +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + +import java.lang.annotation.*; + +@Target({ + ElementType.METHOD, + ElementType.FIELD, + ElementType.ANNOTATION_TYPE, + ElementType.CONSTRUCTOR, + ElementType.PARAMETER, + ElementType.TYPE_USE +}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +@Constraint( + validatedBy = {InEnumValidator.class, InEnumCollectionValidator.class} +) +public @interface InEnum { + + /** + * @return 实现 ArrayValuable 接å£çš„ç±» + */ + Class> value(); + + String message() default "必须在指定范围 {value}"; + + Class[] groups() default {}; + + Class[] payload() default {}; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumCollectionValidator.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumCollectionValidator.java new file mode 100644 index 0000000..4dba3a6 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumCollectionValidator.java @@ -0,0 +1,44 @@ +package org.agt.framework.common.validation; + +import cn.hutool.core.collection.CollUtil; +import org.agt.framework.common.core.ArrayValuable; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.List; + +public class InEnumCollectionValidator implements ConstraintValidator> { + + private List values; + + @Override + public void initialize(InEnum annotation) { + ArrayValuable[] values = annotation.value().getEnumConstants(); + if (values.length == 0) { + this.values = Collections.emptyList(); + } else { + this.values = Arrays.asList(values[0].array()); + } + } + + @Override + public boolean isValid(Collection list, ConstraintValidatorContext context) { + if (list == null) { + return true; + } + // 校验通过 + if (CollUtil.containsAll(values, list)) { + return true; + } + // 校验ä¸é€šè¿‡ï¼Œè‡ªå®šä¹‰æç¤ºè¯­å¥ + context.disableDefaultConstraintViolation(); // ç¦ç”¨é»˜è®¤çš„ message 的值 + context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate() + .replaceAll("\\{value}", CollUtil.join(list, ","))).addConstraintViolation(); // 釿–°æ·»åŠ é”™è¯¯æç¤ºè¯­å¥ + return false; + } + +} + diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumValidator.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumValidator.java new file mode 100644 index 0000000..caff3f4 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/InEnumValidator.java @@ -0,0 +1,43 @@ +package org.agt.framework.common.validation; + +import org.agt.framework.common.core.ArrayValuable; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +public class InEnumValidator implements ConstraintValidator { + + private List values; + + @Override + public void initialize(InEnum annotation) { + ArrayValuable[] values = annotation.value().getEnumConstants(); + if (values.length == 0) { + this.values = Collections.emptyList(); + } else { + this.values = Arrays.asList(values[0].array()); + } + } + + @Override + public boolean isValid(Object value, ConstraintValidatorContext context) { + // ä¸ºç©ºæ—¶ï¼Œé»˜è®¤ä¸æ ¡éªŒï¼Œå³è®¤ä¸ºé€šè¿‡ + if (value == null) { + return true; + } + // 校验通过 + if (values.contains(value)) { + return true; + } + // 校验ä¸é€šè¿‡ï¼Œè‡ªå®šä¹‰æç¤ºè¯­å¥ + context.disableDefaultConstraintViolation(); // ç¦ç”¨é»˜è®¤çš„ message 的值 + context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate() + .replaceAll("\\{value}", values.toString())).addConstraintViolation(); // 釿–°æ·»åŠ é”™è¯¯æç¤ºè¯­å¥ + return false; + } + +} + diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Mobile.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Mobile.java new file mode 100644 index 0000000..f5c8089 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Mobile.java @@ -0,0 +1,28 @@ +package org.agt.framework.common.validation; + +import jakarta.validation.Constraint; +import jakarta.validation.Payload; +import java.lang.annotation.*; + +@Target({ + ElementType.METHOD, + ElementType.FIELD, + ElementType.ANNOTATION_TYPE, + ElementType.CONSTRUCTOR, + ElementType.PARAMETER, + ElementType.TYPE_USE +}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +@Constraint( + validatedBy = MobileValidator.class +) +public @interface Mobile { + + String message() default "æ‰‹æœºå·æ ¼å¼ä¸æ­£ç¡®"; + + Class[] groups() default {}; + + Class[] payload() default {}; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/MobileValidator.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/MobileValidator.java new file mode 100644 index 0000000..c08d500 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/MobileValidator.java @@ -0,0 +1,25 @@ +package org.agt.framework.common.validation; + +import cn.hutool.core.util.StrUtil; +import org.agt.framework.common.util.validation.ValidationUtils; + +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +public class MobileValidator implements ConstraintValidator { + + @Override + public void initialize(Mobile annotation) { + } + + @Override + public boolean isValid(String value, ConstraintValidatorContext context) { + // 如果手机å·ä¸ºç©ºï¼Œé»˜è®¤ä¸æ ¡éªŒï¼Œå³æ ¡éªŒé€šè¿‡ + if (StrUtil.isEmpty(value)) { + return true; + } + // 校验手机 + return ValidationUtils.isMobile(value); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Telephone.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Telephone.java new file mode 100644 index 0000000..393fc1b --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/Telephone.java @@ -0,0 +1,28 @@ +package org.agt.framework.common.validation; + +import jakarta.validation.Constraint; +import jakarta.validation.Payload; +import java.lang.annotation.*; + +@Target({ + ElementType.METHOD, + ElementType.FIELD, + ElementType.ANNOTATION_TYPE, + ElementType.CONSTRUCTOR, + ElementType.PARAMETER, + ElementType.TYPE_USE +}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +@Constraint( + validatedBy = TelephoneValidator.class +) +public @interface Telephone { + + String message() default "ç”µè¯æ ¼å¼ä¸æ­£ç¡®"; + + Class[] groups() default {}; + + Class[] payload() default {}; + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/TelephoneValidator.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/TelephoneValidator.java new file mode 100644 index 0000000..156f9c7 --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/TelephoneValidator.java @@ -0,0 +1,25 @@ +package org.agt.framework.common.validation; + +import cn.hutool.core.text.CharSequenceUtil; +import cn.hutool.core.util.PhoneUtil; + +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; + +public class TelephoneValidator implements ConstraintValidator { + + @Override + public void initialize(Telephone annotation) { + } + + @Override + public boolean isValid(String value, ConstraintValidatorContext context) { + // 如果手机å·ä¸ºç©ºï¼Œé»˜è®¤ä¸æ ¡éªŒï¼Œå³æ ¡éªŒé€šè¿‡ + if (CharSequenceUtil.isEmpty(value)) { + return true; + } + // 校验手机 + return PhoneUtil.isTel(value) || PhoneUtil.isPhone(value); + } + +} diff --git a/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/package-info.java b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/package-info.java new file mode 100644 index 0000000..6e8032d --- /dev/null +++ b/agt-framework/agt-common/src/main/java/org/agt/framework/common/validation/package-info.java @@ -0,0 +1,4 @@ +/** + * 使用 Hibernate Validator å®žçŽ°å‚æ•°æ ¡éªŒ + */ +package org.agt.framework.common.validation; diff --git a/agt-framework/agt-common/src/test/java/org/agt/framework/common/util/collection/CollectionUtilsTest.java b/agt-framework/agt-common/src/test/java/org/agt/framework/common/util/collection/CollectionUtilsTest.java new file mode 100644 index 0000000..9b31c03 --- /dev/null +++ b/agt-framework/agt-common/src/test/java/org/agt/framework/common/util/collection/CollectionUtilsTest.java @@ -0,0 +1,64 @@ +package org.agt.framework.common.util.collection; + +import lombok.AllArgsConstructor; +import lombok.Data; +import org.junit.jupiter.api.Test; + +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.function.BiFunction; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * {@link CollectionUtils} çš„å•元测试 + */ +public class CollectionUtilsTest { + + @Data + @AllArgsConstructor + private static class Dog { + + private Integer id; + private String name; + private String code; + + } + + @Test + public void testDiffList() { + // 准备傿•° + Collection oldList = Arrays.asList( + new Dog(1, "花花", "hh"), + new Dog(2, "旺财", "wc") + ); + Collection newList = Arrays.asList( + new Dog(null, "花花2", "hh"), + new Dog(null, "å°ç™½", "xb") + ); + BiFunction sameFunc = (oldObj, newObj) -> { + boolean same = oldObj.getCode().equals(newObj.getCode()); + // 如果相等的情况下,需è¦è®¾ç½®ä¸‹ id,åŽç»­å¥½æ›´æ–° + if (same) { + newObj.setId(oldObj.getId()); + } + return same; + }; + + // 调用 + List> result = CollectionUtils.diffList(oldList, newList, sameFunc); + // 断言 + assertEquals(result.size(), 3); + // 断言 create + assertEquals(result.get(0).size(), 1); + assertEquals(result.get(0).get(0), new Dog(null, "å°ç™½", "xb")); + // 断言 update + assertEquals(result.get(1).size(), 1); + assertEquals(result.get(1).get(0), new Dog(1, "花花2", "hh")); + // 断言 delete + assertEquals(result.get(2).size(), 1); + assertEquals(result.get(2).get(0), new Dog(2, "旺财", "wc")); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/pom.xml b/agt-framework/agt-spring-boot-starter-biz-data-permission/pom.xml new file mode 100644 index 0000000..3177944 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/pom.xml @@ -0,0 +1,59 @@ + + + + agt-framework + org.agt + ${revision} + + 4.0.0 + agt-spring-boot-starter-biz-data-permission + jar + + ${project.artifactId} + æ•°æ®æƒé™ + https://github.com/agt/agt-cloud + + + + org.agt + agt-common + + + + + org.agt + agt-spring-boot-starter-security + true + + + + + org.agt + agt-spring-boot-starter-mybatis + + + + + org.agt + agt-spring-boot-starter-rpc + true + + + + + org.agt + agt-module-system-api + ${revision} + + + + + org.agt + agt-spring-boot-starter-test + test + + + + diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionAutoConfiguration.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionAutoConfiguration.java new file mode 100644 index 0000000..ad8dd91 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionAutoConfiguration.java @@ -0,0 +1,46 @@ +package org.agt.framework.datapermission.config; + +import org.agt.framework.datapermission.core.aop.DataPermissionAnnotationAdvisor; +import org.agt.framework.datapermission.core.db.DataPermissionRuleHandler; +import org.agt.framework.datapermission.core.rule.DataPermissionRule; +import org.agt.framework.datapermission.core.rule.DataPermissionRuleFactory; +import org.agt.framework.datapermission.core.rule.DataPermissionRuleFactoryImpl; +import org.agt.framework.mybatis.core.util.MyBatisUtils; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.DataPermissionInterceptor; +import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.context.annotation.Bean; + +import java.util.List; + +/** + * æ•°æ®æƒé™çš„自动é…置类 + * + * @author åƒé€šæºç  + */ +@AutoConfiguration +public class AgtDataPermissionAutoConfiguration { + + @Bean + public DataPermissionRuleFactory dataPermissionRuleFactory(List rules) { + return new DataPermissionRuleFactoryImpl(rules); + } + + @Bean + public DataPermissionRuleHandler dataPermissionRuleHandler(MybatisPlusInterceptor interceptor, + DataPermissionRuleFactory ruleFactory) { + // 创建 DataPermissionInterceptor 拦截器 + DataPermissionRuleHandler handler = new DataPermissionRuleHandler(ruleFactory); + DataPermissionInterceptor inner = new DataPermissionInterceptor(handler); + // 添加到 interceptor 中 + // 需è¦åŠ åœ¨é¦–ä¸ªï¼Œä¸»è¦æ˜¯ä¸ºäº†åœ¨åˆ†é¡µæ’ä»¶å‰é¢ã€‚这个是 MyBatis Plus 的规定 + MyBatisUtils.addInterceptor(interceptor, inner, 0); + return handler; + } + + @Bean + public DataPermissionAnnotationAdvisor dataPermissionAnnotationAdvisor() { + return new DataPermissionAnnotationAdvisor(); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionRpcAutoConfiguration.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionRpcAutoConfiguration.java new file mode 100644 index 0000000..7d60ff0 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDataPermissionRpcAutoConfiguration.java @@ -0,0 +1,34 @@ +package org.agt.framework.datapermission.config; + +import org.agt.framework.datapermission.core.rpc.DataPermissionRequestInterceptor; +import org.agt.framework.datapermission.core.rpc.DataPermissionRpcWebFilter; +import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.web.servlet.FilterRegistrationBean; +import org.springframework.context.annotation.Bean; + +import static org.agt.framework.common.enums.WebFilterOrderEnum.TENANT_CONTEXT_FILTER; + +/** + * æ•°æ®æƒé™é’ˆå¯¹ RPC 的自动é…置类 + * + * @author åƒé€šæºç  + */ +@AutoConfiguration +@ConditionalOnClass(name = "feign.RequestInterceptor") +public class AgtDataPermissionRpcAutoConfiguration { + + @Bean + public DataPermissionRequestInterceptor dataPermissionRequestInterceptor() { + return new DataPermissionRequestInterceptor(); + } + + @Bean + public FilterRegistrationBean dataPermissionRpcFilter() { + FilterRegistrationBean registrationBean = new FilterRegistrationBean<>(); + registrationBean.setFilter(new DataPermissionRpcWebFilter()); + registrationBean.setOrder(TENANT_CONTEXT_FILTER - 1); // é¡ºåºæ²¡æœ‰ç»å¯¹çš„è¦æ±‚,在租户 Filter å‰é¢ç¨³å¦¥ç‚¹ + return registrationBean; + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDeptDataPermissionAutoConfiguration.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDeptDataPermissionAutoConfiguration.java new file mode 100644 index 0000000..52eb5bb --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/config/AgtDeptDataPermissionAutoConfiguration.java @@ -0,0 +1,44 @@ +package org.agt.framework.datapermission.config; + +import cn.hutool.extra.spring.SpringUtil; +import org.agt.framework.datapermission.core.rule.dept.DeptDataPermissionRule; +import org.agt.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer; +import org.agt.framework.security.core.LoginUser; +import org.agt.module.system.api.permission.PermissionApi; +import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.context.annotation.Bean; + +import java.util.List; + +/** + * åŸºäºŽéƒ¨é—¨çš„æ•°æ®æƒé™ AutoConfiguration + * + * @author åƒé€šæºç  + */ +@AutoConfiguration +@ConditionalOnClass(LoginUser.class) +@ConditionalOnBean(value = DeptDataPermissionRuleCustomizer.class) +public class AgtDeptDataPermissionAutoConfiguration { + + @Bean + public DeptDataPermissionRule deptDataPermissionRule(PermissionApi permissionApi, + List customizers) { + // Cloud 专属逻辑:优先使用本地的 PermissionApi å®žçŽ°ç±»ï¼Œè€Œä¸æ˜¯ Feign 调用 + // 原因:在创建租户时,租户还没创建好,导致 Feign è°ƒç”¨èŽ·å–æ•°æ®æƒé™æ—¶ï¼ŒæŠ¥â€œç§Ÿæˆ·ä¸å­˜åœ¨â€çš„错误 + try { + PermissionApi permissionApiImpl = SpringUtil.getBean("permissionApiImpl", PermissionApi.class); + if (permissionApiImpl != null) { + permissionApi = permissionApiImpl; + } + } catch (Exception ignored) {} + + // 创建 DeptDataPermissionRule 对象 + DeptDataPermissionRule rule = new DeptDataPermissionRule(permissionApi); + // 补全表é…ç½® + customizers.forEach(customizer -> customizer.customize(rule)); + return rule; + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/annotation/DataPermission.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/annotation/DataPermission.java new file mode 100644 index 0000000..c0ddd09 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/annotation/DataPermission.java @@ -0,0 +1,35 @@ +package org.agt.framework.datapermission.core.annotation; + +import org.agt.framework.datapermission.core.rule.DataPermissionRule; + +import java.lang.annotation.*; + +/** + * æ•°æ®æƒé™æ³¨è§£ + * å¯å£°æ˜Žåœ¨ç±»æˆ–è€…æ–¹æ³•ä¸Šï¼Œæ ‡è¯†ä½¿ç”¨çš„æ•°æ®æƒé™è§„则 + * + * @author åƒé€šæºç  + */ +@Target({ElementType.TYPE, ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface DataPermission { + + /** + * 当å‰ç±»æˆ–方法是å¦å¼€å¯æ•°æ®æƒé™ + * å³ä½¿ä¸æ·»åŠ  @DataPermission 注解,默认是开å¯çŠ¶æ€ + * å¯é€šè¿‡è®¾ç½® enable 为 false ç¦ç”¨ + */ + boolean enable() default true; + + /** + * ç”Ÿæ•ˆçš„æ•°æ®æƒé™è§„则数组,优先级高于 {@link #excludeRules()} + */ + Class[] includeRules() default {}; + + /** + * æŽ’é™¤çš„æ•°æ®æƒé™è§„则数组,优先级最低 + */ + Class[] excludeRules() default {}; + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationAdvisor.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationAdvisor.java new file mode 100644 index 0000000..3b6149d --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationAdvisor.java @@ -0,0 +1,36 @@ +package org.agt.framework.datapermission.core.aop; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import org.aopalliance.aop.Advice; +import org.springframework.aop.Pointcut; +import org.springframework.aop.support.AbstractPointcutAdvisor; +import org.springframework.aop.support.ComposablePointcut; +import org.springframework.aop.support.annotation.AnnotationMatchingPointcut; + +/** + * {@link org.agt.framework.datapermission.core.annotation.DataPermission} 注解的 Advisor 实现类 + * + * @author åƒé€šæºç  + */ +@Getter +@EqualsAndHashCode(callSuper = true) +public class DataPermissionAnnotationAdvisor extends AbstractPointcutAdvisor { + + private final Advice advice; + + private final Pointcut pointcut; + + public DataPermissionAnnotationAdvisor() { + this.advice = new DataPermissionAnnotationInterceptor(); + this.pointcut = this.buildPointcut(); + } + + protected Pointcut buildPointcut() { + Pointcut classPointcut = new AnnotationMatchingPointcut(DataPermission.class, true); + Pointcut methodPointcut = new AnnotationMatchingPointcut(null, DataPermission.class, true); + return new ComposablePointcut(classPointcut).union(methodPointcut); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptor.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptor.java new file mode 100644 index 0000000..40f3c23 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptor.java @@ -0,0 +1,72 @@ +package org.agt.framework.datapermission.core.aop; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import lombok.Getter; +import org.aopalliance.intercept.MethodInterceptor; +import org.aopalliance.intercept.MethodInvocation; +import org.springframework.core.MethodClassKey; +import org.springframework.core.annotation.AnnotationUtils; + +import java.lang.reflect.Method; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +/** + * {@link DataPermission} 注解的拦截器 + * 1. 在执行方法å‰ï¼Œå°† @DataPermission 注解入栈 + * 2. 在执行方法åŽï¼Œå°† @DataPermission 注解出栈 + * + * @author åƒé€šæºç  + */ +@DataPermission // 该注解,用于 {@link DATA_PERMISSION_NULL} 的空对象 +public class DataPermissionAnnotationInterceptor implements MethodInterceptor { + + /** + * DataPermission 空对象,用于方法无 {@link DataPermission} 注解时,使用 DATA_PERMISSION_NULL 进行å ä½ + */ + static final DataPermission DATA_PERMISSION_NULL = DataPermissionAnnotationInterceptor.class.getAnnotation(DataPermission.class); + + @Getter + private final Map dataPermissionCache = new ConcurrentHashMap<>(); + + @Override + public Object invoke(MethodInvocation methodInvocation) throws Throwable { + // 入栈 + DataPermission dataPermission = this.findAnnotation(methodInvocation); + if (dataPermission != null) { + DataPermissionContextHolder.add(dataPermission); + } + try { + // 执行逻辑 + return methodInvocation.proceed(); + } finally { + // 出栈 + if (dataPermission != null) { + DataPermissionContextHolder.remove(); + } + } + } + + private DataPermission findAnnotation(MethodInvocation methodInvocation) { + // 1. ä»Žç¼“å­˜ä¸­èŽ·å– + Method method = methodInvocation.getMethod(); + Object targetObject = methodInvocation.getThis(); + Class clazz = targetObject != null ? targetObject.getClass() : method.getDeclaringClass(); + MethodClassKey methodClassKey = new MethodClassKey(method, clazz); + DataPermission dataPermission = dataPermissionCache.get(methodClassKey); + if (dataPermission != null) { + return dataPermission != DATA_PERMISSION_NULL ? dataPermission : null; + } + + // 2.1 ä»Žæ–¹æ³•ä¸­èŽ·å– + dataPermission = AnnotationUtils.findAnnotation(method, DataPermission.class); + // 2.2 ä»Žç±»ä¸ŠèŽ·å– + if (dataPermission == null) { + dataPermission = AnnotationUtils.findAnnotation(clazz, DataPermission.class); + } + // 2.3 添加到缓存中 + dataPermissionCache.put(methodClassKey, dataPermission != null ? dataPermission : DATA_PERMISSION_NULL); + return dataPermission; + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolder.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolder.java new file mode 100644 index 0000000..a398ef9 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolder.java @@ -0,0 +1,72 @@ +package org.agt.framework.datapermission.core.aop; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import com.alibaba.ttl.TransmittableThreadLocal; + +import java.util.LinkedList; +import java.util.List; + +/** + * {@link DataPermission} 注解的 Context 上下文 + * + * @author åƒé€šæºç  + */ +public class DataPermissionContextHolder { + + /** + * 使用 List 的原因,å¯èƒ½å­˜åœ¨æ–¹æ³•的嵌套调用 + */ + private static final ThreadLocal> DATA_PERMISSIONS = + TransmittableThreadLocal.withInitial(LinkedList::new); + + /** + * 获得当å‰çš„ DataPermission 注解 + * + * @return DataPermission 注解 + */ + public static DataPermission get() { + return DATA_PERMISSIONS.get().peekLast(); + } + + /** + * 入栈 DataPermission 注解 + * + * @param dataPermission DataPermission 注解 + */ + public static void add(DataPermission dataPermission) { + DATA_PERMISSIONS.get().addLast(dataPermission); + } + + /** + * 出栈 DataPermission 注解 + * + * @return DataPermission 注解 + */ + public static DataPermission remove() { + DataPermission dataPermission = DATA_PERMISSIONS.get().removeLast(); + // 无元素时,清空 ThreadLocal + if (DATA_PERMISSIONS.get().isEmpty()) { + DATA_PERMISSIONS.remove(); + } + return dataPermission; + } + + /** + * 获得所有 DataPermission + * + * @return DataPermission 队列 + */ + public static List getAll() { + return DATA_PERMISSIONS.get(); + } + + /** + * 清空上下文 + * + * ç›®å‰ä»…ä»…ç”¨äºŽå•æµ‹ + */ + public static void clear() { + DATA_PERMISSIONS.remove(); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandler.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandler.java new file mode 100644 index 0000000..1600b30 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandler.java @@ -0,0 +1,64 @@ +package org.agt.framework.datapermission.core.db; + +import cn.hutool.core.collection.CollUtil; +import org.agt.framework.datapermission.core.rule.DataPermissionRule; +import org.agt.framework.datapermission.core.rule.DataPermissionRuleFactory; +import org.agt.framework.mybatis.core.util.MyBatisUtils; +import com.baomidou.mybatisplus.extension.plugins.handler.MultiDataPermissionHandler; +import lombok.RequiredArgsConstructor; +import net.sf.jsqlparser.expression.Expression; +import net.sf.jsqlparser.expression.operators.conditional.AndExpression; +import net.sf.jsqlparser.schema.Table; + +import java.util.List; + +import static org.agt.framework.security.core.util.SecurityFrameworkUtils.skipPermissionCheck; + +/** + * 基于 {@link DataPermissionRule} çš„æ•°æ®æƒé™å¤„ç†å™¨ + * + * 它的底层,是基于 MyBatis Plus çš„ æ•°æ®æƒé™æ’ä»¶ + * 核心原ç†ï¼šå®ƒä¼šåœ¨ SQL æ‰§è¡Œå‰æ‹¦æˆª SQL 语å¥ï¼Œå¹¶æ ¹æ®ç”¨æˆ·æƒé™åŠ¨æ€æ·»åŠ æƒé™ç›¸å…³çš„ SQL ç‰‡æ®µã€‚è¿™æ ·ï¼Œåªæœ‰ç”¨æˆ·æœ‰æƒé™è®¿é—®çš„æ•°æ®æ‰ä¼šè¢«æŸ¥è¯¢å‡ºæ¥ + * + * @author åƒé€šæºç  + */ +@RequiredArgsConstructor +public class DataPermissionRuleHandler implements MultiDataPermissionHandler { + + private final DataPermissionRuleFactory ruleFactory; + + @Override + public Expression getSqlSegment(Table table, Expression where, String mappedStatementId) { + // 特殊:跨租户访问 + if (skipPermissionCheck()) { + return null; + } + + // 获得 Mapper å¯¹åº”çš„æ•°æ®æƒé™çš„规则 + List rules = ruleFactory.getDataPermissionRule(mappedStatementId); + if (CollUtil.isEmpty(rules)) { + return null; + } + + // ç”Ÿæˆæ¡ä»¶ + Expression allExpression = null; + for (DataPermissionRule rule : rules) { + // åˆ¤æ–­è¡¨åæ˜¯å¦åŒ¹é… + String tableName = MyBatisUtils.getTableName(table); + if (!rule.getTableNames().contains(tableName)) { + continue; + } + + // 啿¡è§„则的æ¡ä»¶ + Expression oneExpress = rule.getExpression(tableName, table.getAlias()); + if (oneExpress == null) { + continue; + } + // 拼接到 allExpression 中 + allExpression = allExpression == null ? oneExpress + : new AndExpression(allExpression, oneExpress); + } + return allExpression; + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRequestInterceptor.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRequestInterceptor.java new file mode 100644 index 0000000..21d1307 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRequestInterceptor.java @@ -0,0 +1,27 @@ +package org.agt.framework.datapermission.core.rpc; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import org.agt.framework.datapermission.core.aop.DataPermissionContextHolder; +import feign.RequestInterceptor; +import feign.RequestTemplate; + +/** + * DataPermission çš„ RequestInterceptor 实现类:Feign 请求时,将 {@link DataPermission} 设置到 header 中,继续é€ä¼ ç»™è¢«è°ƒç”¨çš„æœåŠ¡ + * + * 注æ„:由于 {@link DataPermission} 䏿”¯æŒåºåˆ—化和ååºåˆ—化,所以暂时åªèƒ½ä¼ é€’它的 enable 属性 + * + * @author åƒé€šæºç  + */ +public class DataPermissionRequestInterceptor implements RequestInterceptor { + + public static final String ENABLE_HEADER_NAME = "data-permission-enable"; + + @Override + public void apply(RequestTemplate requestTemplate) { + DataPermission dataPermission = DataPermissionContextHolder.get(); + if (dataPermission != null && Boolean.FALSE.equals(dataPermission.enable())) { + requestTemplate.header(ENABLE_HEADER_NAME, "false"); + } + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRpcWebFilter.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRpcWebFilter.java new file mode 100644 index 0000000..145356f --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rpc/DataPermissionRpcWebFilter.java @@ -0,0 +1,38 @@ +package org.agt.framework.datapermission.core.rpc; + +import org.agt.framework.datapermission.core.aop.DataPermissionContextHolder; +import org.agt.framework.datapermission.core.util.DataPermissionUtils; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.web.filter.OncePerRequestFilter; + +import java.io.IOException; +import java.util.Objects; + +/** + * 针对 {@link DataPermissionRequestInterceptor} çš„ RPC 调用,设置 {@link DataPermissionContextHolder} 的上下文 + * + * @author åƒé€šæºç  + */ +public class DataPermissionRpcWebFilter extends OncePerRequestFilter { + + @Override + protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) + throws ServletException, IOException { + String enable = request.getHeader(DataPermissionRequestInterceptor.ENABLE_HEADER_NAME); + if (Objects.equals(enable, Boolean.FALSE.toString())) { + DataPermissionUtils.executeIgnore(() -> { + try { + chain.doFilter(request, response); + } catch (IOException | ServletException e) { + throw new RuntimeException(e); + } + }); + } else { + chain.doFilter(request, response); + } + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRule.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRule.java new file mode 100644 index 0000000..db1e6f7 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRule.java @@ -0,0 +1,36 @@ +package org.agt.framework.datapermission.core.rule; + +import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; +import net.sf.jsqlparser.expression.Alias; +import net.sf.jsqlparser.expression.Expression; + +import java.util.Set; + +/** + * æ•°æ®æƒé™è§„åˆ™æŽ¥å£ + * 通过实现接å£ï¼Œè‡ªå®šä¹‰æ•°æ®è§„则。例如说, + * + * @author åƒé€šæºç  + */ +public interface DataPermissionRule { + + /** + * 返回需è¦ç”Ÿæ•ˆçš„è¡¨åæ•°ç»„ + * 为什么需è¦è¯¥æ–¹æ³•?Data Permission 数组基于 SQL é‡å†™ï¼Œé€šè¿‡ Where è¿”å›žåªæœ‰æƒé™çš„æ•°æ® + * + * 如果需è¦åŸºäºŽå®žä½“å获得表å,å¯è°ƒç”¨ {@link TableInfoHelper#getTableInfo(Class)} 获得 + * + * @return è¡¨åæ•°ç»„ + */ + Set getTableNames(); + + /** + * æ ¹æ®è¡¨å和别å,生æˆå¯¹åº”çš„ WHERE / OR 过滤æ¡ä»¶ + * + * @param tableName 表å + * @param tableAlias 别å,å¯èƒ½ä¸ºç©º + * @return 过滤æ¡ä»¶ Expression è¡¨è¾¾å¼ + */ + Expression getExpression(String tableName, Alias tableAlias); + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactory.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactory.java new file mode 100644 index 0000000..27f2ce5 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactory.java @@ -0,0 +1,28 @@ +package org.agt.framework.datapermission.core.rule; + +import java.util.List; + +/** + * {@link DataPermissionRule} å·¥åŽ‚æŽ¥å£ + * 作为 {@link DataPermissionRule} 的容器,æä¾›ç®¡ç†èƒ½åŠ› + * + * @author åƒé€šæºç  + */ +public interface DataPermissionRuleFactory { + + /** + * èŽ·å¾—æ‰€æœ‰æ•°æ®æƒé™è§„则数组 + * + * @return æ•°æ®æƒé™è§„则数组 + */ + List getDataPermissionRules(); + + /** + * 获得指定 Mapper çš„æ•°æ®æƒé™è§„则数组 + * + * @param mappedStatementId 指定 Mapper çš„ç¼–å· + * @return æ•°æ®æƒé™è§„则数组 + */ + List getDataPermissionRule(String mappedStatementId); + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImpl.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImpl.java new file mode 100644 index 0000000..aaa6ff7 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImpl.java @@ -0,0 +1,62 @@ +package org.agt.framework.datapermission.core.rule; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ArrayUtil; +import org.agt.framework.datapermission.core.annotation.DataPermission; +import org.agt.framework.datapermission.core.aop.DataPermissionContextHolder; +import lombok.RequiredArgsConstructor; + +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 默认的 DataPermissionRuleFactoryImpl 实现类 + * 支æŒé€šè¿‡ {@link DataPermissionContextHolder} è¿‡æ»¤æ•°æ®æƒé™ + * + * @author åƒé€šæºç  + */ +@RequiredArgsConstructor +public class DataPermissionRuleFactoryImpl implements DataPermissionRuleFactory { + + /** + * æ•°æ®æƒé™è§„则数组 + */ + private final List rules; + + @Override + public List getDataPermissionRules() { + return rules; + } + + @Override // mappedStatementId 傿•°ï¼Œæš‚时没有用。以åŽï¼Œå¯ä»¥åŸºäºŽ mappedStatementId + DataPermission 进行缓存 + public List getDataPermissionRule(String mappedStatementId) { + // 1. æ— æ•°æ®æƒé™ + if (CollUtil.isEmpty(rules)) { + return Collections.emptyList(); + } + // 2. 未é…ç½®ï¼Œåˆ™é»˜è®¤å¼€å¯ + DataPermission dataPermission = DataPermissionContextHolder.get(); + if (dataPermission == null) { + return rules; + } + // 3. å·²é…置,但ç¦ç”¨ + if (!dataPermission.enable()) { + return Collections.emptyList(); + } + + // 4. å·²é…置,åªé€‰æ‹©éƒ¨åˆ†è§„则 + if (ArrayUtil.isNotEmpty(dataPermission.includeRules())) { + return rules.stream().filter(rule -> ArrayUtil.contains(dataPermission.includeRules(), rule.getClass())) + .collect(Collectors.toList()); // 一般规则ä¸ä¼šå¤ªå¤šï¼Œæ‰€ä»¥ä¸é‡‡ç”¨ HashSet 查询 + } + // 5. å·²é…ç½®ï¼ŒåªæŽ’é™¤éƒ¨åˆ†è§„åˆ™ + if (ArrayUtil.isNotEmpty(dataPermission.excludeRules())) { + return rules.stream().filter(rule -> !ArrayUtil.contains(dataPermission.excludeRules(), rule.getClass())) + .collect(Collectors.toList()); // 一般规则ä¸ä¼šå¤ªå¤šï¼Œæ‰€ä»¥ä¸é‡‡ç”¨ HashSet 查询 + } + // 6. å·²é…置,全部规则 + return rules; + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java new file mode 100644 index 0000000..e9caebc --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java @@ -0,0 +1,207 @@ +package org.agt.framework.datapermission.core.rule.dept; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import org.agt.framework.common.enums.UserTypeEnum; +import org.agt.framework.common.util.collection.CollectionUtils; +import org.agt.framework.common.util.json.JsonUtils; +import org.agt.framework.datapermission.core.rule.DataPermissionRule; +import org.agt.framework.mybatis.core.dataobject.BaseDO; +import org.agt.framework.mybatis.core.util.MyBatisUtils; +import org.agt.framework.security.core.LoginUser; +import org.agt.framework.security.core.util.SecurityFrameworkUtils; +import org.agt.module.system.api.permission.PermissionApi; +import org.agt.module.system.api.permission.dto.DeptDataPermissionRespDTO; +import com.baomidou.mybatisplus.core.metadata.TableInfoHelper; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import net.sf.jsqlparser.expression.*; +import net.sf.jsqlparser.expression.operators.conditional.OrExpression; +import net.sf.jsqlparser.expression.operators.relational.EqualsTo; +import net.sf.jsqlparser.expression.operators.relational.ExpressionList; +import net.sf.jsqlparser.expression.operators.relational.InExpression; +import net.sf.jsqlparser.expression.operators.relational.ParenthesedExpressionList; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +/** + * 基于部门的 {@link DataPermissionRule} æ•°æ®æƒé™è§„则实现 + * + * 注æ„,使用 DeptDataPermissionRule 时,需è¦ä¿è¯è¡¨ä¸­æœ‰ dept_id 部门编å·çš„字段,å¯è‡ªå®šä¹‰ã€‚ + * + * 实际业务场景下,会存在一个ç»å…¸çš„问题?当用户修改部门时,冗余的 dept_id 是å¦éœ€è¦ä¿®æ”¹ï¼Ÿ + * 1. 一般情况下,dept_id ä¸è¿›è¡Œä¿®æ”¹ï¼Œåˆ™ä¼šå¯¼è‡´ç”¨æˆ·çœ‹ä¸åˆ°ä¹‹å‰çš„æ•°æ®ã€‚ã€agt-server 采用该方案】 + * 2. 部分情况下,希望该用户还是能看到之å‰çš„æ•°æ®ï¼Œåˆ™æœ‰ä¸¤ç§æ–¹å¼è§£å†³ï¼šã€éœ€è¦ä½ æ”¹é€ è¯¥ DeptDataPermissionRule 的实现代ç ã€‘ + * 1)编写洗数æ®çš„脚本,将 dept_id ä¿®æ”¹æˆæ–°éƒ¨é—¨çš„ç¼–å·ï¼›ã€å»ºè®®ã€‘ + * 最终过滤æ¡ä»¶æ˜¯ WHERE dept_id = ? + * 2)洗数æ®çš„è¯ï¼Œå¯èƒ½æ¶‰åŠçš„æ•°æ®é‡è¾ƒå¤§ï¼Œä¹Ÿå¯ä»¥é‡‡ç”¨ user_id 进行过滤的方å¼ï¼Œæ­¤æ—¶éœ€è¦èŽ·å–到 dept_id 对应的所有 user_id 用户编å·ï¼› + * 最终过滤æ¡ä»¶æ˜¯ WHERE user_id IN (?, ?, ? ...) + * 3)想è¦ä¿è¯åŽŸ dept_id å’Œ user_id 都å¯ä»¥çœ‹çš„到,此时使用 dept_id å’Œ user_id 一起过滤; + * 最终过滤æ¡ä»¶æ˜¯ WHERE dept_id = ? OR user_id IN (?, ?, ? ...) + * + * @author åƒé€šæºç  + */ +@AllArgsConstructor +@Slf4j +public class DeptDataPermissionRule implements DataPermissionRule { + + /** + * LoginUser çš„ Context 缓存 Key + */ + protected static final String CONTEXT_KEY = DeptDataPermissionRule.class.getSimpleName(); + + private static final String DEPT_COLUMN_NAME = "dept_id"; + private static final String USER_COLUMN_NAME = "user_id"; + + static final Expression EXPRESSION_NULL = new NullValue(); + + private final PermissionApi permissionApi; + + /** + * 基于部门的表字段é…ç½® + * 一般情况下,æ¯ä¸ªè¡¨çš„部门编å·å­—段是 dept_id,通过该é…置自定义。 + * + * key:表å + * value:字段å + */ + private final Map deptColumns = new HashMap<>(); + /** + * 基于用户的表字段é…ç½® + * 一般情况下,æ¯ä¸ªè¡¨çš„部门编å·å­—段是 dept_id,通过该é…置自定义。 + * + * key:表å + * value:字段å + */ + private final Map userColumns = new HashMap<>(); + /** + * 所有表å,是 {@link #deptColumns} å’Œ {@link #userColumns} çš„åˆé›† + */ + private final Set TABLE_NAMES = new HashSet<>(); + + @Override + public Set getTableNames() { + return TABLE_NAMES; + } + + @Override + public Expression getExpression(String tableName, Alias tableAlias) { + // åªæœ‰æœ‰ç™»é™†ç”¨æˆ·çš„æƒ…况下,æ‰è¿›è¡Œæ•°æ®æƒé™çš„å¤„ç† + LoginUser loginUser = SecurityFrameworkUtils.getLoginUser(); + if (loginUser == null) { + return null; + } + // åªæœ‰ç®¡ç†å‘˜ç±»åž‹çš„用户,æ‰è¿›è¡Œæ•°æ®æƒé™çš„å¤„ç† + if (ObjectUtil.notEqual(loginUser.getUserType(), UserTypeEnum.ADMIN.getValue())) { + return null; + } + + // èŽ·å¾—æ•°æ®æƒé™ + DeptDataPermissionRespDTO deptDataPermission = loginUser.getContext(CONTEXT_KEY, DeptDataPermissionRespDTO.class); + // 从上下文中拿ä¸åˆ°ï¼Œåˆ™è°ƒç”¨é€»è¾‘è¿›è¡ŒèŽ·å– + if (deptDataPermission == null) { + deptDataPermission = permissionApi.getDeptDataPermission(loginUser.getId()).getCheckedData(); + if (deptDataPermission == null) { + log.error("[getExpression][LoginUser({}) èŽ·å–æ•°æ®æƒé™ä¸º null]", JsonUtils.toJsonString(loginUser)); + throw new NullPointerException(String.format("LoginUser(%d) Table(%s/%s) æœªè¿”å›žæ•°æ®æƒé™", + loginUser.getId(), tableName, tableAlias.getName())); + } + // 添加到上下文中,é¿å…é‡å¤è®¡ç®— + loginUser.setContext(CONTEXT_KEY, deptDataPermission); + } + + // 情况一,如果是 ALL 坿Ÿ¥çœ‹å…¨éƒ¨ï¼Œåˆ™æ— éœ€æ‹¼æŽ¥æ¡ä»¶ + if (deptDataPermission.getAll()) { + return null; + } + + // 情况二,å³ä¸èƒ½æŸ¥çœ‹éƒ¨é—¨ï¼Œåˆä¸èƒ½æŸ¥çœ‹è‡ªå·±ï¼Œåˆ™è¯´æ˜Ž 100% æ— æƒé™ + if (CollUtil.isEmpty(deptDataPermission.getDeptIds()) + && Boolean.FALSE.equals(deptDataPermission.getSelf())) { + return new EqualsTo(null, null); // WHERE null = null,å¯ä»¥ä¿è¯è¿”回的数æ®ä¸ºç©º + } + + // 情况三,拼接 Dept å’Œ User çš„æ¡ä»¶ï¼Œæœ€åŽç»„åˆ + Expression deptExpression = buildDeptExpression(tableName,tableAlias, deptDataPermission.getDeptIds()); + Expression userExpression = buildUserExpression(tableName, tableAlias, deptDataPermission.getSelf(), loginUser.getId()); + if (deptExpression == null && userExpression == null) { + // TODO 芋艿:获得ä¸åˆ°æ¡ä»¶çš„æ—¶å€™ï¼Œæš‚æ—¶ä¸æŠ›å‡ºå¼‚å¸¸ï¼Œè€Œæ˜¯ä¸è¿”å›žæ•°æ® + log.warn("[getExpression][LoginUser({}) Table({}/{}) DeptDataPermission({}) 构建的æ¡ä»¶ä¸ºç©º]", + JsonUtils.toJsonString(loginUser), tableName, tableAlias, JsonUtils.toJsonString(deptDataPermission)); +// throw new NullPointerException(String.format("LoginUser(%d) Table(%s/%s) 构建的æ¡ä»¶ä¸ºç©º", +// loginUser.getId(), tableName, tableAlias.getName())); + return EXPRESSION_NULL; + } + if (deptExpression == null) { + return userExpression; + } + if (userExpression == null) { + return deptExpression; + } + // ç›®å‰ï¼Œå¦‚果有指定部门 + 坿Ÿ¥çœ‹è‡ªå·±ï¼Œé‡‡ç”¨ OR æ¡ä»¶ã€‚å³ï¼ŒWHERE (dept_id IN ? OR user_id = ?) + return new ParenthesedExpressionList(new OrExpression(deptExpression, userExpression)); + } + + private Expression buildDeptExpression(String tableName, Alias tableAlias, Set deptIds) { + // 如果ä¸å­˜åœ¨é…置,则无需作为æ¡ä»¶ + String columnName = deptColumns.get(tableName); + if (StrUtil.isEmpty(columnName)) { + return null; + } + // 如果为空,则无æ¡ä»¶ + if (CollUtil.isEmpty(deptIds)) { + return null; + } + // 拼接æ¡ä»¶ + return new InExpression(MyBatisUtils.buildColumn(tableName, tableAlias, columnName), + // Parenthesis 的目的,是æä¾› (1,2,3) çš„ () 左峿‹¬å· + new ParenthesedExpressionList(new ExpressionList(CollectionUtils.convertList(deptIds, LongValue::new)))); + } + + private Expression buildUserExpression(String tableName, Alias tableAlias, Boolean self, Long userId) { + // å¦‚æžœä¸æŸ¥çœ‹è‡ªå·±ï¼Œåˆ™æ— éœ€ä½œä¸ºæ¡ä»¶ + if (Boolean.FALSE.equals(self)) { + return null; + } + String columnName = userColumns.get(tableName); + if (StrUtil.isEmpty(columnName)) { + return null; + } + // 拼接æ¡ä»¶ + return new EqualsTo(MyBatisUtils.buildColumn(tableName, tableAlias, columnName), new LongValue(userId)); + } + + // ==================== 添加é…ç½® ==================== + + public void addDeptColumn(Class entityClass) { + addDeptColumn(entityClass, DEPT_COLUMN_NAME); + } + + public void addDeptColumn(Class entityClass, String columnName) { + String tableName = TableInfoHelper.getTableInfo(entityClass).getTableName(); + addDeptColumn(tableName, columnName); + } + + public void addDeptColumn(String tableName, String columnName) { + deptColumns.put(tableName, columnName); + TABLE_NAMES.add(tableName); + } + + public void addUserColumn(Class entityClass) { + addUserColumn(entityClass, USER_COLUMN_NAME); + } + + public void addUserColumn(Class entityClass, String columnName) { + String tableName = TableInfoHelper.getTableInfo(entityClass).getTableName(); + addUserColumn(tableName, columnName); + } + + public void addUserColumn(String tableName, String columnName) { + userColumns.put(tableName, columnName); + TABLE_NAMES.add(tableName); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleCustomizer.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleCustomizer.java new file mode 100644 index 0000000..fe8a846 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleCustomizer.java @@ -0,0 +1,20 @@ +package org.agt.framework.datapermission.core.rule.dept; + +/** + * {@link DeptDataPermissionRule} 的自定义é…ç½®æŽ¥å£ + * + * @author åƒé€šæºç  + */ +@FunctionalInterface +public interface DeptDataPermissionRuleCustomizer { + + /** + * 自定义该æƒé™è§„则 + * 1. 调用 {@link DeptDataPermissionRule#addDeptColumn(Class, String)} 方法,é…置基于 dept_id 的过滤规则 + * 2. 调用 {@link DeptDataPermissionRule#addUserColumn(Class, String)} 方法,é…置基于 user_id 的过滤规则 + * + * @param rule æƒé™è§„则 + */ + void customize(DeptDataPermissionRule rule); + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/package-info.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/package-info.java new file mode 100644 index 0000000..5101d4b --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/rule/dept/package-info.java @@ -0,0 +1,6 @@ +/** + * åŸºäºŽéƒ¨é—¨çš„æ•°æ®æƒé™è§„则 + * + * @author åƒé€šæºç  + */ +package org.agt.framework.datapermission.core.rule.dept; diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/util/DataPermissionUtils.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/util/DataPermissionUtils.java new file mode 100644 index 0000000..0099bfe --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/core/util/DataPermissionUtils.java @@ -0,0 +1,73 @@ +package org.agt.framework.datapermission.core.util; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import org.agt.framework.datapermission.core.aop.DataPermissionContextHolder; +import lombok.SneakyThrows; + +import java.util.concurrent.Callable; + +/** + * æ•°æ®æƒé™ Util + * + * @author åƒé€šæºç  + */ +public class DataPermissionUtils { + + private static DataPermission DATA_PERMISSION_DISABLE; + + @DataPermission(enable = false) + @SneakyThrows + private static DataPermission getDisableDataPermissionDisable() { + if (DATA_PERMISSION_DISABLE == null) { + DATA_PERMISSION_DISABLE = DataPermissionUtils.class + .getDeclaredMethod("getDisableDataPermissionDisable") + .getAnnotation(DataPermission.class); + } + return DATA_PERMISSION_DISABLE; + } + + /** + * å¿½ç•¥æ•°æ®æƒé™ï¼Œæ‰§è¡Œå¯¹åº”的逻辑 + * + * @param runnable 逻辑 + */ + public static void executeIgnore(Runnable runnable) { + addDisableDataPermission(); + try { + // 执行 runnable + runnable.run(); + } finally { + removeDataPermission(); + } + } + + /** + * å¿½ç•¥æ•°æ®æƒé™ï¼Œæ‰§è¡Œå¯¹åº”的逻辑 + * + * @param callable 逻辑 + * @return 执行结果 + */ + @SneakyThrows + public static T executeIgnore(Callable callable) { + addDisableDataPermission(); + try { + // 执行 callable + return callable.call(); + } finally { + removeDataPermission(); + } + } + + /** + * æ·»åŠ å¿½ç•¥æ•°æ®æƒé™ + */ + public static void addDisableDataPermission(){ + DataPermission dataPermission = getDisableDataPermissionDisable(); + DataPermissionContextHolder.add(dataPermission); + } + + public static void removeDataPermission(){ + DataPermissionContextHolder.remove(); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/package-info.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/package-info.java new file mode 100644 index 0000000..215a807 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/java/org/agt/framework/datapermission/package-info.java @@ -0,0 +1,4 @@ +/** + * 基于 JSqlParser è§£æž SQLï¼Œå¢žåŠ æ•°æ®æƒé™çš„ WHERE æ¡ä»¶ + */ +package org.agt.framework.datapermission; diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..7a5ba7d --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1,3 @@ +org.agt.framework.datapermission.config.AgtDataPermissionAutoConfiguration +org.agt.framework.datapermission.config.AgtDeptDataPermissionAutoConfiguration +org.agt.framework.datapermission.config.AgtDataPermissionRpcAutoConfiguration diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptorTest.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptorTest.java new file mode 100644 index 0000000..629225b --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionAnnotationInterceptorTest.java @@ -0,0 +1,108 @@ +package org.agt.framework.datapermission.core.aop; + +import cn.hutool.core.collection.CollUtil; +import org.agt.framework.datapermission.core.annotation.DataPermission; +import org.agt.framework.test.core.ut.BaseMockitoUnitTest; +import org.aopalliance.intercept.MethodInvocation; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.InjectMocks; +import org.mockito.Mock; + +import java.lang.reflect.Method; + +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.Mockito.when; + +/** + * {@link DataPermissionAnnotationInterceptor} çš„å•元测试 + * + * @author åƒé€šæºç  + */ +public class DataPermissionAnnotationInterceptorTest extends BaseMockitoUnitTest { + + @InjectMocks + private DataPermissionAnnotationInterceptor interceptor; + + @Mock + private MethodInvocation methodInvocation; + + @BeforeEach + public void setUp() { + interceptor.getDataPermissionCache().clear(); + } + + @Test // æ—  @DataPermission 注解 + public void testInvoke_none() throws Throwable { + // 傿•° + mockMethodInvocation(TestNone.class); + + // 调用 + Object result = interceptor.invoke(methodInvocation); + // 断言 + assertEquals("none", result); + assertEquals(1, interceptor.getDataPermissionCache().size()); + assertTrue(CollUtil.getFirst(interceptor.getDataPermissionCache().values()).enable()); + } + + @Test // 在 Method 上有 @DataPermission 注解 + public void testInvoke_method() throws Throwable { + // 傿•° + mockMethodInvocation(TestMethod.class); + + // 调用 + Object result = interceptor.invoke(methodInvocation); + // 断言 + assertEquals("method", result); + assertEquals(1, interceptor.getDataPermissionCache().size()); + assertFalse(CollUtil.getFirst(interceptor.getDataPermissionCache().values()).enable()); + } + + @Test // 在 Class 上有 @DataPermission 注解 + public void testInvoke_class() throws Throwable { + // 傿•° + mockMethodInvocation(TestClass.class); + + // 调用 + Object result = interceptor.invoke(methodInvocation); + // 断言 + assertEquals("class", result); + assertEquals(1, interceptor.getDataPermissionCache().size()); + assertFalse(CollUtil.getFirst(interceptor.getDataPermissionCache().values()).enable()); + } + + private void mockMethodInvocation(Class clazz) throws Throwable { + Object targetObject = clazz.newInstance(); + Method method = targetObject.getClass().getMethod("echo"); + when(methodInvocation.getThis()).thenReturn(targetObject); + when(methodInvocation.getMethod()).thenReturn(method); + when(methodInvocation.proceed()).then(invocationOnMock -> method.invoke(targetObject)); + } + + static class TestMethod { + + @DataPermission(enable = false) + public String echo() { + return "method"; + } + + } + + @DataPermission(enable = false) + static class TestClass { + + public String echo() { + return "class"; + } + + } + + static class TestNone { + + public String echo() { + return "none"; + } + + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolderTest.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolderTest.java new file mode 100644 index 0000000..ee9fe84 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/aop/DataPermissionContextHolderTest.java @@ -0,0 +1,66 @@ +package org.agt.framework.datapermission.core.aop; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.mockito.Mockito.mock; + +/** + * {@link DataPermissionContextHolder} çš„å•元测试 + * + * @author åƒé€šæºç  + */ +class DataPermissionContextHolderTest { + + @BeforeEach + public void setUp() { + DataPermissionContextHolder.clear(); + } + + @Test + public void testGet() { + // mock 方法 + DataPermission dataPermission01 = mock(DataPermission.class); + DataPermissionContextHolder.add(dataPermission01); + DataPermission dataPermission02 = mock(DataPermission.class); + DataPermissionContextHolder.add(dataPermission02); + + // 调用 + DataPermission result = DataPermissionContextHolder.get(); + // 断言 + assertSame(result, dataPermission02); + } + + @Test + public void testPush() { + // 调用 + DataPermission dataPermission01 = mock(DataPermission.class); + DataPermissionContextHolder.add(dataPermission01); + DataPermission dataPermission02 = mock(DataPermission.class); + DataPermissionContextHolder.add(dataPermission02); + // 断言 + DataPermission first = DataPermissionContextHolder.getAll().get(0); + DataPermission second = DataPermissionContextHolder.getAll().get(1); + assertSame(dataPermission01, first); + assertSame(dataPermission02, second); + } + + @Test + public void testRemove() { + // mock 方法 + DataPermission dataPermission01 = mock(DataPermission.class); + DataPermissionContextHolder.add(dataPermission01); + DataPermission dataPermission02 = mock(DataPermission.class); + DataPermissionContextHolder.add(dataPermission02); + + // 调用 + DataPermission result = DataPermissionContextHolder.remove(); + // 断言 + assertSame(result, dataPermission02); + assertEquals(1, DataPermissionContextHolder.getAll().size()); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandlerTest.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandlerTest.java new file mode 100644 index 0000000..93e9679 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/db/DataPermissionRuleHandlerTest.java @@ -0,0 +1,540 @@ +package org.agt.framework.datapermission.core.db; + +import org.agt.framework.datapermission.core.rule.DataPermissionRule; +import org.agt.framework.datapermission.core.rule.DataPermissionRuleFactory; +import org.agt.framework.mybatis.core.util.MyBatisUtils; +import org.agt.framework.test.core.ut.BaseMockitoUnitTest; +import com.baomidou.mybatisplus.extension.plugins.inner.DataPermissionInterceptor; +import net.sf.jsqlparser.expression.Alias; +import net.sf.jsqlparser.expression.Expression; +import net.sf.jsqlparser.expression.LongValue; +import net.sf.jsqlparser.expression.operators.relational.EqualsTo; +import net.sf.jsqlparser.expression.operators.relational.ExpressionList; +import net.sf.jsqlparser.expression.operators.relational.InExpression; +import net.sf.jsqlparser.expression.operators.relational.ParenthesedExpressionList; +import net.sf.jsqlparser.schema.Column; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.InjectMocks; +import org.mockito.Mock; + +import java.util.Arrays; +import java.util.Set; + +import static org.agt.framework.common.util.collection.SetUtils.asSet; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.when; + +/** + * {@link DataPermissionRuleHandler} çš„å•元测试 + * 主è¦å¤ç”¨äº† MyBatis Plus çš„ TenantLineInnerInterceptorTest çš„å•元测试 + * ä¸è¿‡å®ƒçš„å•å…ƒæµ‹è¯•ä¸æ˜¯å¾ˆè§„范,考虑到是å¤ç”¨çš„,所以暂时ä¸è¿›è¡Œä¿®æ”¹~ + * + * @author åƒé€šæºç  + */ +public class DataPermissionRuleHandlerTest extends BaseMockitoUnitTest { + + @InjectMocks + private DataPermissionRuleHandler handler; + + @Mock + private DataPermissionRuleFactory ruleFactory; + + private DataPermissionInterceptor interceptor; + + @BeforeEach + public void setUp() { + interceptor = new DataPermissionInterceptor(handler); + + // ç§Ÿæˆ·çš„æ•°æ®æƒé™è§„则 + DataPermissionRule tenantRule = new DataPermissionRule() { + + private static final String COLUMN = "tenant_id"; + + @Override + public Set getTableNames() { + return asSet("entity", "entity1", "entity2", "entity3", "t1", "t2", "sys_dict_item", // æ”¯æŒ MyBatis Plus çš„å•元测试 + "t_user", "t_role"); // 满足自己的å•元测试 + } + + @Override + public Expression getExpression(String tableName, Alias tableAlias) { + Column column = MyBatisUtils.buildColumn(tableName, tableAlias, COLUMN); + LongValue value = new LongValue(1L); + return new EqualsTo(column, value); + } + + }; + // éƒ¨é—¨çš„æ•°æ®æƒé™è§„则 + DataPermissionRule deptRule = new DataPermissionRule() { + + private static final String COLUMN = "dept_id"; + + @Override + public Set getTableNames() { + return asSet("t_user"); // 满足自己的å•元测试 + } + + @Override + public Expression getExpression(String tableName, Alias tableAlias) { + Column column = MyBatisUtils.buildColumn(tableName, tableAlias, COLUMN); + ExpressionList values = new ExpressionList<>(new LongValue(10L), + new LongValue(20L)); + return new InExpression(column, new ParenthesedExpressionList((values))); + } + + }; + // 设置到上下文 + when(ruleFactory.getDataPermissionRule(any())).thenReturn(Arrays.asList(tenantRule, deptRule)); + } + + @Test + void delete() { + assertSql("delete from entity where id = ?", + "DELETE FROM entity WHERE id = ? AND entity.tenant_id = 1"); + } + + @Test + void update() { + assertSql("update entity set name = ? where id = ?", + "UPDATE entity SET name = ? WHERE id = ? AND entity.tenant_id = 1"); + } + + @Test + void selectSingle() { + // å•表 + assertSql("select * from entity where id = ?", + "SELECT * FROM entity WHERE id = ? AND entity.tenant_id = 1"); + + assertSql("select * from entity where id = ? or name = ?", + "SELECT * FROM entity WHERE (id = ? OR name = ?) AND entity.tenant_id = 1"); + + assertSql("SELECT * FROM entity WHERE (id = ? OR name = ?)", + "SELECT * FROM entity WHERE (id = ? OR name = ?) AND entity.tenant_id = 1"); + + /* not */ + assertSql("SELECT * FROM entity WHERE not (id = ? OR name = ?)", + "SELECT * FROM entity WHERE NOT (id = ? OR name = ?) AND entity.tenant_id = 1"); + } + + @Test + void selectSubSelectIn() { + /* in */ + assertSql("SELECT * FROM entity e WHERE e.id IN (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE e.id IN (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + // åœ¨æœ€å‰ + assertSql("SELECT * FROM entity e WHERE e.id IN " + + "(select e1.id from entity1 e1 where e1.id = ?) and e.id = ?", + "SELECT * FROM entity e WHERE e.id IN " + + "(SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.id = ? AND e.tenant_id = 1"); + // åœ¨æœ€åŽ + assertSql("SELECT * FROM entity e WHERE e.id = ? and e.id IN " + + "(select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE e.id = ? AND e.id IN " + + "(SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + // 在中间 + assertSql("SELECT * FROM entity e WHERE e.id = ? and e.id IN " + + "(select e1.id from entity1 e1 where e1.id = ?) and e.id = ?", + "SELECT * FROM entity e WHERE e.id = ? AND e.id IN " + + "(SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.id = ? AND e.tenant_id = 1"); + } + + @Test + void selectSubSelectEq() { + /* = */ + assertSql("SELECT * FROM entity e WHERE e.id = (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE e.id = (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + } + + @Test + void selectSubSelectInnerNotEq() { + /* inner not = */ + assertSql("SELECT * FROM entity e WHERE not (e.id = (select e1.id from entity1 e1 where e1.id = ?))", + "SELECT * FROM entity e WHERE NOT (e.id = (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1)) AND e.tenant_id = 1"); + + assertSql("SELECT * FROM entity e WHERE not (e.id = (select e1.id from entity1 e1 where e1.id = ?) and e.id = ?)", + "SELECT * FROM entity e WHERE NOT (e.id = (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.id = ?) AND e.tenant_id = 1"); + } + + @Test + void selectSubSelectExists() { + /* EXISTS */ + assertSql("SELECT * FROM entity e WHERE EXISTS (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE EXISTS (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + + + /* NOT EXISTS */ + assertSql("SELECT * FROM entity e WHERE NOT EXISTS (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE NOT EXISTS (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + } + + @Test + void selectSubSelect() { + /* >= */ + assertSql("SELECT * FROM entity e WHERE e.id >= (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE e.id >= (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + + + /* <= */ + assertSql("SELECT * FROM entity e WHERE e.id <= (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE e.id <= (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + + + /* <> */ + assertSql("SELECT * FROM entity e WHERE e.id <> (select e1.id from entity1 e1 where e1.id = ?)", + "SELECT * FROM entity e WHERE e.id <> (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1"); + } + + @Test + void selectFromSelect() { + assertSql("SELECT * FROM (select e.id from entity e WHERE e.id = (select e1.id from entity1 e1 where e1.id = ?))", + "SELECT * FROM (SELECT e.id FROM entity e WHERE e.id = (SELECT e1.id FROM entity1 e1 WHERE e1.id = ? AND e1.tenant_id = 1) AND e.tenant_id = 1)"); + } + + @Test + void selectBodySubSelect() { + assertSql("select t1.col1,(select t2.col2 from t2 t2 where t1.col1=t2.col1) from t1 t1", + "SELECT t1.col1, (SELECT t2.col2 FROM t2 t2 WHERE t1.col1 = t2.col1 AND t2.tenant_id = 1) FROM t1 t1 WHERE t1.tenant_id = 1"); + } + + @Test + void selectLeftJoin() { + // left join + assertSql("SELECT * FROM entity e " + + "left join entity1 e1 on e1.id = e.id " + + "WHERE e.id = ? OR e.name = ?", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?) AND e.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "left join entity1 e1 on e1.id = e.id " + + "WHERE (e.id = ? OR e.name = ?)", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?) AND e.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "left join entity1 e1 on e1.id = e.id " + + "left join entity2 e2 on e1.id = e2.id", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1 " + + "WHERE e.tenant_id = 1"); + } + + @Test + void selectRightJoin() { + // right join + assertSql("SELECT * FROM entity e " + + "right join entity1 e1 on e1.id = e.id", + "SELECT * FROM entity e " + + "RIGHT JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 " + + "WHERE e1.tenant_id = 1"); + + assertSql("SELECT * FROM with_as_1 e " + + "right join entity1 e1 on e1.id = e.id", + "SELECT * FROM with_as_1 e " + + "RIGHT JOIN entity1 e1 ON e1.id = e.id " + + "WHERE e1.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "right join entity1 e1 on e1.id = e.id " + + "WHERE e.id = ? OR e.name = ?", + "SELECT * FROM entity e " + + "RIGHT JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?) AND e1.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "right join entity1 e1 on e1.id = e.id " + + "right join entity2 e2 on e1.id = e2.id ", + "SELECT * FROM entity e " + + "RIGHT JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 " + + "RIGHT JOIN entity2 e2 ON e1.id = e2.id AND e1.tenant_id = 1 " + + "WHERE e2.tenant_id = 1"); + } + + @Test + void selectMixJoin() { + assertSql("SELECT * FROM entity e " + + "right join entity1 e1 on e1.id = e.id " + + "left join entity2 e2 on e1.id = e2.id", + "SELECT * FROM entity e " + + "RIGHT JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 " + + "LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1 " + + "WHERE e1.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "left join entity1 e1 on e1.id = e.id " + + "right join entity2 e2 on e1.id = e2.id", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "RIGHT JOIN entity2 e2 ON e1.id = e2.id AND e.tenant_id = 1 " + + "WHERE e2.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "left join entity1 e1 on e1.id = e.id " + + "inner join entity2 e2 on e1.id = e2.id", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "INNER JOIN entity2 e2 ON e1.id = e2.id AND e.tenant_id = 1 AND e2.tenant_id = 1"); + } + + + @Test + void selectJoinSubSelect() { + assertSql("select * from (select * from entity) e1 " + + "left join entity2 e2 on e1.id = e2.id", + "SELECT * FROM (SELECT * FROM entity WHERE entity.tenant_id = 1) e1 " + + "LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1"); + + assertSql("select * from entity1 e1 " + + "left join (select * from entity2) e2 " + + "on e1.id = e2.id", + "SELECT * FROM entity1 e1 " + + "LEFT JOIN (SELECT * FROM entity2 WHERE entity2.tenant_id = 1) e2 " + + "ON e1.id = e2.id " + + "WHERE e1.tenant_id = 1"); + } + + @Test + void selectSubJoin() { + + assertSql("select * FROM " + + "(entity1 e1 right JOIN entity2 e2 ON e1.id = e2.id)", + "SELECT * FROM " + + "(entity1 e1 RIGHT JOIN entity2 e2 ON e1.id = e2.id AND e1.tenant_id = 1) " + + "WHERE e2.tenant_id = 1"); + + assertSql("select * FROM " + + "(entity1 e1 LEFT JOIN entity2 e2 ON e1.id = e2.id)", + "SELECT * FROM " + + "(entity1 e1 LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1) " + + "WHERE e1.tenant_id = 1"); + + + assertSql("select * FROM " + + "(entity1 e1 LEFT JOIN entity2 e2 ON e1.id = e2.id) " + + "right join entity3 e3 on e1.id = e3.id", + "SELECT * FROM " + + "(entity1 e1 LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1) " + + "RIGHT JOIN entity3 e3 ON e1.id = e3.id AND e1.tenant_id = 1 " + + "WHERE e3.tenant_id = 1"); + + + assertSql("select * FROM entity e " + + "LEFT JOIN (entity1 e1 right join entity2 e2 ON e1.id = e2.id) " + + "on e.id = e2.id", + "SELECT * FROM entity e " + + "LEFT JOIN (entity1 e1 RIGHT JOIN entity2 e2 ON e1.id = e2.id AND e1.tenant_id = 1) " + + "ON e.id = e2.id AND e2.tenant_id = 1 " + + "WHERE e.tenant_id = 1"); + + assertSql("select * FROM entity e " + + "LEFT JOIN (entity1 e1 left join entity2 e2 ON e1.id = e2.id) " + + "on e.id = e2.id", + "SELECT * FROM entity e " + + "LEFT JOIN (entity1 e1 LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1) " + + "ON e.id = e2.id AND e1.tenant_id = 1 " + + "WHERE e.tenant_id = 1"); + + assertSql("select * FROM entity e " + + "RIGHT JOIN (entity1 e1 left join entity2 e2 ON e1.id = e2.id) " + + "on e.id = e2.id", + "SELECT * FROM entity e " + + "RIGHT JOIN (entity1 e1 LEFT JOIN entity2 e2 ON e1.id = e2.id AND e2.tenant_id = 1) " + + "ON e.id = e2.id AND e.tenant_id = 1 " + + "WHERE e1.tenant_id = 1"); + } + + + @Test + void selectLeftJoinMultipleTrailingOn() { + // 多个 on 尾缀的 + assertSql("SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 " + + "LEFT JOIN entity2 e2 ON e2.id = e1.id " + + "ON e1.id = e.id " + + "WHERE (e.id = ? OR e.NAME = ?)", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 " + + "LEFT JOIN entity2 e2 ON e2.id = e1.id AND e2.tenant_id = 1 " + + "ON e1.id = e.id AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.NAME = ?) AND e.tenant_id = 1"); + + assertSql("SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 " + + "LEFT JOIN with_as_A e2 ON e2.id = e1.id " + + "ON e1.id = e.id " + + "WHERE (e.id = ? OR e.NAME = ?)", + "SELECT * FROM entity e " + + "LEFT JOIN entity1 e1 " + + "LEFT JOIN with_as_A e2 ON e2.id = e1.id " + + "ON e1.id = e.id AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.NAME = ?) AND e.tenant_id = 1"); + } + + @Test + void selectInnerJoin() { + // inner join + assertSql("SELECT * FROM entity e " + + "inner join entity1 e1 on e1.id = e.id " + + "WHERE e.id = ? OR e.name = ?", + "SELECT * FROM entity e " + + "INNER JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 AND e1.tenant_id = 1 " + + "WHERE e.id = ? OR e.name = ?"); + + assertSql("SELECT * FROM entity e " + + "inner join entity1 e1 on e1.id = e.id " + + "WHERE (e.id = ? OR e.name = ?)", + "SELECT * FROM entity e " + + "INNER JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?)"); + + // éšå¼å†…连接 + assertSql("SELECT * FROM entity,entity1 " + + "WHERE entity.id = entity1.id", + "SELECT * FROM entity, entity1 " + + "WHERE entity.id = entity1.id AND entity.tenant_id = 1 AND entity1.tenant_id = 1"); + + // éšå¼å†…连接 + assertSql("SELECT * FROM entity a, with_as_entity1 b " + + "WHERE a.id = b.id", + "SELECT * FROM entity a, with_as_entity1 b " + + "WHERE a.id = b.id AND a.tenant_id = 1"); + + assertSql("SELECT * FROM with_as_entity a, with_as_entity1 b " + + "WHERE a.id = b.id", + "SELECT * FROM with_as_entity a, with_as_entity1 b " + + "WHERE a.id = b.id"); + + // SubJoin with éšå¼å†…连接 + assertSql("SELECT * FROM (entity,entity1) " + + "WHERE entity.id = entity1.id", + "SELECT * FROM (entity, entity1) " + + "WHERE entity.id = entity1.id " + + "AND entity.tenant_id = 1 AND entity1.tenant_id = 1"); + + assertSql("SELECT * FROM ((entity,entity1),entity2) " + + "WHERE entity.id = entity1.id and entity.id = entity2.id", + "SELECT * FROM ((entity, entity1), entity2) " + + "WHERE entity.id = entity1.id AND entity.id = entity2.id " + + "AND entity.tenant_id = 1 AND entity1.tenant_id = 1 AND entity2.tenant_id = 1"); + + assertSql("SELECT * FROM (entity,(entity1,entity2)) " + + "WHERE entity.id = entity1.id and entity.id = entity2.id", + "SELECT * FROM (entity, (entity1, entity2)) " + + "WHERE entity.id = entity1.id AND entity.id = entity2.id " + + "AND entity.tenant_id = 1 AND entity1.tenant_id = 1 AND entity2.tenant_id = 1"); + + // 沙雕的括å·å†™æ³• + assertSql("SELECT * FROM (((entity,entity1))) " + + "WHERE entity.id = entity1.id", + "SELECT * FROM (((entity, entity1))) " + + "WHERE entity.id = entity1.id " + + "AND entity.tenant_id = 1 AND entity1.tenant_id = 1"); + + } + + + @Test + void selectWithAs() { + assertSql("with with_as_A as (select * from entity) select * from with_as_A", + "WITH with_as_A AS (SELECT * FROM entity WHERE entity.tenant_id = 1) SELECT * FROM with_as_A"); + } + + + @Test + void selectIgnoreTable() { + assertSql(" SELECT dict.dict_code, item.item_text AS \"text\", item.item_value AS \"value\" FROM sys_dict_item item INNER JOIN sys_dict dict ON dict.id = item.dict_id WHERE dict.dict_code IN (1, 2, 3) AND item.item_value IN (1, 2, 3)", + "SELECT dict.dict_code, item.item_text AS \"text\", item.item_value AS \"value\" FROM sys_dict_item item INNER JOIN sys_dict dict ON dict.id = item.dict_id AND item.tenant_id = 1 WHERE dict.dict_code IN (1, 2, 3) AND item.item_value IN (1, 2, 3)"); + } + + private void assertSql(String sql, String targetSql) { + assertEquals(targetSql, interceptor.parserSingle(sql, null)); + } + + // ========== é¢å¤–的测试 ========== + + @Test + public void testSelectSingle() { + // å•表 + assertSql("select * from t_user where id = ?", + "SELECT * FROM t_user WHERE id = ? AND t_user.tenant_id = 1 AND t_user.dept_id IN (10, 20)"); + + assertSql("select * from t_user where id = ? or name = ?", + "SELECT * FROM t_user WHERE (id = ? OR name = ?) AND t_user.tenant_id = 1 AND t_user.dept_id IN (10, 20)"); + + assertSql("SELECT * FROM t_user WHERE (id = ? OR name = ?)", + "SELECT * FROM t_user WHERE (id = ? OR name = ?) AND t_user.tenant_id = 1 AND t_user.dept_id IN (10, 20)"); + + /* not */ + assertSql("SELECT * FROM t_user WHERE not (id = ? OR name = ?)", + "SELECT * FROM t_user WHERE NOT (id = ? OR name = ?) AND t_user.tenant_id = 1 AND t_user.dept_id IN (10, 20)"); + } + + @Test + public void testSelectLeftJoin() { + // left join + assertSql("SELECT * FROM t_user e " + + "left join t_role e1 on e1.id = e.id " + + "WHERE e.id = ? OR e.name = ?", + "SELECT * FROM t_user e " + + "LEFT JOIN t_role e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?) AND e.tenant_id = 1 AND e.dept_id IN (10, 20)"); + + // æ¡ä»¶ e.id = ? OR e.name = ? å¸¦æ‹¬å· + assertSql("SELECT * FROM t_user e " + + "left join t_role e1 on e1.id = e.id " + + "WHERE (e.id = ? OR e.name = ?)", + "SELECT * FROM t_user e " + + "LEFT JOIN t_role e1 ON e1.id = e.id AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?) AND e.tenant_id = 1 AND e.dept_id IN (10, 20)"); + } + + @Test + public void testSelectRightJoin() { + // right join + assertSql("SELECT * FROM t_user e " + + "right join t_role e1 on e1.id = e.id " + + "WHERE e.id = ? OR e.name = ?", + "SELECT * FROM t_user e " + + "RIGHT JOIN t_role e1 ON e1.id = e.id AND e.tenant_id = 1 AND e.dept_id IN (10, 20) " + + "WHERE (e.id = ? OR e.name = ?) AND e1.tenant_id = 1"); + + // æ¡ä»¶ e.id = ? OR e.name = ? å¸¦æ‹¬å· + assertSql("SELECT * FROM t_user e " + + "right join t_role e1 on e1.id = e.id " + + "WHERE (e.id = ? OR e.name = ?)", + "SELECT * FROM t_user e " + + "RIGHT JOIN t_role e1 ON e1.id = e.id AND e.tenant_id = 1 AND e.dept_id IN (10, 20) " + + "WHERE (e.id = ? OR e.name = ?) AND e1.tenant_id = 1"); + } + + @Test + public void testSelectInnerJoin() { + // inner join + assertSql("SELECT * FROM t_user e " + + "inner join entity1 e1 on e1.id = e.id " + + "WHERE e.id = ? OR e.name = ?", + "SELECT * FROM t_user e " + + "INNER JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 AND e.dept_id IN (10, 20) AND e1.tenant_id = 1 " + + "WHERE e.id = ? OR e.name = ?"); + + // æ¡ä»¶ e.id = ? OR e.name = ? å¸¦æ‹¬å· + assertSql("SELECT * FROM t_user e " + + "inner join entity1 e1 on e1.id = e.id " + + "WHERE (e.id = ? OR e.name = ?)", + "SELECT * FROM t_user e " + + "INNER JOIN entity1 e1 ON e1.id = e.id AND e.tenant_id = 1 AND e.dept_id IN (10, 20) AND e1.tenant_id = 1 " + + "WHERE (e.id = ? OR e.name = ?)"); + + // 没有 On çš„ inner join + assertSql("SELECT * FROM entity,entity1 " + + "WHERE entity.id = entity1.id", + "SELECT * FROM entity, entity1 " + + "WHERE entity.id = entity1.id AND entity.tenant_id = 1 AND entity1.tenant_id = 1"); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImplTest.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImplTest.java new file mode 100644 index 0000000..ef6145d --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/DataPermissionRuleFactoryImplTest.java @@ -0,0 +1,145 @@ +package org.agt.framework.datapermission.core.rule; + +import org.agt.framework.datapermission.core.annotation.DataPermission; +import org.agt.framework.datapermission.core.aop.DataPermissionContextHolder; +import org.agt.framework.test.core.ut.BaseMockitoUnitTest; +import net.sf.jsqlparser.expression.Alias; +import net.sf.jsqlparser.expression.Expression; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.InjectMocks; +import org.mockito.Spy; +import org.springframework.core.annotation.AnnotationUtils; + +import java.util.Arrays; +import java.util.List; +import java.util.Set; + +import static org.agt.framework.test.core.util.RandomUtils.randomString; +import static org.junit.jupiter.api.Assertions.*; + +/** + * {@link DataPermissionRuleFactoryImpl} å•元测试 + * + * @author åƒé€šæºç  + */ +class DataPermissionRuleFactoryImplTest extends BaseMockitoUnitTest { + + @InjectMocks + private DataPermissionRuleFactoryImpl dataPermissionRuleFactory; + + @Spy + private List rules = Arrays.asList(new DataPermissionRule01(), + new DataPermissionRule02()); + + @BeforeEach + public void setUp() { + DataPermissionContextHolder.clear(); + } + + @Test + public void testGetDataPermissionRule_02() { + // 准备傿•° + String mappedStatementId = randomString(); + + // 调用 + List result = dataPermissionRuleFactory.getDataPermissionRule(mappedStatementId); + // 断言 + assertSame(rules, result); + } + + @Test + public void testGetDataPermissionRule_03() { + // 准备傿•° + String mappedStatementId = randomString(); + // mock 方法 + DataPermissionContextHolder.add(AnnotationUtils.findAnnotation(TestClass03.class, DataPermission.class)); + + // 调用 + List result = dataPermissionRuleFactory.getDataPermissionRule(mappedStatementId); + // 断言 + assertTrue(result.isEmpty()); + } + + @Test + public void testGetDataPermissionRule_04() { + // 准备傿•° + String mappedStatementId = randomString(); + // mock 方法 + DataPermissionContextHolder.add(AnnotationUtils.findAnnotation(TestClass04.class, DataPermission.class)); + + // 调用 + List result = dataPermissionRuleFactory.getDataPermissionRule(mappedStatementId); + // 断言 + assertEquals(1, result.size()); + assertEquals(DataPermissionRule01.class, result.get(0).getClass()); + } + + @Test + public void testGetDataPermissionRule_05() { + // 准备傿•° + String mappedStatementId = randomString(); + // mock 方法 + DataPermissionContextHolder.add(AnnotationUtils.findAnnotation(TestClass05.class, DataPermission.class)); + + // 调用 + List result = dataPermissionRuleFactory.getDataPermissionRule(mappedStatementId); + // 断言 + assertEquals(1, result.size()); + assertEquals(DataPermissionRule02.class, result.get(0).getClass()); + } + + @Test + public void testGetDataPermissionRule_06() { + // 准备傿•° + String mappedStatementId = randomString(); + // mock 方法 + DataPermissionContextHolder.add(AnnotationUtils.findAnnotation(TestClass06.class, DataPermission.class)); + + // 调用 + List result = dataPermissionRuleFactory.getDataPermissionRule(mappedStatementId); + // 断言 + assertSame(rules, result); + } + + @DataPermission(enable = false) + static class TestClass03 {} + + @DataPermission(includeRules = DataPermissionRule01.class) + static class TestClass04 {} + + @DataPermission(excludeRules = DataPermissionRule01.class) + static class TestClass05 {} + + @DataPermission + static class TestClass06 {} + + static class DataPermissionRule01 implements DataPermissionRule { + + @Override + public Set getTableNames() { + return null; + } + + @Override + public Expression getExpression(String tableName, Alias tableAlias) { + return null; + } + + } + + static class DataPermissionRule02 implements DataPermissionRule { + + @Override + public Set getTableNames() { + return null; + } + + @Override + public Expression getExpression(String tableName, Alias tableAlias) { + return null; + } + + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleTest.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleTest.java new file mode 100644 index 0000000..db2dd1b --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/rule/dept/DeptDataPermissionRuleTest.java @@ -0,0 +1,239 @@ +package org.agt.framework.datapermission.core.rule.dept; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ReflectUtil; +import org.agt.framework.common.enums.UserTypeEnum; +import org.agt.framework.common.util.collection.SetUtils; +import org.agt.framework.security.core.LoginUser; +import org.agt.framework.security.core.util.SecurityFrameworkUtils; +import org.agt.framework.test.core.ut.BaseMockitoUnitTest; +import org.agt.module.system.api.permission.PermissionApi; +import org.agt.module.system.api.permission.dto.DeptDataPermissionRespDTO; +import net.sf.jsqlparser.expression.Alias; +import net.sf.jsqlparser.expression.Expression; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.MockedStatic; + +import java.util.Map; + +import static org.agt.framework.common.pojo.CommonResult.success; +import static org.agt.framework.datapermission.core.rule.dept.DeptDataPermissionRule.EXPRESSION_NULL; +import static org.agt.framework.test.core.util.RandomUtils.randomPojo; +import static org.agt.framework.test.core.util.RandomUtils.randomString; +import static org.junit.jupiter.api.Assertions.*; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.ArgumentMatchers.same; +import static org.mockito.Mockito.mockStatic; +import static org.mockito.Mockito.when; + +/** + * {@link DeptDataPermissionRule} çš„å•元测试 + * + * @author åƒé€šæºç  + */ +class DeptDataPermissionRuleTest extends BaseMockitoUnitTest { + + @InjectMocks + private DeptDataPermissionRule rule; + + @Mock + private PermissionApi permissionApi; + + @BeforeEach + @SuppressWarnings("unchecked") + public void setUp() { + // 清空 rule + rule.getTableNames().clear(); + ((Map) ReflectUtil.getFieldValue(rule, "deptColumns")).clear(); + ((Map) ReflectUtil.getFieldValue(rule, "deptColumns")).clear(); + } + + @Test // æ—  LoginUser + public void testGetExpression_noLoginUser() { + // 准备傿•° + String tableName = randomString(); + Alias tableAlias = new Alias(randomString()); + // mock 方法 + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertNull(expression); + } + + @Test // æ— æ•°æ®æƒé™æ—¶ + public void testGetExpression_noDeptDataPermission() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法 + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(permissionApi 返回 null) + when(permissionApi.getDeptDataPermission(eq(loginUser.getId()))).thenReturn(success(null)); + + // 调用 + NullPointerException exception = assertThrows(NullPointerException.class, + () -> rule.getExpression(tableName, tableAlias)); + // 断言 + assertEquals("LoginUser(1) Table(t_user/u) æœªè¿”å›žæ•°æ®æƒé™", exception.getMessage()); + } + } + + @Test // å…¨éƒ¨æ•°æ®æƒé™ + public void testGetExpression_allDeptDataPermission() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法(LoginUser) + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(DeptDataPermissionRespDTO) + DeptDataPermissionRespDTO deptDataPermission = new DeptDataPermissionRespDTO().setAll(true); + when(permissionApi.getDeptDataPermission(same(1L))).thenReturn(success(deptDataPermission)); + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertNull(expression); + assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class)); + } + } + + @Test // å³ä¸èƒ½æŸ¥çœ‹éƒ¨é—¨ï¼Œåˆä¸èƒ½æŸ¥çœ‹è‡ªå·±ï¼Œåˆ™è¯´æ˜Ž 100% æ— æƒé™ + public void testGetExpression_noDept_noSelf() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法(LoginUser) + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(DeptDataPermissionRespDTO) + DeptDataPermissionRespDTO deptDataPermission = new DeptDataPermissionRespDTO(); + when(permissionApi.getDeptDataPermission(same(1L))).thenReturn(success(deptDataPermission)); + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertEquals("null = null", expression.toString()); + assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class)); + } + } + + @Test // 拼接 Dept å’Œ User çš„æ¡ä»¶ï¼ˆå­—段都ä¸ç¬¦åˆï¼‰ + public void testGetExpression_noDeptColumn_noSelfColumn() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法(LoginUser) + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(DeptDataPermissionRespDTO) + DeptDataPermissionRespDTO deptDataPermission = new DeptDataPermissionRespDTO() + .setDeptIds(SetUtils.asSet(10L, 20L)).setSelf(true); + when(permissionApi.getDeptDataPermission(same(1L))).thenReturn(success(deptDataPermission)); + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertSame(EXPRESSION_NULL, expression); + assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class)); + } + } + + @Test // 拼接 Dept å’Œ User çš„æ¡ä»¶ï¼ˆself 符åˆï¼‰ + public void testGetExpression_noDeptColumn_yesSelfColumn() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法(LoginUser) + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(DeptDataPermissionRespDTO) + DeptDataPermissionRespDTO deptDataPermission = new DeptDataPermissionRespDTO() + .setSelf(true); + when(permissionApi.getDeptDataPermission(same(1L))).thenReturn(success(deptDataPermission)); + // 添加 user 字段é…ç½® + rule.addUserColumn("t_user", "id"); + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertEquals("u.id = 1", expression.toString()); + assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class)); + } + } + + @Test // 拼接 Dept å’Œ User çš„æ¡ä»¶ï¼ˆdept 符åˆï¼‰ + public void testGetExpression_yesDeptColumn_noSelfColumn() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法(LoginUser) + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(DeptDataPermissionRespDTO) + DeptDataPermissionRespDTO deptDataPermission = new DeptDataPermissionRespDTO() + .setDeptIds(CollUtil.newLinkedHashSet(10L, 20L)); + when(permissionApi.getDeptDataPermission(same(1L))).thenReturn(success(deptDataPermission)); + // 添加 dept 字段é…ç½® + rule.addDeptColumn("t_user", "dept_id"); + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertEquals("u.dept_id IN (10, 20)", expression.toString()); + assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class)); + } + } + + @Test // 拼接 Dept å’Œ User çš„æ¡ä»¶ï¼ˆdept + self 符åˆï¼‰ + public void testGetExpression_yesDeptColumn_yesSelfColumn() { + try (MockedStatic securityFrameworkUtilsMock + = mockStatic(SecurityFrameworkUtils.class)) { + // 准备傿•° + String tableName = "t_user"; + Alias tableAlias = new Alias("u"); + // mock 方法(LoginUser) + LoginUser loginUser = randomPojo(LoginUser.class, o -> o.setId(1L) + .setUserType(UserTypeEnum.ADMIN.getValue())); + securityFrameworkUtilsMock.when(SecurityFrameworkUtils::getLoginUser).thenReturn(loginUser); + // mock 方法(DeptDataPermissionRespDTO) + DeptDataPermissionRespDTO deptDataPermission = new DeptDataPermissionRespDTO() + .setDeptIds(CollUtil.newLinkedHashSet(10L, 20L)).setSelf(true); + when(permissionApi.getDeptDataPermission(same(1L))).thenReturn(success(deptDataPermission)); + // 添加 user 字段é…ç½® + rule.addUserColumn("t_user", "id"); + // 添加 dept 字段é…ç½® + rule.addDeptColumn("t_user", "dept_id"); + + // 调用 + Expression expression = rule.getExpression(tableName, tableAlias); + // 断言 + assertEquals("(u.dept_id IN (10, 20) OR u.id = 1)", expression.toString()); + assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class)); + } + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/util/DataPermissionUtilsTest.java b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/util/DataPermissionUtilsTest.java new file mode 100644 index 0000000..8c22006 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-data-permission/src/test/java/org/agt/framework/datapermission/core/util/DataPermissionUtilsTest.java @@ -0,0 +1,15 @@ +package org.agt.framework.datapermission.core.util; + +import org.agt.framework.datapermission.core.aop.DataPermissionContextHolder; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +public class DataPermissionUtilsTest { + + @Test + public void testExecuteIgnore() { + DataPermissionUtils.executeIgnore(() -> assertFalse(DataPermissionContextHolder.get().enable())); + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/pom.xml b/agt-framework/agt-spring-boot-starter-biz-ip/pom.xml new file mode 100644 index 0000000..af15033 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/pom.xml @@ -0,0 +1,54 @@ + + + + org.agt + agt-framework + ${revision} + + 4.0.0 + agt-spring-boot-starter-biz-ip + jar + + ${project.artifactId} + IP 拓展,支æŒå¦‚下功能: + 1. IP 功能:查询 IP å¯¹åº”çš„åŸŽå¸‚ä¿¡æ¯ + 基于 https://gitee.com/lionsoul/ip2region 实现 + 2. 城市功能:查询城市编ç å¯¹åº”çš„åŸŽå¸‚ä¿¡æ¯ + 基于 https://github.com/modood/Administrative-divisions-of-China 实现 + + https://github.com/agt/agt-cloud + + + + org.agt + agt-common + + + + + org.lionsoul + ip2region + + + + org.projectlombok + lombok + + + + org.slf4j + slf4j-api + provided + + + + + org.agt + agt-spring-boot-starter-test + test + + + + diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/Area.java b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/Area.java new file mode 100644 index 0000000..ad9b754 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/Area.java @@ -0,0 +1,61 @@ +package org.agt.framework.ip.core; + +import org.agt.framework.ip.core.enums.AreaTypeEnum; +import com.fasterxml.jackson.annotation.JsonBackReference; +import com.fasterxml.jackson.annotation.JsonManagedReference; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; + +import java.util.List; + +/** + * 区域节点,包括国家ã€çœä»½ã€åŸŽå¸‚ã€åœ°åŒºç­‰ä¿¡æ¯ + * + * æ•°æ®å¯è§ resources/area.csv 文件 + * + * @author åƒé€šæºç  + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@ToString(exclude = {"parent"}) // å‚è§ https://gitee.com/agtcode/agt-cloud-mini/pulls/2 原因 +public class Area { + + /** + * ç¼–å· - å…¨çƒï¼Œå³æ ¹ç›®å½• + */ + public static final Integer ID_GLOBAL = 0; + /** + * ç¼–å· - 中国 + */ + public static final Integer ID_CHINA = 1; + + /** + * ç¼–å· + */ + private Integer id; + /** + * åå­— + */ + private String name; + /** + * 类型 + * + * 枚举 {@link AreaTypeEnum} + */ + private Integer type; + + /** + * 父节点 + */ + @JsonManagedReference + private Area parent; + /** + * å­èŠ‚ç‚¹ + */ + @JsonBackReference + private List children; + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/enums/AreaTypeEnum.java b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/enums/AreaTypeEnum.java new file mode 100644 index 0000000..732b10b --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/enums/AreaTypeEnum.java @@ -0,0 +1,39 @@ +package org.agt.framework.ip.core.enums; + +import org.agt.framework.common.core.ArrayValuable; +import lombok.AllArgsConstructor; +import lombok.Getter; + +import java.util.Arrays; + +/** + * 区域类型枚举 + * + * @author åƒé€šæºç  + */ +@AllArgsConstructor +@Getter +public enum AreaTypeEnum implements ArrayValuable { + + COUNTRY(1, "国家"), + PROVINCE(2, "çœä»½"), + CITY(3, "城市"), + DISTRICT(4, "地区"), // 县ã€é•‡ã€åŒºç­‰ + ; + + public static final Integer[] ARRAYS = Arrays.stream(values()).map(AreaTypeEnum::getType).toArray(Integer[]::new); + + /** + * 类型 + */ + private final Integer type; + /** + * åå­— + */ + private final String name; + + @Override + public Integer[] array() { + return ARRAYS; + } +} diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/AreaUtils.java b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/AreaUtils.java new file mode 100644 index 0000000..ed9212b --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/AreaUtils.java @@ -0,0 +1,214 @@ +package org.agt.framework.ip.core.utils; + +import cn.hutool.core.io.resource.ResourceUtil; +import cn.hutool.core.lang.Assert; +import cn.hutool.core.text.csv.CsvRow; +import cn.hutool.core.text.csv.CsvUtil; +import org.agt.framework.common.util.object.ObjectUtils; +import org.agt.framework.ip.core.Area; +import org.agt.framework.ip.core.enums.AreaTypeEnum; +import lombok.NonNull; +import lombok.extern.slf4j.Slf4j; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.function.Function; + +import static org.agt.framework.common.util.collection.CollectionUtils.convertList; +import static org.agt.framework.common.util.collection.CollectionUtils.findFirst; + +/** + * 区域工具类 + * + * @author åƒé€šæºç  + */ +@Slf4j +public class AreaUtils { + + /** + * åˆå§‹åŒ– SEARCHER + */ + @SuppressWarnings("InstantiationOfUtilityClass") + private final static AreaUtils INSTANCE = new AreaUtils(); + + /** + * Area 内存缓存,æå‡è®¿é—®é€Ÿåº¦ + */ + private static Map areas; + + private AreaUtils() { + long now = System.currentTimeMillis(); + areas = new HashMap<>(); + areas.put(Area.ID_GLOBAL, new Area(Area.ID_GLOBAL, "å…¨çƒ", 0, + null, new ArrayList<>())); + // 从 csv ä¸­åŠ è½½æ•°æ® + List rows = CsvUtil.getReader().read(ResourceUtil.getUtf8Reader("area.csv")).getRows(); + rows.remove(0); // 删除 header + for (CsvRow row : rows) { + // 创建 Area 对象 + Area area = new Area(Integer.valueOf(row.get(0)), row.get(1), Integer.valueOf(row.get(2)), + null, new ArrayList<>()); + // 添加到 areas 中 + areas.put(area.getId(), area); + } + + // 构建父å­å…³ç³»ï¼šå› ä¸º Area 中没有 parentId 字段,所以需è¦é‡å¤è¯»å– + for (CsvRow row : rows) { + Area area = areas.get(Integer.valueOf(row.get(0))); // 自己 + Area parent = areas.get(Integer.valueOf(row.get(3))); // 父 + Assert.isTrue(area != parent, "{}:父å­èŠ‚ç‚¹ç›¸åŒ", area.getName()); + area.setParent(parent); + parent.getChildren().add(area); + } + log.info("å¯åŠ¨åŠ è½½ AreaUtils æˆåŠŸï¼Œè€—æ—¶ ({}) 毫秒", System.currentTimeMillis() - now); + } + + /** + * 获得指定编å·å¯¹åº”的区域 + * + * @param id åŒºåŸŸç¼–å· + * @return 区域 + */ + public static Area getArea(Integer id) { + return areas.get(id); + } + + /** + * èŽ·å¾—æŒ‡å®šåŒºåŸŸå¯¹åº”çš„ç¼–å· + * + * @param pathStr 区域路径,例如说:河å—çœ/石家庄市/æ–°åŽåŒº + * @return 区域 + */ + public static Area parseArea(String pathStr) { + String[] paths = pathStr.split("/"); + Area area = null; + for (String path : paths) { + if (area == null) { + area = findFirst(areas.values(), item -> item.getName().equals(path)); + } else { + area = findFirst(area.getChildren(), item -> item.getName().equals(path)); + } + } + return area; + } + + /** + * èŽ·å–æ‰€æœ‰èŠ‚ç‚¹çš„å…¨è·¯å¾„å称如:河å—çœ/石家庄市/æ–°åŽåŒº + * + * @param areas 地区树 + * @return 所有节点的全路径åç§° + */ + public static List getAreaNodePathList(List areas) { + List paths = new ArrayList<>(); + areas.forEach(area -> getAreaNodePathList(area, "", paths)); + return paths; + } + + /** + * 构建一棵树的所有节点的全路径å称,并将其存储为 "祖先/父级/å­çº§" çš„å½¢å¼ + * + * @param node 父节点 + * @param path 全路径åç§° + * @param paths 全路径å称列表,çœä»½/城市/地区 + */ + private static void getAreaNodePathList(Area node, String path, List paths) { + if (node == null) { + return; + } + // 构建当å‰èŠ‚ç‚¹çš„è·¯å¾„ + String currentPath = path.isEmpty() ? node.getName() : path + "/" + node.getName(); + paths.add(currentPath); + // 递归é历å­èŠ‚ç‚¹ + for (Area child : node.getChildren()) { + getAreaNodePathList(child, currentPath, paths); + } + } + + /** + * æ ¼å¼åŒ–区域 + * + * @param id åŒºåŸŸç¼–å· + * @return æ ¼å¼åŒ–åŽçš„区域 + */ + public static String format(Integer id) { + return format(id, " "); + } + + /** + * æ ¼å¼åŒ–区域 + * + * 例如说: + * 1. id = “é™å®‰åŒºâ€æ—¶ï¼šä¸Šæµ· 上海市 é™å®‰åŒº + * 2. id = â€œä¸Šæµ·å¸‚â€æ—¶ï¼šä¸Šæµ· 上海市 + * 3. id = â€œä¸Šæµ·â€æ—¶ï¼šä¸Šæµ· + * 4. id = â€œç¾Žå›½â€æ—¶ï¼šç¾Žå›½ + * å½“åŒºåŸŸåœ¨ä¸­å›½æ—¶ï¼Œé»˜è®¤ä¸æ˜¾ç¤ºä¸­å›½ + * + * @param id åŒºåŸŸç¼–å· + * @param separator 分隔符 + * @return æ ¼å¼åŒ–åŽçš„区域 + */ + public static String format(Integer id, String separator) { + // 获得区域 + Area area = areas.get(id); + if (area == null) { + return null; + } + + // æ ¼å¼åŒ– + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < AreaTypeEnum.values().length; i++) { // é¿å…死循环 + sb.insert(0, area.getName()); + // “递归â€çˆ¶èŠ‚ç‚¹ + area = area.getParent(); + if (area == null + || ObjectUtils.equalsAny(area.getId(), Area.ID_GLOBAL, Area.ID_CHINA)) { // 跳过父节点为中国的情况 + break; + } + sb.insert(0, separator); + } + return sb.toString(); + } + + /** + * èŽ·å–æŒ‡å®šç±»åž‹çš„区域列表 + * + * @param type 区域类型 + * @param func 转æ¢å‡½æ•° + * @param 结果类型 + * @return 区域列表 + */ + public static List getByType(AreaTypeEnum type, Function func) { + return convertList(areas.values(), func, area -> type.getType().equals(area.getType())); + } + + /** + * æ ¹æ®åŒºåŸŸç¼–å·ã€ä¸Šçº§åŒºåŸŸç±»åž‹ï¼ŒèŽ·å–ä¸Šçº§åŒºåŸŸç¼–å· + * + * @param id åŒºåŸŸç¼–å· + * @param type 区域类型 + * @return ä¸Šçº§åŒºåŸŸç¼–å· + */ + public static Integer getParentIdByType(Integer id, @NonNull AreaTypeEnum type) { + for (int i = 0; i < Byte.MAX_VALUE; i++) { + Area area = AreaUtils.getArea(id); + if (area == null) { + return null; + } + // 情况一:匹é…到,返回它 + if (type.getType().equals(area.getType())) { + return area.getId(); + } + // 情况二:找到根节点,返回空 + if (area.getParent() == null || area.getParent().getId() == null) { + return null; + } + // 其它:继续å‘上查找 + id = area.getParent().getId(); + } + return null; + } + +} diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/IPUtils.java b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/IPUtils.java new file mode 100644 index 0000000..f0bcb50 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/core/utils/IPUtils.java @@ -0,0 +1,87 @@ +package org.agt.framework.ip.core.utils; + +import cn.hutool.core.io.resource.ResourceUtil; +import org.agt.framework.ip.core.Area; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import org.lionsoul.ip2region.xdb.Searcher; + +import java.io.IOException; + +/** + * IP 工具类 + * + * IP æ•°æ®æºæ¥è‡ª ip2region.xdb 精简版,基于 项目 + * + * @author wanglhup + */ +@Slf4j +public class IPUtils { + + /** + * åˆå§‹åŒ– SEARCHER + */ + @SuppressWarnings("InstantiationOfUtilityClass") + private final static IPUtils INSTANCE = new IPUtils(); + + /** + * IP 查询器,å¯åŠ¨åŠ è½½åˆ°å†…å­˜ä¸­ + */ + private static Searcher SEARCHER; + + /** + * ç§æœ‰åŒ–构造 + */ + private IPUtils() { + try { + long now = System.currentTimeMillis(); + byte[] bytes = ResourceUtil.readBytes("ip2region.xdb"); + SEARCHER = Searcher.newWithBuffer(bytes); + log.info("å¯åŠ¨åŠ è½½ IPUtils æˆåŠŸï¼Œè€—æ—¶ ({}) 毫秒", System.currentTimeMillis() - now); + } catch (IOException e) { + log.error("å¯åŠ¨åŠ è½½ IPUtils 失败", e); + } + } + + /** + * 查询 IP å¯¹åº”çš„åœ°åŒºç¼–å· + * + * @param ip IP 地å€ï¼Œæ ¼å¼ä¸º 127.0.0.1 + * @return 地区id + */ + @SneakyThrows + public static Integer getAreaId(String ip) { + return Integer.parseInt(SEARCHER.search(ip.trim())); + } + + /** + * 查询 IP å¯¹åº”çš„åœ°åŒºç¼–å· + * + * @param ip IP 地å€çš„æ—¶é—´æˆ³ï¼Œæ ¼å¼å‚考{@link Searcher#checkIP(String)} 的返回 + * @return åœ°åŒºç¼–å· + */ + @SneakyThrows + public static Integer getAreaId(long ip) { + return Integer.parseInt(SEARCHER.search(ip)); + } + + /** + * 查询 IP 对应的地区 + * + * @param ip IP 地å€ï¼Œæ ¼å¼ä¸º 127.0.0.1 + * @return 地区 + */ + public static Area getArea(String ip) { + return AreaUtils.getArea(getAreaId(ip)); + } + + /** + * 查询 IP 对应的地区 + * + * @param ip IP 地å€çš„æ—¶é—´æˆ³ï¼Œæ ¼å¼å‚考{@link Searcher#checkIP(String)} 的返回 + * @return 地区 + */ + public static Area getArea(long ip) { + return AreaUtils.getArea(getAreaId(ip)); + } +} diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/package-info.java b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/package-info.java new file mode 100644 index 0000000..244cfb3 --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/java/org/agt/framework/ip/package-info.java @@ -0,0 +1,11 @@ +/** + * IP 拓展,支æŒå¦‚下功能: + * + * 1. IP 功能:查询 IP å¯¹åº”çš„åŸŽå¸‚ä¿¡æ¯ + * 基于 https://gitee.com/lionsoul/ip2region 实现 + * 2. 城市功能:查询城市编ç å¯¹åº”çš„åŸŽå¸‚ä¿¡æ¯ + * 基于 https://github.com/modood/Administrative-divisions-of-China 实现 + * + * @author åƒé€šæºç  + */ +package org.agt.framework.ip; diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/area.csv b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/area.csv new file mode 100644 index 0000000..0dd830e --- /dev/null +++ b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/area.csv @@ -0,0 +1,3662 @@ +id,name,type,parentId +1,中国,1,0 +2,è’™å¤,1,0 +3,æœé²œ,1,0 +4,韩国,1,0 +5,日本,1,0 +6,è²å¾‹å®¾,1,0 +7,è¶Šå—,1,0 +8,è€æŒ,1,0 +9,柬埔寨,1,0 +10,缅甸,1,0 +11,泰国,1,0 +12,马æ¥è¥¿äºš,1,0 +13,文莱,1,0 +14,新加å¡,1,0 +15,å°åº¦å°¼è¥¿äºš,1,0 +16,ä¸œå¸æ±¶,1,0 +17,尼泊尔,1,0 +18,ä¸ä¸¹,1,0 +19,孟加拉国,1,0 +20,å°åº¦,1,0 +21,巴基斯å¦,1,0 +22,斯里兰å¡,1,0 +23,马尔代夫,1,0 +24,哈è¨å…‹æ–¯å¦,1,0 +25,å‰å°”剿–¯æ–¯å¦,1,0 +26,å¡”å‰å…‹æ–¯å¦,1,0 +27,乌兹别克斯å¦,1,0 +28,土库曼斯å¦,1,0 +29,阿富汗,1,0 +30,伊拉克,1,0 +31,伊朗,1,0 +32,å™åˆ©äºš,1,0 +33,约旦,1,0 +34,黎巴嫩,1,0 +35,以色列,1,0 +36,å·´å‹’æ–¯å¦,1,0 +37,沙特阿拉伯,1,0 +38,å·´æž—,1,0 +39,å¡å¡”å°”,1,0 +40,ç§‘å¨ç‰¹,1,0 +41,阿拉伯è”åˆé…‹é•¿å›½,1,0 +42,阿曼,1,0 +43,也门,1,0 +44,æ ¼é²å‰äºš,1,0 +45,亚美尼亚,1,0 +46,阿塞拜疆,1,0 +47,土耳其,1,0 +48,塞浦路斯,1,0 +49,芬兰,1,0 +50,瑞典,1,0 +51,挪å¨,1,0 +52,冰岛,1,0 +53,丹麦,1,0 +54,爱沙尼亚,1,0 +55,拉脱维亚,1,0 +56,ç«‹é™¶å®›,1,0 +57,白俄罗斯,1,0 +58,ä¿„ç½—æ–¯,1,0 +59,乌克兰,1,0 +60,摩尔多瓦,1,0 +61,波兰,1,0 +62,æ·å…‹,1,0 +63,斯洛ä¼å…‹,1,0 +64,匈牙利,1,0 +65,德国,1,0 +66,奥地利,1,0 +67,瑞士,1,0 +68,列支敦士登,1,0 +69,英国,1,0 +70,爱尔兰,1,0 +71,è·å…°,1,0 +72,比利时,1,0 +73,墿£®å ¡,1,0 +74,法国,1,0 +75,摩纳哥,1,0 +76,罗马尼亚,1,0 +77,ä¿åŠ åˆ©äºš,1,0 +78,塞尔维亚,1,0 +79,马其顿,1,0 +80,阿尔巴尼亚,1,0 +81,希腊,1,0 +82,斯洛文尼亚,1,0 +83,克罗地亚,1,0 +84,波斯尼亚和墨塞哥维那,1,0 +85,æ„大利,1,0 +86,梵蒂冈,1,0 +87,圣马力诺,1,0 +88,马耳他,1,0 +89,西ç­ç‰™,1,0 +90,è‘¡è„牙,1,0 +91,安é“尔共和国,1,0 +92,埃åŠ,1,0 +93,利比亚,1,0 +94,è‹ä¸¹,1,0 +95,çªå°¼æ–¯,1,0 +96,阿尔åŠåˆ©äºš,1,0 +97,摩洛哥,1,0 +98,亚速尔群岛,1,0 +99,马德拉群岛,1,0 +100,埃塞俄比亚,1,0 +101,厄立特里亚,1,0 +102,索马里,1,0 +103,å‰å¸ƒæ,1,0 +104,肯尼亚,1,0 +105,妿¡‘尼亚,1,0 +106,乌干达,1,0 +107,墿—ºè¾¾,1,0 +108,布隆迪,1,0 +109,塞舌尔,1,0 +110,åœ£å¤šç¾ŽåŠæ™®æž—西比,1,0 +111,塞内加尔,1,0 +112,冈比亚,1,0 +113,马里,1,0 +114,布基纳法索,1,0 +115,几内亚,1,0 +116,几内亚比ç»,1,0 +117,佛得角,1,0 +118,塞拉利昂,1,0 +119,利比里亚,1,0 +120,科特迪瓦,1,0 +121,加纳,1,0 +122,多哥,1,0 +123,è´å®,1,0 +124,尼日尔,1,0 +125,加那利群岛,1,0 +126,赞比亚,1,0 +127,安哥拉,1,0 +128,津巴布韦,1,0 +129,马拉维,1,0 +130,莫桑比克,1,0 +131,åšèŒ¨ç“¦çº³,1,0 +132,纳米比亚,1,0 +133,å—éž,1,0 +134,æ–¯å¨å£«å…°,1,0 +135,莱索托,1,0 +136,马达加斯加,1,0 +137,ç§‘æ‘©ç½—,1,0 +138,毛里求斯,1,0 +139,留尼旺,1,0 +140,圣赫勒拿,1,0 +141,澳大利亚,1,0 +142,新西兰,1,0 +143,巴布亚新几内亚,1,0 +144,所罗门群岛,1,0 +145,瓦努阿图共和国,1,0 +146,密克罗尼西亚,1,0 +147,马ç»å°”群岛,1,0 +148,帕劳,1,0 +149,ç‘™é²,1,0 +150,基里巴斯,1,0 +151,图瓦å¢,1,0 +152,è¨æ‘©äºš,1,0 +153,æ–æµŽ,1,0 +154,汤加,1,0 +155,库克群岛,1,0 +156,关岛,1,0 +157,新喀里多尼亚,1,0 +158,法属波利尼西亚,1,0 +159,皮特凯æ©å²›,1,0 +160,瓦利斯与富图纳,1,0 +161,纽埃,1,0 +162,托克劳,1,0 +163,ç¾Žå±žè¨æ‘©äºš,1,0 +164,北马里亚纳,1,0 +165,加拿大,1,0 +166,美国,1,0 +167,墨西哥,1,0 +168,格陵兰,1,0 +169,å±åœ°é©¬æ‹‰,1,0 +170,伯利兹,1,0 +171,è¨å°”瓦多,1,0 +172,洪都拉斯,1,0 +173,尼加拉瓜,1,0 +174,哥斯达黎加,1,0 +175,巴拿马,1,0 +176,巴哈马,1,0 +177,å¤å·´,1,0 +178,牙买加,1,0 +179,海地,1,0 +180,多米尼加共和国,1,0 +181,安æç“œå’Œå·´å¸ƒè¾¾,1,0 +182,圣基茨和尼维斯,1,0 +183,多米尼克,1,0 +184,圣å¢è¥¿äºš,1,0 +185,åœ£æ–‡æ£®ç‰¹å’Œæ ¼æž—çº³ä¸æ–¯,1,0 +186,格林纳达,1,0 +187,巴巴多斯,1,0 +188,特立尼达和多巴哥,1,0 +189,波多黎å„,1,0 +190,英属维尔京群岛,1,0 +191,美属维尔京群岛,1,0 +192,安圭拉,1,0 +193,蒙特塞拉特岛,1,0 +194,瓜德罗普,1,0 +195,马æå°¼å…‹,1,0 +196,è·å±žå®‰çš„列斯,1,0 +197,阿é²å·´,1,0 +198,特克斯和凯科斯群岛,1,0 +199,开曼群岛,1,0 +200,百慕大,1,0 +201,哥伦比亚,1,0 +202,委内瑞拉,1,0 +203,圭亚那,1,0 +204,法属圭亚那,1,0 +205,è‹é‡Œå—,1,0 +206,厄瓜多尔,1,0 +207,秘é²,1,0 +208,玻利维亚,1,0 +209,巴西,1,0 +210,智利,1,0 +211,阿根廷,1,0 +212,乌拉圭,1,0 +213,巴拉圭,1,0 +214,波黑,1,0 +215,直布罗陀,1,0 +216,新喀里多尼亚群岛,1,0 +217,瓦利斯和富图纳群岛,1,0 +218,泽西岛,1,0 +219,黑山,1,0 +220,英属马æ©å²›,1,0 +221,尼日利亚,1,0 +222,喀麦隆,1,0 +223,加蓬,1,0 +224,ä¹å¾—,1,0 +225,刚果共和国,1,0 +226,中éžå…±å’Œå›½,1,0 +227,å—è‹ä¸¹,1,0 +228,赤é“几内亚,1,0 +229,毛里塔尼亚,1,0 +230,刚果民主共和国,1,0 +231,留尼汪岛,1,0 +232,格陵兰岛,1,0 +233,法罗群岛,1,0 +234,根西岛,1,0 +235,百慕大群岛,1,0 +236,圣皮埃尔和密克隆群岛,1,0 +237,法属圣马ä¸,1,0 +238,奥兰群岛,1,0 +239,北马里亚纳群岛,1,0 +240,库拉索,1,0 +241,åšå†…尔岛,1,0 +242,圣马ä¸å²›,1,0 +243,圣巴泰勒米岛,1,0 +244,ç¦å…‹å…°ç¾¤å²›,1,0 +245,圣多美和普林西比,1,0 +246,英属å°åº¦æ´‹é¢†åœ°,1,0 +247,ä¸œè¨æ‘©äºš,1,0 +248,诺ç¦å…‹å²›,1,0 +110000,北京市,2,1 +120000,天津市,2,1 +130000,河北çœ,2,1 +140000,山西çœ,2,1 +150000,内蒙å¤è‡ªæ²»åŒº,2,1 +210000,è¾½å®çœ,2,1 +220000,剿ž—çœ,2,1 +230000,黑龙江çœ,2,1 +310000,上海市,2,1 +320000,江è‹çœ,2,1 +330000,浙江çœ,2,1 +340000,安徽çœ,2,1 +350000,ç¦å»ºçœ,2,1 +360000,江西çœ,2,1 +370000,山东çœ,2,1 +410000,æ²³å—çœ,2,1 +420000,湖北çœ,2,1 +430000,æ¹–å—çœ,2,1 +440000,广东çœ,2,1 +450000,广西壮æ—自治区,2,1 +460000,æµ·å—çœ,2,1 +500000,é‡åº†å¸‚,2,1 +510000,å››å·çœ,2,1 +520000,贵州çœ,2,1 +530000,云å—çœ,2,1 +540000,西è—自治区,2,1 +610000,陕西çœ,2,1 +620000,甘肃çœ,2,1 +630000,é’æµ·çœ,2,1 +640000,å®å¤å›žæ—自治区,2,1 +650000,新疆维å¾å°”自治区,2,1 +110100,北京市,3,110000 +120100,天津市,3,120000 +130100,石家庄市,3,130000 +130200,å”山市,3,130000 +130300,秦皇岛市,3,130000 +130400,邯郸市,3,130000 +130500,é‚¢å°å¸‚,3,130000 +130600,ä¿å®šå¸‚,3,130000 +130700,å¼ å®¶å£å¸‚,3,130000 +130800,承德市,3,130000 +130900,沧州市,3,130000 +131000,廊åŠå¸‚,3,130000 +131100,衡水市,3,130000 +140100,太原市,3,140000 +140200,大åŒå¸‚,3,140000 +140300,阳泉市,3,140000 +140400,长治市,3,140000 +140500,晋城市,3,140000 +140600,朔州市,3,140000 +140700,晋中市,3,140000 +140800,è¿åŸŽå¸‚,3,140000 +140900,忻州市,3,140000 +141000,临汾市,3,140000 +141100,啿¢å¸‚,3,140000 +150100,呼和浩特市,3,150000 +150200,包头市,3,150000 +150300,乌海市,3,150000 +150400,赤峰市,3,150000 +150500,通辽市,3,150000 +150600,鄂尔多斯市,3,150000 +150700,呼伦è´å°”市,3,150000 +150800,巴彦淖尔市,3,150000 +150900,乌兰察布市,3,150000 +152200,兴安盟,3,150000 +152500,锡林郭勒盟,3,150000 +152900,阿拉善盟,3,150000 +210100,沈阳市,3,210000 +210200,大连市,3,210000 +210300,éžå±±å¸‚,3,210000 +210400,抚顺市,3,210000 +210500,本溪市,3,210000 +210600,丹东市,3,210000 +210700,锦州市,3,210000 +210800,è¥å£å¸‚,3,210000 +210900,阜新市,3,210000 +211000,辽阳市,3,210000 +211100,盘锦市,3,210000 +211200,é“岭市,3,210000 +211300,æœé˜³å¸‚,3,210000 +211400,葫芦岛市,3,210000 +220100,长春市,3,220000 +220200,剿ž—市,3,220000 +220300,四平市,3,220000 +220400,è¾½æºå¸‚,3,220000 +220500,通化市,3,220000 +220600,白山市,3,220000 +220700,æ¾åŽŸå¸‚,3,220000 +220800,白城市,3,220000 +222400,å»¶è¾¹æœé²œæ—自治州,3,220000 +230100,哈尔滨市,3,230000 +230200,é½é½å“ˆå°”市,3,230000 +230300,鸡西市,3,230000 +230400,鹤岗市,3,230000 +230500,åŒé¸­å±±å¸‚,3,230000 +230600,大庆市,3,230000 +230700,伊春市,3,230000 +230800,佳木斯市,3,230000 +230900,ä¸ƒå°æ²³å¸‚,3,230000 +231000,牡丹江市,3,230000 +231100,黑河市,3,230000 +231200,绥化市,3,230000 +232700,大兴安岭地区,3,230000 +310100,上海市,3,310000 +320100,å—京市,3,320000 +320200,无锡市,3,320000 +320300,å¾å·žå¸‚,3,320000 +320400,常州市,3,320000 +320500,è‹å·žå¸‚,3,320000 +320600,å—通市,3,320000 +320700,连云港市,3,320000 +320800,淮安市,3,320000 +320900,ç›åŸŽå¸‚,3,320000 +321000,扬州市,3,320000 +321100,镇江市,3,320000 +321200,泰州市,3,320000 +321300,宿è¿å¸‚,3,320000 +330100,æ­å·žå¸‚,3,330000 +330200,宿³¢å¸‚,3,330000 +330300,温州市,3,330000 +330400,嘉兴市,3,330000 +330500,湖州市,3,330000 +330600,ç»å…´å¸‚,3,330000 +330700,金åŽå¸‚,3,330000 +330800,衢州市,3,330000 +330900,舟山市,3,330000 +331000,å°å·žå¸‚,3,330000 +331100,丽水市,3,330000 +340100,åˆè‚¥å¸‚,3,340000 +340200,芜湖市,3,340000 +340300,蚌埠市,3,340000 +340400,æ·®å—市,3,340000 +340500,马éžå±±å¸‚,3,340000 +340600,淮北市,3,340000 +340700,铜陵市,3,340000 +340800,安庆市,3,340000 +341000,黄山市,3,340000 +341100,æ»å·žå¸‚,3,340000 +341200,阜阳市,3,340000 +341300,宿州市,3,340000 +341500,六安市,3,340000 +341600,亳州市,3,340000 +341700,池州市,3,340000 +341800,宣城市,3,340000 +350100,ç¦å·žå¸‚,3,350000 +350200,厦门市,3,350000 +350300,莆田市,3,350000 +350400,三明市,3,350000 +350500,泉州市,3,350000 +350600,漳州市,3,350000 +350700,å—平市,3,350000 +350800,龙岩市,3,350000 +350900,å®å¾·å¸‚,3,350000 +360100,å—æ˜Œå¸‚,3,360000 +360200,景德镇市,3,360000 +360300,è乡市,3,360000 +360400,乿±Ÿå¸‚,3,360000 +360500,新余市,3,360000 +360600,鹰潭市,3,360000 +360700,赣州市,3,360000 +360800,å‰å®‰å¸‚,3,360000 +360900,宜春市,3,360000 +361000,抚州市,3,360000 +361100,上饶市,3,360000 +370100,济å—市,3,370000 +370200,é’岛市,3,370000 +370300,æ·„åšå¸‚,3,370000 +370400,枣庄市,3,370000 +370500,东è¥å¸‚,3,370000 +370600,烟å°å¸‚,3,370000 +370700,æ½åŠå¸‚,3,370000 +370800,济å®å¸‚,3,370000 +370900,泰安市,3,370000 +371000,卿µ·å¸‚,3,370000 +371100,日照市,3,370000 +371300,临沂市,3,370000 +371400,德州市,3,370000 +371500,èŠåŸŽå¸‚,3,370000 +371600,滨州市,3,370000 +371700,èæ³½å¸‚,3,370000 +410100,郑州市,3,410000 +410200,å¼€å°å¸‚,3,410000 +410300,洛阳市,3,410000 +410400,平顶山市,3,410000 +410500,安阳市,3,410000 +410600,鹤å£å¸‚,3,410000 +410700,新乡市,3,410000 +410800,焦作市,3,410000 +410900,濮阳市,3,410000 +411000,许昌市,3,410000 +411100,漯河市,3,410000 +411200,三门峡市,3,410000 +411300,å—阳市,3,410000 +411400,商丘市,3,410000 +411500,信阳市,3,410000 +411600,周å£å¸‚,3,410000 +411700,驻马店市,3,410000 +419000,çœç›´è¾–县级行政区划,3,410000 +420100,武汉市,3,420000 +420200,黄石市,3,420000 +420300,å堰市,3,420000 +420500,宜昌市,3,420000 +420600,襄阳市,3,420000 +420700,鄂州市,3,420000 +420800,è†é—¨å¸‚,3,420000 +420900,å­æ„Ÿå¸‚,3,420000 +421000,è†å·žå¸‚,3,420000 +421100,黄冈市,3,420000 +421200,å’¸å®å¸‚,3,420000 +421300,éšå·žå¸‚,3,420000 +422800,æ©æ–½åœŸå®¶æ—è‹—æ—自治州,3,420000 +429000,çœç›´è¾–县级行政区划,3,420000 +430100,长沙市,3,430000 +430200,株洲市,3,430000 +430300,湘潭市,3,430000 +430400,衡阳市,3,430000 +430500,邵阳市,3,430000 +430600,岳阳市,3,430000 +430700,常德市,3,430000 +430800,张家界市,3,430000 +430900,益阳市,3,430000 +431000,郴州市,3,430000 +431100,永州市,3,430000 +431200,怀化市,3,430000 +431300,娄底市,3,430000 +433100,湘西土家æ—è‹—æ—自治州,3,430000 +440100,广州市,3,440000 +440200,韶关市,3,440000 +440300,深圳市,3,440000 +440400,ç æµ·å¸‚,3,440000 +440500,汕头市,3,440000 +440600,佛山市,3,440000 +440700,江门市,3,440000 +440800,湛江市,3,440000 +440900,茂å市,3,440000 +441200,肇庆市,3,440000 +441300,惠州市,3,440000 +441400,梅州市,3,440000 +441500,汕尾市,3,440000 +441600,æ²³æºå¸‚,3,440000 +441700,阳江市,3,440000 +441800,清远市,3,440000 +441900,东莞市,3,440000 +441901,莞城区,4,441900 +441902,å—城区,4,441900 +441904,万江区,4,441900 +441905,石碣镇,4,441900 +441906,石龙镇,4,441900 +441907,茶山镇,4,441900 +441908,石排镇,4,441900 +441909,ä¼çŸ³é•‡,4,441900 +441910,横沥镇,4,441900 +441911,桥头镇,4,441900 +441912,谢岗镇,4,441900 +441913,东å‘镇,4,441900 +441914,常平镇,4,441900 +441915,寮步镇,4,441900 +441916,大朗镇,4,441900 +441917,麻涌镇,4,441900 +441918,中堂镇,4,441900 +441919,高埗镇,4,441900 +441920,樟木头镇,4,441900 +441921,大岭山镇,4,441900 +441922,望牛墩镇,4,441900 +441923,黄江镇,4,441900 +441924,洪梅镇,4,441900 +441925,清溪镇,4,441900 +441926,沙田镇,4,441900 +441927,铿»˜é•‡,4,441900 +441928,塘厦镇,4,441900 +441929,虎门镇,4,441900 +441930,厚街镇,4,441900 +441931,凤岗镇,4,441900 +441932,长安镇,4,441900 +442000,中山市,3,440000 +442001,石å²è¡—é“,4,442000 +442002,东区街é“,4,442000 +442003,中山港街é“,4,442000 +442004,西区街é“,4,442000 +442005,å—区街é“,4,442000 +442006,五桂山街é“,4,442000 +442007,æ°‘ä¼—è¡—é“,4,442000 +442008,å—æœ—è¡—é“,4,442000 +442009,黄圃镇,4,442000 +442010,东凤镇,4,442000 +442011,å¤é•‡é•‡,4,442000 +442012,沙溪镇,4,442000 +442013,妿´²é•‡,4,442000 +442014,港å£é•‡,4,442000 +442015,三角镇,4,442000 +442016,横æ é•‡,4,442000 +442017,å—头镇,4,442000 +442018,阜沙镇,4,442000 +442019,三乡镇,4,442000 +442020,æ¿èЙ镇,4,442000 +442021,大涌镇,4,442000 +442022,神湾镇,4,442000 +442023,å°æ¦„镇,4,442000 +445100,潮州市,3,440000 +445200,æ­é˜³å¸‚,3,440000 +445300,云浮市,3,440000 +450100,å—å®å¸‚,3,450000 +450200,柳州市,3,450000 +450300,桂林市,3,450000 +450400,梧州市,3,450000 +450500,北海市,3,450000 +450600,防城港市,3,450000 +450700,钦州市,3,450000 +450800,贵港市,3,450000 +450900,玉林市,3,450000 +451000,百色市,3,450000 +451100,贺州市,3,450000 +451200,河池市,3,450000 +451300,æ¥å®¾å¸‚,3,450000 +451400,崇左市,3,450000 +460100,æµ·å£å¸‚,3,460000 +460200,三亚市,3,460000 +460300,三沙市,3,460000 +460400,儋州市,3,460000 +469000,çœç›´è¾–县级行政区划,3,460000 +500100,é‡åº†å¸‚,3,500000 +510100,æˆéƒ½å¸‚,3,510000 +510300,自贡市,3,510000 +510400,攀æžèб参,3,510000 +510500,泸州市,3,510000 +510600,德阳市,3,510000 +510700,绵阳市,3,510000 +510800,广元市,3,510000 +510900,é‚å®å¸‚,3,510000 +511000,内江市,3,510000 +511100,ä¹å±±å¸‚,3,510000 +511300,å—充市,3,510000 +511400,眉山市,3,510000 +511500,宜宾市,3,510000 +511600,广安市,3,510000 +511700,达州市,3,510000 +511800,雅安市,3,510000 +511900,巴中市,3,510000 +512000,资阳市,3,510000 +513200,阿åè—æ—羌æ—自治州,3,510000 +513300,ç”˜å­œè—æ—自治州,3,510000 +513400,凉山彿—自治州,3,510000 +520100,贵阳市,3,520000 +520200,六盘水市,3,520000 +520300,éµä¹‰å¸‚,3,520000 +520400,安顺市,3,520000 +520500,毕节市,3,520000 +520600,铜ä»å¸‚,3,520000 +522300,黔西å—å¸ƒä¾æ—è‹—æ—自治州,3,520000 +522600,黔东å—è‹—æ—ä¾—æ—自治州,3,520000 +522700,é»”å—å¸ƒä¾æ—è‹—æ—自治州,3,520000 +530100,昆明市,3,530000 +530300,曲é–市,3,530000 +530400,玉溪市,3,530000 +530500,ä¿å±±å¸‚,3,530000 +530600,昭通市,3,530000 +530700,丽江市,3,530000 +530800,普洱市,3,530000 +530900,临沧市,3,530000 +532300,æ¥šé›„å½æ—自治州,3,530000 +532500,红河哈尼æ—彿—自治州,3,530000 +532600,文山壮æ—è‹—æ—自治州,3,530000 +532800,西åŒç‰ˆçº³å‚£æ—自治州,3,530000 +532900,大ç†ç™½æ—自治州,3,530000 +533100,å¾·å®å‚£æ—景颇æ—自治州,3,530000 +533300,怒江傈僳æ—自治州,3,530000 +533400,è¿ªåº†è—æ—自治州,3,530000 +540100,拉è¨å¸‚,3,540000 +540200,日喀则市,3,540000 +540300,昌都市,3,540000 +540400,æž—èŠå¸‚,3,540000 +540500,å±±å—市,3,540000 +540600,那曲市,3,540000 +542500,阿里地区,3,540000 +610100,西安市,3,610000 +610200,铜å·å¸‚,3,610000 +610300,å®é¸¡å¸‚,3,610000 +610400,咸阳市,3,610000 +610500,渭å—市,3,610000 +610600,延安市,3,610000 +610700,汉中市,3,610000 +610800,榆林市,3,610000 +610900,安康市,3,610000 +611000,商洛市,3,610000 +620100,兰州市,3,620000 +620200,嘉峪关市,3,620000 +620300,金昌市,3,620000 +620400,白银市,3,620000 +620500,天水市,3,620000 +620600,æ­¦å¨å¸‚,3,620000 +620700,张掖市,3,620000 +620800,平凉市,3,620000 +620900,酒泉市,3,620000 +621000,庆阳市,3,620000 +621100,定西市,3,620000 +621200,陇å—市,3,620000 +622900,临å¤å›žæ—自治州,3,620000 +623000,甘å—è—æ—自治州,3,620000 +630100,西å®å¸‚,3,630000 +630200,海东市,3,630000 +632200,æµ·åŒ—è—æ—自治州,3,630000 +632300,黄å—è—æ—自治州,3,630000 +632500,æµ·å—è—æ—自治州,3,630000 +632600,æžœæ´›è—æ—自治州,3,630000 +632700,çŽ‰æ ‘è—æ—自治州,3,630000 +632800,æµ·è¥¿è’™å¤æ—è—æ—自治州,3,630000 +640100,é“¶å·å¸‚,3,640000 +640200,石嘴山市,3,640000 +640300,å´å¿ å¸‚,3,640000 +640400,固原市,3,640000 +640500,中å«å¸‚,3,640000 +650100,ä¹Œé²æœ¨é½å¸‚,3,650000 +650200,克拉玛ä¾å¸‚,3,650000 +650400,åé²ç•ªå¸‚,3,650000 +650500,哈密市,3,650000 +652300,昌å‰å›žæ—自治州,3,650000 +652700,åšå°”塔拉蒙å¤è‡ªæ²»å·ž,3,650000 +652800,巴音郭楞蒙å¤è‡ªæ²»å·ž,3,650000 +652900,阿克è‹åœ°åŒº,3,650000 +653000,å…‹å­œå‹’è‹æŸ¯å°”克孜自治州,3,650000 +653100,喀什地区,3,650000 +653200,和田地区,3,650000 +654000,伊çŠå“ˆè¨å…‹è‡ªæ²»å·ž,3,650000 +654200,塔城地区,3,650000 +654300,阿勒泰地区,3,650000 +659000,自治区直辖县级行政区划,3,650000 +110101,东城区,4,110100 +110102,西城区,4,110100 +110105,æœé˜³åŒº,4,110100 +110106,丰å°åŒº,4,110100 +110107,石景山区,4,110100 +110108,海淀区,4,110100 +110109,门头沟区,4,110100 +110111,房山区,4,110100 +110112,通州区,4,110100 +110113,顺义区,4,110100 +110114,昌平区,4,110100 +110115,大兴区,4,110100 +110116,怀柔区,4,110100 +110117,平谷区,4,110100 +110118,密云区,4,110100 +110119,延庆区,4,110100 +120101,和平区,4,120100 +120102,河东区,4,120100 +120103,河西区,4,120100 +120104,å—开区,4,120100 +120105,河北区,4,120100 +120106,红桥区,4,120100 +120110,东丽区,4,120100 +120111,西é’区,4,120100 +120112,æ´¥å—区,4,120100 +120113,北辰区,4,120100 +120114,武清区,4,120100 +120115,å®å»åŒº,4,120100 +120116,滨海新区,4,120100 +120117,宿²³åŒº,4,120100 +120118,陿µ·åŒº,4,120100 +120119,蓟州区,4,120100 +130102,长安区,4,130100 +130104,桥西区,4,130100 +130105,æ–°åŽåŒº,4,130100 +130107,井陉矿区,4,130100 +130108,裕åŽåŒº,4,130100 +130109,è—城区,4,130100 +130110,鹿泉区,4,130100 +130111,栾城区,4,130100 +130121,井陉县,4,130100 +130123,正定县,4,130100 +130125,行å”县,4,130100 +130126,çµå¯¿åŽ¿,4,130100 +130127,高邑县,4,130100 +130128,深泽县,4,130100 +130129,赞皇县,4,130100 +130130,æ— æžåŽ¿,4,130100 +130131,平山县,4,130100 +130132,å…ƒæ°åŽ¿,4,130100 +130133,赵县,4,130100 +130171,石家庄高新技术产业开å‘区,4,130100 +130172,石家庄循环化工园区,4,130100 +130181,辛集市,4,130100 +130183,晋州市,4,130100 +130184,æ–°ä¹å¸‚,4,130100 +130202,è·¯å—区,4,130200 +130203,路北区,4,130200 +130204,å¤å†¶åŒº,4,130200 +130205,开平区,4,130200 +130207,丰å—区,4,130200 +130208,丰润区,4,130200 +130209,曹妃甸区,4,130200 +130224,滦å—县,4,130200 +130225,ä¹äº­åŽ¿,4,130200 +130227,è¿è¥¿åŽ¿,4,130200 +130229,玉田县,4,130200 +130271,河北å”山芦å°ç»æµŽå¼€å‘区,4,130200 +130272,å”山市汉沽管ç†åŒº,4,130200 +130273,å”山高新技术产业开å‘区,4,130200 +130274,河北å”å±±æµ·æ¸¯ç»æµŽå¼€å‘区,4,130200 +130281,éµåŒ–市,4,130200 +130283,è¿å®‰å¸‚,4,130200 +130284,滦州市,4,130200 +130302,海港区,4,130300 +130303,山海关区,4,130300 +130304,北戴河区,4,130300 +130306,抚å®åŒº,4,130300 +130321,é’龙满æ—自治县,4,130300 +130322,昌黎县,4,130300 +130324,å¢é¾™åŽ¿,4,130300 +130371,ç§¦çš‡å²›å¸‚ç»æµŽæŠ€æœ¯å¼€å‘区,4,130300 +130372,北戴河新区,4,130300 +130402,邯山区,4,130400 +130403,丛å°åŒº,4,130400 +130404,å¤å…´åŒº,4,130400 +130406,峰峰矿区,4,130400 +130407,肥乡区,4,130400 +130408,永年区,4,130400 +130423,临漳县,4,130400 +130424,æˆå®‰åŽ¿,4,130400 +130425,大å县,4,130400 +130426,涉县,4,130400 +130427,ç£åŽ¿,4,130400 +130430,邱县,4,130400 +130431,鸡泽县,4,130400 +130432,广平县,4,130400 +130433,馆陶县,4,130400 +130434,é­åŽ¿,4,130400 +130435,曲周县,4,130400 +130471,é‚¯éƒ¸ç»æµŽæŠ€æœ¯å¼€å‘区,4,130400 +130473,é‚¯éƒ¸å†€å—æ–°åŒº,4,130400 +130481,武安市,4,130400 +130502,襄都区,4,130500 +130503,信都区,4,130500 +130505,任泽区,4,130500 +130506,å—和区,4,130500 +130522,临城县,4,130500 +130523,内丘县,4,130500 +130524,æŸä¹¡åŽ¿,4,130500 +130525,隆尧县,4,130500 +130528,宿™‹åŽ¿,4,130500 +130529,巨鹿县,4,130500 +130530,新河县,4,130500 +130531,广宗县,4,130500 +130532,平乡县,4,130500 +130533,å¨åŽ¿,4,130500 +130534,清河县,4,130500 +130535,临西县,4,130500 +130571,河北邢å°ç»æµŽå¼€å‘区,4,130500 +130581,å—宫市,4,130500 +130582,沙河市,4,130500 +130602,竞秀区,4,130600 +130606,莲池区,4,130600 +130607,满城区,4,130600 +130608,清苑区,4,130600 +130609,徿°´åŒº,4,130600 +130623,涞水县,4,130600 +130624,阜平县,4,130600 +130626,定兴县,4,130600 +130627,å”县,4,130600 +130628,高阳县,4,130600 +130629,容城县,4,130600 +130630,æ¶žæºåŽ¿,4,130600 +130631,望都县,4,130600 +130632,安新县,4,130600 +130633,易县,4,130600 +130634,曲阳县,4,130600 +130635,蠡县,4,130600 +130636,顺平县,4,130600 +130637,åšé‡ŽåŽ¿,4,130600 +130638,雄县,4,130600 +130671,ä¿å®šé«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,130600 +130672,ä¿å®šç™½æ²Ÿæ–°åŸŽ,4,130600 +130681,涿州市,4,130600 +130682,定州市,4,130600 +130683,安国市,4,130600 +130684,高碑店市,4,130600 +130702,桥东区,4,130700 +130703,桥西区,4,130700 +130705,宣化区,4,130700 +130706,下花园区,4,130700 +130708,万全区,4,130700 +130709,崇礼区,4,130700 +130722,张北县,4,130700 +130723,康ä¿åŽ¿,4,130700 +130724,æ²½æºåŽ¿,4,130700 +130725,尚义县,4,130700 +130726,蔚县,4,130700 +130727,阳原县,4,130700 +130728,怀安县,4,130700 +130730,怀æ¥åŽ¿,4,130700 +130731,涿鹿县,4,130700 +130732,赤城县,4,130700 +130771,å¼ å®¶å£ç»æµŽå¼€å‘区,4,130700 +130772,å¼ å®¶å£å¸‚察北管ç†åŒº,4,130700 +130773,å¼ å®¶å£å¸‚塞北管ç†åŒº,4,130700 +130802,åŒæ¡¥åŒº,4,130800 +130803,åŒæ»¦åŒº,4,130800 +130804,鹰手è¥å­çŸ¿åŒº,4,130800 +130821,承德县,4,130800 +130822,兴隆县,4,130800 +130824,滦平县,4,130800 +130825,隆化县,4,130800 +130826,䏰宿»¡æ—自治县,4,130800 +130827,宽城满æ—自治县,4,130800 +130828,围场满æ—è’™å¤æ—自治县,4,130800 +130871,承德高新技术产业开å‘区,4,130800 +130881,平泉市,4,130800 +130902,æ–°åŽåŒº,4,130900 +130903,è¿æ²³åŒº,4,130900 +130921,沧县,4,130900 +130922,é’县,4,130900 +130923,东光县,4,130900 +130924,海兴县,4,130900 +130925,ç›å±±åŽ¿,4,130900 +130926,肃å®åŽ¿,4,130900 +130927,å—皮县,4,130900 +130928,å´æ¡¥åŽ¿,4,130900 +130929,献县,4,130900 +130930,å­Ÿæ‘回æ—自治县,4,130900 +130971,æ²³åŒ—æ²§å·žç»æµŽå¼€å‘区,4,130900 +130972,沧州高新技术产业开å‘区,4,130900 +130973,沧州渤海新区,4,130900 +130981,泊头市,4,130900 +130982,任丘市,4,130900 +130983,黄骅市,4,130900 +130984,河间市,4,130900 +131002,安次区,4,131000 +131003,广阳区,4,131000 +131022,固安县,4,131000 +131023,永清县,4,131000 +131024,香河县,4,131000 +131025,大城县,4,131000 +131026,文安县,4,131000 +131028,大厂回æ—自治县,4,131000 +131071,廊åŠç»æµŽæŠ€æœ¯å¼€å‘区,4,131000 +131081,霸州市,4,131000 +131082,三河市,4,131000 +131102,桃城区,4,131100 +131103,冀州区,4,131100 +131121,枣强县,4,131100 +131122,武邑县,4,131100 +131123,武强县,4,131100 +131124,饶阳县,4,131100 +131125,安平县,4,131100 +131126,故城县,4,131100 +131127,景县,4,131100 +131128,阜城县,4,131100 +131171,河北衡水高新技术产业开å‘区,4,131100 +131172,衡水滨湖新区,4,131100 +131182,深州市,4,131100 +140105,å°åº—区,4,140100 +140106,迎泽区,4,140100 +140107,æèŠ±å²­åŒº,4,140100 +140108,å°–è‰åªåŒº,4,140100 +140109,ä¸‡æŸæž—区,4,140100 +140110,晋æºåŒº,4,140100 +140121,清å¾åŽ¿,4,140100 +140122,阳曲县,4,140100 +140123,娄烦县,4,140100 +140171,å±±è¥¿è½¬åž‹ç»¼åˆæ”¹é©ç¤ºèŒƒåŒº,4,140100 +140181,å¤äº¤å¸‚,4,140100 +140212,æ–°è£åŒº,4,140200 +140213,平城区,4,140200 +140214,云冈区,4,140200 +140215,云州区,4,140200 +140221,阳高县,4,140200 +140222,天镇县,4,140200 +140223,广çµåŽ¿,4,140200 +140224,çµä¸˜åŽ¿,4,140200 +140225,浑æºåŽ¿,4,140200 +140226,左云县,4,140200 +140271,山西大åŒç»æµŽå¼€å‘区,4,140200 +140302,城区,4,140300 +140303,矿区,4,140300 +140311,郊区,4,140300 +140321,平定县,4,140300 +140322,盂县,4,140300 +140403,潞州区,4,140400 +140404,上党区,4,140400 +140405,屯留区,4,140400 +140406,潞城区,4,140400 +140423,襄垣县,4,140400 +140425,平顺县,4,140400 +140426,黎城县,4,140400 +140427,壶关县,4,140400 +140428,é•¿å­åŽ¿,4,140400 +140429,武乡县,4,140400 +140430,æ²åŽ¿,4,140400 +140431,æ²æºåŽ¿,4,140400 +140471,山西长治高新技术产业园区,4,140400 +140502,城区,4,140500 +140521,æ²æ°´åŽ¿,4,140500 +140522,阳城县,4,140500 +140524,陵å·åŽ¿,4,140500 +140525,泽州县,4,140500 +140581,高平市,4,140500 +140602,朔城区,4,140600 +140603,å¹³é²åŒº,4,140600 +140621,山阴县,4,140600 +140622,应县,4,140600 +140623,å³çŽ‰åŽ¿,4,140600 +140671,å±±è¥¿æœ”å·žç»æµŽå¼€å‘区,4,140600 +140681,怀ä»å¸‚,4,140600 +140702,榆次区,4,140700 +140703,太谷区,4,140700 +140721,榆社县,4,140700 +140722,å·¦æƒåŽ¿,4,140700 +140723,和顺县,4,140700 +140724,昔阳县,4,140700 +140725,寿阳县,4,140700 +140727,ç¥åŽ¿,4,140700 +140728,å¹³é¥åŽ¿,4,140700 +140729,çµçŸ³åŽ¿,4,140700 +140781,介休市,4,140700 +140802,ç›æ¹–区,4,140800 +140821,临猗县,4,140800 +140822,万è£åŽ¿,4,140800 +140823,闻喜县,4,140800 +140824,稷山县,4,140800 +140825,新绛县,4,140800 +140826,绛县,4,140800 +140827,垣曲县,4,140800 +140828,å¤åŽ¿,4,140800 +140829,平陆县,4,140800 +140830,芮城县,4,140800 +140881,永济市,4,140800 +140882,河津市,4,140800 +140902,忻府区,4,140900 +140921,定襄县,4,140900 +140922,五å°åŽ¿,4,140900 +140923,代县,4,140900 +140924,ç¹å³™åŽ¿,4,140900 +140925,宿­¦åŽ¿,4,140900 +140926,é™ä¹åŽ¿,4,140900 +140927,神池县,4,140900 +140928,五寨县,4,140900 +140929,岢岚县,4,140900 +140930,河曲县,4,140900 +140931,ä¿å¾·åŽ¿,4,140900 +140932,å关县,4,140900 +140971,五å°å±±é£Žæ™¯å胜区,4,140900 +140981,原平市,4,140900 +141002,尧都区,4,141000 +141021,曲沃县,4,141000 +141022,翼城县,4,141000 +141023,襄汾县,4,141000 +141024,洪洞县,4,141000 +141025,å¤åŽ¿,4,141000 +141026,安泽县,4,141000 +141027,浮山县,4,141000 +141028,å‰åŽ¿,4,141000 +141029,乡å®åŽ¿,4,141000 +141030,大å®åŽ¿,4,141000 +141031,隰县,4,141000 +141032,永和县,4,141000 +141033,蒲县,4,141000 +141034,汾西县,4,141000 +141081,侯马市,4,141000 +141082,éœå·žå¸‚,4,141000 +141102,离石区,4,141100 +141121,文水县,4,141100 +141122,交城县,4,141100 +141123,兴县,4,141100 +141124,临县,4,141100 +141125,柳林县,4,141100 +141126,石楼县,4,141100 +141127,岚县,4,141100 +141128,方山县,4,141100 +141129,中阳县,4,141100 +141130,交å£åŽ¿,4,141100 +141181,å­ä¹‰å¸‚,4,141100 +141182,汾阳市,4,141100 +150102,新城区,4,150100 +150103,回民区,4,150100 +150104,玉泉区,4,150100 +150105,赛罕区,4,150100 +150121,土默特左旗,4,150100 +150122,托克托县,4,150100 +150123,和林格尔县,4,150100 +150124,清水河县,4,150100 +150125,æ­¦å·åŽ¿,4,150100 +150172,å‘¼å’Œæµ©ç‰¹ç»æµŽæŠ€æœ¯å¼€å‘区,4,150100 +150202,东河区,4,150200 +150203,昆都仑区,4,150200 +150204,é’山区,4,150200 +150205,石æ‹åŒº,4,150200 +150206,白云鄂åšçŸ¿åŒº,4,150200 +150207,ä¹åŽŸåŒº,4,150200 +150221,åœŸé»˜ç‰¹å³æ——,4,150200 +150222,固阳县,4,150200 +150223,达尔罕茂明安è”åˆæ——,4,150200 +150271,包头稀土高新技术产业开å‘区,4,150200 +150302,海勃湾区,4,150300 +150303,æµ·å—区,4,150300 +150304,乌达区,4,150300 +150402,红山区,4,150400 +150403,å…ƒå®å±±åŒº,4,150400 +150404,æ¾å±±åŒº,4,150400 +150421,阿é²ç§‘å°”æ²æ——,4,150400 +150422,巴林左旗,4,150400 +150423,å·´æž—å³æ——,4,150400 +150424,林西县,4,150400 +150425,克什克腾旗,4,150400 +150426,ç¿ç‰›ç‰¹æ——,4,150400 +150428,å–€å–‡æ²æ——,4,150400 +150429,å®åŸŽåŽ¿,4,150400 +150430,敖汉旗,4,150400 +150502,ç§‘å°”æ²åŒº,4,150500 +150521,ç§‘å°”æ²å·¦ç¿¼ä¸­æ——,4,150500 +150522,ç§‘å°”æ²å·¦ç¿¼åŽæ——,4,150500 +150523,å¼€é²åŽ¿,4,150500 +150524,库伦旗,4,150500 +150525,奈曼旗,4,150500 +150526,扎é²ç‰¹æ——,4,150500 +150571,é€šè¾½ç»æµŽæŠ€æœ¯å¼€å‘区,4,150500 +150581,éœæž—郭勒市,4,150500 +150602,东胜区,4,150600 +150603,康巴什区,4,150600 +150621,达拉特旗,4,150600 +150622,准格尔旗,4,150600 +150623,é„‚æ‰˜å…‹å‰æ——,4,150600 +150624,鄂托克旗,4,150600 +150625,æ­é”¦æ——,4,150600 +150626,乌审旗,4,150600 +150627,ä¼Šé‡‘éœæ´›æ——,4,150600 +150702,海拉尔区,4,150700 +150703,扎赉诺尔区,4,150700 +150721,é˜¿è£æ——,4,150700 +150722,莫力达瓦达斡尔æ—自治旗,4,150700 +150723,鄂伦春自治旗,4,150700 +150724,鄂温克æ—自治旗,4,150700 +150725,陈巴尔虎旗,4,150700 +150726,新巴尔虎左旗,4,150700 +150727,æ–°å·´å°”è™Žå³æ——,4,150700 +150781,满洲里市,4,150700 +150782,牙克石市,4,150700 +150783,扎兰屯市,4,150700 +150784,é¢å°”å¤çº³å¸‚,4,150700 +150785,根河市,4,150700 +150802,临河区,4,150800 +150821,五原县,4,150800 +150822,磴å£åŽ¿,4,150800 +150823,ä¹Œæ‹‰ç‰¹å‰æ——,4,150800 +150824,乌拉特中旗,4,150800 +150825,ä¹Œæ‹‰ç‰¹åŽæ——,4,150800 +150826,æ­é”¦åŽæ——,4,150800 +150902,集å®åŒº,4,150900 +150921,å“资县,4,150900 +150922,化德县,4,150900 +150923,商都县,4,150900 +150924,兴和县,4,150900 +150925,凉城县,4,150900 +150926,察哈尔å³ç¿¼å‰æ——,4,150900 +150927,察哈尔å³ç¿¼ä¸­æ——,4,150900 +150928,察哈尔å³ç¿¼åŽæ——,4,150900 +150929,å››å­çŽ‹æ——,4,150900 +150981,丰镇市,4,150900 +152201,乌兰浩特市,4,152200 +152202,阿尔山市,4,152200 +152221,ç§‘å°”æ²å³ç¿¼å‰æ——,4,152200 +152222,ç§‘å°”æ²å³ç¿¼ä¸­æ——,4,152200 +152223,扎赉特旗,4,152200 +152224,çªæ³‰åŽ¿,4,152200 +152501,二连浩特市,4,152500 +152502,锡林浩特市,4,152500 +152522,阿巴嘎旗,4,152500 +152523,è‹å°¼ç‰¹å·¦æ——,4,152500 +152524,è‹å°¼ç‰¹å³æ——,4,152500 +152525,东乌ç ç©†æ²æ——,4,152500 +152526,西乌ç ç©†æ²æ——,4,152500 +152527,太仆寺旗,4,152500 +152528,镶黄旗,4,152500 +152529,正镶白旗,4,152500 +152530,æ­£è“æ——,4,152500 +152531,多伦县,4,152500 +152571,乌拉盖管委会,4,152500 +152921,阿拉善左旗,4,152900 +152922,é˜¿æ‹‰å–„å³æ——,4,152900 +152923,颿µŽçº³æ——,4,152900 +152971,内蒙å¤é˜¿æ‹‰å–„高新技术产业开å‘区,4,152900 +210102,和平区,4,210100 +210103,沈河区,4,210100 +210104,大东区,4,210100 +210105,皇姑区,4,210100 +210106,é“西区,4,210100 +210111,è‹å®¶å±¯åŒº,4,210100 +210112,浑å—区,4,210100 +210113,沈北新区,4,210100 +210114,于洪区,4,210100 +210115,辽中区,4,210100 +210123,康平县,4,210100 +210124,法库县,4,210100 +210181,新民市,4,210100 +210202,中山区,4,210200 +210203,西岗区,4,210200 +210204,沙河å£åŒº,4,210200 +210211,甘井å­åŒº,4,210200 +210212,旅顺å£åŒº,4,210200 +210213,金州区,4,210200 +210214,普兰店区,4,210200 +210224,长海县,4,210200 +210281,瓦房店市,4,210200 +210283,庄河市,4,210200 +210302,é“东区,4,210300 +210303,é“西区,4,210300 +210304,立山区,4,210300 +210311,åƒå±±åŒº,4,210300 +210321,å°å®‰åŽ¿,4,210300 +210323,岫岩满æ—自治县,4,210300 +210381,海城市,4,210300 +210402,新抚区,4,210400 +210403,东洲区,4,210400 +210404,望花区,4,210400 +210411,顺城区,4,210400 +210421,抚顺县,4,210400 +210422,新宾满æ—自治县,4,210400 +210423,清原满æ—自治县,4,210400 +210502,平山区,4,210500 +210503,溪湖区,4,210500 +210504,明山区,4,210500 +210505,å—芬区,4,210500 +210521,本溪满æ—自治县,4,210500 +210522,æ¡“ä»æ»¡æ—自治县,4,210500 +210602,å…ƒå®åŒº,4,210600 +210603,振兴区,4,210600 +210604,振安区,4,210600 +210624,宽甸满æ—自治县,4,210600 +210681,东港市,4,210600 +210682,凤城市,4,210600 +210702,å¤å¡”区,4,210700 +210703,凌河区,4,210700 +210711,太和区,4,210700 +210726,黑山县,4,210700 +210727,义县,4,210700 +210781,凌海市,4,210700 +210782,北镇市,4,210700 +210802,ç«™å‰åŒº,4,210800 +210803,西市区,4,210800 +210804,鲅鱼圈区,4,210800 +210811,è€è¾¹åŒº,4,210800 +210881,盖州市,4,210800 +210882,大石桥市,4,210800 +210902,海州区,4,210900 +210903,新邱区,4,210900 +210904,太平区,4,210900 +210905,清河门区,4,210900 +210911,细河区,4,210900 +210921,é˜œæ–°è’™å¤æ—自治县,4,210900 +210922,彰武县,4,210900 +211002,白塔区,4,211000 +211003,文圣区,4,211000 +211004,å®ä¼ŸåŒº,4,211000 +211005,弓长岭区,4,211000 +211011,å¤ªå­æ²³åŒº,4,211000 +211021,辽阳县,4,211000 +211081,ç¯å¡”市,4,211000 +211102,åŒå°å­åŒº,4,211100 +211103,兴隆å°åŒº,4,211100 +211104,大洼区,4,211100 +211122,盘山县,4,211100 +211202,银州区,4,211200 +211204,清河区,4,211200 +211221,é“岭县,4,211200 +211223,西丰县,4,211200 +211224,昌图县,4,211200 +211281,调兵山市,4,211200 +211282,开原市,4,211200 +211302,åŒå¡”区,4,211300 +211303,龙城区,4,211300 +211321,æœé˜³åŽ¿,4,211300 +211322,建平县,4,211300 +211324,喀喇æ²å·¦ç¿¼è’™å¤æ—自治县,4,211300 +211381,北票市,4,211300 +211382,凌æºå¸‚,4,211300 +211402,连山区,4,211400 +211403,龙港区,4,211400 +211404,å—票区,4,211400 +211421,绥中县,4,211400 +211422,建昌县,4,211400 +211481,兴城市,4,211400 +220102,å—关区,4,220100 +220103,宽城区,4,220100 +220104,æœé˜³åŒº,4,220100 +220105,二é“区,4,220100 +220106,绿园区,4,220100 +220112,åŒé˜³åŒº,4,220100 +220113,ä¹å°åŒº,4,220100 +220122,农安县,4,220100 +220171,é•¿æ˜¥ç»æµŽæŠ€æœ¯å¼€å‘区,4,220100 +220172,长春净月高新技术产业开å‘区,4,220100 +220173,长春高新技术产业开å‘区,4,220100 +220174,é•¿æ˜¥æ±½è½¦ç»æµŽæŠ€æœ¯å¼€å‘区,4,220100 +220182,榆树市,4,220100 +220183,德惠市,4,220100 +220184,公主岭市,4,220100 +220202,昌邑区,4,220200 +220203,龙潭区,4,220200 +220204,船è¥åŒº,4,220200 +220211,丰满区,4,220200 +220221,æ°¸å‰åŽ¿,4,220200 +220271,剿ž—ç»æµŽå¼€å‘区,4,220200 +220272,剿ž—高新技术产业开å‘区,4,220200 +220273,剿ž—中国新加å¡é£Ÿå“区,4,220200 +220281,蛟河市,4,220200 +220282,桦甸市,4,220200 +220283,舒兰市,4,220200 +220284,ç£çŸ³å¸‚,4,220200 +220302,é“西区,4,220300 +220303,é“东区,4,220300 +220322,梨树县,4,220300 +220323,伊通满æ—自治县,4,220300 +220382,åŒè¾½å¸‚,4,220300 +220402,龙山区,4,220400 +220403,西安区,4,220400 +220421,东丰县,4,220400 +220422,东辽县,4,220400 +220502,东昌区,4,220500 +220503,äºŒé“æ±ŸåŒº,4,220500 +220521,通化县,4,220500 +220523,辉å—县,4,220500 +220524,柳河县,4,220500 +220581,梅河å£å¸‚,4,220500 +220582,集安市,4,220500 +220602,浑江区,4,220600 +220605,江æºåŒº,4,220600 +220621,抚æ¾åŽ¿,4,220600 +220622,é–宇县,4,220600 +220623,长白æœé²œæ—自治县,4,220600 +220681,临江市,4,220600 +220702,宿±ŸåŒº,4,220700 +220721,å‰éƒ­å°”ç½—æ–¯è’™å¤æ—自治县,4,220700 +220722,长岭县,4,220700 +220723,乾安县,4,220700 +220771,剿ž—æ¾åŽŸç»æµŽå¼€å‘区,4,220700 +220781,扶余市,4,220700 +220802,洮北区,4,220800 +220821,镇赉县,4,220800 +220822,通榆县,4,220800 +220871,剿ž—ç™½åŸŽç»æµŽå¼€å‘区,4,220800 +220881,æ´®å—市,4,220800 +220882,大安市,4,220800 +222401,å»¶å‰å¸‚,4,222400 +222402,图们市,4,222400 +222403,敦化市,4,222400 +222404,ç²æ˜¥å¸‚,4,222400 +222405,龙井市,4,222400 +222406,和龙市,4,222400 +222424,汪清县,4,222400 +222426,安图县,4,222400 +230102,é“里区,4,230100 +230103,å—岗区,4,230100 +230104,é“外区,4,230100 +230108,平房区,4,230100 +230109,æ¾åŒ—区,4,230100 +230110,香åŠåŒº,4,230100 +230111,呼兰区,4,230100 +230112,阿城区,4,230100 +230113,åŒåŸŽåŒº,4,230100 +230123,ä¾å…°åŽ¿,4,230100 +230124,方正县,4,230100 +230125,宾县,4,230100 +230126,巴彦县,4,230100 +230127,木兰县,4,230100 +230128,通河县,4,230100 +230129,延寿县,4,230100 +230183,尚志市,4,230100 +230184,五常市,4,230100 +230202,龙沙区,4,230200 +230203,建åŽåŒº,4,230200 +230204,é“锋区,4,230200 +230205,昂昂溪区,4,230200 +230206,富拉尔基区,4,230200 +230207,碾å­å±±åŒº,4,230200 +230208,梅里斯达斡尔æ—区,4,230200 +230221,龙江县,4,230200 +230223,ä¾å®‰åŽ¿,4,230200 +230224,æ³°æ¥åŽ¿,4,230200 +230225,甘å—县,4,230200 +230227,富裕县,4,230200 +230229,克山县,4,230200 +230230,克东县,4,230200 +230231,拜泉县,4,230200 +230281,讷河市,4,230200 +230302,鸡冠区,4,230300 +230303,æ’山区,4,230300 +230304,æ»´é“区,4,230300 +230305,梨树区,4,230300 +230306,åŸŽå­æ²³åŒº,4,230300 +230307,麻山区,4,230300 +230321,鸡东县,4,230300 +230381,虎林市,4,230300 +230382,密山市,4,230300 +230402,å‘阳区,4,230400 +230403,工农区,4,230400 +230404,å—山区,4,230400 +230405,兴安区,4,230400 +230406,东山区,4,230400 +230407,兴山区,4,230400 +230421,è北县,4,230400 +230422,绥滨县,4,230400 +230502,尖山区,4,230500 +230503,岭东区,4,230500 +230505,四方å°åŒº,4,230500 +230506,å®å±±åŒº,4,230500 +230521,集贤县,4,230500 +230522,å‹è°ŠåŽ¿,4,230500 +230523,宿¸…县,4,230500 +230524,饶河县,4,230500 +230602,è¨å°”图区,4,230600 +230603,龙凤区,4,230600 +230604,让胡路区,4,230600 +230605,红岗区,4,230600 +230606,大åŒåŒº,4,230600 +230621,肇州县,4,230600 +230622,肇æºåŽ¿,4,230600 +230623,林甸县,4,230600 +230624,æœå°”ä¼¯ç‰¹è’™å¤æ—自治县,4,230600 +230671,大庆高新技术产业开å‘区,4,230600 +230717,伊美区,4,230700 +230718,乌翠区,4,230700 +230719,å‹å¥½åŒº,4,230700 +230722,嘉è«åŽ¿,4,230700 +230723,汤旺县,4,230700 +230724,丰林县,4,230700 +230725,大ç®å±±åŽ¿,4,230700 +230726,å—岔县,4,230700 +230751,金林区,4,230700 +230781,é“力市,4,230700 +230803,å‘阳区,4,230800 +230804,å‰è¿›åŒº,4,230800 +230805,东风区,4,230800 +230811,郊区,4,230800 +230822,桦å—县,4,230800 +230826,桦å·åŽ¿,4,230800 +230828,汤原县,4,230800 +230881,åŒæ±Ÿå¸‚,4,230800 +230882,富锦市,4,230800 +230883,抚远市,4,230800 +230902,新兴区,4,230900 +230903,桃山区,4,230900 +230904,èŒ„å­æ²³åŒº,4,230900 +230921,勃利县,4,230900 +231002,东安区,4,231000 +231003,阳明区,4,231000 +231004,爱民区,4,231000 +231005,西安区,4,231000 +231025,æž—å£åŽ¿,4,231000 +231071,ç‰¡ä¸¹æ±Ÿç»æµŽæŠ€æœ¯å¼€å‘区,4,231000 +231081,绥芬河市,4,231000 +231083,海林市,4,231000 +231084,å®å®‰å¸‚,4,231000 +231085,穆棱市,4,231000 +231086,东å®å¸‚,4,231000 +231102,爱辉区,4,231100 +231123,逊克县,4,231100 +231124,å­™å´åŽ¿,4,231100 +231181,北安市,4,231100 +231182,五大连池市,4,231100 +231183,嫩江市,4,231100 +231202,北林区,4,231200 +231221,望奎县,4,231200 +231222,兰西县,4,231200 +231223,é’冈县,4,231200 +231224,庆安县,4,231200 +231225,明水县,4,231200 +231226,绥棱县,4,231200 +231281,安达市,4,231200 +231282,肇东市,4,231200 +231283,海伦市,4,231200 +232701,漠河市,4,232700 +232721,呼玛县,4,232700 +232722,塔河县,4,232700 +232761,加格达奇区,4,232700 +232762,æ¾å²­åŒº,4,232700 +232763,新林区,4,232700 +232764,呼中区,4,232700 +310101,黄浦区,4,310100 +310104,徿±‡åŒº,4,310100 +310105,é•¿å®åŒº,4,310100 +310106,é™å®‰åŒº,4,310100 +310107,普陀区,4,310100 +310109,虹å£åŒº,4,310100 +310110,æ¨æµ¦åŒº,4,310100 +310112,闵行区,4,310100 +310113,å®å±±åŒº,4,310100 +310114,嘉定区,4,310100 +310115,浦东新区,4,310100 +310116,金山区,4,310100 +310117,æ¾æ±ŸåŒº,4,310100 +310118,é’æµ¦åŒº,4,310100 +310120,奉贤区,4,310100 +310151,崇明区,4,310100 +320102,玄武区,4,320100 +320104,秦淮区,4,320100 +320105,建邺区,4,320100 +320106,鼓楼区,4,320100 +320111,浦å£åŒº,4,320100 +320113,栖霞区,4,320100 +320114,雨花å°åŒº,4,320100 +320115,江å®åŒº,4,320100 +320116,å…­åˆåŒº,4,320100 +320117,溧水区,4,320100 +320118,高淳区,4,320100 +320205,锡山区,4,320200 +320206,惠山区,4,320200 +320211,滨湖区,4,320200 +320213,æ¢æºªåŒº,4,320200 +320214,æ–°å´åŒº,4,320200 +320281,江阴市,4,320200 +320282,宜兴市,4,320200 +320302,鼓楼区,4,320300 +320303,云龙区,4,320300 +320305,贾汪区,4,320300 +320311,泉山区,4,320300 +320312,铜山区,4,320300 +320321,丰县,4,320300 +320322,沛县,4,320300 +320324,ç¢å®åŽ¿,4,320300 +320371,å¾å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,320300 +320381,新沂市,4,320300 +320382,邳州市,4,320300 +320402,天å®åŒº,4,320400 +320404,钟楼区,4,320400 +320411,新北区,4,320400 +320412,武进区,4,320400 +320413,金å›åŒº,4,320400 +320481,溧阳市,4,320400 +320505,虎丘区,4,320500 +320506,å´ä¸­åŒº,4,320500 +320507,相城区,4,320500 +320508,å§‘è‹åŒº,4,320500 +320509,å´æ±ŸåŒº,4,320500 +320571,è‹å·žå·¥ä¸šå›­åŒº,4,320500 +320581,常熟市,4,320500 +320582,张家港市,4,320500 +320583,昆山市,4,320500 +320585,太仓市,4,320500 +320612,通州区,4,320600 +320613,å´‡å·åŒº,4,320600 +320614,海门区,4,320600 +320623,如东县,4,320600 +320671,å—é€šç»æµŽæŠ€æœ¯å¼€å‘区,4,320600 +320681,å¯ä¸œå¸‚,4,320600 +320682,如皋市,4,320600 +320685,海安市,4,320600 +320703,连云区,4,320700 +320706,海州区,4,320700 +320707,赣榆区,4,320700 +320722,东海县,4,320700 +320723,çŒäº‘县,4,320700 +320724,çŒå—县,4,320700 +320771,è¿žäº‘æ¸¯ç»æµŽæŠ€æœ¯å¼€å‘区,4,320700 +320772,连云港高新技术产业开å‘区,4,320700 +320803,淮安区,4,320800 +320804,淮阴区,4,320800 +320812,清江浦区,4,320800 +320813,洪泽区,4,320800 +320826,涟水县,4,320800 +320830,盱眙县,4,320800 +320831,金湖县,4,320800 +320871,æ·®å®‰ç»æµŽæŠ€æœ¯å¼€å‘区,4,320800 +320902,亭湖区,4,320900 +320903,ç›éƒ½åŒº,4,320900 +320904,大丰区,4,320900 +320921,哿°´åŽ¿,4,320900 +320922,滨海县,4,320900 +320923,阜å®åŽ¿,4,320900 +320924,射阳县,4,320900 +320925,建湖县,4,320900 +320971,ç›åŸŽç»æµŽæŠ€æœ¯å¼€å‘区,4,320900 +320981,东å°å¸‚,4,320900 +321002,广陵区,4,321000 +321003,邗江区,4,321000 +321012,江都区,4,321000 +321023,å®åº”县,4,321000 +321071,æ‰¬å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,321000 +321081,仪å¾å¸‚,4,321000 +321084,高邮市,4,321000 +321102,京å£åŒº,4,321100 +321111,润州区,4,321100 +321112,丹徒区,4,321100 +321171,镇江新区,4,321100 +321181,丹阳市,4,321100 +321182,扬中市,4,321100 +321183,å¥å®¹å¸‚,4,321100 +321202,海陵区,4,321200 +321203,高港区,4,321200 +321204,姜堰区,4,321200 +321271,泰州医è¯é«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,321200 +321281,兴化市,4,321200 +321282,é–æ±Ÿå¸‚,4,321200 +321283,泰兴市,4,321200 +321302,宿城区,4,321300 +321311,宿豫区,4,321300 +321322,沭阳县,4,321300 +321323,泗阳县,4,321300 +321324,泗洪县,4,321300 +321371,宿è¿ç»æµŽæŠ€æœ¯å¼€å‘区,4,321300 +330102,上城区,4,330100 +330105,拱墅区,4,330100 +330106,西湖区,4,330100 +330108,滨江区,4,330100 +330109,è§å±±åŒº,4,330100 +330110,ä½™æ­åŒº,4,330100 +330111,富阳区,4,330100 +330112,临安区,4,330100 +330113,临平区,4,330100 +330114,钱塘区,4,330100 +330122,æ¡åºåŽ¿,4,330100 +330127,淳安县,4,330100 +330182,建德市,4,330100 +330203,海曙区,4,330200 +330205,江北区,4,330200 +330206,北仑区,4,330200 +330211,镇海区,4,330200 +330212,鄞州区,4,330200 +330213,奉化区,4,330200 +330225,象山县,4,330200 +330226,宿µ·åŽ¿,4,330200 +330281,余姚市,4,330200 +330282,慈溪市,4,330200 +330302,鹿城区,4,330300 +330303,龙湾区,4,330300 +330304,瓯海区,4,330300 +330305,洞头区,4,330300 +330324,永嘉县,4,330300 +330326,平阳县,4,330300 +330327,è‹å—县,4,330300 +330328,æ–‡æˆåŽ¿,4,330300 +330329,泰顺县,4,330300 +330371,æ¸©å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,330300 +330381,瑞安市,4,330300 +330382,乿¸…市,4,330300 +330383,龙港市,4,330300 +330402,å—æ¹–区,4,330400 +330411,秀洲区,4,330400 +330421,嘉善县,4,330400 +330424,æµ·ç›åŽ¿,4,330400 +330481,æµ·å®å¸‚,4,330400 +330482,平湖市,4,330400 +330483,æ¡ä¹¡å¸‚,4,330400 +330502,å´å…´åŒº,4,330500 +330503,å—æµ”区,4,330500 +330521,德清县,4,330500 +330522,长兴县,4,330500 +330523,安å‰åŽ¿,4,330500 +330602,越城区,4,330600 +330603,柯桥区,4,330600 +330604,上虞区,4,330600 +330624,新昌县,4,330600 +330681,诸暨市,4,330600 +330683,嵊州市,4,330600 +330702,婺城区,4,330700 +330703,金东区,4,330700 +330723,武义县,4,330700 +330726,浦江县,4,330700 +330727,ç£å®‰åŽ¿,4,330700 +330781,兰溪市,4,330700 +330782,义乌市,4,330700 +330783,东阳市,4,330700 +330784,永康市,4,330700 +330802,柯城区,4,330800 +330803,衢江区,4,330800 +330822,常山县,4,330800 +330824,开化县,4,330800 +330825,龙游县,4,330800 +330881,江山市,4,330800 +330902,定海区,4,330900 +330903,普陀区,4,330900 +330921,岱山县,4,330900 +330922,嵊泗县,4,330900 +331002,椒江区,4,331000 +331003,黄岩区,4,331000 +331004,路桥区,4,331000 +331022,三门县,4,331000 +331023,天å°åŽ¿,4,331000 +331024,仙居县,4,331000 +331081,温岭市,4,331000 +331082,临海市,4,331000 +331083,玉环市,4,331000 +331102,莲都区,4,331100 +331121,é’田县,4,331100 +331122,缙云县,4,331100 +331123,邿˜ŒåŽ¿,4,331100 +331124,æ¾é˜³åŽ¿,4,331100 +331125,云和县,4,331100 +331126,庆元县,4,331100 +331127,景å®ç•²æ—自治县,4,331100 +331181,龙泉市,4,331100 +340102,瑶海区,4,340100 +340103,åºé˜³åŒº,4,340100 +340104,蜀山区,4,340100 +340111,包河区,4,340100 +340121,长丰县,4,340100 +340122,肥东县,4,340100 +340123,肥西县,4,340100 +340124,åºæ±ŸåŽ¿,4,340100 +340171,åˆè‚¥é«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,340100 +340172,åˆè‚¥ç»æµŽæŠ€æœ¯å¼€å‘区,4,340100 +340173,åˆè‚¥æ–°ç«™é«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,340100 +340181,巢湖市,4,340100 +340202,镜湖区,4,340200 +340207,鸠江区,4,340200 +340209,弋江区,4,340200 +340210,湾沚区,4,340200 +340212,ç¹æ˜ŒåŒº,4,340200 +340223,å—陵县,4,340200 +340271,èŠœæ¹–ç»æµŽæŠ€æœ¯å¼€å‘区,4,340200 +340272,å®‰å¾½èŠœæ¹–ä¸‰å±±ç»æµŽå¼€å‘区,4,340200 +340281,无为市,4,340200 +340302,龙孿¹–区,4,340300 +340303,蚌山区,4,340300 +340304,禹会区,4,340300 +340311,淮上区,4,340300 +340321,怀远县,4,340300 +340322,五河县,4,340300 +340323,固镇县,4,340300 +340371,蚌埠市高新技术开å‘区,4,340300 +340372,èšŒåŸ å¸‚ç»æµŽå¼€å‘区,4,340300 +340402,大通区,4,340400 +340403,田家庵区,4,340400 +340404,谢家集区,4,340400 +340405,八公山区,4,340400 +340406,潘集区,4,340400 +340421,凤å°åŽ¿,4,340400 +340422,寿县,4,340400 +340503,花山区,4,340500 +340504,雨山区,4,340500 +340506,åšæœ›åŒº,4,340500 +340521,当涂县,4,340500 +340522,å«å±±åŽ¿,4,340500 +340523,和县,4,340500 +340602,æœé›†åŒº,4,340600 +340603,相山区,4,340600 +340604,烈山区,4,340600 +340621,濉溪县,4,340600 +340705,铜官区,4,340700 +340706,义安区,4,340700 +340711,郊区,4,340700 +340722,枞阳县,4,340700 +340802,迎江区,4,340800 +340803,大观区,4,340800 +340811,宜秀区,4,340800 +340822,怀å®åŽ¿,4,340800 +340825,太湖县,4,340800 +340826,宿æ¾åŽ¿,4,340800 +340827,望江县,4,340800 +340828,岳西县,4,340800 +340871,å®‰å¾½å®‰åº†ç»æµŽå¼€å‘区,4,340800 +340881,æ¡åŸŽå¸‚,4,340800 +340882,潜山市,4,340800 +341002,屯溪区,4,341000 +341003,黄山区,4,341000 +341004,徽州区,4,341000 +341021,歙县,4,341000 +341022,休å®åŽ¿,4,341000 +341023,黟县,4,341000 +341024,ç¥é—¨åŽ¿,4,341000 +341102,ç…çŠåŒº,4,341100 +341103,å—谯区,4,341100 +341122,æ¥å®‰åŽ¿,4,341100 +341124,全椒县,4,341100 +341125,定远县,4,341100 +341126,凤阳县,4,341100 +341171,ä¸­æ–°è‹æ»é«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,341100 +341172,æ»å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,341100 +341181,天长市,4,341100 +341182,明光市,4,341100 +341202,é¢å·žåŒº,4,341200 +341203,é¢ä¸œåŒº,4,341200 +341204,颿³‰åŒº,4,341200 +341221,临泉县,4,341200 +341222,太和县,4,341200 +341225,阜å—县,4,341200 +341226,é¢ä¸ŠåŽ¿,4,341200 +341271,阜阳åˆè‚¥çŽ°ä»£äº§ä¸šå›­åŒº,4,341200 +341272,é˜œé˜³ç»æµŽæŠ€æœ¯å¼€å‘区,4,341200 +341282,界首市,4,341200 +341302,埇桥区,4,341300 +341321,砀山县,4,341300 +341322,è§åŽ¿,4,341300 +341323,çµç’§åŽ¿,4,341300 +341324,泗县,4,341300 +341371,宿州马éžå±±çŽ°ä»£äº§ä¸šå›­åŒº,4,341300 +341372,å®¿å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,341300 +341502,金安区,4,341500 +341503,裕安区,4,341500 +341504,å¶é›†åŒº,4,341500 +341522,éœé‚±åŽ¿,4,341500 +341523,舒城县,4,341500 +341524,金寨县,4,341500 +341525,éœå±±åŽ¿,4,341500 +341602,谯城区,4,341600 +341621,涡阳县,4,341600 +341622,蒙城县,4,341600 +341623,利辛县,4,341600 +341702,贵池区,4,341700 +341721,东至县,4,341700 +341722,石å°åŽ¿,4,341700 +341723,é’阳县,4,341700 +341802,宣州区,4,341800 +341821,郎溪县,4,341800 +341823,泾县,4,341800 +341824,绩溪县,4,341800 +341825,旌德县,4,341800 +341871,å®£åŸŽå¸‚ç»æµŽå¼€å‘区,4,341800 +341881,å®å›½å¸‚,4,341800 +341882,广德市,4,341800 +350102,鼓楼区,4,350100 +350103,å°æ±ŸåŒº,4,350100 +350104,仓山区,4,350100 +350105,马尾区,4,350100 +350111,晋安区,4,350100 +350112,é•¿ä¹åŒº,4,350100 +350121,闽侯县,4,350100 +350122,连江县,4,350100 +350123,ç½—æºåŽ¿,4,350100 +350124,闽清县,4,350100 +350125,永泰县,4,350100 +350128,平潭县,4,350100 +350181,ç¦æ¸…市,4,350100 +350203,æ€æ˜ŽåŒº,4,350200 +350205,海沧区,4,350200 +350206,湖里区,4,350200 +350211,集美区,4,350200 +350212,åŒå®‰åŒº,4,350200 +350213,翔安区,4,350200 +350302,城厢区,4,350300 +350303,涵江区,4,350300 +350304,è”城区,4,350300 +350305,秀屿区,4,350300 +350322,仙游县,4,350300 +350404,三元区,4,350400 +350405,沙县区,4,350400 +350421,明溪县,4,350400 +350423,清æµåŽ¿,4,350400 +350424,å®åŒ–县,4,350400 +350425,大田县,4,350400 +350426,尤溪县,4,350400 +350428,å°†ä¹åŽ¿,4,350400 +350429,æ³°å®åŽ¿,4,350400 +350430,建å®åŽ¿,4,350400 +350481,永安市,4,350400 +350502,鲤城区,4,350500 +350503,丰泽区,4,350500 +350504,洛江区,4,350500 +350505,泉港区,4,350500 +350521,惠安县,4,350500 +350524,安溪县,4,350500 +350525,永春县,4,350500 +350526,德化县,4,350500 +350527,金门县,4,350500 +350581,石狮市,4,350500 +350582,晋江市,4,350500 +350583,å—安市,4,350500 +350602,芗城区,4,350600 +350603,龙文区,4,350600 +350604,龙海区,4,350600 +350605,长泰区,4,350600 +350622,云霄县,4,350600 +350623,漳浦县,4,350600 +350624,è¯å®‰åŽ¿,4,350600 +350626,东山县,4,350600 +350627,å—é–县,4,350600 +350628,平和县,4,350600 +350629,åŽå®‰åŽ¿,4,350600 +350702,延平区,4,350700 +350703,建阳区,4,350700 +350721,顺昌县,4,350700 +350722,浦城县,4,350700 +350723,光泽县,4,350700 +350724,æ¾æºªåŽ¿,4,350700 +350725,政和县,4,350700 +350781,邵武市,4,350700 +350782,武夷山市,4,350700 +350783,建瓯市,4,350700 +350802,新罗区,4,350800 +350803,永定区,4,350800 +350821,长汀县,4,350800 +350823,上æ­åŽ¿,4,350800 +350824,武平县,4,350800 +350825,连城县,4,350800 +350881,漳平市,4,350800 +350902,蕉城区,4,350900 +350921,霞浦县,4,350900 +350922,å¤ç”°åŽ¿,4,350900 +350923,å±å—县,4,350900 +350924,寿å®åŽ¿,4,350900 +350925,周å®åŽ¿,4,350900 +350926,柘è£åŽ¿,4,350900 +350981,ç¦å®‰å¸‚,4,350900 +350982,ç¦é¼Žå¸‚,4,350900 +360102,东湖区,4,360100 +360103,西湖区,4,360100 +360104,é’云谱区,4,360100 +360111,é’山湖区,4,360100 +360112,新建区,4,360100 +360113,红谷滩区,4,360100 +360121,å—æ˜ŒåŽ¿,4,360100 +360123,安义县,4,360100 +360124,进贤县,4,360100 +360202,昌江区,4,360200 +360203,ç å±±åŒº,4,360200 +360222,æµ®æ¢åŽ¿,4,360200 +360281,ä¹å¹³å¸‚,4,360200 +360302,安æºåŒº,4,360300 +360313,湘东区,4,360300 +360321,莲花县,4,360300 +360322,上栗县,4,360300 +360323,芦溪县,4,360300 +360402,濂溪区,4,360400 +360403,浔阳区,4,360400 +360404,柴桑区,4,360400 +360423,æ­¦å®åŽ¿,4,360400 +360424,修水县,4,360400 +360425,永修县,4,360400 +360426,德安县,4,360400 +360428,都昌县,4,360400 +360429,æ¹–å£åŽ¿,4,360400 +360430,彭泽县,4,360400 +360481,瑞昌市,4,360400 +360482,å…±é’城市,4,360400 +360483,åºå±±å¸‚,4,360400 +360502,æ¸æ°´åŒº,4,360500 +360521,分宜县,4,360500 +360602,月湖区,4,360600 +360603,余江区,4,360600 +360681,贵溪市,4,360600 +360702,章贡区,4,360700 +360703,å—康区,4,360700 +360704,赣县区,4,360700 +360722,信丰县,4,360700 +360723,大余县,4,360700 +360724,上犹县,4,360700 +360725,崇义县,4,360700 +360726,安远县,4,360700 +360728,定å—县,4,360700 +360729,å…¨å—县,4,360700 +360730,å®éƒ½åŽ¿,4,360700 +360731,于都县,4,360700 +360732,兴国县,4,360700 +360733,会昌县,4,360700 +360734,寻乌县,4,360700 +360735,石城县,4,360700 +360781,瑞金市,4,360700 +360783,é¾™å—市,4,360700 +360802,å‰å·žåŒº,4,360800 +360803,é’原区,4,360800 +360821,å‰å®‰åŽ¿,4,360800 +360822,剿°´åŽ¿,4,360800 +360823,峡江县,4,360800 +360824,新干县,4,360800 +360825,永丰县,4,360800 +360826,泰和县,4,360800 +360827,é‚å·åŽ¿,4,360800 +360828,万安县,4,360800 +360829,安ç¦åŽ¿,4,360800 +360830,永新县,4,360800 +360881,井冈山市,4,360800 +360902,è¢å·žåŒº,4,360900 +360921,奉新县,4,360900 +360922,万载县,4,360900 +360923,上高县,4,360900 +360924,宜丰县,4,360900 +360925,é–安县,4,360900 +360926,铜鼓县,4,360900 +360981,丰城市,4,360900 +360982,樟树市,4,360900 +360983,高安市,4,360900 +361002,临å·åŒº,4,361000 +361003,东乡区,4,361000 +361021,å—城县,4,361000 +361022,黎å·åŽ¿,4,361000 +361023,å—丰县,4,361000 +361024,å´‡ä»åŽ¿,4,361000 +361025,ä¹å®‰åŽ¿,4,361000 +361026,宜黄县,4,361000 +361027,金溪县,4,361000 +361028,资溪县,4,361000 +361030,广昌县,4,361000 +361102,信州区,4,361100 +361103,广丰区,4,361100 +361104,广信区,4,361100 +361123,玉山县,4,361100 +361124,铅山县,4,361100 +361125,横峰县,4,361100 +361126,弋阳县,4,361100 +361127,余干县,4,361100 +361128,鄱阳县,4,361100 +361129,万年县,4,361100 +361130,婺æºåŽ¿,4,361100 +361181,德兴市,4,361100 +370102,历下区,4,370100 +370103,市中区,4,370100 +370104,æ§è«åŒº,4,370100 +370105,天桥区,4,370100 +370112,历城区,4,370100 +370113,长清区,4,370100 +370114,章丘区,4,370100 +370115,济阳区,4,370100 +370116,莱芜区,4,370100 +370117,钢城区,4,370100 +370124,平阴县,4,370100 +370126,商河县,4,370100 +370171,济å—高新技术产业开å‘区,4,370100 +370202,市å—区,4,370200 +370203,市北区,4,370200 +370211,黄岛区,4,370200 +370212,崂山区,4,370200 +370213,æŽæ²§åŒº,4,370200 +370214,城阳区,4,370200 +370215,å³å¢¨åŒº,4,370200 +370271,é’岛高新技术产业开å‘区,4,370200 +370281,胶州市,4,370200 +370283,平度市,4,370200 +370285,莱西市,4,370200 +370302,æ·„å·åŒº,4,370300 +370303,张店区,4,370300 +370304,åšå±±åŒº,4,370300 +370305,临淄区,4,370300 +370306,周æ‘区,4,370300 +370321,æ¡“å°åŽ¿,4,370300 +370322,高é’县,4,370300 +370323,沂æºåŽ¿,4,370300 +370402,市中区,4,370400 +370403,薛城区,4,370400 +370404,峄城区,4,370400 +370405,å°å„¿åº„区,4,370400 +370406,山亭区,4,370400 +370481,滕州市,4,370400 +370502,东è¥åŒº,4,370500 +370503,æ²³å£åŒº,4,370500 +370505,垦利区,4,370500 +370522,利津县,4,370500 +370523,广饶县,4,370500 +370571,东è¥ç»æµŽæŠ€æœ¯å¼€å‘区,4,370500 +370572,ä¸œè¥æ¸¯ç»æµŽå¼€å‘区,4,370500 +370602,èŠç½˜åŒº,4,370600 +370611,ç¦å±±åŒº,4,370600 +370612,牟平区,4,370600 +370613,莱山区,4,370600 +370614,蓬莱区,4,370600 +370671,烟å°é«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,370600 +370672,烟å°ç»æµŽæŠ€æœ¯å¼€å‘区,4,370600 +370681,é¾™å£å¸‚,4,370600 +370682,莱阳市,4,370600 +370683,莱州市,4,370600 +370685,招远市,4,370600 +370686,栖霞市,4,370600 +370687,海阳市,4,370600 +370702,æ½åŸŽåŒº,4,370700 +370703,寒亭区,4,370700 +370704,åŠå­åŒº,4,370700 +370705,奎文区,4,370700 +370724,临æœåŽ¿,4,370700 +370725,昌ä¹åŽ¿,4,370700 +370772,æ½åŠæ»¨æµ·ç»æµŽæŠ€æœ¯å¼€å‘区,4,370700 +370781,é’州市,4,370700 +370782,诸城市,4,370700 +370783,寿光市,4,370700 +370784,安丘市,4,370700 +370785,高密市,4,370700 +370786,昌邑市,4,370700 +370811,任城区,4,370800 +370812,兖州区,4,370800 +370826,微山县,4,370800 +370827,é±¼å°åŽ¿,4,370800 +370828,金乡县,4,370800 +370829,嘉祥县,4,370800 +370830,汶上县,4,370800 +370831,泗水县,4,370800 +370832,æ¢å±±åŽ¿,4,370800 +370871,济å®é«˜æ–°æŠ€æœ¯äº§ä¸šå¼€å‘区,4,370800 +370881,曲阜市,4,370800 +370883,邹城市,4,370800 +370902,泰山区,4,370900 +370911,岱岳区,4,370900 +370921,å®é˜³åŽ¿,4,370900 +370923,东平县,4,370900 +370982,新泰市,4,370900 +370983,肥城市,4,370900 +371002,环翠区,4,371000 +371003,文登区,4,371000 +371071,卿µ·ç«ç‚¬é«˜æŠ€æœ¯äº§ä¸šå¼€å‘区,4,371000 +371072,卿µ·ç»æµŽæŠ€æœ¯å¼€å‘区,4,371000 +371073,卿µ·ä¸´æ¸¯ç»æµŽæŠ€æœ¯å¼€å‘区,4,371000 +371082,è£æˆå¸‚,4,371000 +371083,乳山市,4,371000 +371102,东港区,4,371100 +371103,岚山区,4,371100 +371121,五莲县,4,371100 +371122,莒县,4,371100 +371171,æ—¥ç…§ç»æµŽæŠ€æœ¯å¼€å‘区,4,371100 +371302,兰山区,4,371300 +371311,罗庄区,4,371300 +371312,河东区,4,371300 +371321,沂å—县,4,371300 +371322,郯城县,4,371300 +371323,沂水县,4,371300 +371324,兰陵县,4,371300 +371325,费县,4,371300 +371326,平邑县,4,371300 +371327,莒å—县,4,371300 +371328,蒙阴县,4,371300 +371329,临沭县,4,371300 +371371,临沂高新技术产业开å‘区,4,371300 +371402,德城区,4,371400 +371403,陵城区,4,371400 +371422,宿´¥åŽ¿,4,371400 +371423,庆云县,4,371400 +371424,临邑县,4,371400 +371425,齿²³åŽ¿,4,371400 +371426,平原县,4,371400 +371427,夿´¥åŽ¿,4,371400 +371428,武城县,4,371400 +371471,å¾·å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,371400 +371472,å¾·å·žè¿æ²³ç»æµŽå¼€å‘区,4,371400 +371481,ä¹é™µå¸‚,4,371400 +371482,禹城市,4,371400 +371502,东昌府区,4,371500 +371503,茌平区,4,371500 +371521,阳谷县,4,371500 +371522,莘县,4,371500 +371524,东阿县,4,371500 +371525,冠县,4,371500 +371526,高å”县,4,371500 +371581,临清市,4,371500 +371602,滨城区,4,371600 +371603,沾化区,4,371600 +371621,惠民县,4,371600 +371622,阳信县,4,371600 +371623,无棣县,4,371600 +371625,åšå…´åŽ¿,4,371600 +371681,邹平市,4,371600 +371702,牡丹区,4,371700 +371703,定陶区,4,371700 +371721,曹县,4,371700 +371722,å•县,4,371700 +371723,æˆæ­¦åŽ¿,4,371700 +371724,巨野县,4,371700 +371725,郓城县,4,371700 +371726,鄄城县,4,371700 +371728,东明县,4,371700 +371771,èæ³½ç»æµŽæŠ€æœ¯å¼€å‘区,4,371700 +371772,èæ³½é«˜æ–°æŠ€æœ¯å¼€å‘区,4,371700 +410102,中原区,4,410100 +410103,二七区,4,410100 +410104,管城回æ—区,4,410100 +410105,金水区,4,410100 +410106,上街区,4,410100 +410108,惠济区,4,410100 +410122,中牟县,4,410100 +410171,éƒ‘å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,410100 +410172,郑州高新技术产业开å‘区,4,410100 +410173,éƒ‘å·žèˆªç©ºæ¸¯ç»æµŽç»¼åˆå®žéªŒåŒº,4,410100 +410181,巩义市,4,410100 +410182,è¥é˜³å¸‚,4,410100 +410183,新密市,4,410100 +410184,新郑市,4,410100 +410185,ç™»å°å¸‚,4,410100 +410202,龙亭区,4,410200 +410203,顺河回æ—区,4,410200 +410204,鼓楼区,4,410200 +410205,禹王å°åŒº,4,410200 +410212,祥符区,4,410200 +410221,æžåŽ¿,4,410200 +410222,通许县,4,410200 +410223,å°‰æ°åŽ¿,4,410200 +410225,兰考县,4,410200 +410302,è€åŸŽåŒº,4,410300 +410303,西工区,4,410300 +410304,ç€æ²³å›žæ—区,4,410300 +410305,涧西区,4,410300 +410307,åƒå¸ˆåŒº,4,410300 +410308,孟津区,4,410300 +410311,洛龙区,4,410300 +410323,新安县,4,410300 +410324,æ ¾å·åŽ¿,4,410300 +410325,嵩县,4,410300 +410326,æ±é˜³åŽ¿,4,410300 +410327,宜阳县,4,410300 +410328,æ´›å®åŽ¿,4,410300 +410329,伊å·åŽ¿,4,410300 +410371,洛阳高新技术产业开å‘区,4,410300 +410402,æ–°åŽåŒº,4,410400 +410403,å«ä¸œåŒº,4,410400 +410404,石龙区,4,410400 +410411,湛河区,4,410400 +410421,å®ä¸°åŽ¿,4,410400 +410422,å¶åŽ¿,4,410400 +410423,é²å±±åŽ¿,4,410400 +410425,éƒåŽ¿,4,410400 +410471,平顶山高新技术产业开å‘区,4,410400 +410472,平顶山市城乡一体化示范区,4,410400 +410481,舞钢市,4,410400 +410482,æ±å·žå¸‚,4,410400 +410502,文峰区,4,410500 +410503,北关区,4,410500 +410505,殷都区,4,410500 +410506,龙安区,4,410500 +410522,安阳县,4,410500 +410523,汤阴县,4,410500 +410526,滑县,4,410500 +410527,内黄县,4,410500 +410571,安阳高新技术产业开å‘区,4,410500 +410581,林州市,4,410500 +410602,鹤山区,4,410600 +410603,山城区,4,410600 +410611,淇滨区,4,410600 +410621,浚县,4,410600 +410622,淇县,4,410600 +410671,鹤å£ç»æµŽæŠ€æœ¯å¼€å‘区,4,410600 +410702,红旗区,4,410700 +410703,嫿»¨åŒº,4,410700 +410704,凤泉区,4,410700 +410711,牧野区,4,410700 +410721,新乡县,4,410700 +410724,获嘉县,4,410700 +410725,原阳县,4,410700 +410726,延津县,4,410700 +410727,å°ä¸˜åŽ¿,4,410700 +410771,新乡高新技术产业开å‘区,4,410700 +410772,æ–°ä¹¡ç»æµŽæŠ€æœ¯å¼€å‘区,4,410700 +410773,新乡市平原城乡一体化示范区,4,410700 +410781,å«è¾‰å¸‚,4,410700 +410782,辉县市,4,410700 +410783,长垣市,4,410700 +410802,解放区,4,410800 +410803,中站区,4,410800 +410804,马æ‘区,4,410800 +410811,山阳区,4,410800 +410821,修武县,4,410800 +410822,åšçˆ±åŽ¿,4,410800 +410823,武陟县,4,410800 +410825,温县,4,410800 +410871,焦作城乡一体化示范区,4,410800 +410882,æ²é˜³å¸‚,4,410800 +410883,孟州市,4,410800 +410902,åŽé¾™åŒº,4,410900 +410922,清丰县,4,410900 +410923,å—ä¹åŽ¿,4,410900 +410926,范县,4,410900 +410927,å°å‰åŽ¿,4,410900 +410928,濮阳县,4,410900 +410971,æ²³å—æ¿®é˜³å·¥ä¸šå›­åŒº,4,410900 +410972,æ¿®é˜³ç»æµŽæŠ€æœ¯å¼€å‘区,4,410900 +411002,é­éƒ½åŒº,4,411000 +411003,建安区,4,411000 +411024,鄢陵县,4,411000 +411025,襄城县,4,411000 +411071,è®¸æ˜Œç»æµŽæŠ€æœ¯å¼€å‘区,4,411000 +411081,禹州市,4,411000 +411082,长葛市,4,411000 +411102,æºæ±‡åŒº,4,411100 +411103,郾城区,4,411100 +411104,å¬é™µåŒº,4,411100 +411121,舞阳县,4,411100 +411122,临é¢åŽ¿,4,411100 +411171,æ¼¯æ²³ç»æµŽæŠ€æœ¯å¼€å‘区,4,411100 +411202,湖滨区,4,411200 +411203,陕州区,4,411200 +411221,渑池县,4,411200 +411224,墿°åŽ¿,4,411200 +411271,æ²³å—ä¸‰é—¨å³¡ç»æµŽå¼€å‘区,4,411200 +411281,义马市,4,411200 +411282,çµå®å¸‚,4,411200 +411302,宛城区,4,411300 +411303,å§é¾™åŒº,4,411300 +411321,å—å¬åŽ¿,4,411300 +411322,方城县,4,411300 +411323,西峡县,4,411300 +411324,镇平县,4,411300 +411325,内乡县,4,411300 +411326,æ·…å·åŽ¿,4,411300 +411327,社旗县,4,411300 +411328,唿²³åŽ¿,4,411300 +411329,新野县,4,411300 +411330,æ¡æŸåŽ¿,4,411300 +411371,å—阳高新技术产业开å‘区,4,411300 +411372,å—阳市城乡一体化示范区,4,411300 +411381,邓州市,4,411300 +411402,æ¢å›­åŒº,4,411400 +411403,ç¢é˜³åŒº,4,411400 +411421,æ°‘æƒåŽ¿,4,411400 +411422,ç¢åŽ¿,4,411400 +411423,å®é™µåŽ¿,4,411400 +411424,柘城县,4,411400 +411425,虞城县,4,411400 +411426,å¤é‚‘县,4,411400 +411471,豫东综åˆç‰©æµäº§ä¸šèšé›†åŒº,4,411400 +411472,æ²³å—å•†ä¸˜ç»æµŽå¼€å‘区,4,411400 +411481,永城市,4,411400 +411502,浉河区,4,411500 +411503,平桥区,4,411500 +411521,罗山县,4,411500 +411522,光山县,4,411500 +411523,新县,4,411500 +411524,商城县,4,411500 +411525,固始县,4,411500 +411526,æ½¢å·åŽ¿,4,411500 +411527,淮滨县,4,411500 +411528,æ¯åŽ¿,4,411500 +411571,信阳高新技术产业开å‘区,4,411500 +411602,å·æ±‡åŒº,4,411600 +411603,淮阳区,4,411600 +411621,扶沟县,4,411600 +411622,西åŽåŽ¿,4,411600 +411623,商水县,4,411600 +411624,沈丘县,4,411600 +411625,郸城县,4,411600 +411627,太康县,4,411600 +411628,鹿邑县,4,411600 +411671,æ²³å—周å£ç»æµŽå¼€å‘区,4,411600 +411681,项城市,4,411600 +411702,驿城区,4,411700 +411721,西平县,4,411700 +411722,上蔡县,4,411700 +411723,平舆县,4,411700 +411724,正阳县,4,411700 +411725,确山县,4,411700 +411726,泌阳县,4,411700 +411727,æ±å—县,4,411700 +411728,é‚平县,4,411700 +411729,新蔡县,4,411700 +411771,æ²³å—é©»é©¬åº—ç»æµŽå¼€å‘区,4,411700 +419001,济æºå¸‚,4,419000 +420102,江岸区,4,420100 +420103,江汉区,4,420100 +420104,硚å£åŒº,4,420100 +420105,汉阳区,4,420100 +420106,武昌区,4,420100 +420107,é’山区,4,420100 +420111,洪山区,4,420100 +420112,东西湖区,4,420100 +420113,汉å—区,4,420100 +420114,蔡甸区,4,420100 +420115,江å¤åŒº,4,420100 +420116,黄陂区,4,420100 +420117,新洲区,4,420100 +420202,黄石港区,4,420200 +420203,西塞山区,4,420200 +420204,下陆区,4,420200 +420205,é“山区,4,420200 +420222,阳新县,4,420200 +420281,大冶市,4,420200 +420302,茅箭区,4,420300 +420303,张湾区,4,420300 +420304,郧阳区,4,420300 +420322,郧西县,4,420300 +420323,竹山县,4,420300 +420324,竹溪县,4,420300 +420325,房县,4,420300 +420381,丹江å£å¸‚,4,420300 +420502,西陵区,4,420500 +420503,ä¼å®¶å²—区,4,420500 +420504,点军区,4,420500 +420505,猇亭区,4,420500 +420506,夷陵区,4,420500 +420525,远安县,4,420500 +420526,兴山县,4,420500 +420527,秭归县,4,420500 +420528,长阳土家æ—自治县,4,420500 +420529,五峰土家æ—自治县,4,420500 +420581,宜都市,4,420500 +420582,当阳市,4,420500 +420583,æžæ±Ÿå¸‚,4,420500 +420602,襄城区,4,420600 +420606,樊城区,4,420600 +420607,襄州区,4,420600 +420624,å—æ¼³åŽ¿,4,420600 +420625,谷城县,4,420600 +420626,ä¿åº·åŽ¿,4,420600 +420682,è€æ²³å£å¸‚,4,420600 +420683,枣阳市,4,420600 +420684,宜城市,4,420600 +420702,æ¢å­æ¹–区,4,420700 +420703,åŽå®¹åŒº,4,420700 +420704,鄂城区,4,420700 +420802,东å®åŒº,4,420800 +420804,掇刀区,4,420800 +420822,沙洋县,4,420800 +420881,钟祥市,4,420800 +420882,京山市,4,420800 +420902,å­å—区,4,420900 +420921,å­æ˜ŒåŽ¿,4,420900 +420922,大悟县,4,420900 +420923,云梦县,4,420900 +420981,应城市,4,420900 +420982,安陆市,4,420900 +420984,汉å·å¸‚,4,420900 +421002,沙市区,4,421000 +421003,è†å·žåŒº,4,421000 +421022,公安县,4,421000 +421024,江陵县,4,421000 +421071,è†å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,421000 +421081,石首市,4,421000 +421083,洪湖市,4,421000 +421087,æ¾æ»‹å¸‚,4,421000 +421088,监利市,4,421000 +421102,黄州区,4,421100 +421121,团风县,4,421100 +421122,红安县,4,421100 +421123,罗田县,4,421100 +421124,英山县,4,421100 +421125,浠水县,4,421100 +421126,蕲春县,4,421100 +421127,黄梅县,4,421100 +421171,龙感湖管ç†åŒº,4,421100 +421181,麻城市,4,421100 +421182,武穴市,4,421100 +421202,咸安区,4,421200 +421221,嘉鱼县,4,421200 +421222,通城县,4,421200 +421223,崇阳县,4,421200 +421224,通山县,4,421200 +421281,赤å£å¸‚,4,421200 +421303,曾都区,4,421300 +421321,éšåŽ¿,4,421300 +421381,广水市,4,421300 +422801,æ©æ–½å¸‚,4,422800 +422802,利å·å¸‚,4,422800 +422822,建始县,4,422800 +422823,巴东县,4,422800 +422825,宣æ©åŽ¿,4,422800 +422826,咸丰县,4,422800 +422827,æ¥å‡¤åŽ¿,4,422800 +422828,鹤峰县,4,422800 +429004,仙桃市,4,429000 +429005,潜江市,4,429000 +429006,天门市,4,429000 +429021,神农架林区,4,429000 +430102,芙蓉区,4,430100 +430103,天心区,4,430100 +430104,岳麓区,4,430100 +430105,å¼€ç¦åŒº,4,430100 +430111,雨花区,4,430100 +430112,望城区,4,430100 +430121,长沙县,4,430100 +430181,æµé˜³å¸‚,4,430100 +430182,å®ä¹¡å¸‚,4,430100 +430202,è·å¡˜åŒº,4,430200 +430203,芦淞区,4,430200 +430204,石峰区,4,430200 +430211,天元区,4,430200 +430212,渌å£åŒº,4,430200 +430223,攸县,4,430200 +430224,茶陵县,4,430200 +430225,炎陵县,4,430200 +430271,云龙示范区,4,430200 +430281,醴陵市,4,430200 +430302,雨湖区,4,430300 +430304,岳塘区,4,430300 +430321,湘潭县,4,430300 +430371,æ¹–å—æ¹˜æ½­é«˜æ–°æŠ€æœ¯äº§ä¸šå›­åŒº,4,430300 +430372,湘潭昭山示范区,4,430300 +430373,湘潭ä¹åŽç¤ºèŒƒåŒº,4,430300 +430381,湘乡市,4,430300 +430382,韶山市,4,430300 +430405,ç æ™–区,4,430400 +430406,é›å³°åŒº,4,430400 +430407,石鼓区,4,430400 +430408,蒸湘区,4,430400 +430412,å—岳区,4,430400 +430421,衡阳县,4,430400 +430422,è¡¡å—县,4,430400 +430423,衡山县,4,430400 +430424,衡东县,4,430400 +430426,ç¥ä¸œåŽ¿,4,430400 +430471,衡阳综åˆä¿ç¨ŽåŒº,4,430400 +430472,æ¹–å—衡阳高新技术产业园区,4,430400 +430473,æ¹–å—è¡¡é˜³æ¾æœ¨ç»æµŽå¼€å‘区,4,430400 +430481,耒阳市,4,430400 +430482,常å®å¸‚,4,430400 +430502,åŒæ¸…区,4,430500 +430503,大祥区,4,430500 +430511,北塔区,4,430500 +430522,新邵县,4,430500 +430523,邵阳县,4,430500 +430524,隆回县,4,430500 +430525,æ´žå£åŽ¿,4,430500 +430527,绥å®åŽ¿,4,430500 +430528,æ–°å®åŽ¿,4,430500 +430529,城步苗æ—自治县,4,430500 +430581,武冈市,4,430500 +430582,邵东市,4,430500 +430602,岳阳楼区,4,430600 +430603,云溪区,4,430600 +430611,å›å±±åŒº,4,430600 +430621,岳阳县,4,430600 +430623,åŽå®¹åŽ¿,4,430600 +430624,湘阴县,4,430600 +430626,平江县,4,430600 +430671,岳阳市屈原管ç†åŒº,4,430600 +430681,汨罗市,4,430600 +430682,临湘市,4,430600 +430702,武陵区,4,430700 +430703,鼎城区,4,430700 +430721,安乡县,4,430700 +430722,汉寿县,4,430700 +430723,澧县,4,430700 +430724,临澧县,4,430700 +430725,桃æºåŽ¿,4,430700 +430726,石门县,4,430700 +430771,常德市西洞庭管ç†åŒº,4,430700 +430781,津市市,4,430700 +430802,永定区,4,430800 +430811,武陵æºåŒº,4,430800 +430821,慈利县,4,430800 +430822,æ¡‘æ¤åŽ¿,4,430800 +430902,资阳区,4,430900 +430903,赫山区,4,430900 +430921,å—县,4,430900 +430922,桃江县,4,430900 +430923,安化县,4,430900 +430971,益阳市大通湖管ç†åŒº,4,430900 +430972,æ¹–å—益阳高新技术产业园区,4,430900 +430981,沅江市,4,430900 +431002,北湖区,4,431000 +431003,è‹ä»™åŒº,4,431000 +431021,桂阳县,4,431000 +431022,宜章县,4,431000 +431023,永兴县,4,431000 +431024,嘉禾县,4,431000 +431025,临武县,4,431000 +431026,æ±åŸŽåŽ¿,4,431000 +431027,桂东县,4,431000 +431028,安ä»åŽ¿,4,431000 +431081,资兴市,4,431000 +431102,零陵区,4,431100 +431103,冷水滩区,4,431100 +431122,东安县,4,431100 +431123,åŒç‰ŒåŽ¿,4,431100 +431124,é“县,4,431100 +431125,江永县,4,431100 +431126,å®è¿œåŽ¿,4,431100 +431127,è“山县,4,431100 +431128,新田县,4,431100 +431129,江åŽç‘¶æ—自治县,4,431100 +431171,æ°¸å·žç»æµŽæŠ€æœ¯å¼€å‘区,4,431100 +431173,永州市回龙圩管ç†åŒº,4,431100 +431181,ç¥é˜³å¸‚,4,431100 +431202,鹤城区,4,431200 +431221,中方县,4,431200 +431222,沅陵县,4,431200 +431223,辰溪县,4,431200 +431224,溆浦县,4,431200 +431225,会åŒåŽ¿,4,431200 +431226,麻阳苗æ—自治县,4,431200 +431227,新晃侗æ—自治县,4,431200 +431228,芷江侗æ—自治县,4,431200 +431229,é–å·žè‹—æ—ä¾—æ—自治县,4,431200 +431230,通é“ä¾—æ—自治县,4,431200 +431271,怀化市洪江管ç†åŒº,4,431200 +431281,洪江市,4,431200 +431302,娄星区,4,431300 +431321,åŒå³°åŽ¿,4,431300 +431322,新化县,4,431300 +431381,冷水江市,4,431300 +431382,æ¶Ÿæºå¸‚,4,431300 +433101,å‰é¦–市,4,433100 +433122,泸溪县,4,433100 +433123,凤凰县,4,433100 +433124,花垣县,4,433100 +433125,ä¿é–县,4,433100 +433126,å¤ä¸ˆåŽ¿,4,433100 +433127,永顺县,4,433100 +433130,龙山县,4,433100 +440103,è”æ¹¾åŒº,4,440100 +440104,越秀区,4,440100 +440105,æµ·ç åŒº,4,440100 +440106,天河区,4,440100 +440111,白云区,4,440100 +440112,黄埔区,4,440100 +440113,番禺区,4,440100 +440114,花都区,4,440100 +440115,å—æ²™åŒº,4,440100 +440117,从化区,4,440100 +440118,增城区,4,440100 +440203,武江区,4,440200 +440204,浈江区,4,440200 +440205,曲江区,4,440200 +440222,始兴县,4,440200 +440224,ä»åŒ–县,4,440200 +440229,ç¿æºåŽ¿,4,440200 +440232,ä¹³æºç‘¶æ—自治县,4,440200 +440233,新丰县,4,440200 +440281,乿˜Œå¸‚,4,440200 +440282,å—雄市,4,440200 +440303,罗湖区,4,440300 +440304,ç¦ç”°åŒº,4,440300 +440305,å—山区,4,440300 +440306,å®å®‰åŒº,4,440300 +440307,龙岗区,4,440300 +440308,ç›ç”°åŒº,4,440300 +440309,é¾™åŽåŒº,4,440300 +440310,åªå±±åŒº,4,440300 +440311,光明区,4,440300 +440402,香洲区,4,440400 +440403,斗门区,4,440400 +440404,金湾区,4,440400 +440507,龙湖区,4,440500 +440511,金平区,4,440500 +440512,濠江区,4,440500 +440513,潮阳区,4,440500 +440514,æ½®å—区,4,440500 +440515,澄海区,4,440500 +440523,å—æ¾³åŽ¿,4,440500 +440604,禅城区,4,440600 +440605,å—æµ·åŒº,4,440600 +440606,顺德区,4,440600 +440607,三水区,4,440600 +440608,高明区,4,440600 +440703,蓬江区,4,440700 +440704,江海区,4,440700 +440705,新会区,4,440700 +440781,å°å±±å¸‚,4,440700 +440783,开平市,4,440700 +440784,鹤山市,4,440700 +440785,æ©å¹³å¸‚,4,440700 +440802,赤åŽåŒº,4,440800 +440803,霞山区,4,440800 +440804,å¡å¤´åŒº,4,440800 +440811,麻章区,4,440800 +440823,邿ºªåŽ¿,4,440800 +440825,å¾é—»åŽ¿,4,440800 +440881,廉江市,4,440800 +440882,雷州市,4,440800 +440883,å´å·å¸‚,4,440800 +440902,茂å—区,4,440900 +440904,电白区,4,440900 +440981,高州市,4,440900 +440982,化州市,4,440900 +440983,信宜市,4,440900 +441202,端州区,4,441200 +441203,鼎湖区,4,441200 +441204,高è¦åŒº,4,441200 +441223,广å®åŽ¿,4,441200 +441224,怀集县,4,441200 +441225,å°å¼€åŽ¿,4,441200 +441226,德庆县,4,441200 +441284,四会市,4,441200 +441302,惠城区,4,441300 +441303,惠阳区,4,441300 +441322,åšç½—县,4,441300 +441323,惠东县,4,441300 +441324,龙门县,4,441300 +441402,梅江区,4,441400 +441403,梅县区,4,441400 +441422,大埔县,4,441400 +441423,丰顺县,4,441400 +441424,五åŽåŽ¿,4,441400 +441426,平远县,4,441400 +441427,蕉岭县,4,441400 +441481,å…´å®å¸‚,4,441400 +441502,城区,4,441500 +441521,海丰县,4,441500 +441523,陆河县,4,441500 +441581,陆丰市,4,441500 +441602,æºåŸŽåŒº,4,441600 +441621,紫金县,4,441600 +441622,é¾™å·åŽ¿,4,441600 +441623,连平县,4,441600 +441624,和平县,4,441600 +441625,东æºåŽ¿,4,441600 +441702,江城区,4,441700 +441704,阳东区,4,441700 +441721,阳西县,4,441700 +441781,阳春市,4,441700 +441802,清城区,4,441800 +441803,清新区,4,441800 +441821,佛冈县,4,441800 +441823,阳山县,4,441800 +441825,连山壮æ—ç‘¶æ—自治县,4,441800 +441826,连å—ç‘¶æ—自治县,4,441800 +441881,英德市,4,441800 +441882,连州市,4,441800 +445102,湘桥区,4,445100 +445103,潮安区,4,445100 +445122,饶平县,4,445100 +445202,榕城区,4,445200 +445203,æ­ä¸œåŒº,4,445200 +445222,æ­è¥¿åŽ¿,4,445200 +445224,惠æ¥åŽ¿,4,445200 +445281,æ™®å®å¸‚,4,445200 +445302,云城区,4,445300 +445303,云安区,4,445300 +445321,新兴县,4,445300 +445322,éƒå—县,4,445300 +445381,罗定市,4,445300 +450102,å…´å®åŒº,4,450100 +450103,é’秀区,4,450100 +450105,江å—区,4,450100 +450107,西乡塘区,4,450100 +450108,良庆区,4,450100 +450109,é‚•å®åŒº,4,450100 +450110,武鸣区,4,450100 +450123,隆安县,4,450100 +450124,马山县,4,450100 +450125,上林县,4,450100 +450126,宾阳县,4,450100 +450181,横州市,4,450100 +450202,城中区,4,450200 +450203,鱼峰区,4,450200 +450204,柳å—区,4,450200 +450205,柳北区,4,450200 +450206,柳江区,4,450200 +450222,柳城县,4,450200 +450223,鹿寨县,4,450200 +450224,èžå®‰åŽ¿,4,450200 +450225,èžæ°´è‹—æ—自治县,4,450200 +450226,三江侗æ—自治县,4,450200 +450302,秀峰区,4,450300 +450303,å å½©åŒº,4,450300 +450304,象山区,4,450300 +450305,七星区,4,450300 +450311,é›å±±åŒº,4,450300 +450312,临桂区,4,450300 +450321,阳朔县,4,450300 +450323,çµå·åŽ¿,4,450300 +450324,全州县,4,450300 +450325,兴安县,4,450300 +450326,æ°¸ç¦åŽ¿,4,450300 +450327,çŒé˜³åŽ¿,4,450300 +450328,é¾™èƒœå„æ—自治县,4,450300 +450329,资æºåŽ¿,4,450300 +450330,å¹³ä¹åŽ¿,4,450300 +450332,æ­åŸŽç‘¶æ—自治县,4,450300 +450381,è”æµ¦å¸‚,4,450300 +450403,万秀区,4,450400 +450405,长洲区,4,450400 +450406,龙圩区,4,450400 +450421,è‹æ¢§åŽ¿,4,450400 +450422,藤县,4,450400 +450423,蒙山县,4,450400 +450481,岑溪市,4,450400 +450502,海城区,4,450500 +450503,银海区,4,450500 +450512,é“山港区,4,450500 +450521,åˆæµ¦åŽ¿,4,450500 +450602,港å£åŒº,4,450600 +450603,防城区,4,450600 +450621,上æ€åŽ¿,4,450600 +450681,东兴市,4,450600 +450702,é’¦å—区,4,450700 +450703,钦北区,4,450700 +450721,çµå±±åŽ¿,4,450700 +450722,浦北县,4,450700 +450802,港北区,4,450800 +450803,港å—区,4,450800 +450804,覃塘区,4,450800 +450821,å¹³å—县,4,450800 +450881,桂平市,4,450800 +450902,玉州区,4,450900 +450903,ç¦ç»µåŒº,4,450900 +450921,容县,4,450900 +450922,陆å·åŽ¿,4,450900 +450923,åšç™½åŽ¿,4,450900 +450924,兴业县,4,450900 +450981,北æµå¸‚,4,450900 +451002,峿±ŸåŒº,4,451000 +451003,田阳区,4,451000 +451022,田东县,4,451000 +451024,å¾·ä¿åŽ¿,4,451000 +451026,é‚£å¡åŽ¿,4,451000 +451027,凌云县,4,451000 +451028,ä¹ä¸šåŽ¿,4,451000 +451029,田林县,4,451000 +451030,西林县,4,451000 +451031,éš†æž—å„æ—自治县,4,451000 +451081,é–西市,4,451000 +451082,平果市,4,451000 +451102,八步区,4,451100 +451103,平桂区,4,451100 +451121,昭平县,4,451100 +451122,钟山县,4,451100 +451123,富å·ç‘¶æ—自治县,4,451100 +451202,金城江区,4,451200 +451203,宜州区,4,451200 +451221,å—丹县,4,451200 +451222,天峨县,4,451200 +451223,凤山县,4,451200 +451224,东兰县,4,451200 +451225,罗城仫佬æ—自治县,4,451200 +451226,çŽ¯æ±Ÿæ¯›å—æ—自治县,4,451200 +451227,巴马瑶æ—自治县,4,451200 +451228,都安瑶æ—自治县,4,451200 +451229,大化瑶æ—自治县,4,451200 +451302,兴宾区,4,451300 +451321,忻城县,4,451300 +451322,象州县,4,451300 +451323,武宣县,4,451300 +451324,金秀瑶æ—自治县,4,451300 +451381,åˆå±±å¸‚,4,451300 +451402,江州区,4,451400 +451421,扶绥县,4,451400 +451422,宿˜ŽåŽ¿,4,451400 +451423,龙州县,4,451400 +451424,大新县,4,451400 +451425,天等县,4,451400 +451481,凭祥市,4,451400 +460105,秀英区,4,460100 +460106,é¾™åŽåŒº,4,460100 +460107,ç¼å±±åŒº,4,460100 +460108,美兰区,4,460100 +460202,海棠区,4,460200 +460203,å‰é˜³åŒº,4,460200 +460204,天涯区,4,460200 +460205,崖州区,4,460200 +460321,西沙群岛,4,460300 +460322,å—æ²™ç¾¤å²›,4,460300 +460323,中沙群岛的岛ç¤åŠå…¶æµ·åŸŸ,4,460300 +469001,五指山市,4,469000 +469002,ç¼æµ·å¸‚,4,469000 +469005,文昌市,4,469000 +469006,万å®å¸‚,4,469000 +469007,东方市,4,469000 +469021,定安县,4,469000 +469022,屯昌县,4,469000 +469023,澄迈县,4,469000 +469024,临高县,4,469000 +469025,白沙黎æ—自治县,4,469000 +469026,昌江黎æ—自治县,4,469000 +469027,ä¹ä¸œé»Žæ—自治县,4,469000 +469028,陵水黎æ—自治县,4,469000 +469029,ä¿äº­é»Žæ—è‹—æ—自治县,4,469000 +469030,ç¼ä¸­é»Žæ—è‹—æ—自治县,4,469000 +500101,万州区,4,500100 +500102,涪陵区,4,500100 +500103,æ¸ä¸­åŒº,4,500100 +500104,大渡å£åŒº,4,500100 +500105,江北区,4,500100 +500106,æ²™åªå区,4,500100 +500107,ä¹é¾™å¡åŒº,4,500100 +500108,å—岸区,4,500100 +500109,北碚区,4,500100 +500110,綦江区,4,500100 +500111,大足区,4,500100 +500112,æ¸åŒ—区,4,500100 +500113,å·´å—区,4,500100 +500114,黔江区,4,500100 +500115,长寿区,4,500100 +500116,江津区,4,500100 +500117,åˆå·åŒº,4,500100 +500118,æ°¸å·åŒº,4,500100 +500119,å—å·åŒº,4,500100 +500120,璧山区,4,500100 +500151,铜æ¢åŒº,4,500100 +500152,æ½¼å—区,4,500100 +500153,è£æ˜ŒåŒº,4,500100 +500154,开州区,4,500100 +500155,æ¢å¹³åŒº,4,500100 +500156,武隆区,4,500100 +500229,城å£åŽ¿,4,500100 +500230,丰都县,4,500100 +500231,垫江县,4,500100 +500233,忠县,4,500100 +500235,云阳县,4,500100 +500236,奉节县,4,500100 +500237,巫山县,4,500100 +500238,巫溪县,4,500100 +500240,石柱土家æ—自治县,4,500100 +500241,秀山土家æ—è‹—æ—自治县,4,500100 +500242,酉阳土家æ—è‹—æ—自治县,4,500100 +500243,å½­æ°´è‹—æ—土家æ—自治县,4,500100 +510104,锦江区,4,510100 +510105,é’羊区,4,510100 +510106,金牛区,4,510100 +510107,武侯区,4,510100 +510108,æˆåŽåŒº,4,510100 +510112,龙泉驿区,4,510100 +510113,é’白江区,4,510100 +510114,新都区,4,510100 +510115,温江区,4,510100 +510116,åŒæµåŒº,4,510100 +510117,郫都区,4,510100 +510118,新津区,4,510100 +510121,金堂县,4,510100 +510129,大邑县,4,510100 +510131,蒲江县,4,510100 +510181,都江堰市,4,510100 +510182,彭州市,4,510100 +510183,邛崃市,4,510100 +510184,崇州市,4,510100 +510185,简阳市,4,510100 +510302,自æµäº•区,4,510300 +510303,贡井区,4,510300 +510304,大安区,4,510300 +510311,沿滩区,4,510300 +510321,è£åŽ¿,4,510300 +510322,富顺县,4,510300 +510402,东区,4,510400 +510403,西区,4,510400 +510411,ä»å’ŒåŒº,4,510400 +510421,米易县,4,510400 +510422,ç›è¾¹åŽ¿,4,510400 +510502,江阳区,4,510500 +510503,纳溪区,4,510500 +510504,龙马潭区,4,510500 +510521,泸县,4,510500 +510522,åˆæ±ŸåŽ¿,4,510500 +510524,噿°¸åŽ¿,4,510500 +510525,å¤è”ºåŽ¿,4,510500 +510603,旌阳区,4,510600 +510604,罗江区,4,510600 +510623,中江县,4,510600 +510681,广汉市,4,510600 +510682,什邡市,4,510600 +510683,绵竹市,4,510600 +510703,涪城区,4,510700 +510704,游仙区,4,510700 +510705,安州区,4,510700 +510722,三å°åŽ¿,4,510700 +510723,ç›äº­åŽ¿,4,510700 +510725,梓潼县,4,510700 +510726,北å·ç¾Œæ—自治县,4,510700 +510727,平武县,4,510700 +510781,江油市,4,510700 +510802,利州区,4,510800 +510811,昭化区,4,510800 +510812,æœå¤©åŒº,4,510800 +510821,æ—ºè‹åŽ¿,4,510800 +510822,é’å·åŽ¿,4,510800 +510823,剑é˜åŽ¿,4,510800 +510824,è‹æºªåŽ¿,4,510800 +510903,船山区,4,510900 +510904,安居区,4,510900 +510921,蓬溪县,4,510900 +510923,大英县,4,510900 +510981,射洪市,4,510900 +511002,市中区,4,511000 +511011,东兴区,4,511000 +511024,å¨è¿œåŽ¿,4,511000 +511025,资中县,4,511000 +511071,å†…æ±Ÿç»æµŽå¼€å‘区,4,511000 +511083,隆昌市,4,511000 +511102,市中区,4,511100 +511111,沙湾区,4,511100 +511112,五通桥区,4,511100 +511113,金壿²³åŒº,4,511100 +511123,çŠä¸ºåŽ¿,4,511100 +511124,井研县,4,511100 +511126,夹江县,4,511100 +511129,æ²å·åŽ¿,4,511100 +511132,å³¨è¾¹å½æ—自治县,4,511100 +511133,é©¬è¾¹å½æ—自治县,4,511100 +511181,峨眉山市,4,511100 +511302,顺庆区,4,511300 +511303,高åªåŒº,4,511300 +511304,嘉陵区,4,511300 +511321,å—部县,4,511300 +511322,è¥å±±åŽ¿,4,511300 +511323,蓬安县,4,511300 +511324,仪陇县,4,511300 +511325,西充县,4,511300 +511381,阆中市,4,511300 +511402,东å¡åŒº,4,511400 +511403,彭山区,4,511400 +511421,ä»å¯¿åŽ¿,4,511400 +511423,洪雅县,4,511400 +511424,丹棱县,4,511400 +511425,é’神县,4,511400 +511502,ç¿ å±åŒº,4,511500 +511503,å—æºªåŒº,4,511500 +511504,å™å·žåŒº,4,511500 +511523,江安县,4,511500 +511524,é•¿å®åŽ¿,4,511500 +511525,高县,4,511500 +511526,ç™åŽ¿,4,511500 +511527,筠连县,4,511500 +511528,兴文县,4,511500 +511529,å±å±±åŽ¿,4,511500 +511602,广安区,4,511600 +511603,å‰é”‹åŒº,4,511600 +511621,岳池县,4,511600 +511622,武胜县,4,511600 +511623,邻水县,4,511600 +511681,åŽè“¥å¸‚,4,511600 +511702,通å·åŒº,4,511700 +511703,è¾¾å·åŒº,4,511700 +511722,宣汉县,4,511700 +511723,开江县,4,511700 +511724,大竹县,4,511700 +511725,渠县,4,511700 +511771,è¾¾å·žç»æµŽå¼€å‘区,4,511700 +511781,万æºå¸‚,4,511700 +511802,雨城区,4,511800 +511803,å山区,4,511800 +511822,è¥ç»åŽ¿,4,511800 +511823,汉æºåŽ¿,4,511800 +511824,石棉县,4,511800 +511825,天全县,4,511800 +511826,芦山县,4,511800 +511827,å®å…´åŽ¿,4,511800 +511902,巴州区,4,511900 +511903,æ©é˜³åŒº,4,511900 +511921,通江县,4,511900 +511922,å—æ±ŸåŽ¿,4,511900 +511923,平昌县,4,511900 +511971,å·´ä¸­ç»æµŽå¼€å‘区,4,511900 +512002,雿±ŸåŒº,4,512000 +512021,安岳县,4,512000 +512022,ä¹è‡³åŽ¿,4,512000 +513201,马尔康市,4,513200 +513221,æ±¶å·åŽ¿,4,513200 +513222,ç†åŽ¿,4,513200 +513223,茂县,4,513200 +513224,æ¾æ½˜åŽ¿,4,513200 +513225,ä¹å¯¨æ²ŸåŽ¿,4,513200 +513226,金å·åŽ¿,4,513200 +513227,å°é‡‘县,4,513200 +513228,黑水县,4,513200 +513230,壤塘县,4,513200 +513231,阿å县,4,513200 +513232,若尔盖县,4,513200 +513233,红原县,4,513200 +513301,康定市,4,513300 +513322,泸定县,4,513300 +513323,丹巴县,4,513300 +513324,ä¹é¾™åŽ¿,4,513300 +513325,雅江县,4,513300 +513326,é“孚县,4,513300 +513327,炉éœåŽ¿,4,513300 +513328,甘孜县,4,513300 +513329,新龙县,4,513300 +513330,德格县,4,513300 +513331,白玉县,4,513300 +513332,石渠县,4,513300 +513333,色达县,4,513300 +513334,ç†å¡˜åŽ¿,4,513300 +513335,巴塘县,4,513300 +513336,乡城县,4,513300 +513337,稻城县,4,513300 +513338,å¾—è£åŽ¿,4,513300 +513401,西昌市,4,513400 +513402,会ç†å¸‚,4,513400 +513422,æœ¨é‡Œè—æ—自治县,4,513400 +513423,ç›æºåŽ¿,4,513400 +513424,德昌县,4,513400 +513426,会东县,4,513400 +513427,å®å—县,4,513400 +513428,普格县,4,513400 +513429,布拖县,4,513400 +513430,金阳县,4,513400 +513431,昭觉县,4,513400 +513432,喜德县,4,513400 +513433,冕å®åŽ¿,4,513400 +513434,越西县,4,513400 +513435,甘洛县,4,513400 +513436,美姑县,4,513400 +513437,雷波县,4,513400 +520102,å—æ˜ŽåŒº,4,520100 +520103,云岩区,4,520100 +520111,花溪区,4,520100 +520112,乌当区,4,520100 +520113,白云区,4,520100 +520115,观山湖区,4,520100 +520121,开阳县,4,520100 +520122,æ¯çƒ½åŽ¿,4,520100 +520123,修文县,4,520100 +520181,清镇市,4,520100 +520201,钟山区,4,520200 +520203,å…­æžç‰¹åŒº,4,520200 +520204,水城区,4,520200 +520281,盘州市,4,520200 +520302,红花岗区,4,520300 +520303,汇å·åŒº,4,520300 +520304,播州区,4,520300 +520322,æ¡æ¢“县,4,520300 +520323,绥阳县,4,520300 +520324,正安县,4,520300 +520325,é“真仡佬æ—è‹—æ—自治县,4,520300 +520326,务å·ä»¡ä½¬æ—è‹—æ—自治县,4,520300 +520327,凤冈县,4,520300 +520328,湄潭县,4,520300 +520329,余庆县,4,520300 +520330,习水县,4,520300 +520381,赤水市,4,520300 +520382,仿€€å¸‚,4,520300 +520402,西秀区,4,520400 +520403,å¹³å区,4,520400 +520422,普定县,4,520400 +520423,镇å®å¸ƒä¾æ—è‹—æ—自治县,4,520400 +520424,å…³å²­å¸ƒä¾æ—è‹—æ—自治县,4,520400 +520425,紫云苗æ—å¸ƒä¾æ—自治县,4,520400 +520502,七星关区,4,520500 +520521,大方县,4,520500 +520523,金沙县,4,520500 +520524,织金县,4,520500 +520525,纳é›åŽ¿,4,520500 +520526,å¨å®å½æ—回æ—è‹—æ—自治县,4,520500 +520527,赫章县,4,520500 +520581,黔西市,4,520500 +520602,碧江区,4,520600 +520603,万山区,4,520600 +520621,江å£åŽ¿,4,520600 +520622,玉å±ä¾—æ—自治县,4,520600 +520623,石阡县,4,520600 +520624,æ€å—县,4,520600 +520625,å°æ±ŸåœŸå®¶æ—è‹—æ—自治县,4,520600 +520626,德江县,4,520600 +520627,沿河土家æ—自治县,4,520600 +520628,æ¾æ¡ƒè‹—æ—自治县,4,520600 +522301,兴义市,4,522300 +522302,å…´ä»å¸‚,4,522300 +522323,普安县,4,522300 +522324,晴隆县,4,522300 +522325,贞丰县,4,522300 +522326,望谟县,4,522300 +522327,册亨县,4,522300 +522328,安龙县,4,522300 +522601,凯里市,4,522600 +522622,黄平县,4,522600 +522623,施秉县,4,522600 +522624,三穗县,4,522600 +522625,镇远县,4,522600 +522626,岑巩县,4,522600 +522627,天柱县,4,522600 +522628,锦å±åŽ¿,4,522600 +522629,剑河县,4,522600 +522630,å°æ±ŸåŽ¿,4,522600 +522631,黎平县,4,522600 +522632,榕江县,4,522600 +522633,从江县,4,522600 +522634,雷山县,4,522600 +522635,麻江县,4,522600 +522636,丹寨县,4,522600 +522701,都匀市,4,522700 +522702,ç¦æ³‰å¸‚,4,522700 +522722,è”æ³¢åŽ¿,4,522700 +522723,贵定县,4,522700 +522725,瓮安县,4,522700 +522726,独山县,4,522700 +522727,平塘县,4,522700 +522728,罗甸县,4,522700 +522729,长顺县,4,522700 +522730,龙里县,4,522700 +522731,惠水县,4,522700 +522732,三都水æ—自治县,4,522700 +530102,五åŽåŒº,4,530100 +530103,盘龙区,4,530100 +530111,官渡区,4,530100 +530112,西山区,4,530100 +530113,东å·åŒº,4,530100 +530114,呈贡区,4,530100 +530115,晋å®åŒº,4,530100 +530124,富民县,4,530100 +530125,宜良县,4,530100 +530126,çŸ³æž—å½æ—自治县,4,530100 +530127,嵩明县,4,530100 +530128,禄åŠå½æ—è‹—æ—自治县,4,530100 +530129,寻甸回æ—彿—自治县,4,530100 +530181,安å®å¸‚,4,530100 +530302,麒麟区,4,530300 +530303,沾益区,4,530300 +530304,马龙区,4,530300 +530322,陆良县,4,530300 +530323,师宗县,4,530300 +530324,罗平县,4,530300 +530325,富æºåŽ¿,4,530300 +530326,会泽县,4,530300 +530381,宣å¨å¸‚,4,530300 +530402,红塔区,4,530400 +530403,江å·åŒº,4,530400 +530423,通海县,4,530400 +530424,åŽå®åŽ¿,4,530400 +530425,易门县,4,530400 +530426,峍山彿—自治县,4,530400 +530427,æ–°å¹³å½æ—å‚£æ—自治县,4,530400 +530428,元江哈尼æ—彿—å‚£æ—自治县,4,530400 +530481,澄江市,4,530400 +530502,隆阳区,4,530500 +530521,施甸县,4,530500 +530523,龙陵县,4,530500 +530524,昌å®åŽ¿,4,530500 +530581,腾冲市,4,530500 +530602,昭阳区,4,530600 +530621,é²ç”¸åŽ¿,4,530600 +530622,巧家县,4,530600 +530623,ç›æ´¥åŽ¿,4,530600 +530624,大关县,4,530600 +530625,永善县,4,530600 +530626,绥江县,4,530600 +530627,镇雄县,4,530600 +530628,å½è‰¯åŽ¿,4,530600 +530629,å¨ä¿¡åŽ¿,4,530600 +530681,水富市,4,530600 +530702,å¤åŸŽåŒº,4,530700 +530721,玉龙纳西æ—自治县,4,530700 +530722,永胜县,4,530700 +530723,åŽåªåŽ¿,4,530700 +530724,å®è’—彿—自治县,4,530700 +530802,æ€èŒ…区,4,530800 +530821,宿´±å“ˆå°¼æ—彿—自治县,4,530800 +530822,墨江哈尼æ—自治县,4,530800 +530823,æ™¯ä¸œå½æ—自治县,4,530800 +530824,景谷傣æ—彿—自治县,4,530800 +530825,é•‡æ²…å½æ—å“ˆå°¼æ—æ‹‰ç¥œæ—自治县,4,530800 +530826,江城哈尼æ—彿—自治县,4,530800 +530827,å­Ÿè¿žå‚£æ—æ‹‰ç¥œæ—佤æ—自治县,4,530800 +530828,澜沧拉祜æ—自治县,4,530800 +530829,西盟佤æ—自治县,4,530800 +530902,临翔区,4,530900 +530921,凤庆县,4,530900 +530922,云县,4,530900 +530923,永德县,4,530900 +530924,镇康县,4,530900 +530925,åŒæ±Ÿæ‹‰ç¥œæ—佤æ—布朗æ—å‚£æ—自治县,4,530900 +530926,耿马傣æ—佤æ—自治县,4,530900 +530927,æ²§æºä½¤æ—自治县,4,530900 +532301,楚雄市,4,532300 +532302,禄丰市,4,532300 +532322,åŒæŸåŽ¿,4,532300 +532323,牟定县,4,532300 +532324,å—åŽåŽ¿,4,532300 +532325,姚安县,4,532300 +532326,大姚县,4,532300 +532327,æ°¸ä»åŽ¿,4,532300 +532328,元谋县,4,532300 +532329,武定县,4,532300 +532501,个旧市,4,532500 +532502,开远市,4,532500 +532503,蒙自市,4,532500 +532504,弥勒市,4,532500 +532523,å±è¾¹è‹—æ—自治县,4,532500 +532524,建水县,4,532500 +532525,石å±åŽ¿,4,532500 +532527,泸西县,4,532500 +532528,元阳县,4,532500 +532529,红河县,4,532500 +532530,金平苗æ—ç‘¶æ—å‚£æ—自治县,4,532500 +532531,绿春县,4,532500 +532532,æ²³å£ç‘¶æ—自治县,4,532500 +532601,文山市,4,532600 +532622,砚山县,4,532600 +532623,西畴县,4,532600 +532624,麻栗å¡åŽ¿,4,532600 +532625,马关县,4,532600 +532626,丘北县,4,532600 +532627,广å—县,4,532600 +532628,富å®åŽ¿,4,532600 +532801,景洪市,4,532800 +532822,勿µ·åŽ¿,4,532800 +532823,å‹è…ŠåŽ¿,4,532800 +532901,大ç†å¸‚,4,532900 +532922,æ¼¾æ¿žå½æ—自治县,4,532900 +532923,祥云县,4,532900 +532924,宾å·åŽ¿,4,532900 +532925,弥渡县,4,532900 +532926,å—æ¶§å½æ—自治县,4,532900 +532927,å·å±±å½æ—回æ—自治县,4,532900 +532928,永平县,4,532900 +532929,云龙县,4,532900 +532930,æ´±æºåŽ¿,4,532900 +532931,剑å·åŽ¿,4,532900 +532932,鹤庆县,4,532900 +533102,瑞丽市,4,533100 +533103,芒市,4,533100 +533122,æ¢æ²³åŽ¿,4,533100 +533123,盈江县,4,533100 +533124,陇å·åŽ¿,4,533100 +533301,泸水市,4,533300 +533323,ç¦è´¡åŽ¿,4,533300 +533324,è´¡å±±ç‹¬é¾™æ—æ€’æ—自治县,4,533300 +533325,å…°åªç™½æ—普米æ—自治县,4,533300 +533401,香格里拉市,4,533400 +533422,德钦县,4,533400 +533423,维西傈僳æ—自治县,4,533400 +540102,城关区,4,540100 +540103,堆龙德庆区,4,540100 +540104,达孜区,4,540100 +540121,林周县,4,540100 +540122,当雄县,4,540100 +540123,尼木县,4,540100 +540124,曲水县,4,540100 +540127,墨竹工å¡åŽ¿,4,540100 +540171,格尔木è—é’工业园区,4,540100 +540172,拉è¨ç»æµŽæŠ€æœ¯å¼€å‘区,4,540100 +540173,è¥¿è—æ–‡åŒ–旅游创æ„园区,4,540100 +540174,达孜工业园区,4,540100 +540202,æ¡‘ç å­œåŒº,4,540200 +540221,å—æœ¨æž—县,4,540200 +540222,江孜县,4,540200 +540223,定日县,4,540200 +540224,è¨è¿¦åŽ¿,4,540200 +540225,拉孜县,4,540200 +540226,昂ä»åŽ¿,4,540200 +540227,谢通门县,4,540200 +540228,白朗县,4,540200 +540229,ä»å¸ƒåŽ¿,4,540200 +540230,康马县,4,540200 +540231,定结县,4,540200 +540232,仲巴县,4,540200 +540233,亚东县,4,540200 +540234,å‰éš†åŽ¿,4,540200 +540235,è‚æ‹‰æœ¨åŽ¿,4,540200 +540236,è¨å˜ŽåŽ¿,4,540200 +540237,岗巴县,4,540200 +540302,å¡è‹¥åŒº,4,540300 +540321,江达县,4,540300 +540322,贡觉县,4,540300 +540323,类乌é½åŽ¿,4,540300 +540324,ä¸é’县,4,540300 +540325,察雅县,4,540300 +540326,八宿县,4,540300 +540327,左贡县,4,540300 +540328,芒康县,4,540300 +540329,洛隆县,4,540300 +540330,è¾¹å县,4,540300 +540402,巴宜区,4,540400 +540421,工布江达县,4,540400 +540422,米林县,4,540400 +540423,墨脱县,4,540400 +540424,波密县,4,540400 +540425,察隅县,4,540400 +540426,朗县,4,540400 +540502,乃东区,4,540500 +540521,扎囊县,4,540500 +540522,贡嘎县,4,540500 +540523,桑日县,4,540500 +540524,ç¼ç»“县,4,540500 +540525,曲æ¾åŽ¿,4,540500 +540526,措美县,4,540500 +540527,洛扎县,4,540500 +540528,加查县,4,540500 +540529,隆å­åŽ¿,4,540500 +540530,错那县,4,540500 +540531,浪å¡å­åŽ¿,4,540500 +540602,色尼区,4,540600 +540621,嘉黎县,4,540600 +540622,比如县,4,540600 +540623,è‚è£åŽ¿,4,540600 +540624,安多县,4,540600 +540625,申扎县,4,540600 +540626,索县,4,540600 +540627,ç­æˆˆåŽ¿,4,540600 +540628,å·´é’县,4,540600 +540629,尼玛县,4,540600 +540630,åŒæ¹–县,4,540600 +542521,普兰县,4,542500 +542522,札达县,4,542500 +542523,噶尔县,4,542500 +542524,日土县,4,542500 +542525,é©å‰åŽ¿,4,542500 +542526,改则县,4,542500 +542527,措勤县,4,542500 +610102,新城区,4,610100 +610103,碑林区,4,610100 +610104,莲湖区,4,610100 +610111,çžæ¡¥åŒº,4,610100 +610112,未央区,4,610100 +610113,é›å¡”区,4,610100 +610114,阎良区,4,610100 +610115,临潼区,4,610100 +610116,长安区,4,610100 +610117,高陵区,4,610100 +610118,鄠邑区,4,610100 +610122,è“田县,4,610100 +610124,周至县,4,610100 +610202,王益区,4,610200 +610203,å°å°åŒº,4,610200 +610204,耀州区,4,610200 +610222,宜å›åŽ¿,4,610200 +610302,渭滨区,4,610300 +610303,金å°åŒº,4,610300 +610304,陈仓区,4,610300 +610305,凤翔区,4,610300 +610323,å²å±±åŽ¿,4,610300 +610324,扶风县,4,610300 +610326,眉县,4,610300 +610327,陇县,4,610300 +610328,åƒé˜³åŽ¿,4,610300 +610329,麟游县,4,610300 +610330,凤县,4,610300 +610331,太白县,4,610300 +610402,秦都区,4,610400 +610403,æ¨é™µåŒº,4,610400 +610404,渭城区,4,610400 +610422,三原县,4,610400 +610423,泾阳县,4,610400 +610424,乾县,4,610400 +610425,礼泉县,4,610400 +610426,永寿县,4,610400 +610428,长武县,4,610400 +610429,旬邑县,4,610400 +610430,淳化县,4,610400 +610431,武功县,4,610400 +610481,兴平市,4,610400 +610482,彬州市,4,610400 +610502,临渭区,4,610500 +610503,åŽå·žåŒº,4,610500 +610522,潼关县,4,610500 +610523,大è”县,4,610500 +610524,åˆé˜³åŽ¿,4,610500 +610525,澄城县,4,610500 +610526,蒲城县,4,610500 +610527,白水县,4,610500 +610528,富平县,4,610500 +610581,韩城市,4,610500 +610582,åŽé˜´å¸‚,4,610500 +610602,å®å¡”区,4,610600 +610603,安塞区,4,610600 +610621,延长县,4,610600 +610622,å»¶å·åŽ¿,4,610600 +610625,志丹县,4,610600 +610626,å´èµ·åŽ¿,4,610600 +610627,甘泉县,4,610600 +610628,富县,4,610600 +610629,æ´›å·åŽ¿,4,610600 +610630,宜å·åŽ¿,4,610600 +610631,黄龙县,4,610600 +610632,黄陵县,4,610600 +610681,å­é•¿å¸‚,4,610600 +610702,汉å°åŒº,4,610700 +610703,å—郑区,4,610700 +610722,城固县,4,610700 +610723,洋县,4,610700 +610724,西乡县,4,610700 +610725,勉县,4,610700 +610726,å®å¼ºåŽ¿,4,610700 +610727,略阳县,4,610700 +610728,镇巴县,4,610700 +610729,ç•™å县,4,610700 +610730,ä½›åªåŽ¿,4,610700 +610802,榆阳区,4,610800 +610803,横山区,4,610800 +610822,府谷县,4,610800 +610824,é–边县,4,610800 +610825,定边县,4,610800 +610826,绥德县,4,610800 +610827,米脂县,4,610800 +610828,佳县,4,610800 +610829,å´å ¡åŽ¿,4,610800 +610830,清涧县,4,610800 +610831,å­æ´²åŽ¿,4,610800 +610881,神木市,4,610800 +610902,汉滨区,4,610900 +610921,汉阴县,4,610900 +610922,石泉县,4,610900 +610923,å®é™•县,4,610900 +610924,紫阳县,4,610900 +610925,岚皋县,4,610900 +610926,平利县,4,610900 +610927,镇åªåŽ¿,4,610900 +610929,白河县,4,610900 +610981,旬阳市,4,610900 +611002,商州区,4,611000 +611021,æ´›å—县,4,611000 +611022,丹凤县,4,611000 +611023,商å—县,4,611000 +611024,山阳县,4,611000 +611025,镇安县,4,611000 +611026,柞水县,4,611000 +620102,城关区,4,620100 +620103,七里河区,4,620100 +620104,西固区,4,620100 +620105,安å®åŒº,4,620100 +620111,红å¤åŒº,4,620100 +620121,永登县,4,620100 +620122,皋兰县,4,620100 +620123,榆中县,4,620100 +620171,兰州新区,4,620100 +620201,嘉峪关市,4,620200 +620302,金å·åŒº,4,620300 +620321,永昌县,4,620300 +620402,白银区,4,620400 +620403,å¹³å·åŒº,4,620400 +620421,é–远县,4,620400 +620422,会å®åŽ¿,4,620400 +620423,景泰县,4,620400 +620502,秦州区,4,620500 +620503,麦积区,4,620500 +620521,清水县,4,620500 +620522,秦安县,4,620500 +620523,甘谷县,4,620500 +620524,武山县,4,620500 +620525,å¼ å®¶å·å›žæ—自治县,4,620500 +620602,凉州区,4,620600 +620621,民勤县,4,620600 +620622,夿µªåŽ¿,4,620600 +620623,天ç¥è—æ—自治县,4,620600 +620702,甘州区,4,620700 +620721,肃å—裕固æ—自治县,4,620700 +620722,æ°‘ä¹åŽ¿,4,620700 +620723,临泽县,4,620700 +620724,高å°åŽ¿,4,620700 +620725,山丹县,4,620700 +620802,崆峒区,4,620800 +620821,æ³¾å·åŽ¿,4,620800 +620822,çµå°åŽ¿,4,620800 +620823,崇信县,4,620800 +620825,庄浪县,4,620800 +620826,é™å®åŽ¿,4,620800 +620881,åŽäº­å¸‚,4,620800 +620902,肃州区,4,620900 +620921,金塔县,4,620900 +620922,瓜州县,4,620900 +620923,è‚ƒåŒ—è’™å¤æ—自治县,4,620900 +620924,阿克塞哈è¨å…‹æ—自治县,4,620900 +620981,玉门市,4,620900 +620982,敦煌市,4,620900 +621002,西峰区,4,621000 +621021,庆城县,4,621000 +621022,环县,4,621000 +621023,åŽæ± åŽ¿,4,621000 +621024,åˆæ°´åŽ¿,4,621000 +621025,æ­£å®åŽ¿,4,621000 +621026,å®åŽ¿,4,621000 +621027,镇原县,4,621000 +621102,安定区,4,621100 +621121,通渭县,4,621100 +621122,陇西县,4,621100 +621123,渭æºåŽ¿,4,621100 +621124,临洮县,4,621100 +621125,漳县,4,621100 +621126,岷县,4,621100 +621202,武都区,4,621200 +621221,æˆåŽ¿,4,621200 +621222,文县,4,621200 +621223,宕昌县,4,621200 +621224,康县,4,621200 +621225,西和县,4,621200 +621226,礼县,4,621200 +621227,徽县,4,621200 +621228,两当县,4,621200 +622901,临å¤å¸‚,4,622900 +622921,临å¤åŽ¿,4,622900 +622922,康ä¹åŽ¿,4,622900 +622923,æ°¸é–县,4,622900 +622924,广河县,4,622900 +622925,和政县,4,622900 +622926,东乡æ—自治县,4,622900 +622927,积石山ä¿å®‰æ—ä¸œä¹¡æ—æ’’拉æ—自治县,4,622900 +623001,åˆä½œå¸‚,4,623000 +623021,临潭县,4,623000 +623022,å“尼县,4,623000 +623023,舟曲县,4,623000 +623024,迭部县,4,623000 +623025,玛曲县,4,623000 +623026,碌曲县,4,623000 +623027,夿²³åŽ¿,4,623000 +630102,城东区,4,630100 +630103,城中区,4,630100 +630104,城西区,4,630100 +630105,城北区,4,630100 +630106,湟中区,4,630100 +630121,大通回æ—土æ—自治县,4,630100 +630123,湟æºåŽ¿,4,630100 +630202,ä¹éƒ½åŒº,4,630200 +630203,平安区,4,630200 +630222,民和回æ—土æ—自治县,4,630200 +630223,互助土æ—自治县,4,630200 +630224,化隆回æ—自治县,4,630200 +630225,循化撒拉æ—自治县,4,630200 +632221,é—¨æºå›žæ—自治县,4,632200 +632222,ç¥è¿žåŽ¿,4,632200 +632223,æµ·æ™åŽ¿,4,632200 +632224,刚察县,4,632200 +632301,åŒä»å¸‚,4,632300 +632322,尖扎县,4,632300 +632323,泽库县,4,632300 +632324,æ²³å—è’™å¤æ—自治县,4,632300 +632521,共和县,4,632500 +632522,åŒå¾·åŽ¿,4,632500 +632523,贵德县,4,632500 +632524,兴海县,4,632500 +632525,è´µå—县,4,632500 +632621,玛æ²åŽ¿,4,632600 +632622,ç­çŽ›åŽ¿,4,632600 +632623,甘德县,4,632600 +632624,达日县,4,632600 +632625,久治县,4,632600 +632626,玛多县,4,632600 +632701,玉树市,4,632700 +632722,æ‚多县,4,632700 +632723,称多县,4,632700 +632724,治多县,4,632700 +632725,囊谦县,4,632700 +632726,曲麻莱县,4,632700 +632801,格尔木市,4,632800 +632802,德令哈市,4,632800 +632803,茫崖市,4,632800 +632821,乌兰县,4,632800 +632822,都兰县,4,632800 +632823,天峻县,4,632800 +632857,大柴旦行政委员会,4,632800 +640104,兴庆区,4,640100 +640105,西å¤åŒº,4,640100 +640106,金凤区,4,640100 +640121,æ°¸å®åŽ¿,4,640100 +640122,贺兰县,4,640100 +640181,çµæ­¦å¸‚,4,640100 +640202,大武å£åŒº,4,640200 +640205,惠农区,4,640200 +640221,平罗县,4,640200 +640302,利通区,4,640300 +640303,红寺堡区,4,640300 +640323,ç›æ± åŽ¿,4,640300 +640324,åŒå¿ƒåŽ¿,4,640300 +640381,é’铜峡市,4,640300 +640402,原州区,4,640400 +640422,西å‰åŽ¿,4,640400 +640423,隆德县,4,640400 +640424,æ³¾æºåŽ¿,4,640400 +640425,彭阳县,4,640400 +640502,æ²™å¡å¤´åŒº,4,640500 +640521,中å®åŽ¿,4,640500 +640522,海原县,4,640500 +650102,天山区,4,650100 +650103,æ²™ä¾å·´å…‹åŒº,4,650100 +650104,新市区,4,650100 +650105,水磨沟区,4,650100 +650106,头屯河区,4,650100 +650107,è¾¾å‚城区,4,650100 +650109,米东区,4,650100 +650121,ä¹Œé²æœ¨é½åŽ¿,4,650100 +650202,独山å­åŒº,4,650200 +650203,克拉玛ä¾åŒº,4,650200 +650204,白碱滩区,4,650200 +650205,乌尔禾区,4,650200 +650402,高昌区,4,650400 +650421,鄯善县,4,650400 +650422,托克逊县,4,650400 +650502,伊州区,4,650500 +650521,巴里å¤å“ˆè¨å…‹è‡ªæ²»åŽ¿,4,650500 +650522,伊å¾åŽ¿,4,650500 +652301,昌å‰å¸‚,4,652300 +652302,阜康市,4,652300 +652323,呼图å£åŽ¿,4,652300 +652324,玛纳斯县,4,652300 +652325,奇å°åŽ¿,4,652300 +652327,剿œ¨è¨å°”县,4,652300 +652328,木垒哈è¨å…‹è‡ªæ²»åŽ¿,4,652300 +652701,åšä¹å¸‚,4,652700 +652702,阿拉山å£å¸‚,4,652700 +652722,精河县,4,652700 +652723,温泉县,4,652700 +652801,库尔勒市,4,652800 +652822,è½®å°åŽ¿,4,652800 +652823,å°‰çŠåŽ¿,4,652800 +652824,若羌县,4,652800 +652825,且末县,4,652800 +652826,焉耆回æ—自治县,4,652800 +652827,å’Œé™åŽ¿,4,652800 +652828,和硕县,4,652800 +652829,åšæ¹–县,4,652800 +652871,åº“å°”å‹’ç»æµŽæŠ€æœ¯å¼€å‘区,4,652800 +652901,阿克è‹å¸‚,4,652900 +652902,库车市,4,652900 +652922,温宿县,4,652900 +652924,沙雅县,4,652900 +652925,新和县,4,652900 +652926,拜城县,4,652900 +652927,乌什县,4,652900 +652928,阿瓦æåŽ¿,4,652900 +652929,柯åªåŽ¿,4,652900 +653001,阿图什市,4,653000 +653022,阿克陶县,4,653000 +653023,阿åˆå¥‡åŽ¿,4,653000 +653024,乌æ°åŽ¿,4,653000 +653101,喀什市,4,653100 +653121,ç–附县,4,653100 +653122,ç–勒县,4,653100 +653123,è‹±å‰æ²™åŽ¿,4,653100 +653124,泽普县,4,653100 +653125,莎车县,4,653100 +653126,å¶åŸŽåŽ¿,4,653100 +653127,麦盖æåŽ¿,4,653100 +653128,岳普湖县,4,653100 +653129,伽师县,4,653100 +653130,巴楚县,4,653100 +653131,塔什库尔干塔å‰å…‹è‡ªæ²»åŽ¿,4,653100 +653201,和田市,4,653200 +653221,和田县,4,653200 +653222,墨玉县,4,653200 +653223,皮山县,4,653200 +653224,洛浦县,4,653200 +653225,策勒县,4,653200 +653226,于田县,4,653200 +653227,民丰县,4,653200 +654002,伊å®å¸‚,4,654000 +654003,奎屯市,4,654000 +654004,éœå°”果斯市,4,654000 +654021,伊å®åŽ¿,4,654000 +654022,察布查尔锡伯自治县,4,654000 +654023,éœåŸŽåŽ¿,4,654000 +654024,巩留县,4,654000 +654025,æ–°æºåŽ¿,4,654000 +654026,昭è‹åŽ¿,4,654000 +654027,特克斯县,4,654000 +654028,尼勒克县,4,654000 +654201,塔城市,4,654200 +654202,乌è‹å¸‚,4,654200 +654203,沙湾市,4,654200 +654221,颿•县,4,654200 +654224,托里县,4,654200 +654225,裕民县,4,654200 +654226,和布克赛尔蒙å¤è‡ªæ²»åŽ¿,4,654200 +654301,阿勒泰市,4,654300 +654321,布尔津县,4,654300 +654322,富蕴县,4,654300 +654323,ç¦æµ·åŽ¿,4,654300 +654324,哈巴河县,4,654300 +654325,é’æ²³åŽ¿,4,654300 +654326,剿œ¨ä¹ƒåŽ¿,4,654300 +659001,石河å­å¸‚,4,659000 +659002,阿拉尔市,4,659000 +659003,图木舒克市,4,659000 +659004,五家渠市,4,659000 +659005,北屯市,4,659000 +659006,é“门关市,4,659000 +659007,åŒæ²³å¸‚,4,659000 +659008,å¯å…‹è¾¾æ‹‰å¸‚,4,659000 +659009,昆玉市,4,659000 +659010,èƒ¡æ¨æ²³å¸‚,4,659000 +659011,新星市,4,659000 \ No newline at end of file diff --git a/agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/ip2region.xdb b/agt-framework/agt-spring-boot-starter-biz-ip/src/main/resources/ip2region.xdb new file mode 100644 index 0000000000000000000000000000000000000000..58596a591515e1f4b1f0831c5d8f0ee3fc0f9b55 GIT binary patch literal 4177309 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�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%0D#0LY+fd1&0nonTQ1oA+Bd}wW!NV$ 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�itWaqkpNy<=&Pgq9 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