From e23911b0752e8ab438bf96e6a85fd95e4503521a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=AD=E5=A6=82?= <8775@163.com> Date: Thu, 10 Oct 2024 11:35:34 +0800 Subject: [PATCH] 5.0 --- pom.xml | 4 +- .../sop/adminbackend/common/dto/IdDTO.java | 14 + .../common/dto/StatusUpdateDTO.java | 16 + .../common/{ => enums}/ConfigKeyEnum.java | 2 +- .../adminbackend/common/enums/StatusEnum.java | 33 ++ .../sop/adminbackend/common/req/IdParam.java | 14 + .../common/req/StatusUpdateParam.java | 16 + .../sop/adminbackend/common/resp/Result.java | 46 +++ .../sop/adminbackend/config/Configs.java | 2 +- .../ExceptionHandlerController.java | 2 +- .../controller/isv/IsvInfoController.java | 91 ++++++ .../controller/isv/dto/IsvKeysDTO.java | 31 ++ .../controller/serve/ApiInfoController.java | 19 +- .../controller/serve/req/ApiInfoParam.java | 2 + .../controller/sys/LoginController.java | 2 +- .../sys/SysAdminUserController.java | 43 +-- .../sop/adminbackend/dao/entity/ApiInfo.java | 5 + .../service/isv/IsvInfoService.java | 29 ++ .../service/serve/ApiInfoService.java | 8 + .../service/sys/SysAdminUserService.java | 3 +- .../service/sys/UpgradeService.java | 2 +- .../service/sys/login/LoginService.java | 4 +- .../login/impl/DefaultUserCacheManager.java | 2 +- .../sop-admin-frontend/mock/asyncRoutes.ts | 77 +++-- .../sop-admin-frontend/src/api/isvList.ts | 52 +++ .../sop-admin-frontend/src/api/routes.ts | 2 +- .../sop-admin-frontend/src/api/serveApi.ts | 52 +++ .../sop-admin-frontend/src/api/service/api.ts | 0 .../src/api/sysAdminUser.ts | 44 +++ sop-admin/sop-admin-frontend/src/api/user.ts | 13 +- .../src/model/enums/index.ts | 4 + .../sop-admin-frontend/src/model/index.ts | 2 + .../src/utils/http/index.ts | 23 +- .../src/views/admin/user/index.ts | 306 ++++++++++++++++++ .../src/views/admin/user/index.vue | 62 ++++ .../src/views/isv/list/index.ts | 265 +++++++++++++++ .../src/views/isv/list/index.vue | 82 +++++ .../src/views/isv/list/showKeys.ts | 86 +++++ .../src/views/serve/api/index.ts | 201 +++++++----- .../src/views/serve/api/index.vue | 7 +- sop-common/pom.xml | 31 +- .../gitee/sop/common/bean/SpringContext.java | 32 ++ .../gitee/sop/common/enums}/StatusEnum.java | 6 +- .../com/gitee/sop/common/req}/IdParam.java | 2 +- .../sop/common/req/StatusUpdateParam.java | 17 + .../com/gitee/sop/common/resp}/Result.java | 2 +- sop-gateway/pom.xml | 266 ++++++++++++--- .../sop/gateway/SopGatewayApplication.java | 15 +- .../gitee/sop/gateway}/common/ApiInfoDTO.java | 2 +- .../sop/gateway}/common/AttachmentNames.java | 2 +- .../sop/gateway}/common/ParamInfoDTO.java | 2 +- .../sop/gateway}/common/RouteContext.java | 4 +- .../sop/gateway}/common/SopConstants.java | 2 +- .../gitee/sop/gateway}/common/StatusEnum.java | 4 +- .../gitee/sop/gateway/config/ApiConfig.java | 89 +++++ .../sop/gateway}/config/CustomConfig.java | 2 +- .../sop/gateway}/config/IndexConfig.java | 44 +-- .../gateway}/controller/IndexController.java | 13 +- .../sop/gateway}/dao/entity/ApiInfo.java | 7 +- .../sop/gateway}/dao/entity/IsvInfo.java | 2 +- .../sop/gateway}/dao/entity/IsvKeys.java | 2 +- .../gateway}/dao/mapper/ApiInfoMapper.java | 4 +- .../gateway}/dao/mapper/IsvInfoMapper.java | 4 +- .../gateway}/dao/mapper/IsvKeysMapper.java | 4 +- .../sop/gateway}/exception/ApiException.java | 6 +- .../ControllerGlobalExceptionHandler.java | 6 +- .../gateway}/exception/ExceptionExecutor.java | 6 +- .../sop/gateway}/exception/SignException.java | 4 +- .../exception/impl/ExceptionExecutorImpl.java | 12 +- .../gitee/sop/gateway}/message/ErrorEnum.java | 2 +- .../sop/gateway}/message/ErrorFactory.java | 2 +- .../gitee/sop/gateway}/message/ErrorImpl.java | 2 +- .../gitee/sop/gateway}/message/ErrorMeta.java | 2 +- .../gitee/sop/gateway}/message/IError.java | 2 +- .../sop/gateway}/request/ApiRequest.java | 2 +- .../gateway}/request/ApiRequestContext.java | 2 +- .../request/ApiRequestContextFactory.java | 11 +- .../gateway}/request/ApiUploadContext.java | 2 +- .../gateway}/request/RequestFormatEnum.java | 2 +- .../sop/gateway}/request/UploadContext.java | 2 +- .../sop/gateway}/response/ApiResponse.java | 10 +- .../service/GenericServiceInvoker.java | 2 +- .../sop/gateway}/service/ParamExecutor.java | 6 +- .../gateway}/service/ParamExecutorImpl.java | 42 +-- .../sop/gateway}/service/RouteService.java | 6 +- .../gateway}/service/RouteServiceImpl.java | 28 +- .../service/dubbo/ApiRegisterServiceImpl.java | 15 +- .../service/dubbo/IsvServiceImpl.java | 4 +- .../service/interceptor/RouteInterceptor.java | 6 +- .../interceptor/RouteInterceptorOrders.java | 2 +- .../internal/ResultRouteInterceptor.java | 10 +- .../gateway}/service/manager/ApiManager.java | 4 +- .../service/manager/IpBlacklistManager.java | 2 +- .../manager/IsvApiPermissionManager.java | 2 +- .../gateway}/service/manager/IsvManager.java | 4 +- .../service/manager/SecretManager.java | 2 +- .../gateway}/service/manager/dto/IsvDTO.java | 2 +- .../manager/impl/IpBlacklistManagerImpl.java | 4 +- .../impl/IsvApiPermissionManagerImpl.java | 4 +- .../manager/impl/LocalApiManagerImpl.java | 12 +- .../manager/impl/LocalIsvManagerImpl.java | 12 +- .../manager/impl/LocalSecretManagerImpl.java | 8 +- .../manager/impl/RedisApiManagerImpl.java | 10 +- .../manager/impl/RedisIsvManagerImpl.java | 10 +- .../manager/impl/RedisSecretManager.java | 4 +- .../service/validate/AbstractSigner.java | 10 +- .../service/validate/ApiEncrypter.java | 8 +- .../service/validate/ApiValidator.java | 39 +-- .../gateway}/service/validate/Encrypter.java | 2 +- .../gateway}/service/validate/SignConfig.java | 4 +- .../service/validate/SignEncipher.java | 2 +- .../service/validate/SignEncipherMD5.java | 2 +- .../sop/gateway}/service/validate/Signer.java | 4 +- .../gateway}/service/validate/Validator.java | 6 +- .../validate/alipay/AlipayConstants.java | 2 +- .../validate/alipay/AlipaySignature.java | 56 ++-- .../service/validate/alipay/AlipaySigner.java | 44 +-- .../service/validate/alipay/StreamUtil.java | 2 +- .../service/validate/alipay/StringUtils.java | 2 +- .../com/gitee/sop/gateway}/util/AESUtil.java | 2 +- .../gitee/sop/gateway}/util/ClassUtil.java | 2 +- .../com/gitee/sop/gateway}/util/CopyUtil.java | 2 +- .../com/gitee/sop/gateway}/util/DateUtil.java | 2 +- .../com/gitee/sop/gateway}/util/JsonUtil.java | 2 +- .../com/gitee/sop/gateway}/util/KeyStore.java | 2 +- .../gitee/sop/gateway}/util/RSANewUtil.java | 2 +- .../com/gitee/sop/gateway}/util/RSAUtil.java | 2 +- .../gitee/sop/gateway}/util/RequestUtil.java | 9 +- .../gitee/sop/gateway}/util/ResponseUtil.java | 10 +- .../main/resources/application-dev.properties | 20 +- .../resources/application-test.properties | 6 +- .../src/main/resources/application.properties | 90 +++++- .../resources/i18n/open/error_en.properties | 0 .../i18n/open/error_zh_CN.properties | 0 .../src/main/resources/i18n/readme.md | 0 .../main/resources/mybatis/mybatisConfig.xml | 0 {sop-gateway => sop-gateway_old}/.gitignore | 0 sop-gateway_old/pom.xml | 104 ++++++ {sop-gateway => sop-gateway_old}/readme.md | 0 .../sop/gateway/SopGatewayApplication.java | 18 ++ .../gitee/sop/gateway/config/MyConfig.java | 0 .../gitee/sop/gateway/entity/ConfigGray.java | 0 .../gateway/entity/ConfigGrayInstance.java | 0 .../gitee/sop/gateway/entity/ConfigLimit.java | 0 .../sop/gateway/entity/ConfigRouteBase.java | 0 .../gateway/entity/ConfigServiceRoute.java | 0 .../sop/gateway/entity/IsvDetailDTO.java | 0 .../com/gitee/sop/gateway/entity/IsvInfo.java | 0 .../gitee/sop/gateway/entity/MonitorInfo.java | 0 .../sop/gateway/entity/MonitorInfoError.java | 0 .../gitee/sop/gateway/entity/PermIsvRole.java | 0 .../gateway/entity/PermRolePermission.java | 0 .../interceptor/MonitorRouteInterceptor.java | 0 .../MonitorRouteInterceptorService.java | 0 .../interceptor/MyRouteInterceptor.java | 0 .../sop/gateway/manager/DbEnvGrayManager.java | 0 .../gateway/manager/DbIPBlacklistManager.java | 0 .../sop/gateway/manager/DbIsvManager.java | 0 .../manager/DbIsvRoutePermissionManager.java | 0 .../gateway/manager/DbLimitConfigManager.java | 0 .../gateway/manager/DbMonitorInfoManager.java | 0 .../gateway/manager/DbRouteConfigManager.java | 0 .../gateway/manager/DbRoutesProcessor.java | 0 .../mapper/ConfigGrayInstanceMapper.java | 0 .../sop/gateway/mapper/ConfigGrayMapper.java | 0 .../sop/gateway/mapper/ConfigLimitMapper.java | 0 .../gateway/mapper/ConfigRouteBaseMapper.java | 0 .../sop/gateway/mapper/ConfigRouteMapper.java | 0 .../mapper/ConfigServiceRouteMapper.java | 0 .../sop/gateway/mapper/IPBlacklistMapper.java | 0 .../sop/gateway/mapper/IsvInfoMapper.java | 0 .../mapper/MonitorInfoErrorMapper.java | 0 .../sop/gateway/mapper/MonitorInfoMapper.java | 0 .../sop/gateway/mapper/PermIsvRoleMapper.java | 0 .../mapper/PermRolePermissionMapper.java | 0 .../sop/gateway/mapper/SystemLockMapper.java | 0 .../resources/META-INF/gateway.properties | 0 .../main/resources/META-INF/spring.factories | 0 .../main/resources/application-dev.properties | 18 ++ .../src/main/resources/application.properties | 1 + .../mybatis/mapper/MonitorInfoErrorMapper.xml | 0 .../mybatis/mapper/MonitorInfoMapper.xml | 0 .../com/gitee/sop/gateway/ExcludeTest.java | 0 .../com/gitee/sop/gateway/RoundRobinTest.java | 0 .../gateway/SopGatewayApplicationTests.java | 0 .../com/gitee/sop/gateway/UrlPatternTest.java | 0 sop-index/pom.xml | 278 ---------------- .../gitee/sop/index/SopIndexApplication.java | 15 - .../com/gitee/sop/index/config/ApiConfig.java | 37 --- .../sop/index/config/RequestParamConfig.java | 38 --- .../main/resources/application-dev.properties | 8 - .../src/main/resources/application.properties | 89 ----- .../gitee/sop/test/AlipayClientPostTest.java | 1 - 193 files changed, 2435 insertions(+), 1008 deletions(-) create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java rename sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/{ => enums}/ConfigKeyEnum.java (88%) create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/dto/IsvKeysDTO.java create mode 100644 sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java create mode 100644 sop-admin/sop-admin-frontend/src/api/isvList.ts create mode 100644 sop-admin/sop-admin-frontend/src/api/serveApi.ts delete mode 100644 sop-admin/sop-admin-frontend/src/api/service/api.ts create mode 100644 sop-admin/sop-admin-frontend/src/api/sysAdminUser.ts create mode 100644 sop-admin/sop-admin-frontend/src/model/enums/index.ts create mode 100644 sop-admin/sop-admin-frontend/src/views/admin/user/index.ts create mode 100644 sop-admin/sop-admin-frontend/src/views/admin/user/index.vue create mode 100644 sop-admin/sop-admin-frontend/src/views/isv/list/index.ts create mode 100644 sop-admin/sop-admin-frontend/src/views/isv/list/index.vue create mode 100644 sop-admin/sop-admin-frontend/src/views/isv/list/showKeys.ts create mode 100644 sop-common/src/main/java/com/gitee/sop/common/bean/SpringContext.java rename {sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common => sop-common/src/main/java/com/gitee/sop/common/enums}/StatusEnum.java (84%) rename {sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common => sop-common/src/main/java/com/gitee/sop/common/req}/IdParam.java (81%) create mode 100644 sop-common/src/main/java/com/gitee/sop/common/req/StatusUpdateParam.java rename {sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common => sop-common/src/main/java/com/gitee/sop/common/resp}/Result.java (95%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/common/ApiInfoDTO.java (96%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/common/AttachmentNames.java (95%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/common/ParamInfoDTO.java (78%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/common/RouteContext.java (70%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/common/SopConstants.java (88%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/common/StatusEnum.java (77%) create mode 100644 sop-gateway/src/main/java/com/gitee/sop/gateway/config/ApiConfig.java rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/config/CustomConfig.java (81%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/config/IndexConfig.java (50%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/controller/IndexController.java (86%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/dao/entity/ApiInfo.java (89%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/dao/entity/IsvInfo.java (94%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/dao/entity/IsvKeys.java (96%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/dao/mapper/ApiInfoMapper.java (80%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/dao/mapper/IsvInfoMapper.java (73%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/dao/mapper/IsvKeysMapper.java (73%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/exception/ApiException.java (88%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/exception/ControllerGlobalExceptionHandler.java (95%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/exception/ExceptionExecutor.java (50%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/exception/SignException.java (83%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/exception/impl/ExceptionExecutorImpl.java (86%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/message/ErrorEnum.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/message/ErrorFactory.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/message/ErrorImpl.java (92%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/message/ErrorMeta.java (94%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/message/IError.java (95%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/request/ApiRequest.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/request/ApiRequestContext.java (92%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/request/ApiRequestContextFactory.java (90%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/request/ApiUploadContext.java (96%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/request/RequestFormatEnum.java (93%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/request/UploadContext.java (94%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/response/ApiResponse.java (92%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/GenericServiceInvoker.java (98%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/ParamExecutor.java (81%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/ParamExecutorImpl.java (70%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/RouteService.java (63%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/RouteServiceImpl.java (91%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/dubbo/ApiRegisterServiceImpl.java (75%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/dubbo/IsvServiceImpl.java (83%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/interceptor/RouteInterceptor.java (88%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/interceptor/RouteInterceptorOrders.java (71%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/interceptor/internal/ResultRouteInterceptor.java (88%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/ApiManager.java (85%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/IpBlacklistManager.java (72%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/IsvApiPermissionManager.java (77%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/IsvManager.java (76%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/SecretManager.java (85%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/dto/IsvDTO.java (72%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/IpBlacklistManagerImpl.java (66%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/IsvApiPermissionManagerImpl.java (69%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/LocalApiManagerImpl.java (75%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/LocalIsvManagerImpl.java (73%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/LocalSecretManagerImpl.java (83%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/RedisApiManagerImpl.java (88%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/RedisIsvManagerImpl.java (86%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/manager/impl/RedisSecretManager.java (93%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/AbstractSigner.java (83%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/ApiEncrypter.java (90%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/ApiValidator.java (90%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/Encrypter.java (97%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/SignConfig.java (89%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/SignEncipher.java (84%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/SignEncipherMD5.java (88%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/Signer.java (75%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/Validator.java (64%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/alipay/AlipayConstants.java (98%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/alipay/AlipaySignature.java (92%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/alipay/AlipaySigner.java (61%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/alipay/StreamUtil.java (98%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/service/validate/alipay/StringUtils.java (98%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/AESUtil.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/ClassUtil.java (97%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/CopyUtil.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/DateUtil.java (89%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/JsonUtil.java (94%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/KeyStore.java (92%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/RSANewUtil.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/RSAUtil.java (99%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/RequestUtil.java (97%) rename {sop-index/src/main/java/com/gitee/sop/index => sop-gateway/src/main/java/com/gitee/sop/gateway}/util/ResponseUtil.java (88%) rename {sop-index => sop-gateway}/src/main/resources/application-test.properties (80%) rename {sop-index => sop-gateway}/src/main/resources/i18n/open/error_en.properties (100%) rename {sop-index => sop-gateway}/src/main/resources/i18n/open/error_zh_CN.properties (100%) rename {sop-index => sop-gateway}/src/main/resources/i18n/readme.md (100%) rename {sop-index => sop-gateway}/src/main/resources/mybatis/mybatisConfig.xml (100%) rename {sop-gateway => sop-gateway_old}/.gitignore (100%) create mode 100644 sop-gateway_old/pom.xml rename {sop-gateway => sop-gateway_old}/readme.md (100%) create mode 100644 sop-gateway_old/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/config/MyConfig.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/ConfigGray.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/ConfigGrayInstance.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/ConfigLimit.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/ConfigRouteBase.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/ConfigServiceRoute.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/IsvDetailDTO.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/IsvInfo.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/MonitorInfo.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/MonitorInfoError.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/PermIsvRole.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/entity/PermRolePermission.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptor.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptorService.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/interceptor/MyRouteInterceptor.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbEnvGrayManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbIPBlacklistManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbIsvManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbIsvRoutePermissionManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbLimitConfigManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbMonitorInfoManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbRouteConfigManager.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/manager/DbRoutesProcessor.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayInstanceMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/ConfigLimitMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteBaseMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/ConfigServiceRouteMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/IPBlacklistMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/IsvInfoMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoErrorMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/PermIsvRoleMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/PermRolePermissionMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/java/com/gitee/sop/gateway/mapper/SystemLockMapper.java (100%) rename {sop-gateway => sop-gateway_old}/src/main/resources/META-INF/gateway.properties (100%) rename {sop-gateway => sop-gateway_old}/src/main/resources/META-INF/spring.factories (100%) create mode 100644 sop-gateway_old/src/main/resources/application-dev.properties create mode 100644 sop-gateway_old/src/main/resources/application.properties rename {sop-gateway => sop-gateway_old}/src/main/resources/mybatis/mapper/MonitorInfoErrorMapper.xml (100%) rename {sop-gateway => sop-gateway_old}/src/main/resources/mybatis/mapper/MonitorInfoMapper.xml (100%) rename {sop-gateway => sop-gateway_old}/src/test/java/com/gitee/sop/gateway/ExcludeTest.java (100%) rename {sop-gateway => sop-gateway_old}/src/test/java/com/gitee/sop/gateway/RoundRobinTest.java (100%) rename {sop-gateway => sop-gateway_old}/src/test/java/com/gitee/sop/gateway/SopGatewayApplicationTests.java (100%) rename {sop-gateway => sop-gateway_old}/src/test/java/com/gitee/sop/gateway/UrlPatternTest.java (100%) delete mode 100644 sop-index/pom.xml delete mode 100644 sop-index/src/main/java/com/gitee/sop/index/SopIndexApplication.java delete mode 100644 sop-index/src/main/java/com/gitee/sop/index/config/ApiConfig.java delete mode 100644 sop-index/src/main/java/com/gitee/sop/index/config/RequestParamConfig.java delete mode 100644 sop-index/src/main/resources/application-dev.properties delete mode 100644 sop-index/src/main/resources/application.properties diff --git a/pom.xml b/pom.xml index 2053dabe..aae42024 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,7 @@ doc - + sop-common sop-example sop-admin @@ -25,7 +25,7 @@ sop-test sop-sdk - sop-index + sop-gateway sop-registry sop-support diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java new file mode 100644 index 00000000..05cd9976 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/IdDTO.java @@ -0,0 +1,14 @@ +package com.gitee.sop.adminbackend.common.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author 六如 + */ +@Data +public class IdDTO { + @NotNull(message = "id不能为空") + private Long id; +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java new file mode 100644 index 00000000..33d3e93b --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/dto/StatusUpdateDTO.java @@ -0,0 +1,16 @@ +package com.gitee.sop.adminbackend.common.dto; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author 六如 + */ +@Data +public class StatusUpdateDTO extends IdDTO { + + @NotNull(message = "状态不能为空") + private Integer status; + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/ConfigKeyEnum.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java similarity index 88% rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/ConfigKeyEnum.java rename to sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java index 482d0dcd..80e3eef2 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/ConfigKeyEnum.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/ConfigKeyEnum.java @@ -1,4 +1,4 @@ -package com.gitee.sop.adminbackend.common; +package com.gitee.sop.adminbackend.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java new file mode 100644 index 00000000..a6c64c24 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/enums/StatusEnum.java @@ -0,0 +1,33 @@ +package com.gitee.sop.adminbackend.common.enums; + +import lombok.Getter; + +import java.util.Objects; + +/** + * @author 六如 + */ +@Getter +public enum StatusEnum { + DISABLED((byte)2), + ENABLE((byte)1), + SET_PWD((byte)3), + ; + + private final int status; + + public static StatusEnum of(Integer value) { + for (StatusEnum statusEnum : StatusEnum.values()) { + if (Objects.equals(statusEnum.status, value)) { + return statusEnum; + } + } + return DISABLED; + } + + StatusEnum(byte style) { + this.status = style; + } + + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java new file mode 100644 index 00000000..51bd2732 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/IdParam.java @@ -0,0 +1,14 @@ +package com.gitee.sop.adminbackend.common.req; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author 六如 + */ +@Data +public class IdParam { + @NotNull(message = "id不能为空") + private Long id; +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java new file mode 100644 index 00000000..3ff967fd --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/req/StatusUpdateParam.java @@ -0,0 +1,16 @@ +package com.gitee.sop.adminbackend.common.req; + +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author 六如 + */ +@Data +public class StatusUpdateParam extends IdParam { + + @NotNull(message = "状态不能为空") + private Integer status; + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java new file mode 100644 index 00000000..58fb9169 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/resp/Result.java @@ -0,0 +1,46 @@ +package com.gitee.sop.adminbackend.common.resp; + +import lombok.Data; + +import java.util.Objects; + +/** + * @author thc + */ +@Data +public class Result { + + private static final Result RESULT = new Result<>(); + + private String code = "0"; + private T data; + private String msg = "success"; + + public static Result ok() { + return RESULT; + } + + public static Result ok(E obj) { + Result result = new Result<>(); + result.setData(obj); + return result; + } + + public static Result err(String msg) { + Result result = new Result<>(); + result.setCode("1"); + result.setMsg(msg); + return result; + } + + public static Result err(String code, String msg) { + Result result = new Result<>(); + result.setCode(code); + result.setMsg(msg); + return result; + } + + public boolean getSuccess() { + return Objects.equals("0", code); + } +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/Configs.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/Configs.java index 6679aef1..ce95baa9 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/Configs.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/config/Configs.java @@ -1,6 +1,6 @@ package com.gitee.sop.adminbackend.config; -import com.gitee.sop.adminbackend.common.ConfigKeyEnum; +import com.gitee.sop.adminbackend.common.enums.ConfigKeyEnum; import com.gitee.sop.adminbackend.common.IConfig; import com.gitee.sop.adminbackend.common.SpringContext; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java index 06e3b0cd..13956ca7 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/ExceptionHandlerController.java @@ -1,6 +1,6 @@ package com.gitee.sop.adminbackend.controller; -import com.gitee.sop.adminbackend.common.Result; +import com.gitee.sop.adminbackend.common.resp.Result; import com.gitee.sop.adminbackend.common.exception.BizException; import com.gitee.sop.adminbackend.common.exception.ErrorCode; import com.gitee.sop.adminbackend.common.exception.ExceptionCode; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java new file mode 100644 index 00000000..6143fe97 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/IsvInfoController.java @@ -0,0 +1,91 @@ +package com.gitee.sop.adminbackend.controller.isv; + +import com.gitee.fastmybatis.core.PageInfo; +import com.gitee.fastmybatis.core.query.Query; +import com.gitee.fastmybatis.core.query.param.PageParam; +import com.gitee.sop.adminbackend.common.req.IdParam; +import com.gitee.sop.adminbackend.common.resp.Result; +import com.gitee.sop.adminbackend.controller.isv.dto.IsvKeysDTO; +import com.gitee.sop.adminbackend.dao.entity.IsvInfo; +import com.gitee.sop.adminbackend.service.isv.IsvInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +/** + * @author 六如 + */ +@RestController +@RequestMapping("isv") +public class IsvInfoController { + + @Autowired + private IsvInfoService isvInfoService; + + /** + * 分页查询 + * + * @param param + * @return + */ + @GetMapping("/page") + public Result> page(PageParam param) { + Query query = param.toQuery(); + PageInfo pageInfo = isvInfoService.page(query); + return Result.ok(pageInfo); + } + + /** + * 获取秘钥信息 + * + * @param appId + * @return + */ + @GetMapping("/getKeys") + public Result getKeys(String appId) { + IsvKeysDTO isvKeysDTO = isvInfoService.getKeys(appId); + return Result.ok(isvKeysDTO); + } + + /** + * 新增记录 + * + * @param user + * @return 返回添加后的主键值 + */ + @PostMapping("/add") + public Result add(@Validated @RequestBody IsvInfo user) { + isvInfoService.save(user); + // 返回添加后的主键值 + return Result.ok(user.getId()); + } + + /** + * 修改记录 + * + * @param user 表单数据 + * @return 返回影响行数 + */ + @PostMapping("/update") + public Result update(@Validated @RequestBody IsvInfo user) { + return Result.ok(isvInfoService.update(user)); + } + + /** + * 删除记录 + * + * @param param 参数 + * @return 返回影响行数 + */ + @PostMapping("/delete") + public Result delete(@Validated @RequestBody IdParam param) { + return Result.ok(isvInfoService.deleteById(param.getId())); + } + + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/dto/IsvKeysDTO.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/dto/IsvKeysDTO.java new file mode 100644 index 00000000..5777a427 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/isv/dto/IsvKeysDTO.java @@ -0,0 +1,31 @@ +package com.gitee.sop.adminbackend.controller.isv.dto; + +import lombok.Data; + +/** + * @author 六如 + */ +@Data +public class IsvKeysDTO { + + /** + * 开发者生成的公钥, 数据库字段:public_key_isv + */ + private String publicKeyIsv; + + /** + * 开发者生成的私钥(交给开发者), 数据库字段:private_key_isv + */ + private String privateKeyIsv; + + /** + * 平台生成的公钥(交给开发者), 数据库字段:public_key_platform + */ + private String publicKeyPlatform; + + /** + * 平台生成的私钥, 数据库字段:private_key_platform + */ + private String privateKeyPlatform; + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java index ec23746b..58866196 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/ApiInfoController.java @@ -2,11 +2,14 @@ package com.gitee.sop.adminbackend.controller.serve; import com.gitee.fastmybatis.core.PageInfo; import com.gitee.fastmybatis.core.query.Query; -import com.gitee.sop.adminbackend.common.IdParam; -import com.gitee.sop.adminbackend.common.Result; +import com.gitee.sop.adminbackend.common.dto.StatusUpdateDTO; +import com.gitee.sop.adminbackend.common.req.IdParam; +import com.gitee.sop.adminbackend.common.req.StatusUpdateParam; +import com.gitee.sop.adminbackend.common.resp.Result; import com.gitee.sop.adminbackend.controller.serve.req.ApiInfoParam; import com.gitee.sop.adminbackend.dao.entity.ApiInfo; import com.gitee.sop.adminbackend.service.serve.ApiInfoService; +import com.gitee.sop.adminbackend.util.CopyUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; @@ -66,6 +69,18 @@ public class ApiInfoController { return Result.ok(apiInfoService.update(user)); } + /** + * 修改状态 + * + * @param param 表单数据 + * @return 返回影响行数 + */ + @PostMapping("/updateStatus") + public Result updateStatus(@Validated @RequestBody StatusUpdateParam param) { + StatusUpdateDTO statusUpdateDTO = CopyUtil.copyBean(param, StatusUpdateDTO::new); + return Result.ok(apiInfoService.updateStatus(statusUpdateDTO)); + } + /** * 删除记录 * diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/req/ApiInfoParam.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/req/ApiInfoParam.java index 6aebc095..7305b90d 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/req/ApiInfoParam.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/serve/req/ApiInfoParam.java @@ -14,5 +14,7 @@ public class ApiInfoParam extends PageParam { @Condition(operator = Operator.like) private String apiName; + @Condition + private Integer status; } diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java index 1212e29d..f324409d 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/LoginController.java @@ -1,6 +1,6 @@ package com.gitee.sop.adminbackend.controller.sys; -import com.gitee.sop.adminbackend.common.Result; +import com.gitee.sop.adminbackend.common.resp.Result; import com.gitee.sop.adminbackend.controller.sys.req.LoginParam; import com.gitee.sop.adminbackend.controller.sys.resp.LoginResultVO; import com.gitee.sop.adminbackend.service.sys.login.LoginService; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java index b0da1aeb..99a0a831 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/controller/sys/SysAdminUserController.java @@ -3,14 +3,15 @@ package com.gitee.sop.adminbackend.controller.sys; import com.gitee.fastmybatis.core.PageInfo; import com.gitee.fastmybatis.core.query.Query; import com.gitee.fastmybatis.core.query.param.PageParam; -import com.gitee.sop.adminbackend.common.Result; +import com.gitee.sop.adminbackend.common.req.IdParam; +import com.gitee.sop.adminbackend.common.resp.Result; import com.gitee.sop.adminbackend.dao.entity.SysAdminUser; import com.gitee.sop.adminbackend.service.sys.SysAdminUserService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -28,8 +29,8 @@ public class SysAdminUserController { /** * 分页查询 * - * @param param - * @return + * @param param 查询参数 + * @return 返回分页结果 */ @GetMapping("/page") public Result> page(PageParam param) { @@ -41,36 +42,36 @@ public class SysAdminUserController { /** * 新增记录 * - * @param user - * @return + * @param sysAdminUser 表单参数 + * @return 返回添加后的主键值 */ - @PostMapping("/save") - public Result save(SysAdminUser user) { - sysAdminUserService.save(user); + @PostMapping("/add") + public Result add(@Validated @RequestBody SysAdminUser sysAdminUser) { + sysAdminUserService.save(sysAdminUser); // 返回添加后的主键值 - return Result.ok(user.getId()); + return Result.ok(sysAdminUser.getId()); } /** * 修改记录 * - * @param user 表单数据 - * @return + * @param sysAdminUser 表单数据 + * @return 返回影响行数 */ - @PutMapping("/update") - public Result update(SysAdminUser user) { - return Result.ok(sysAdminUserService.update(user)); + @PostMapping("/update") + public Result update(@Validated @RequestBody SysAdminUser sysAdminUser) { + return Result.ok(sysAdminUserService.update(sysAdminUser)); } /** * 删除记录 * - * @param id 主键id - * @return + * @param param 参数 + * @return 返回影响行数 */ - @DeleteMapping("/delete") - public Result delete(Long id) { - return Result.ok(sysAdminUserService.deleteById(id)); + @PostMapping("/delete") + public Result delete(@Validated @RequestBody IdParam param) { + return Result.ok(sysAdminUserService.deleteById(param.getId())); } } diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java index 60cbcc38..a654403c 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/dao/entity/ApiInfo.java @@ -71,6 +71,11 @@ public class ApiInfo { */ private Integer isNeedToken; + /** + * 注册来源,1-系统注册,2-手动注册 + */ + private Integer regSource; + /** * 1启用,2禁用 */ diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java new file mode 100644 index 00000000..d3538464 --- /dev/null +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/isv/IsvInfoService.java @@ -0,0 +1,29 @@ +package com.gitee.sop.adminbackend.service.isv; + +import com.gitee.fastmybatis.core.support.LambdaService; +import com.gitee.sop.adminbackend.controller.isv.dto.IsvKeysDTO; +import com.gitee.sop.adminbackend.dao.entity.IsvInfo; +import com.gitee.sop.adminbackend.dao.entity.IsvKeys; +import com.gitee.sop.adminbackend.dao.mapper.IsvInfoMapper; +import com.gitee.sop.adminbackend.dao.mapper.IsvKeysMapper; +import com.gitee.sop.adminbackend.util.CopyUtil; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + + +/** + * @author 六如 + */ +@Service +public class IsvInfoService implements LambdaService { + + @Resource + private IsvKeysMapper isvKeysMapper; + + public IsvKeysDTO getKeys(String appId) { + IsvKeys isvKeys = isvKeysMapper.get(IsvKeys::getAppId, appId); + return CopyUtil.copyBean(isvKeys, IsvKeysDTO::new); + } + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java index fdbb9b24..2f6529bf 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/serve/ApiInfoService.java @@ -1,6 +1,7 @@ package com.gitee.sop.adminbackend.service.serve; import com.gitee.fastmybatis.core.support.LambdaService; +import com.gitee.sop.adminbackend.common.dto.StatusUpdateDTO; import com.gitee.sop.adminbackend.dao.entity.ApiInfo; import com.gitee.sop.adminbackend.dao.mapper.ApiInfoMapper; import org.springframework.stereotype.Service; @@ -12,4 +13,11 @@ import org.springframework.stereotype.Service; @Service public class ApiInfoService implements LambdaService { + public int updateStatus(StatusUpdateDTO statusUpdateDTO) { + return this.query() + .eq(ApiInfo::getId, statusUpdateDTO.getId()) + .set(ApiInfo::getStatus, statusUpdateDTO.getStatus()) + .update(); + } + } diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java index 03dfcc66..d354ee86 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/SysAdminUserService.java @@ -1,8 +1,7 @@ package com.gitee.sop.adminbackend.service.sys; import com.gitee.fastmybatis.core.support.LambdaService; -import com.gitee.sop.adminbackend.common.ConfigKeyEnum; -import com.gitee.sop.adminbackend.config.AdminConfig; +import com.gitee.sop.adminbackend.common.enums.ConfigKeyEnum; import com.gitee.sop.adminbackend.config.Configs; import com.gitee.sop.adminbackend.dao.entity.SysAdminUser; import com.gitee.sop.adminbackend.dao.mapper.SysAdminUserMapper; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java index 28712b32..fc5d914a 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/UpgradeService.java @@ -1,6 +1,6 @@ package com.gitee.sop.adminbackend.service.sys; -import com.gitee.sop.adminbackend.common.ConfigKeyEnum; +import com.gitee.sop.adminbackend.common.enums.ConfigKeyEnum; import com.gitee.sop.adminbackend.dao.entity.SysAdminUser; import com.gitee.sop.adminbackend.dao.mapper.UpgradeMapper; import com.gitee.sop.adminbackend.service.sys.login.enums.RegTypeEnum; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java index 349aacdf..98a25eb9 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/LoginService.java @@ -1,7 +1,7 @@ package com.gitee.sop.adminbackend.service.sys.login; import com.alibaba.nacos.shaded.com.google.common.collect.Sets; -import com.gitee.sop.adminbackend.common.ConfigKeyEnum; +import com.gitee.sop.adminbackend.common.enums.ConfigKeyEnum; import com.gitee.sop.adminbackend.common.exception.BizException; import com.gitee.sop.adminbackend.config.Configs; import com.gitee.sop.adminbackend.dao.entity.SysAdminUser; @@ -10,7 +10,7 @@ import com.gitee.sop.adminbackend.service.sys.login.dto.LoginDTO; import com.gitee.sop.adminbackend.service.sys.login.dto.LoginForm; import com.gitee.sop.adminbackend.service.sys.login.dto.LoginResult; import com.gitee.sop.adminbackend.service.sys.login.dto.LoginUser; -import com.gitee.sop.adminbackend.common.StatusEnum; +import com.gitee.sop.adminbackend.common.enums.StatusEnum; import com.gitee.sop.adminbackend.service.sys.login.enums.RegTypeEnum; import com.gitee.sop.adminbackend.util.CopyUtil; import com.gitee.sop.adminbackend.util.GenerateUtil; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java index c9ee0b77..d25bb834 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java +++ b/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/service/sys/login/impl/DefaultUserCacheManager.java @@ -5,7 +5,7 @@ import com.gitee.sop.adminbackend.dao.entity.SysAdminUser; import com.gitee.sop.adminbackend.service.sys.SysAdminUserService; import com.gitee.sop.adminbackend.service.sys.login.UserCacheManager; import com.gitee.sop.adminbackend.service.sys.login.dto.LoginUser; -import com.gitee.sop.adminbackend.common.StatusEnum; +import com.gitee.sop.adminbackend.common.enums.StatusEnum; import com.gitee.sop.adminbackend.util.CopyUtil; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; diff --git a/sop-admin/sop-admin-frontend/mock/asyncRoutes.ts b/sop-admin/sop-admin-frontend/mock/asyncRoutes.ts index fb894860..7ed613c8 100644 --- a/sop-admin/sop-admin-frontend/mock/asyncRoutes.ts +++ b/sop-admin/sop-admin-frontend/mock/asyncRoutes.ts @@ -1,27 +1,62 @@ // 模拟后端动态生成路由 import { defineFakeRoute } from "vite-plugin-fake-server/client"; -/** - * 服务管理 - */ -const apiRouter = { - path: "/serve", - meta: { - title: "服务管理", - icon: "ri:server-line", - rank: 10 - }, - children: [ - { - path: "/serve/api/index", - name: "ApiManage", - meta: { - title: "接口管理", - roles: ["admin"] +const apiRouters = [ + { + path: "/serve", + meta: { + title: "服务管理", + icon: "ri:server-line", + rank: 10 + }, + children: [ + { + path: "/serve/api/index", + name: "ApiManage", + meta: { + title: "接口管理", + roles: ["admin"] + } } - } - ] -}; + ] + }, + { + path: "/isv", + meta: { + title: "ISV管理", + icon: "ri:shield-user-line", + rank: 10 + }, + children: [ + { + path: "/isv/list/index", + name: "IsvManage", + meta: { + title: "ISV列表", + roles: ["admin"] + } + } + ] + }, + { + path: "/sys", + meta: { + title: "系统管理", + icon: "ri:settings-2-line", + rank: 10 + }, + children: [ + { + path: "/admin/user/index", + name: "AdminUser", + meta: { + title: "用户管理", + roles: ["admin"] + } + } + ] + } +]; export default defineFakeRoute([ { @@ -30,7 +65,7 @@ export default defineFakeRoute([ response: () => { return { success: true, - data: [apiRouter] + data: apiRouters }; } } diff --git a/sop-admin/sop-admin-frontend/src/api/isvList.ts b/sop-admin/sop-admin-frontend/src/api/isvList.ts new file mode 100644 index 00000000..7c4f0d52 --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/api/isvList.ts @@ -0,0 +1,52 @@ +import { createUrl, http } from "@/utils/http"; +import type { PageResult, Result } from "@/model"; + +// 后端请求接口 +const apiUrl: any = createUrl({ + page: "/isv/page", + add: "/isv/add", + update: "/isv/update", + del: "/isv/delete", + getKeys: "/isv/getKeys" +}); + +/** + * 接口管理 + */ +export const api: any = { + /** + * 分页查询 + * @param params 查询参数 + */ + page(params: object): Promise { + return http.get(apiUrl.page, { params }); + }, + /** + * 新增 + * @param data 表单内容 + */ + add(data: object) { + return http.post(apiUrl.add, { data }); + }, + /** + * 修改 + * @param data 表单内容 + */ + update(data: object) { + return http.post(apiUrl.update, { data }); + }, + /** + * 删除 + * @param data 表单内容 + */ + del(data: object) { + return http.post(apiUrl.del, { data }); + }, + /** + * 查看秘钥 + * @param params + */ + viewKeys(params: object) { + return http.get(apiUrl.getKeys, { params }); + } +}; diff --git a/sop-admin/sop-admin-frontend/src/api/routes.ts b/sop-admin/sop-admin-frontend/src/api/routes.ts index 915ca377..501ea3c7 100644 --- a/sop-admin/sop-admin-frontend/src/api/routes.ts +++ b/sop-admin/sop-admin-frontend/src/api/routes.ts @@ -6,5 +6,5 @@ type Result = { }; export const getAsyncRoutes = () => { - return http.request("get", "/mock/get-async-routes"); + return http.request("get", "/get-async-routes"); }; diff --git a/sop-admin/sop-admin-frontend/src/api/serveApi.ts b/sop-admin/sop-admin-frontend/src/api/serveApi.ts new file mode 100644 index 00000000..e8d9d28c --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/api/serveApi.ts @@ -0,0 +1,52 @@ +import { createUrl, http } from "@/utils/http"; +import type { PageResult, Result } from "@/model"; + +// 后端请求接口 +const apiUrl: any = createUrl({ + page: "/serve/api/page", + add: "/serve/api/add", + update: "/serve/api/update", + del: "/serve/api/delete", + updateStatus: "/serve/api/updateStatus" +}); + +/** + * 接口管理 + */ +export const api: any = { + /** + * 分页查询 + * @param params 查询参数 + */ + page(params: object): Promise { + return http.get(apiUrl.page, { params }); + }, + /** + * 新增 + * @param data 表单内容 + */ + add(data: object) { + return http.post(apiUrl.add, { data }); + }, + /** + * 修改 + * @param data 表单内容 + */ + update(data: object) { + return http.post(apiUrl.update, { data }); + }, + /** + * 删除 + * @param data 表单内容 + */ + del(data: object) { + return http.post(apiUrl.del, { data }); + }, + /** + * 修改状态 + * @param data 表单内容 + */ + updateStatus(data: object) { + return http.post(apiUrl.updateStatus, { data }); + } +}; diff --git a/sop-admin/sop-admin-frontend/src/api/service/api.ts b/sop-admin/sop-admin-frontend/src/api/service/api.ts deleted file mode 100644 index e69de29b..00000000 diff --git a/sop-admin/sop-admin-frontend/src/api/sysAdminUser.ts b/sop-admin/sop-admin-frontend/src/api/sysAdminUser.ts new file mode 100644 index 00000000..6d91f314 --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/api/sysAdminUser.ts @@ -0,0 +1,44 @@ +import { createUrl, http } from "@/utils/http"; +import type { PageResult, Result } from "@/model"; + +// 后端请求接口 +const apiUrl: any = createUrl({ + page: "/sys/adminuser/page", + add: "/sys/adminuser/add", + update: "/sys/adminuser/update", + del: "/sys/adminuser/delete" +}); + +/** + * 接口管理 + */ +export const api: any = { + /** + * 分页查询 + * @param params 查询参数 + */ + page(params: object): Promise { + return http.get(apiUrl.page, { params }); + }, + /** + * 新增 + * @param data 表单内容 + */ + add(data: object) { + return http.post(apiUrl.add, { data }); + }, + /** + * 修改 + * @param data 表单内容 + */ + update(data: object) { + return http.post(apiUrl.update, { data }); + }, + /** + * 删除 + * @param data 表单内容 + */ + del(data: object) { + return http.post(apiUrl.del, { data }); + } +}; diff --git a/sop-admin/sop-admin-frontend/src/api/user.ts b/sop-admin/sop-admin-frontend/src/api/user.ts index 7ba6d46e..5479e14c 100644 --- a/sop-admin/sop-admin-frontend/src/api/user.ts +++ b/sop-admin/sop-admin-frontend/src/api/user.ts @@ -1,4 +1,4 @@ -import { http } from "@/utils/http"; +import { baseUrl, http } from "@/utils/http"; export type UserResult = { success: boolean; @@ -34,12 +34,19 @@ export type RefreshTokenResult = { }; }; +const apiUrl = { + login: baseUrl("/sys/login"), + refreshToken: baseUrl("/sys/refresh-token") +}; + /** 登录 */ export const getLogin = (data?: object) => { - return http.request("post", "/sys/login", { data }); + return http.request("post", apiUrl.login, { data }); }; /** 刷新`token` */ export const refreshTokenApi = (data?: object) => { - return http.request("post", "/refresh-token", { data }); + return http.request("post", apiUrl.refreshToken, { + data + }); }; diff --git a/sop-admin/sop-admin-frontend/src/model/enums/index.ts b/sop-admin/sop-admin-frontend/src/model/enums/index.ts new file mode 100644 index 00000000..4f876df6 --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/model/enums/index.ts @@ -0,0 +1,4 @@ +export enum StatusEnum { + ENABLE = 1, + DISABLE = 2 +} diff --git a/sop-admin/sop-admin-frontend/src/model/index.ts b/sop-admin/sop-admin-frontend/src/model/index.ts index 6f5d8806..401b0326 100644 --- a/sop-admin/sop-admin-frontend/src/model/index.ts +++ b/sop-admin/sop-admin-frontend/src/model/index.ts @@ -1,6 +1,8 @@ export type Result = { success: boolean; data: object; + msg: ""; + code: ""; }; export type PageResult = { diff --git a/sop-admin/sop-admin-frontend/src/utils/http/index.ts b/sop-admin/sop-admin-frontend/src/utils/http/index.ts index 632274a9..41d37e20 100644 --- a/sop-admin/sop-admin-frontend/src/utils/http/index.ts +++ b/sop-admin/sop-admin-frontend/src/utils/http/index.ts @@ -13,19 +13,23 @@ import { stringify } from "qs"; import NProgress from "../progress"; import { getToken, formatToken } from "@/utils/auth"; import { useUserStoreHook } from "@/store/modules/user"; - -const PREFIX_MOCK: string = "mock"; +import { ElMessage } from "element-plus"; export const baseUrl = (url: string) => { if (url.startsWith("/")) { url = url.substring(1); } - if (url.startsWith(PREFIX_MOCK)) { - return url.substring(PREFIX_MOCK.length); - } return `/api/${url}`; }; +export const createUrl = (data: object) => { + const ret = {}; + for (const dataKey in data) { + ret[dataKey] = baseUrl(data[dataKey]); + } + return ret; +}; + // 相关配置请参考:www.axios-js.com/zh-cn/docs/#axios-request-config-1 const defaultConfig: AxiosRequestConfig = { // 请求超时时间 @@ -45,6 +49,13 @@ class PureHttp { constructor() { this.httpInterceptorsRequest(); this.httpInterceptorsResponse(); + PureHttp.initConfig.beforeResponseCallback = response => { + const resp = response.data || {}; + if (resp.code && resp.code !== "0") { + console.log(resp); + ElMessage.error(resp.msg || "后台出错,请查看日志"); + } + }; } /** `token`过期后,暂存待执行的请求 */ @@ -166,7 +177,7 @@ class PureHttp { ): Promise { const config = { method, - url: baseUrl(url), + url: url, ...param, ...axiosConfig } as PureHttpRequestConfig; diff --git a/sop-admin/sop-admin-frontend/src/views/admin/user/index.ts b/sop-admin/sop-admin-frontend/src/views/admin/user/index.ts new file mode 100644 index 00000000..35dd6478 --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/views/admin/user/index.ts @@ -0,0 +1,306 @@ +import { computed, ref } from "vue"; +import { + type ButtonsCallBackParams, + type FieldValues, + type PageInfo, + type PlusColumn, + useTable +} from "plus-pro-components"; +import { ElMessage } from "element-plus"; +import { api } from "@/api/sysAdminUser"; + +const isAdd = ref(false); + +// ========= search form ========= + +// 查询表单对象 +export const searchFormData = ref({ + id: "", + username: "", + password: "", + nickname: "", + email: "", + avatar: "", + status: "", + regType: "", + addTime: "", + updateTime: "", + pageIndex: 1, + pageSize: 10 +}); + +// 查询表单字段定义 +export const searchFormColumns: PlusColumn[] = [ + { + label: "用户名", + prop: "username" + }, + { + label: "密码", + prop: "password" + }, + { + label: "用户名", + prop: "nickname" + }, + { + label: "邮箱", + prop: "email" + }, + { + label: "头像", + prop: "avatar" + }, + { + label: "状态,1:启用,2:禁用", + prop: "status" + }, + { + label: "注册类型", + prop: "regType" + }, + { + label: "addTime", + prop: "addTime" + }, + { + label: "updateTime", + prop: "updateTime" + } +]; + +// ========= table ========= + +// 表格对象 +export const { + tableData, + total, + pageInfo, + buttons: actionButtons +} = useTable(); +// 默认每页条数,默认10 +pageInfo.value.pageSize = 10; + +// 表格字段定义 +export const tableColumns: PlusColumn[] = [ + { + label: "用户名", + prop: "username" + }, + { + label: "密码", + prop: "password" + }, + { + label: "用户名", + prop: "nickname" + }, + { + label: "邮箱", + prop: "email" + }, + { + label: "头像", + prop: "avatar" + }, + { + label: "状态,1:启用,2:禁用", + prop: "status" + }, + { + label: "注册类型", + prop: "regType" + }, + { + label: "addTime", + prop: "addTime" + }, + { + label: "updateTime", + prop: "updateTime" + } +]; +// 表格按钮定义 +actionButtons.value = [ + { + // 修改 + text: "修改", + code: "edit", + props: { + type: "primary" + }, + show: computed(() => true), + onClick(params: ButtonsCallBackParams) { + isAdd.value = false; + editFormData.value = Object.assign({}, params.row); + dlgTitle.value = "修改"; + dlgShow.value = true; + } + }, + { + // 删除 + text: "删除", + code: "delete", + props: { + type: "danger" + }, + confirm: { + options: { draggable: false } + }, + onConfirm(params: ButtonsCallBackParams) { + api.del(params).then(() => { + ElMessage({ + message: "删除成功", + type: "success" + }); + dlgShow.value = false; + search(); + }); + } + } +]; + +// ========= dialog form ========= + +// 弹窗显示 +export const dlgShow = ref(false); +export const dlgTitle = ref(""); +// 表单值 +const editFormDataGen = () => { + return { + username: "", + password: "", + nickname: "", + email: "", + avatar: "", + status: "", + regType: "", + addTime: "", + updateTime: "" + }; +}; +export const editFormData = ref(editFormDataGen()); +export const editFormRules = { + id: [{ required: true, message: "请输入id" }], + username: [{ required: true, message: "请输入用户名" }], + password: [{ required: true, message: "请输入密码" }], + nickname: [{ required: true, message: "请输入用户名" }], + email: [{ required: true, message: "请输入邮箱" }], + avatar: [{ required: true, message: "请输入头像" }], + status: [{ required: true, message: "请输入状态,1:启用,2:禁用" }], + regType: [{ required: true, message: "请输入注册类型" }], + addTime: [{ required: true, message: "请输入addTime" }], + updateTime: [{ required: true, message: "请输入updateTime" }] +}; + +// 表单内容 +export const editFormColumns: PlusColumn[] = [ + { + label: "id", + prop: "id", + valueType: "copy" + }, + { + label: "用户名", + prop: "username", + valueType: "copy" + }, + { + label: "密码", + prop: "password", + valueType: "copy" + }, + { + label: "用户名", + prop: "nickname", + valueType: "copy" + }, + { + label: "邮箱", + prop: "email", + valueType: "copy" + }, + { + label: "头像", + prop: "avatar", + valueType: "copy" + }, + { + label: "状态,1:启用,2:禁用", + prop: "status", + valueType: "copy" + }, + { + label: "注册类型", + prop: "regType", + valueType: "copy" + }, + { + label: "addTime", + prop: "addTime", + valueType: "copy" + }, + { + label: "updateTime", + prop: "updateTime", + valueType: "copy" + } +]; + +// ========= event ========= + +// 添加按钮事件 +export const handleAdd = () => { + isAdd.value = true; + editFormData.value = editFormDataGen(); + dlgTitle.value = "新增"; + dlgShow.value = true; +}; + +// 保存按钮事件,校验成功后触发 +export const handleSave = () => { + const postData = editFormData.value; + const pms = isAdd.value ? api.add(postData) : api.update(postData); + pms.then(() => { + ElMessage({ + message: "保存成功", + type: "success" + }); + dlgShow.value = false; + search(); + }); +}; + +// 点击查询按钮 +export const handleSearch = () => { + pageInfo.value.page = 1; + search(); +}; + +// 分页事件 +export const handlePaginationChange = (_pageInfo: PageInfo): void => { + pageInfo.value = _pageInfo; + search(); +}; + +// 查询 +const search = async () => { + try { + const { data } = await doSearch(); + tableData.value = data.list; + total.value = data.total; + } catch (error) {} +}; +// 请求接口 +const doSearch = async () => { + // 查询参数 + const data = searchFormData.value; + // 添加分页参数 + data.pageIndex = pageInfo.value.page; + data.pageSize = pageInfo.value.pageSize; + + return api.page(data); +}; + +// 页面加载 +search(); diff --git a/sop-admin/sop-admin-frontend/src/views/admin/user/index.vue b/sop-admin/sop-admin-frontend/src/views/admin/user/index.vue new file mode 100644 index 00000000..86fbcddb --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/views/admin/user/index.vue @@ -0,0 +1,62 @@ + + diff --git a/sop-admin/sop-admin-frontend/src/views/isv/list/index.ts b/sop-admin/sop-admin-frontend/src/views/isv/list/index.ts new file mode 100644 index 00000000..d82bdd1b --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/views/isv/list/index.ts @@ -0,0 +1,265 @@ +import { computed, ref } from "vue"; +import { + type ButtonsCallBackParams, + type FieldValues, + type PageInfo, + type PlusColumn, + useTable +} from "plus-pro-components"; +import { ElMessage } from "element-plus"; +import { StatusEnum } from "@/model/enums"; +import { api } from "@/api/isvList"; + +const isAdd = ref(false); + +// ========= search form ========= + +// 查询表单对象 +export const searchFormData = ref({ + id: "", + appId: "", + status: "", + remark: "", + pageIndex: 1, + pageSize: 10 +}); + +// 查询表单字段定义 +export const searchFormColumns: PlusColumn[] = [ + { + label: "AppID", + prop: "appId" + }, + { + label: "状态", + prop: "status", + valueType: "select", + options: [ + { + label: "启用", + value: StatusEnum.ENABLE, + color: "green" + }, + { + label: "禁用", + value: StatusEnum.DISABLE, + color: "red" + } + ] + } +]; + +// ========= table ========= + +// 表格对象 +export const { + tableData, + total, + pageInfo, + buttons: actionButtons +} = useTable(); +// 默认每页条数,默认10 +pageInfo.value.pageSize = 10; + +// 表格字段定义 +export const tableColumns: PlusColumn[] = [ + { + label: "AppID", + prop: "appId", + width: 230 + }, + { + label: "秘钥", + prop: "keys", + width: 80 + }, + { + label: "角色", + prop: "roleNames", + width: 120 + }, + { + label: "状态", + prop: "status", + width: 80, + valueType: "select", + options: [ + { + label: "启用", + value: StatusEnum.ENABLE, + color: "green" + }, + { + label: "禁用", + value: StatusEnum.DISABLE, + color: "red" + } + ] + }, + { + label: "备注", + prop: "remark" + }, + { + label: "添加时间", + prop: "addTime" + }, + { + label: "修改时间", + prop: "updateTime" + } +]; +// 表格按钮定义 +actionButtons.value = [ + { + // 修改 + text: "修改", + code: "edit", + props: { + type: "primary" + }, + show: computed(() => true), + onClick(params: ButtonsCallBackParams) { + isAdd.value = false; + editFormData.value = Object.assign({}, params.row); + dlgTitle.value = "修改"; + dlgShow.value = true; + } + }, + { + // 删除 + text: "删除", + code: "delete", + props: { + type: "danger" + }, + confirm: { + options: { draggable: false } + }, + onConfirm(params: ButtonsCallBackParams) { + api.del(params).then(() => { + ElMessage({ + message: "删除成功", + type: "success" + }); + dlgShow.value = false; + search(); + }); + } + } +]; + +// ========= dialog form ========= + +// 弹窗显示 +export const dlgShow = ref(false); +export const dlgTitle = ref(""); +// 表单值 +const editFormDataGen = () => { + return { + id: "", + appId: "", + status: "", + remark: "", + addTime: "", + updateTime: "" + }; +}; +export const editFormData = ref(editFormDataGen()); +export const editFormRules = { + id: [{ required: true, message: "请输入id" }], + appId: [{ required: true, message: "请输入appKey" }], + status: [{ required: true, message: "请输入1启用,2禁用" }] +}; + +// 表单内容 +export const editFormColumns: PlusColumn[] = [ + { + label: "id", + prop: "id", + valueType: "copy" + }, + { + label: "AppID", + prop: "appId", + valueType: "copy" + }, + { + label: "1启用,2禁用", + prop: "status", + valueType: "copy" + }, + { + label: "备注", + prop: "remark", + valueType: "copy" + }, + { + label: "addTime", + prop: "addTime", + valueType: "copy" + }, + { + label: "updateTime", + prop: "updateTime", + valueType: "copy" + } +]; + +// ========= event ========= + +// 添加按钮事件 +export const handleAdd = () => { + isAdd.value = true; + editFormData.value = editFormDataGen(); + dlgTitle.value = "新增"; + dlgShow.value = true; +}; + +// 保存按钮事件,校验成功后触发 +export const handleSave = () => { + const postData = editFormData.value; + const pms = isAdd.value ? api.add(postData) : api.update(postData); + pms.then(() => { + ElMessage({ + message: "保存成功", + type: "success" + }); + dlgShow.value = false; + search(); + }); +}; + +// 点击查询按钮 +export const handleSearch = () => { + pageInfo.value.page = 1; + search(); +}; + +// 分页事件 +export const handlePaginationChange = (_pageInfo: PageInfo): void => { + pageInfo.value = _pageInfo; + search(); +}; + +// 查询 +const search = async () => { + try { + const { data } = await doSearch(); + tableData.value = data.list; + total.value = data.total; + } catch (error) {} +}; +// 请求接口 +const doSearch = async () => { + // 查询参数 + const data = searchFormData.value; + // 添加分页参数 + data.pageIndex = pageInfo.value.page; + data.pageSize = pageInfo.value.pageSize; + + return api.page(data); +}; + +// 页面加载 +search(); diff --git a/sop-admin/sop-admin-frontend/src/views/isv/list/index.vue b/sop-admin/sop-admin-frontend/src/views/isv/list/index.vue new file mode 100644 index 00000000..d1ca8c61 --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/views/isv/list/index.vue @@ -0,0 +1,82 @@ + + diff --git a/sop-admin/sop-admin-frontend/src/views/isv/list/showKeys.ts b/sop-admin/sop-admin-frontend/src/views/isv/list/showKeys.ts new file mode 100644 index 00000000..60589600 --- /dev/null +++ b/sop-admin/sop-admin-frontend/src/views/isv/list/showKeys.ts @@ -0,0 +1,86 @@ +import { ref } from "vue"; +import type { PlusFormGroupRow } from "plus-pro-components"; +import { CreditCard } from "@element-plus/icons-vue"; +import { api } from "@/api/isvList"; + +// 弹窗显示 +export const dlgKeysShow = ref(false); +export const showKeysFormData = ref({ + publicKeyIsv: "", + privateKeyIsv: "", + publicKeyPlatform: "", + privateKeyPlatform: "" +}); +// 表单内容 +export const showKeysFormColumns: PlusFormGroupRow[] = [ + { + title: "ISV公私钥 - 标识☆分配给开发者", + icon: CreditCard, + columns: [ + { + label: "ISV公钥", + prop: "publicKeyIsv", + valueType: "textarea", + labelWidth: 100, + fieldProps: { + showWordLimit: false, + placeholder: "", + readonly: true, + autosize: { minRows: 2, maxRows: 4 } + } + }, + { + label: "☆ISV私钥", + prop: "privateKeyIsv", + valueType: "textarea", + labelWidth: 100, + fieldProps: { + showWordLimit: false, + placeholder: "", + readonly: true, + autosize: { minRows: 2, maxRows: 4 } + } + } + ] + }, + { + title: "平台公私钥 - 标识☆分配给开发者", + icon: CreditCard, + columns: [ + { + label: "☆平台公钥", + prop: "publicKeyPlatform", + valueType: "textarea", + labelWidth: 100, + fieldProps: { + showWordLimit: false, + placeholder: "", + readonly: true, + autosize: { minRows: 2, maxRows: 4 } + } + }, + { + label: "平台私钥", + prop: "privateKeyPlatform", + valueType: "textarea", + labelWidth: 100, + fieldProps: { + showWordLimit: false, + placeholder: "", + readonly: true, + autosize: { minRows: 2, maxRows: 4 } + } + } + ] + } +]; + +export const viewKeys = (row: any) => { + const params = { + appId: row.appId + }; + api.viewKeys(params).then(resp => { + showKeysFormData.value = resp.data; + dlgKeysShow.value = true; + }); +}; diff --git a/sop-admin/sop-admin-frontend/src/views/serve/api/index.ts b/sop-admin/sop-admin-frontend/src/views/serve/api/index.ts index c5bc04a6..05850d68 100644 --- a/sop-admin/sop-admin-frontend/src/views/serve/api/index.ts +++ b/sop-admin/sop-admin-frontend/src/views/serve/api/index.ts @@ -1,29 +1,55 @@ import { computed, ref } from "vue"; import { - type PlusColumn, - useTable, - type PageInfo, + type ButtonsCallBackParams, type FieldValues, - type ButtonsCallBackParams + type PageInfo, + type PlusColumn, + useTable } from "plus-pro-components"; -import { type PageResult } from "@/model"; -import { http } from "@/utils/http"; import { ElMessage } from "element-plus"; +import { StatusEnum } from "@/model/enums"; +import { api } from "@/api/serveApi"; -// 后端请求接口 -const apiUrl = { - page: "/serve/api/page", - add: "/serve/api/add", - update: "/serve/api/update", - del: "/serve/api/delete" -}; +const isAdd = ref(false); + +// ========= search form ========= // 查询表单对象 export const searchFormData = ref({ apiName: "", + status: "", pageIndex: 1, pageSize: 10 }); + +// 查询表单字段定义 +export const searchFormColumns: PlusColumn[] = [ + { + label: "接口名称", + prop: "apiName" + }, + { + label: "状态", + prop: "status", + width: 80, + valueType: "select", + options: [ + { + label: "启用", + value: StatusEnum.ENABLE, + color: "green" + }, + { + label: "禁用", + value: StatusEnum.DISABLE, + color: "red" + } + ] + } +]; + +// ========= table ========= + // 表格对象 export const { tableData, @@ -34,14 +60,6 @@ export const { // 默认每页条数,默认10 pageInfo.value.pageSize = 10; -// 查询表单字段定义 -export const searchFormColumns: PlusColumn[] = [ - { - label: "接口名称", - prop: "apiName" - } -]; - // 表格字段定义 export const tableColumns: PlusColumn[] = [ { @@ -104,14 +122,14 @@ export const tableColumns: PlusColumn[] = [ valueType: "select", options: [ { - label: "禁用", - value: 0, - color: "red" + label: "启用", + value: StatusEnum.ENABLE, + color: "green" }, { - label: "启用", - value: 1, - color: "green" + label: "禁用", + value: StatusEnum.DISABLE, + color: "red" } ] }, @@ -120,7 +138,7 @@ export const tableColumns: PlusColumn[] = [ prop: "addTime" } ]; - +// 表格按钮定义 actionButtons.value = [ { // 修改 @@ -131,73 +149,66 @@ actionButtons.value = [ }, show: computed(() => true), onClick(params: ButtonsCallBackParams) { - if (params?.formRefs) { - // isEdit v0.1.8 新增 - const isEdit = params.formRefs[0].isEdit.value; - isEdit - ? params.formRefs[0]?.stopCellEdit() - : params.formRefs[0]?.startCellEdit(); - } + isAdd.value = false; + editFormData.value = Object.assign({}, params.row); + dlgTitle.value = "修改接口"; + dlgShow.value = true; } }, { // 删除 - text: "删除", + text: row => (row.status === StatusEnum.ENABLE ? "禁用" : "启用"), code: "delete", - props: { - type: "danger" - }, confirm: { - options: { draggable: true } - }, - onClick(params: ButtonsCallBackParams) { - console.log(params, "onClick"); + message: data => { + const opt = data.row.status === StatusEnum.ENABLE ? "禁用" : "启用"; + return `确定${opt}吗?`; + }, + options: { draggable: false } }, onConfirm(params: ButtonsCallBackParams) { - console.log(params, "onConfirm"); - }, - onCancel(params: ButtonsCallBackParams) { - console.log(params, "onCancel"); + const data = { + id: params.row.id, + status: + params.row.status === StatusEnum.ENABLE + ? StatusEnum.DISABLE + : StatusEnum.ENABLE + }; + api.updateStatus(data).then(() => { + ElMessage({ + message: "修改成功", + type: "success" + }); + dlgShow.value = false; + search(); + }); } } ]; -// 弹窗表单 +// ========= dialog form ========= + +// 弹窗显示 export const dlgShow = ref(false); -export const editFormData = ref({ - application: "", - status: 1, - isPermission: 0, - isNeedToken: 0 -}); +export const dlgTitle = ref(""); +// 表单值 +const editFormDataGen = () => { + return { + application: "", + status: 1, + isPermission: 0, + isNeedToken: 0 + }; +}; +export const editFormData = ref(editFormDataGen()); export const editFormRules = { application: [{ required: true, message: "请输入应用名称" }], apiName: [{ required: true, message: "请输入接口名称" }], apiVersion: [{ required: true, message: "请输入版本号" }], description: [{ required: true, message: "请输入接口描述" }] }; -export const handleDlgOpen = () => { - dlgShow.value = true; -}; - -export const handleSave = () => { - http - .post(apiUrl.add, { data: editFormData.value }) - .then(resp => { - if (resp.success) { - ElMessage({ - message: "保存成功", - type: "success" - }); - dlgShow.value = false; - search(); - } else { - console.log(resp); - ElMessage.error(`保存失败:${resp.msg}`); - } - }); -}; +// 表单内容 export const editFormColumns: PlusColumn[] = [ { label: "应用名称", @@ -224,7 +235,7 @@ export const editFormColumns: PlusColumn[] = [ prop: "remark", valueType: "textarea", fieldProps: { - maxlength: 10, + maxlength: 5000, showWordLimit: true, autosize: { minRows: 2, maxRows: 4 } } @@ -282,12 +293,42 @@ export const editFormColumns: PlusColumn[] = [ } ]; +// ========= event ========= + +// 添加按钮事件 +export const handleAdd = () => { + isAdd.value = true; + editFormData.value = editFormDataGen(); + dlgTitle.value = "新增接口"; + dlgShow.value = true; +}; + +// 保存按钮事件,校验成功后触发 +export const handleSave = () => { + const postData = editFormData.value; + const pms = isAdd.value ? api.add(postData) : api.update(postData); + pms.then(() => { + ElMessage({ + message: "保存成功", + type: "success" + }); + dlgShow.value = false; + search(); + }); +}; + // 点击查询按钮 export const handleSearch = () => { pageInfo.value.page = 1; search(); }; +// 分页事件 +export const handlePaginationChange = (_pageInfo: PageInfo): void => { + pageInfo.value = _pageInfo; + search(); +}; + // 查询 const search = async () => { try { @@ -304,12 +345,8 @@ const doSearch = async () => { data.pageIndex = pageInfo.value.page; data.pageSize = pageInfo.value.pageSize; - return http.get(apiUrl.page, { params: data }); -}; -// 分页事件 -export const handlePaginationChange = (_pageInfo: PageInfo): void => { - pageInfo.value = _pageInfo; - search(); + return api.page(data); }; + // 页面加载 search(); diff --git a/sop-admin/sop-admin-frontend/src/views/serve/api/index.vue b/sop-admin/sop-admin-frontend/src/views/serve/api/index.vue index bd15544b..8eaf0514 100644 --- a/sop-admin/sop-admin-frontend/src/views/serve/api/index.vue +++ b/sop-admin/sop-admin-frontend/src/views/serve/api/index.vue @@ -2,10 +2,11 @@ import { actionButtons, dlgShow, + dlgTitle, editFormColumns, editFormData, editFormRules, - handleDlgOpen, + handleAdd, handlePaginationChange, handleSave, handleSearch, @@ -42,13 +43,13 @@ import { @paginationChange="handlePaginationChange" > - - - com.gitee.sop - sop-parent - 5.0.0-SNAPSHOT - ../pom.xml - - 4.0.0 + com.gitee.sop sop-common - pom + 5.0.0-SNAPSHOT 1.8 - - sop-bridge-nacos - sop-gateway-common - sop-service-common - - + + + org.projectlombok + lombok + 1.18.34 + provided + + + org.springframework + spring-context + 6.1.11 + true + + diff --git a/sop-common/src/main/java/com/gitee/sop/common/bean/SpringContext.java b/sop-common/src/main/java/com/gitee/sop/common/bean/SpringContext.java new file mode 100644 index 00000000..92ae9da6 --- /dev/null +++ b/sop-common/src/main/java/com/gitee/sop/common/bean/SpringContext.java @@ -0,0 +1,32 @@ +package com.gitee.sop.common.bean; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationEvent; + +/** + * @author 六如 + */ +public class SpringContext { + + private static ApplicationContext ctx; + + public static T getBean(Class clazz) { + return ctx.getBean(clazz); + } + + public static Object getBean(String beanName) { + return ctx.getBean(beanName); + } + + public static void setApplicationContext(ApplicationContext ctx) { + SpringContext.ctx = ctx; + } + + public static ApplicationContext getApplicationContext() { + return ctx; + } + + public static void publishEvent(ApplicationEvent event) { + ctx.publishEvent(event); + } +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/StatusEnum.java b/sop-common/src/main/java/com/gitee/sop/common/enums/StatusEnum.java similarity index 84% rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/StatusEnum.java rename to sop-common/src/main/java/com/gitee/sop/common/enums/StatusEnum.java index f074decb..b54926fc 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/StatusEnum.java +++ b/sop-common/src/main/java/com/gitee/sop/common/enums/StatusEnum.java @@ -1,4 +1,4 @@ -package com.gitee.sop.adminbackend.common; +package com.gitee.sop.common.enums; import lombok.Getter; @@ -9,9 +9,9 @@ import java.util.Objects; */ @Getter public enum StatusEnum { - DISABLED((byte)0), + DISABLED((byte)2), ENABLE((byte)1), - SET_PWD((byte)2), + SET_PWD((byte)3), ; private final int status; diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/IdParam.java b/sop-common/src/main/java/com/gitee/sop/common/req/IdParam.java similarity index 81% rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/IdParam.java rename to sop-common/src/main/java/com/gitee/sop/common/req/IdParam.java index 7ae0ecf3..5a3eeb09 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/IdParam.java +++ b/sop-common/src/main/java/com/gitee/sop/common/req/IdParam.java @@ -1,4 +1,4 @@ -package com.gitee.sop.adminbackend.common; +package com.gitee.sop.common.req; import lombok.Data; diff --git a/sop-common/src/main/java/com/gitee/sop/common/req/StatusUpdateParam.java b/sop-common/src/main/java/com/gitee/sop/common/req/StatusUpdateParam.java new file mode 100644 index 00000000..1efe954b --- /dev/null +++ b/sop-common/src/main/java/com/gitee/sop/common/req/StatusUpdateParam.java @@ -0,0 +1,17 @@ +package com.gitee.sop.common.req; + +import com.gitee.sop.adminbackend.common.req.IdParam; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @author 六如 + */ +@Data +public class StatusUpdateParam extends IdParam { + + @NotNull(message = "状态不能为空") + private Integer status; + +} diff --git a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/Result.java b/sop-common/src/main/java/com/gitee/sop/common/resp/Result.java similarity index 95% rename from sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/Result.java rename to sop-common/src/main/java/com/gitee/sop/common/resp/Result.java index a5a5ea74..f502c112 100644 --- a/sop-admin/sop-admin-backend/src/main/java/com/gitee/sop/adminbackend/common/Result.java +++ b/sop-common/src/main/java/com/gitee/sop/common/resp/Result.java @@ -1,4 +1,4 @@ -package com.gitee.sop.adminbackend.common; +package com.gitee.sop.common.resp; import lombok.Data; diff --git a/sop-gateway/pom.xml b/sop-gateway/pom.xml index dae11134..70d9cfc5 100644 --- a/sop-gateway/pom.xml +++ b/sop-gateway/pom.xml @@ -1,74 +1,251 @@ - + 4.0.0 - com.gitee.sop - sop-parent - 5.0.0-SNAPSHOT - ../pom.xml + org.springframework.boot + spring-boot-starter-parent + 2.6.15 + - 4.0.0 + com.gitee.sop sop-gateway + 5.0.0-SNAPSHOT - 1.8 + 8 + 8 + UTF-8 + + + 2.6.15 + + 2021.0.5 + + + 2021.0.5.0 + + 3.2.10 + + 4.11 + 2.5 + 1.3.3 + 3.2.2 + 3.8.1 + 1.11 + 1.2 + 2.0.1.Final + 6.0.13.Final + 3.0.10 - - + com.gitee.sop - sop-bridge-nacos - - ${project.version} + sop-service-support + 5.0.0-SNAPSHOT - - org.springframework.cloud - spring-cloud-starter-gateway - org.springframework.boot - spring-boot-starter-webflux - - - org.springframework.boot - spring-boot-starter-actuator + spring-boot-starter - net.oschina.durcframework + org.springframework.boot + spring-boot-starter-web + + + + org.apache.dubbo + dubbo-spring-boot-starter + + + + + org.apache.dubbo + dubbo-nacos-spring-boot-starter + + + + io.gitee.durcframework fastmybatis-spring-boot-starter + mysql mysql-connector-java - runtime - - - javax.servlet - javax.servlet-api - + + org.springframework.boot + spring-boot-starter-jdbc + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + + commons-codec + commons-codec + + + org.apache.commons + commons-lang3 + + + commons-fileupload + commons-fileupload + + + + org.hibernate + hibernate-validator + + + + com.fasterxml.jackson.dataformat + jackson-dataformat-xml + + + + org.springframework.boot spring-boot-starter-test test + + + + + org.apache.dubbo + dubbo-dependencies-zookeeper-curator5 + ${dubbo.version} + pom + provided + + org.projectlombok lombok - 1.18.4 - provided + true + + + + + 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 + + + org.apache.dubbo + dubbo-bom + ${dubbo.version} + pom + import + + + + io.gitee.durcframework + fastmybatis-spring-boot-starter + ${fastmybatis.version} + + + + com.squareup.okhttp3 + okhttp + 3.14.7 + + + + javax.validation + validation-api + ${validation-api.version} + + + org.hibernate + hibernate-validator + ${hibernate-validator.version} + + + + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + commons-collections + commons-collections + ${commons-collection.version} + + + commons-io + commons-io + ${commons-io.version} + + + commons-codec + commons-codec + ${commons-codec.version} + + + commons-fileupload + commons-fileupload + ${commons-fileupload.version} + + + commons-logging + commons-logging + ${commons-logging.version} + + + + org.projectlombok + lombok + 1.18.30 + + + javax.servlet + javax.servlet-api + 3.1.0 + + + + + + + aliyun + aliyun + https://maven.aliyun.com/repository/public + + @@ -85,20 +262,17 @@ true + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + ${java.version} + ${java.version} + UTF-8 + + - - - spring-milestones - Spring Milestones - https://repo.spring.io/milestone - - - maven2 - maven2 - https://repo1.maven.org/maven2 - - - diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java index 2b536bd1..1e2e3e0e 100644 --- a/sop-gateway/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java @@ -1,18 +1,15 @@ package com.gitee.sop.gateway; -import org.mybatis.spring.annotation.MapperScan; +import org.apache.dubbo.config.spring.context.annotation.EnableDubbo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -@MapperScan(basePackages = { - "com.gitee.sop.gateway.mapper" -}) -@SpringBootApplication(scanBasePackages = "com.gitee.sop") +@SpringBootApplication +@EnableDubbo public class SopGatewayApplication { - public static void main(String[] args) { - SpringApplication.run(SopGatewayApplication.class, args); - } + public static void main(String[] args) { + SpringApplication.run(SopGatewayApplication.class, args); + } } - diff --git a/sop-index/src/main/java/com/gitee/sop/index/common/ApiInfoDTO.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/ApiInfoDTO.java similarity index 96% rename from sop-index/src/main/java/com/gitee/sop/index/common/ApiInfoDTO.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/common/ApiInfoDTO.java index 0575cc7e..9d23b650 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/common/ApiInfoDTO.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/ApiInfoDTO.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.common; +package com.gitee.sop.gateway.common; import lombok.Data; diff --git a/sop-index/src/main/java/com/gitee/sop/index/common/AttachmentNames.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/AttachmentNames.java similarity index 95% rename from sop-index/src/main/java/com/gitee/sop/index/common/AttachmentNames.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/common/AttachmentNames.java index d70ee8ba..c599582a 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/common/AttachmentNames.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/AttachmentNames.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.common; +package com.gitee.sop.gateway.common; /** * @author 六如 diff --git a/sop-index/src/main/java/com/gitee/sop/index/common/ParamInfoDTO.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/ParamInfoDTO.java similarity index 78% rename from sop-index/src/main/java/com/gitee/sop/index/common/ParamInfoDTO.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/common/ParamInfoDTO.java index b555e743..44ee8576 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/common/ParamInfoDTO.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/ParamInfoDTO.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.common; +package com.gitee.sop.gateway.common; import lombok.Data; diff --git a/sop-index/src/main/java/com/gitee/sop/index/common/RouteContext.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/RouteContext.java similarity index 70% rename from sop-index/src/main/java/com/gitee/sop/index/common/RouteContext.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/common/RouteContext.java index 8fd9b2d3..d38fea20 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/common/RouteContext.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/RouteContext.java @@ -1,6 +1,6 @@ -package com.gitee.sop.index.common; +package com.gitee.sop.gateway.common; -import com.gitee.sop.index.request.ApiRequestContext; +import com.gitee.sop.gateway.request.ApiRequestContext; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/sop-index/src/main/java/com/gitee/sop/index/common/SopConstants.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/SopConstants.java similarity index 88% rename from sop-index/src/main/java/com/gitee/sop/index/common/SopConstants.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/common/SopConstants.java index 9c87b007..0c506dea 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/common/SopConstants.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/SopConstants.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.common; +package com.gitee.sop.gateway.common; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; diff --git a/sop-index/src/main/java/com/gitee/sop/index/common/StatusEnum.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/StatusEnum.java similarity index 77% rename from sop-index/src/main/java/com/gitee/sop/index/common/StatusEnum.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/common/StatusEnum.java index 75a03b20..6428e634 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/common/StatusEnum.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/common/StatusEnum.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.common; +package com.gitee.sop.gateway.common; import lombok.AllArgsConstructor; import lombok.Getter; @@ -10,7 +10,7 @@ import lombok.Getter; @Getter public enum StatusEnum { ENABLE(1), - DISABLE(0); + DISABLE(2); private final int value; diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/config/ApiConfig.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/config/ApiConfig.java new file mode 100644 index 00000000..d067f284 --- /dev/null +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/config/ApiConfig.java @@ -0,0 +1,89 @@ +package com.gitee.sop.gateway.config; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Configuration; + +/** + * @author 六如 + */ +@Configuration +@ConfigurationProperties(prefix = "api") +@Data +public class ApiConfig { + + // ========= 请求参数名 ========= + + /** + * 分配给开发者的应用ID + */ + private String appIdName = "app_id"; + /** + * 接口名称 + */ + private String apiName = "method"; + /** + * 仅支持JSON + */ + private String formatName = "format"; + /** + * 请求使用的编码格式 + */ + private String charsetName = "charset"; + /** + * 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 + */ + private String signTypeName = "sign_type"; + /** + * 商户请求参数的签名串 + */ + private String signName = "sign"; + /** + * 发送请求的时间 + */ + private String timestampName = "timestamp"; + /** + * 调用的接口版本 + */ + private String versionName = "version"; + /** + * 开放平台主动通知商户服务器里指定的页面http/https路径 + */ + private String notifyUrlName = "notify_url"; + /** + * OAuth 2.0授权token + */ + private String appAuthTokenName = "app_auth_token"; + /** + * 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 + */ + private String bizContentName = "biz_content"; + + // ========= 请求参数名 end ========= + + + /** + * 超时时间 + */ + private int timeoutSeconds = 60 * 5; + + /** + * 是否开启限流功能 + */ + private boolean openLimit = true; + + /** + * 显示返回sign + */ + private boolean showReturnSign = true; + + /** + * 时间戳格式 + */ + private String timestampPattern = "yyyy-MM-dd HH:mm:ss"; + + /** + * 时区,默认:Asia/Shanghai + */ + private String zoneId = "Asia/Shanghai"; +} diff --git a/sop-index/src/main/java/com/gitee/sop/index/config/CustomConfig.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/config/CustomConfig.java similarity index 81% rename from sop-index/src/main/java/com/gitee/sop/index/config/CustomConfig.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/config/CustomConfig.java index 75949c66..561c8c85 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/config/CustomConfig.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/config/CustomConfig.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.config; +package com.gitee.sop.gateway.config; import org.springframework.context.annotation.Configuration; diff --git a/sop-index/src/main/java/com/gitee/sop/index/config/IndexConfig.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/config/IndexConfig.java similarity index 50% rename from sop-index/src/main/java/com/gitee/sop/index/config/IndexConfig.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/config/IndexConfig.java index 10d3be14..36428b04 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/config/IndexConfig.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/config/IndexConfig.java @@ -1,20 +1,20 @@ -package com.gitee.sop.index.config; +package com.gitee.sop.gateway.config; -import com.gitee.sop.index.message.ErrorFactory; -import com.gitee.sop.index.service.ParamExecutor; -import com.gitee.sop.index.service.ParamExecutorImpl; -import com.gitee.sop.index.service.RouteService; -import com.gitee.sop.index.service.RouteServiceImpl; -import com.gitee.sop.index.service.interceptor.internal.ResultRouteInterceptor; -import com.gitee.sop.index.service.manager.ApiManager; -import com.gitee.sop.index.service.manager.IsvManager; -import com.gitee.sop.index.service.manager.SecretManager; -import com.gitee.sop.index.service.manager.impl.LocalApiManagerImpl; -import com.gitee.sop.index.service.manager.impl.LocalIsvManagerImpl; -import com.gitee.sop.index.service.manager.impl.LocalSecretManagerImpl; -import com.gitee.sop.index.service.manager.impl.RedisApiManagerImpl; -import com.gitee.sop.index.service.manager.impl.RedisIsvManagerImpl; -import com.gitee.sop.index.service.manager.impl.RedisSecretManager; +import com.gitee.sop.gateway.message.ErrorFactory; +import com.gitee.sop.gateway.service.ParamExecutor; +import com.gitee.sop.gateway.service.ParamExecutorImpl; +import com.gitee.sop.gateway.service.RouteService; +import com.gitee.sop.gateway.service.RouteServiceImpl; +import com.gitee.sop.gateway.service.interceptor.internal.ResultRouteInterceptor; +import com.gitee.sop.gateway.service.manager.ApiManager; +import com.gitee.sop.gateway.service.manager.IsvManager; +import com.gitee.sop.gateway.service.manager.SecretManager; +import com.gitee.sop.gateway.service.manager.impl.LocalApiManagerImpl; +import com.gitee.sop.gateway.service.manager.impl.LocalIsvManagerImpl; +import com.gitee.sop.gateway.service.manager.impl.LocalSecretManagerImpl; +import com.gitee.sop.gateway.service.manager.impl.RedisApiManagerImpl; +import com.gitee.sop.gateway.service.manager.impl.RedisIsvManagerImpl; +import com.gitee.sop.gateway.service.manager.impl.RedisSecretManager; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; @@ -31,37 +31,37 @@ import javax.annotation.PostConstruct; public class IndexConfig { @Bean - @ConditionalOnProperty(value = "index.manager.api", havingValue = "local", matchIfMissing = true) + @ConditionalOnProperty(value = "gateway.manager.api", havingValue = "local", matchIfMissing = true) public ApiManager localApiManager() { return new LocalApiManagerImpl(); } @Bean - @ConditionalOnProperty(value = "index.manager.api", havingValue = "redis") + @ConditionalOnProperty(value = "gateway.manager.api", havingValue = "redis") public ApiManager redisApiManager() { return new RedisApiManagerImpl(); } @Bean - @ConditionalOnProperty(value = "index.manager.isv", havingValue = "local", matchIfMissing = true) + @ConditionalOnProperty(value = "gateway.manager.isv", havingValue = "local", matchIfMissing = true) public IsvManager localIsvManager() { return new LocalIsvManagerImpl(); } @Bean - @ConditionalOnProperty(value = "index.manager.isv", havingValue = "redis") + @ConditionalOnProperty(value = "gateway.manager.isv", havingValue = "redis") public IsvManager redisIsvManager() { return new RedisIsvManagerImpl(); } @Bean - @ConditionalOnProperty(value = "index.manager.secret", havingValue = "local", matchIfMissing = true) + @ConditionalOnProperty(value = "gateway.manager.secret", havingValue = "local", matchIfMissing = true) public SecretManager localSecretManager() { return new LocalSecretManagerImpl(); } @Bean - @ConditionalOnProperty(value = "index.manager.secret", havingValue = "redis") + @ConditionalOnProperty(value = "gateway.manager.secret", havingValue = "redis") public SecretManager redisSecretManager() { return new RedisSecretManager(); } diff --git a/sop-index/src/main/java/com/gitee/sop/index/controller/IndexController.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java similarity index 86% rename from sop-index/src/main/java/com/gitee/sop/index/controller/IndexController.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java index 2fb9371d..42e8ec89 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/controller/IndexController.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/controller/IndexController.java @@ -1,10 +1,9 @@ -package com.gitee.sop.index.controller; +package com.gitee.sop.gateway.controller; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.request.ApiRequestContextFactory; -import com.gitee.sop.index.response.ApiResponse; -import com.gitee.sop.index.service.ParamExecutor; -import com.gitee.sop.index.service.RouteService; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.response.ApiResponse; +import com.gitee.sop.gateway.service.ParamExecutor; +import com.gitee.sop.gateway.service.RouteService; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -54,7 +53,7 @@ public class IndexController { biz_content String 是 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 */ - @RequestMapping(value = "${index.path:/api}", method = {RequestMethod.GET, RequestMethod.POST}) + @RequestMapping(value = "${gateway.path:/api}", method = {RequestMethod.GET, RequestMethod.POST}) public void index(HttpServletRequest request, HttpServletResponse response) throws IOException { ApiRequestContext apiRequestContext = paramExecutor.build(request); ApiResponse apiResponse = routeService.route(apiRequestContext); diff --git a/sop-index/src/main/java/com/gitee/sop/index/dao/entity/ApiInfo.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/ApiInfo.java similarity index 89% rename from sop-index/src/main/java/com/gitee/sop/index/dao/entity/ApiInfo.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/ApiInfo.java index cfc9e99a..f5f972a4 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/dao/entity/ApiInfo.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/ApiInfo.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.dao.entity; +package com.gitee.sop.gateway.dao.entity; import java.time.LocalDateTime; @@ -71,6 +71,11 @@ public class ApiInfo { */ private Integer isNeedToken; + /** + * 注册来源,1-系统注册,2-手动注册 + */ + private Integer regSource; + /** * 1启用,2禁用 */ diff --git a/sop-index/src/main/java/com/gitee/sop/index/dao/entity/IsvInfo.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/IsvInfo.java similarity index 94% rename from sop-index/src/main/java/com/gitee/sop/index/dao/entity/IsvInfo.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/IsvInfo.java index 0f2ba142..8400e972 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/dao/entity/IsvInfo.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/IsvInfo.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.dao.entity; +package com.gitee.sop.gateway.dao.entity; import java.time.LocalDateTime; import java.util.Date; diff --git a/sop-index/src/main/java/com/gitee/sop/index/dao/entity/IsvKeys.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/IsvKeys.java similarity index 96% rename from sop-index/src/main/java/com/gitee/sop/index/dao/entity/IsvKeys.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/IsvKeys.java index c19c7207..3be09a2c 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/dao/entity/IsvKeys.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/entity/IsvKeys.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.dao.entity; +package com.gitee.sop.gateway.dao.entity; import java.time.LocalDateTime; import java.util.Date; diff --git a/sop-index/src/main/java/com/gitee/sop/index/dao/mapper/ApiInfoMapper.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/ApiInfoMapper.java similarity index 80% rename from sop-index/src/main/java/com/gitee/sop/index/dao/mapper/ApiInfoMapper.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/ApiInfoMapper.java index a706d25a..c875a2e8 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/dao/mapper/ApiInfoMapper.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/ApiInfoMapper.java @@ -1,8 +1,8 @@ -package com.gitee.sop.index.dao.mapper; +package com.gitee.sop.gateway.dao.mapper; import com.gitee.fastmybatis.core.mapper.BaseMapper; -import com.gitee.sop.index.dao.entity.ApiInfo; +import com.gitee.sop.gateway.dao.entity.ApiInfo; /** * @author 六如 diff --git a/sop-index/src/main/java/com/gitee/sop/index/dao/mapper/IsvInfoMapper.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/IsvInfoMapper.java similarity index 73% rename from sop-index/src/main/java/com/gitee/sop/index/dao/mapper/IsvInfoMapper.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/IsvInfoMapper.java index adfe4dcb..89de1e6b 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/dao/mapper/IsvInfoMapper.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/IsvInfoMapper.java @@ -1,7 +1,7 @@ -package com.gitee.sop.index.dao.mapper; +package com.gitee.sop.gateway.dao.mapper; import com.gitee.fastmybatis.core.mapper.BaseMapper; -import com.gitee.sop.index.dao.entity.IsvInfo; +import com.gitee.sop.gateway.dao.entity.IsvInfo; /** * @author 六如 diff --git a/sop-index/src/main/java/com/gitee/sop/index/dao/mapper/IsvKeysMapper.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/IsvKeysMapper.java similarity index 73% rename from sop-index/src/main/java/com/gitee/sop/index/dao/mapper/IsvKeysMapper.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/IsvKeysMapper.java index b2fdd46d..0ed0377b 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/dao/mapper/IsvKeysMapper.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/dao/mapper/IsvKeysMapper.java @@ -1,7 +1,7 @@ -package com.gitee.sop.index.dao.mapper; +package com.gitee.sop.gateway.dao.mapper; import com.gitee.fastmybatis.core.mapper.BaseMapper; -import com.gitee.sop.index.dao.entity.IsvKeys; +import com.gitee.sop.gateway.dao.entity.IsvKeys; /** * @author 六如 diff --git a/sop-index/src/main/java/com/gitee/sop/index/exception/ApiException.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ApiException.java similarity index 88% rename from sop-index/src/main/java/com/gitee/sop/index/exception/ApiException.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ApiException.java index 56f76f72..961f7442 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/exception/ApiException.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ApiException.java @@ -1,8 +1,8 @@ -package com.gitee.sop.index.exception; +package com.gitee.sop.gateway.exception; -import com.gitee.sop.index.message.ErrorEnum; -import com.gitee.sop.index.message.IError; +import com.gitee.sop.gateway.message.ErrorEnum; +import com.gitee.sop.gateway.message.IError; import java.util.Locale; diff --git a/sop-index/src/main/java/com/gitee/sop/index/exception/ControllerGlobalExceptionHandler.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ControllerGlobalExceptionHandler.java similarity index 95% rename from sop-index/src/main/java/com/gitee/sop/index/exception/ControllerGlobalExceptionHandler.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ControllerGlobalExceptionHandler.java index 05c3b954..4c564d00 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/exception/ControllerGlobalExceptionHandler.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ControllerGlobalExceptionHandler.java @@ -1,7 +1,7 @@ -package com.gitee.sop.index.exception; +package com.gitee.sop.gateway.exception; -import com.gitee.sop.index.response.ApiResponse; -import com.gitee.sop.index.message.ErrorEnum; +import com.gitee.sop.gateway.response.ApiResponse; +import com.gitee.sop.gateway.message.ErrorEnum; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.BindException; import org.springframework.validation.FieldError; diff --git a/sop-index/src/main/java/com/gitee/sop/index/exception/ExceptionExecutor.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ExceptionExecutor.java similarity index 50% rename from sop-index/src/main/java/com/gitee/sop/index/exception/ExceptionExecutor.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ExceptionExecutor.java index f6cbbad8..0431bb4e 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/exception/ExceptionExecutor.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/ExceptionExecutor.java @@ -1,7 +1,7 @@ -package com.gitee.sop.index.exception; +package com.gitee.sop.gateway.exception; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.response.ApiResponse; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.response.ApiResponse; /** * @author 六如 diff --git a/sop-index/src/main/java/com/gitee/sop/index/exception/SignException.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/SignException.java similarity index 83% rename from sop-index/src/main/java/com/gitee/sop/index/exception/SignException.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/exception/SignException.java index 66d545c3..0553a0d5 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/exception/SignException.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/SignException.java @@ -1,6 +1,6 @@ -package com.gitee.sop.index.exception; +package com.gitee.sop.gateway.exception; -import com.gitee.sop.index.message.ErrorEnum; +import com.gitee.sop.gateway.message.ErrorEnum; import lombok.Getter; /** diff --git a/sop-index/src/main/java/com/gitee/sop/index/exception/impl/ExceptionExecutorImpl.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/impl/ExceptionExecutorImpl.java similarity index 86% rename from sop-index/src/main/java/com/gitee/sop/index/exception/impl/ExceptionExecutorImpl.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/exception/impl/ExceptionExecutorImpl.java index bb4a6ffa..7085000d 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/exception/impl/ExceptionExecutorImpl.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/exception/impl/ExceptionExecutorImpl.java @@ -1,10 +1,10 @@ -package com.gitee.sop.index.exception.impl; +package com.gitee.sop.gateway.exception.impl; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.response.ApiResponse; -import com.gitee.sop.index.exception.ApiException; -import com.gitee.sop.index.exception.ExceptionExecutor; -import com.gitee.sop.index.message.ErrorEnum; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.response.ApiResponse; +import com.gitee.sop.gateway.exception.ApiException; +import com.gitee.sop.gateway.exception.ExceptionExecutor; +import com.gitee.sop.gateway.message.ErrorEnum; import org.apache.dubbo.rpc.service.GenericException; import org.springframework.stereotype.Service; diff --git a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorEnum.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorEnum.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/message/ErrorEnum.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorEnum.java index 8f460afa..22c9bf86 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorEnum.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorEnum.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.message; +package com.gitee.sop.gateway.message; /** * 网关错误定义 diff --git a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorFactory.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorFactory.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/message/ErrorFactory.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorFactory.java index 789ce6ba..673e79ee 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorFactory.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorFactory.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.message; +package com.gitee.sop.gateway.message; import lombok.extern.slf4j.Slf4j; diff --git a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorImpl.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorImpl.java similarity index 92% rename from sop-index/src/main/java/com/gitee/sop/index/message/ErrorImpl.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorImpl.java index 9ad78bfd..6021310a 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorImpl.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorImpl.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.message; +package com.gitee.sop.gateway.message; import lombok.Data; diff --git a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorMeta.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorMeta.java similarity index 94% rename from sop-index/src/main/java/com/gitee/sop/index/message/ErrorMeta.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorMeta.java index f2b3436b..3832f48c 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/message/ErrorMeta.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/ErrorMeta.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.message; +package com.gitee.sop.gateway.message; import lombok.Getter; diff --git a/sop-index/src/main/java/com/gitee/sop/index/message/IError.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/IError.java similarity index 95% rename from sop-index/src/main/java/com/gitee/sop/index/message/IError.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/message/IError.java index 160eff51..ac375c1e 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/message/IError.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/message/IError.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.message; +package com.gitee.sop.gateway.message; /** * 定义错误返回 diff --git a/sop-index/src/main/java/com/gitee/sop/index/request/ApiRequest.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/request/ApiRequest.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java index 3ed0fc1e..a9fafe01 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/request/ApiRequest.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequest.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.request; +package com.gitee.sop.gateway.request; import com.alibaba.fastjson2.annotation.JSONField; import com.fasterxml.jackson.annotation.JsonIgnore; diff --git a/sop-index/src/main/java/com/gitee/sop/index/request/ApiRequestContext.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequestContext.java similarity index 92% rename from sop-index/src/main/java/com/gitee/sop/index/request/ApiRequestContext.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequestContext.java index 065c00fe..21e4eed6 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/request/ApiRequestContext.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequestContext.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.request; +package com.gitee.sop.gateway.request; import lombok.Builder; import lombok.Getter; diff --git a/sop-index/src/main/java/com/gitee/sop/index/request/ApiRequestContextFactory.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequestContextFactory.java similarity index 90% rename from sop-index/src/main/java/com/gitee/sop/index/request/ApiRequestContextFactory.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequestContextFactory.java index 96c404fd..22ca94a6 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/request/ApiRequestContextFactory.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiRequestContextFactory.java @@ -1,14 +1,13 @@ -package com.gitee.sop.index.request; +package com.gitee.sop.gateway.request; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; -import com.gitee.sop.index.common.SopConstants; -import com.gitee.sop.index.config.RequestParamConfig; -import com.gitee.sop.index.util.RequestUtil; +import com.gitee.sop.gateway.common.SopConstants; +import com.gitee.sop.gateway.config.ApiConfig; +import com.gitee.sop.gateway.util.RequestUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; -import org.springframework.http.MediaType; import javax.servlet.http.HttpServletRequest; import java.io.IOException; @@ -26,7 +25,7 @@ public class ApiRequestContextFactory { private static final String MULTIPART = "multipart"; public static final String FORM = "form"; - public static ApiRequestContext build(HttpServletRequest request, RequestParamConfig requestParamConfig) { + public static ApiRequestContext build(HttpServletRequest request, ApiConfig apiConfig) { // get请求可能返回null String contentType = request.getHeader(CONTENT_TYPE); if (contentType == null) { diff --git a/sop-index/src/main/java/com/gitee/sop/index/request/ApiUploadContext.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiUploadContext.java similarity index 96% rename from sop-index/src/main/java/com/gitee/sop/index/request/ApiUploadContext.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiUploadContext.java index b75534a2..31c00a60 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/request/ApiUploadContext.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/ApiUploadContext.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.request; +package com.gitee.sop.gateway.request; import org.springframework.web.multipart.MultipartFile; diff --git a/sop-index/src/main/java/com/gitee/sop/index/request/RequestFormatEnum.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/RequestFormatEnum.java similarity index 93% rename from sop-index/src/main/java/com/gitee/sop/index/request/RequestFormatEnum.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/request/RequestFormatEnum.java index cdb556ab..84efce39 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/request/RequestFormatEnum.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/RequestFormatEnum.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.request; +package com.gitee.sop.gateway.request; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/sop-index/src/main/java/com/gitee/sop/index/request/UploadContext.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/UploadContext.java similarity index 94% rename from sop-index/src/main/java/com/gitee/sop/index/request/UploadContext.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/request/UploadContext.java index 90d82818..7427bd1b 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/request/UploadContext.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/request/UploadContext.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.request; +package com.gitee.sop.gateway.request; import org.springframework.web.multipart.MultipartFile; diff --git a/sop-index/src/main/java/com/gitee/sop/index/response/ApiResponse.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/response/ApiResponse.java similarity index 92% rename from sop-index/src/main/java/com/gitee/sop/index/response/ApiResponse.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/response/ApiResponse.java index 0615fe5b..f388d190 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/response/ApiResponse.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/response/ApiResponse.java @@ -1,9 +1,9 @@ -package com.gitee.sop.index.response; +package com.gitee.sop.gateway.response; -import com.gitee.sop.index.exception.ApiException; -import com.gitee.sop.index.message.ErrorEnum; -import com.gitee.sop.index.message.ErrorMeta; -import com.gitee.sop.index.message.IError; +import com.gitee.sop.gateway.exception.ApiException; +import com.gitee.sop.gateway.message.ErrorEnum; +import com.gitee.sop.gateway.message.ErrorMeta; +import com.gitee.sop.gateway.message.IError; import lombok.Data; import java.util.Locale; diff --git a/sop-index/src/main/java/com/gitee/sop/index/service/GenericServiceInvoker.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/GenericServiceInvoker.java similarity index 98% rename from sop-index/src/main/java/com/gitee/sop/index/service/GenericServiceInvoker.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/GenericServiceInvoker.java index 4460cd5b..70e87de9 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/service/GenericServiceInvoker.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/GenericServiceInvoker.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.service; +package com.gitee.sop.gateway.service; import org.apache.dubbo.common.config.ReferenceCache; import org.apache.dubbo.config.ApplicationConfig; diff --git a/sop-index/src/main/java/com/gitee/sop/index/service/ParamExecutor.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/ParamExecutor.java similarity index 81% rename from sop-index/src/main/java/com/gitee/sop/index/service/ParamExecutor.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/ParamExecutor.java index 018339b7..633e61da 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/service/ParamExecutor.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/ParamExecutor.java @@ -1,7 +1,7 @@ -package com.gitee.sop.index.service; +package com.gitee.sop.gateway.service; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.response.ApiResponse; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.response.ApiResponse; import java.io.IOException; diff --git a/sop-index/src/main/java/com/gitee/sop/index/service/ParamExecutorImpl.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/ParamExecutorImpl.java similarity index 70% rename from sop-index/src/main/java/com/gitee/sop/index/service/ParamExecutorImpl.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/ParamExecutorImpl.java index ea0187b8..11d7ea4d 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/service/ParamExecutorImpl.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/ParamExecutorImpl.java @@ -1,15 +1,15 @@ -package com.gitee.sop.index.service; +package com.gitee.sop.gateway.service; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; -import com.gitee.sop.index.common.SopConstants; -import com.gitee.sop.index.config.RequestParamConfig; -import com.gitee.sop.index.request.ApiRequest; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.request.UploadContext; -import com.gitee.sop.index.response.ApiResponse; -import com.gitee.sop.index.util.RequestUtil; -import com.gitee.sop.index.util.ResponseUtil; +import com.gitee.sop.gateway.common.SopConstants; +import com.gitee.sop.gateway.config.ApiConfig; +import com.gitee.sop.gateway.request.ApiRequest; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.request.UploadContext; +import com.gitee.sop.gateway.response.ApiResponse; +import com.gitee.sop.gateway.util.RequestUtil; +import com.gitee.sop.gateway.util.ResponseUtil; import com.gitee.sop.support.dto.FileData; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.IOUtils; @@ -37,7 +37,7 @@ public class ParamExecutorImpl implements ParamExecutor params, RequestParamConfig requestParamConfig) { + public static String getSignCheckContentV1(Map params, ApiConfig apiConfig) { if (params == null) { return null; } - params.remove(requestParamConfig.getSignName()); - params.remove(requestParamConfig.getSignTypeName()); + params.remove(apiConfig.getSignName()); + params.remove(apiConfig.getSignTypeName()); StringBuilder content = new StringBuilder(); List keys = new ArrayList(params.keySet()); @@ -199,12 +199,12 @@ public class AlipaySignature { return content.toString(); } - public static String getSignCheckContentV2(Map params, RequestParamConfig requestParamConfig) { + public static String getSignCheckContentV2(Map params, ApiConfig apiConfig) { if (params == null) { return null; } - params.remove(requestParamConfig.getSignName()); + params.remove(apiConfig.getSignName()); StringBuilder content = new StringBuilder(); List keys = new ArrayList(params.keySet()); @@ -220,32 +220,32 @@ public class AlipaySignature { } public static boolean rsaCheckV1(Map params, String publicKey, - String charset, RequestParamConfig requestParamConfig) throws SignException { - String sign = params.get(requestParamConfig.getSignName()); - String content = getSignCheckContentV1(params, requestParamConfig); + String charset, ApiConfig apiConfig) throws SignException { + String sign = params.get(apiConfig.getSignName()); + String content = getSignCheckContentV1(params, apiConfig); return rsaCheckContent(content, sign, publicKey, charset); } public static boolean rsaCheckV1(Map params, String publicKey, - String charset, String signType, RequestParamConfig requestParamConfig) throws SignException { - String sign = params.get(requestParamConfig.getSignName()); - String content = getSignCheckContentV1(params, requestParamConfig); + String charset, String signType, ApiConfig apiConfig) throws SignException { + String sign = params.get(apiConfig.getSignName()); + String content = getSignCheckContentV1(params, apiConfig); return rsaCheck(content, sign, publicKey, charset, signType); } public static boolean rsaCheckV2(Map params, String publicKey, - String charset, RequestParamConfig requestParamConfig) throws SignException { - String sign = params.get(requestParamConfig.getSignName()); - String content = getSignCheckContentV2(params, requestParamConfig); + String charset, ApiConfig apiConfig) throws SignException { + String sign = params.get(apiConfig.getSignName()); + String content = getSignCheckContentV2(params, apiConfig); return rsaCheckContent(content, sign, publicKey, charset); } public static boolean rsaCheckV2(Map params, String publicKey, - String charset, String signType, RequestParamConfig requestParamConfig) throws SignException { - String sign = String.valueOf(params.get(requestParamConfig.getSignName())); - String content = getSignCheckContentV2(params, requestParamConfig); + String charset, String signType, ApiConfig apiConfig) throws SignException { + String sign = String.valueOf(params.get(apiConfig.getSignName())); + String content = getSignCheckContentV2(params, apiConfig); return rsaCheck(content, sign, publicKey, charset, signType); } @@ -349,11 +349,11 @@ public class AlipaySignature { */ public static String checkSignAndDecrypt(Map params, String alipayPublicKey, String cusPrivateKey, boolean isCheckSign, - boolean isDecrypt, RequestParamConfig requestParamConfig) throws SignException { - String charset = params.get(requestParamConfig.getCharsetName()); - String bizContent = params.get(requestParamConfig.getBizContentName()); + boolean isDecrypt, ApiConfig apiConfig) throws SignException { + String charset = params.get(apiConfig.getCharsetName()); + String bizContent = params.get(apiConfig.getBizContentName()); if (isCheckSign) { - if (!rsaCheckV2(params, alipayPublicKey, charset, requestParamConfig)) { + if (!rsaCheckV2(params, alipayPublicKey, charset, apiConfig)) { throw new SignException(ErrorEnum.ISV_INVALID_SIGNATURE); } } @@ -387,11 +387,11 @@ public class AlipaySignature { */ public static String checkSignAndDecrypt(Map params, String alipayPublicKey, String cusPrivateKey, boolean isCheckSign, - boolean isDecrypt, String signType, RequestParamConfig requestParamConfig) throws SignException { + boolean isDecrypt, String signType, ApiConfig apiConfig) throws SignException { String charset = params.get("charset"); String bizContent = params.get("biz_content"); if (isCheckSign) { - if (!rsaCheckV2(params, alipayPublicKey, charset, signType, requestParamConfig)) { + if (!rsaCheckV2(params, alipayPublicKey, charset, signType, apiConfig)) { throw new SignException(ErrorEnum.ISV_INVALID_SIGNATURE); } } diff --git a/sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/AlipaySigner.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySigner.java similarity index 61% rename from sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/AlipaySigner.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySigner.java index 28603eac..4c645e60 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/AlipaySigner.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/AlipaySigner.java @@ -1,14 +1,14 @@ -package com.gitee.sop.index.service.validate.alipay; +package com.gitee.sop.gateway.service.validate.alipay; -import com.gitee.sop.index.config.RequestParamConfig; -import com.gitee.sop.index.exception.ApiException; -import com.gitee.sop.index.exception.SignException; -import com.gitee.sop.index.message.ErrorEnum; -import com.gitee.sop.index.message.ErrorMeta; -import com.gitee.sop.index.request.ApiRequest; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.service.validate.Signer; +import com.gitee.sop.gateway.config.ApiConfig; +import com.gitee.sop.gateway.exception.ApiException; +import com.gitee.sop.gateway.exception.SignException; +import com.gitee.sop.gateway.message.ErrorEnum; +import com.gitee.sop.gateway.message.ErrorMeta; +import com.gitee.sop.gateway.request.ApiRequest; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.service.validate.Signer; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; @@ -27,7 +27,7 @@ import java.util.Map; public class AlipaySigner implements Signer { @Resource - private RequestParamConfig requestParamConfig; + private ApiConfig apiConfig; @Override public boolean checkSign(ApiRequestContext apiRequestContext, String publicKey) { @@ -43,7 +43,7 @@ public class AlipaySigner implements Signer { } Map params = buildParams(apiRequest); try { - return AlipaySignature.rsaCheckV2(params, publicKey, charset, signType, requestParamConfig); + return AlipaySignature.rsaCheckV2(params, publicKey, charset, signType, apiConfig); } catch (SignException e) { ErrorEnum errorEnum = e.getErrorEnum(); ErrorMeta errorMeta = errorEnum.getErrorMeta(); @@ -58,17 +58,17 @@ public class AlipaySigner implements Signer { private Map buildParams(ApiRequest apiRequest) { Map params = new SkipNullHashMap(20); - params.put(requestParamConfig.getAppIdName(), apiRequest.getAppId()); - params.put(requestParamConfig.getApiName(), apiRequest.getMethod()); - params.put(requestParamConfig.getFormatName(), apiRequest.getFormat()); - params.put(requestParamConfig.getCharsetName(), apiRequest.getCharset()); - params.put(requestParamConfig.getSignTypeName(), apiRequest.getSignType()); - params.put(requestParamConfig.getSignName(), apiRequest.getSign()); - params.put(requestParamConfig.getTimestampName(), apiRequest.getTimestamp()); - params.put(requestParamConfig.getVersionName(), apiRequest.getVersion()); - params.put(requestParamConfig.getNotifyUrlName(), apiRequest.getNotifyUrl()); - params.put(requestParamConfig.getAppAuthTokenName(), apiRequest.getAppAuthToken()); - params.put(requestParamConfig.getBizContentName(), apiRequest.getBizContent()); + params.put(apiConfig.getAppIdName(), apiRequest.getAppId()); + params.put(apiConfig.getApiName(), apiRequest.getMethod()); + params.put(apiConfig.getFormatName(), apiRequest.getFormat()); + params.put(apiConfig.getCharsetName(), apiRequest.getCharset()); + params.put(apiConfig.getSignTypeName(), apiRequest.getSignType()); + params.put(apiConfig.getSignName(), apiRequest.getSign()); + params.put(apiConfig.getTimestampName(), apiRequest.getTimestamp()); + params.put(apiConfig.getVersionName(), apiRequest.getVersion()); + params.put(apiConfig.getNotifyUrlName(), apiRequest.getNotifyUrl()); + params.put(apiConfig.getAppAuthTokenName(), apiRequest.getAppAuthToken()); + params.put(apiConfig.getBizContentName(), apiRequest.getBizContent()); return params; } diff --git a/sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/StreamUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StreamUtil.java similarity index 98% rename from sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/StreamUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StreamUtil.java index ab0de39d..23152ed3 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/StreamUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StreamUtil.java @@ -2,7 +2,7 @@ * Alipay.com Inc. * Copyright (c) 2004-2012 All Rights Reserved. */ -package com.gitee.sop.index.service.validate.alipay; +package com.gitee.sop.gateway.service.validate.alipay; import java.io.IOException; import java.io.InputStream; diff --git a/sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/StringUtils.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StringUtils.java similarity index 98% rename from sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/StringUtils.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StringUtils.java index e1be5b0b..c7a340df 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/service/validate/alipay/StringUtils.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/service/validate/alipay/StringUtils.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.service.validate.alipay; +package com.gitee.sop.gateway.service.validate.alipay; /** * 字符串工具类。 diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/AESUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/AESUtil.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/util/AESUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/AESUtil.java index 132be7d5..a9988913 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/AESUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/AESUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import org.apache.commons.codec.binary.Base64; import org.apache.commons.codec.binary.Hex; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/ClassUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/ClassUtil.java similarity index 97% rename from sop-index/src/main/java/com/gitee/sop/index/util/ClassUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/ClassUtil.java index 8b1fc9e8..caec168f 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/ClassUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/ClassUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import java.util.Objects; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/CopyUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/CopyUtil.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/util/CopyUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/CopyUtil.java index 53cec887..f57f8449 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/CopyUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/CopyUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import com.alibaba.fastjson2.JSON; import org.springframework.beans.BeanUtils; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/DateUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/DateUtil.java similarity index 89% rename from sop-index/src/main/java/com/gitee/sop/index/util/DateUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/DateUtil.java index e7b83aff..8fc16f25 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/DateUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/DateUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/JsonUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/JsonUtil.java similarity index 94% rename from sop-index/src/main/java/com/gitee/sop/index/util/JsonUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/JsonUtil.java index a8dbcf79..c2290956 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/JsonUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/JsonUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import com.alibaba.fastjson2.JSON; import org.springframework.util.ObjectUtils; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/KeyStore.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/KeyStore.java similarity index 92% rename from sop-index/src/main/java/com/gitee/sop/index/util/KeyStore.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/KeyStore.java index 864e452c..30d74104 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/KeyStore.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/KeyStore.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; /** * @author 六如 diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/RSANewUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/RSANewUtil.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/util/RSANewUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/RSANewUtil.java index ba61309a..c503785f 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/RSANewUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/RSANewUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import org.apache.commons.codec.binary.Base64; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/RSAUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/RSAUtil.java similarity index 99% rename from sop-index/src/main/java/com/gitee/sop/index/util/RSAUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/RSAUtil.java index 14c65ee4..dfd20bb2 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/RSAUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/RSAUtil.java @@ -1,4 +1,4 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import org.apache.commons.codec.binary.Base64; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/RequestUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/RequestUtil.java similarity index 97% rename from sop-index/src/main/java/com/gitee/sop/index/util/RequestUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/RequestUtil.java index 2e638b18..a0e94390 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/RequestUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/RequestUtil.java @@ -1,9 +1,9 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import com.alibaba.fastjson2.JSONObject; -import com.gitee.sop.index.common.SopConstants; -import com.gitee.sop.index.request.ApiUploadContext; -import com.gitee.sop.index.request.UploadContext; +import com.gitee.sop.gateway.common.SopConstants; +import com.gitee.sop.gateway.request.ApiUploadContext; +import com.gitee.sop.gateway.request.UploadContext; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.apache.commons.fileupload.FileItem; @@ -21,7 +21,6 @@ import java.net.InetAddress; import java.net.URLDecoder; import java.net.UnknownHostException; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; diff --git a/sop-index/src/main/java/com/gitee/sop/index/util/ResponseUtil.java b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/ResponseUtil.java similarity index 88% rename from sop-index/src/main/java/com/gitee/sop/index/util/ResponseUtil.java rename to sop-gateway/src/main/java/com/gitee/sop/gateway/util/ResponseUtil.java index 6c398c76..753d2e77 100644 --- a/sop-index/src/main/java/com/gitee/sop/index/util/ResponseUtil.java +++ b/sop-gateway/src/main/java/com/gitee/sop/gateway/util/ResponseUtil.java @@ -1,11 +1,11 @@ -package com.gitee.sop.index.util; +package com.gitee.sop.gateway.util; import com.alibaba.fastjson2.JSON; import com.fasterxml.jackson.dataformat.xml.XmlMapper; -import com.gitee.sop.index.request.ApiRequest; -import com.gitee.sop.index.request.ApiRequestContext; -import com.gitee.sop.index.request.RequestFormatEnum; -import com.gitee.sop.index.response.ApiResponse; +import com.gitee.sop.gateway.request.ApiRequest; +import com.gitee.sop.gateway.request.ApiRequestContext; +import com.gitee.sop.gateway.request.RequestFormatEnum; +import com.gitee.sop.gateway.response.ApiResponse; import com.gitee.sop.support.dto.FileData; import org.apache.commons.io.IOUtils; import org.springframework.http.MediaType; diff --git a/sop-gateway/src/main/resources/application-dev.properties b/sop-gateway/src/main/resources/application-dev.properties index 8afebce4..0b2b9000 100644 --- a/sop-gateway/src/main/resources/application-dev.properties +++ b/sop-gateway/src/main/resources/application-dev.properties @@ -1,18 +1,8 @@ -# \u66F4\u591A\u914D\u7F6E\uFF0C\u89C1\uFF1AMETA-INF/gateway.properties -server.port=8081 +dubbo.registry.address=zookeeper://localhost:2181 -# mysql\u6570\u636E\u5E93\u914D\u7F6E -mysql.host=localhost:3306 +mybatis.print-sql=true + +# mysql config +mysql.host=127.0.0.1:3306 mysql.username=root mysql.password=root - -# nacos\u6CE8\u518C\u4E2D\u5FC3\u5730\u5740 -register.url=127.0.0.1:8848 - -# \u4E0A\u4F20\u6587\u4EF6\u6700\u5927\u5BB9\u91CF\uFF0C\u9ED8\u8BA410MB -spring.servlet.multipart.max-file-size=10MB - -# \u54CD\u5E94\u8D85\u65F6\uFF0C\u9ED8\u8BA410\u79D2\uFF0810000\uFF09 -#spring.cloud.gateway.httpclient.response-timeout=10000 - -logging.level.com.gitee=debug diff --git a/sop-index/src/main/resources/application-test.properties b/sop-gateway/src/main/resources/application-test.properties similarity index 80% rename from sop-index/src/main/resources/application-test.properties rename to sop-gateway/src/main/resources/application-test.properties index b962aeac..c7b95120 100644 --- a/sop-index/src/main/resources/application-test.properties +++ b/sop-gateway/src/main/resources/application-test.properties @@ -3,11 +3,11 @@ dubbo.registry.address=nacos://localhost:8848 mybatis.print-sql=true # api manager,local/redis -index.manager.api=redis +gateway.manager.api=redis # isv manager,local/redis -index.manager.isv=redis +gateway.manager.isv=redis # secret manger,local/redis -index.manager.secret=redis +gateway.manager.secret=redis # mysql config mysql.host=127.0.0.1:3306 diff --git a/sop-gateway/src/main/resources/application.properties b/sop-gateway/src/main/resources/application.properties index 257b3064..7d9fe151 100644 --- a/sop-gateway/src/main/resources/application.properties +++ b/sop-gateway/src/main/resources/application.properties @@ -1 +1,89 @@ -spring.profiles.active=dev \ No newline at end of file +spring.profiles.active=dev +spring.application.name=sop-index +server.port=8081 + +####### index config ####### +# request entry path +gateway.path=/api +# api manager,local/redis +gateway.manager.api=local +# isv manager,local/redis +gateway.manager.isv=local +# secret manger,local/redis +gateway.manager.secret=local + +####### parameter name config ####### +api.param.app-id-name=app_id +api.param.api-name=method +api.param.format-name=format +api.param.charset-name=charset +api.param.sign-type-name=sign_type +api.param.sign-name=sign +api.param.timestamp-name=timestamp +api.param.version-name=version +api.param.notify-url-name=notify_url +api.param.app-auth-token-name=app_auth_token +api.param.biz-content-name=biz_content + +####### other config ####### +# api request timeout +api.timeout-seconds=300 +# timestamp pattern +api.timestamp-pattern=yyyy-MM-dd HH:mm:ss +# default zone +api.zone-id=Asia/Shanghai + +####### dubbo config ####### +dubbo.protocol.name=dubbo +dubbo.protocol.port=-1 +# ### register config see:https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/registry/overview/ +# ------ +# nacos://localhost:8848 Cluster config:nacos://localhost:8848?backup=localshot:8846,localshot:8847 +# zookeeper://localhost:2181 Cluster config:zookeeper://10.20.153.10:2181?backup=10.20.153.11:2181,10.20.153.12:2181 +# redis://localhost:6379 Cluster config:redis://10.20.153.10:6379?backup=10.20.153.11:6379,10.20.153.12:6379 +# ------ +dubbo.registry.address=nacos://localhost:8848 +# max payload size, 10MB +# 1KB = 1024 +# 1MB = 1048576 +# 1GB = 1073741824 +# 1TB = 1099511627776 +dubbo.protocol.payload=10485760 + +####### file upload config ####### +# one file max size limit +upload.one-file-max-size=1MB +# total files max size limit +upload.total-file-max-size=5MB +# Ensure that this configuration is larger than {upload.one-file-max-size} +spring.servlet.multipart.max-file-size=6MB +# Ensure that this configuration is larger than {upload.total-file-max-size} and {dubbo.protocol.payload} +spring.servlet.multipart.max-request-size=20MB + +####### mysql config ####### +mysql.host=127.0.0.1:3306 +mysql.username= +mysql.password= +mysql.db=sop + +spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver +spring.datasource.url=jdbc:mysql://${mysql.host}/${mysql.db}?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai +spring.datasource.username=${mysql.username} +spring.datasource.password=${mysql.password} + +####### redis config ####### +spring.redis.host=localhost +spring.redis.port=6379 +spring.redis.database=0 + +####### mybatis config ####### +mybatis.fill.com.gitee.fastmybatis.core.support.LocalDateTimeFillInsert=add_time +mybatis.fill.com.gitee.fastmybatis.core.support.LocalDateTimeFillUpdate=update_time +# mybatis config file +mybatis.config-location=classpath:mybatis/mybatisConfig.xml + + +# print SQL +logging.level.com.gitee.sop.gateway.dao=error +logging.level.com.gitee.fastmybatis=info +mybatis.print-sql=false diff --git a/sop-index/src/main/resources/i18n/open/error_en.properties b/sop-gateway/src/main/resources/i18n/open/error_en.properties similarity index 100% rename from sop-index/src/main/resources/i18n/open/error_en.properties rename to sop-gateway/src/main/resources/i18n/open/error_en.properties diff --git a/sop-index/src/main/resources/i18n/open/error_zh_CN.properties b/sop-gateway/src/main/resources/i18n/open/error_zh_CN.properties similarity index 100% rename from sop-index/src/main/resources/i18n/open/error_zh_CN.properties rename to sop-gateway/src/main/resources/i18n/open/error_zh_CN.properties diff --git a/sop-index/src/main/resources/i18n/readme.md b/sop-gateway/src/main/resources/i18n/readme.md similarity index 100% rename from sop-index/src/main/resources/i18n/readme.md rename to sop-gateway/src/main/resources/i18n/readme.md diff --git a/sop-index/src/main/resources/mybatis/mybatisConfig.xml b/sop-gateway/src/main/resources/mybatis/mybatisConfig.xml similarity index 100% rename from sop-index/src/main/resources/mybatis/mybatisConfig.xml rename to sop-gateway/src/main/resources/mybatis/mybatisConfig.xml diff --git a/sop-gateway/.gitignore b/sop-gateway_old/.gitignore similarity index 100% rename from sop-gateway/.gitignore rename to sop-gateway_old/.gitignore diff --git a/sop-gateway_old/pom.xml b/sop-gateway_old/pom.xml new file mode 100644 index 00000000..dae11134 --- /dev/null +++ b/sop-gateway_old/pom.xml @@ -0,0 +1,104 @@ + + + + com.gitee.sop + sop-parent + 5.0.0-SNAPSHOT + ../pom.xml + + + 4.0.0 + sop-gateway + + + 1.8 + + + + + + com.gitee.sop + sop-bridge-nacos + + ${project.version} + + + + org.springframework.cloud + spring-cloud-starter-gateway + + + org.springframework.boot + spring-boot-starter-webflux + + + org.springframework.boot + spring-boot-starter-actuator + + + + net.oschina.durcframework + fastmybatis-spring-boot-starter + + + mysql + mysql-connector-java + runtime + + + javax.servlet + javax.servlet-api + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.projectlombok + lombok + 1.18.4 + provided + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.12.4 + + true + + + + + + + + spring-milestones + Spring Milestones + https://repo.spring.io/milestone + + + maven2 + maven2 + https://repo1.maven.org/maven2 + + + + diff --git a/sop-gateway/readme.md b/sop-gateway_old/readme.md similarity index 100% rename from sop-gateway/readme.md rename to sop-gateway_old/readme.md diff --git a/sop-gateway_old/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java new file mode 100644 index 00000000..2b536bd1 --- /dev/null +++ b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/SopGatewayApplication.java @@ -0,0 +1,18 @@ +package com.gitee.sop.gateway; + +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@MapperScan(basePackages = { + "com.gitee.sop.gateway.mapper" +}) +@SpringBootApplication(scanBasePackages = "com.gitee.sop") +public class SopGatewayApplication { + + public static void main(String[] args) { + SpringApplication.run(SopGatewayApplication.class, args); + } + +} + diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/config/MyConfig.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/config/MyConfig.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/config/MyConfig.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/config/MyConfig.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigGray.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigGray.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigGray.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigGray.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigGrayInstance.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigGrayInstance.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigGrayInstance.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigGrayInstance.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigLimit.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigLimit.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigLimit.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigLimit.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigRouteBase.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigRouteBase.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigRouteBase.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigRouteBase.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigServiceRoute.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigServiceRoute.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/ConfigServiceRoute.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/ConfigServiceRoute.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/IsvDetailDTO.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/IsvDetailDTO.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/IsvDetailDTO.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/IsvDetailDTO.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/IsvInfo.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/IsvInfo.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/IsvInfo.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/IsvInfo.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/MonitorInfo.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/MonitorInfo.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/MonitorInfo.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/MonitorInfo.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/MonitorInfoError.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/MonitorInfoError.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/MonitorInfoError.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/MonitorInfoError.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/PermIsvRole.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/PermIsvRole.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/PermIsvRole.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/PermIsvRole.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/entity/PermRolePermission.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/PermRolePermission.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/entity/PermRolePermission.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/entity/PermRolePermission.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptor.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptor.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptor.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptor.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptorService.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptorService.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptorService.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/interceptor/MonitorRouteInterceptorService.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/interceptor/MyRouteInterceptor.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/interceptor/MyRouteInterceptor.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/interceptor/MyRouteInterceptor.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/interceptor/MyRouteInterceptor.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbEnvGrayManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbEnvGrayManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbEnvGrayManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbEnvGrayManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbIPBlacklistManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbIPBlacklistManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbIPBlacklistManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbIPBlacklistManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbIsvManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbIsvManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbIsvManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbIsvManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbIsvRoutePermissionManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbIsvRoutePermissionManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbIsvRoutePermissionManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbIsvRoutePermissionManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbLimitConfigManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbLimitConfigManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbLimitConfigManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbLimitConfigManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbMonitorInfoManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbMonitorInfoManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbMonitorInfoManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbMonitorInfoManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbRouteConfigManager.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbRouteConfigManager.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbRouteConfigManager.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbRouteConfigManager.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbRoutesProcessor.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbRoutesProcessor.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/manager/DbRoutesProcessor.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/manager/DbRoutesProcessor.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayInstanceMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayInstanceMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayInstanceMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayInstanceMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigGrayMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigLimitMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigLimitMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigLimitMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigLimitMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteBaseMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteBaseMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteBaseMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteBaseMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigRouteMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigServiceRouteMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigServiceRouteMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/ConfigServiceRouteMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/ConfigServiceRouteMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/IPBlacklistMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/IPBlacklistMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/IPBlacklistMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/IPBlacklistMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/IsvInfoMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/IsvInfoMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/IsvInfoMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/IsvInfoMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoErrorMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoErrorMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoErrorMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoErrorMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/MonitorInfoMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/PermIsvRoleMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/PermIsvRoleMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/PermIsvRoleMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/PermIsvRoleMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/PermRolePermissionMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/PermRolePermissionMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/PermRolePermissionMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/PermRolePermissionMapper.java diff --git a/sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/SystemLockMapper.java b/sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/SystemLockMapper.java similarity index 100% rename from sop-gateway/src/main/java/com/gitee/sop/gateway/mapper/SystemLockMapper.java rename to sop-gateway_old/src/main/java/com/gitee/sop/gateway/mapper/SystemLockMapper.java diff --git a/sop-gateway/src/main/resources/META-INF/gateway.properties b/sop-gateway_old/src/main/resources/META-INF/gateway.properties similarity index 100% rename from sop-gateway/src/main/resources/META-INF/gateway.properties rename to sop-gateway_old/src/main/resources/META-INF/gateway.properties diff --git a/sop-gateway/src/main/resources/META-INF/spring.factories b/sop-gateway_old/src/main/resources/META-INF/spring.factories similarity index 100% rename from sop-gateway/src/main/resources/META-INF/spring.factories rename to sop-gateway_old/src/main/resources/META-INF/spring.factories diff --git a/sop-gateway_old/src/main/resources/application-dev.properties b/sop-gateway_old/src/main/resources/application-dev.properties new file mode 100644 index 00000000..8afebce4 --- /dev/null +++ b/sop-gateway_old/src/main/resources/application-dev.properties @@ -0,0 +1,18 @@ +# \u66F4\u591A\u914D\u7F6E\uFF0C\u89C1\uFF1AMETA-INF/gateway.properties +server.port=8081 + +# mysql\u6570\u636E\u5E93\u914D\u7F6E +mysql.host=localhost:3306 +mysql.username=root +mysql.password=root + +# nacos\u6CE8\u518C\u4E2D\u5FC3\u5730\u5740 +register.url=127.0.0.1:8848 + +# \u4E0A\u4F20\u6587\u4EF6\u6700\u5927\u5BB9\u91CF\uFF0C\u9ED8\u8BA410MB +spring.servlet.multipart.max-file-size=10MB + +# \u54CD\u5E94\u8D85\u65F6\uFF0C\u9ED8\u8BA410\u79D2\uFF0810000\uFF09 +#spring.cloud.gateway.httpclient.response-timeout=10000 + +logging.level.com.gitee=debug diff --git a/sop-gateway_old/src/main/resources/application.properties b/sop-gateway_old/src/main/resources/application.properties new file mode 100644 index 00000000..257b3064 --- /dev/null +++ b/sop-gateway_old/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.profiles.active=dev \ No newline at end of file diff --git a/sop-gateway/src/main/resources/mybatis/mapper/MonitorInfoErrorMapper.xml b/sop-gateway_old/src/main/resources/mybatis/mapper/MonitorInfoErrorMapper.xml similarity index 100% rename from sop-gateway/src/main/resources/mybatis/mapper/MonitorInfoErrorMapper.xml rename to sop-gateway_old/src/main/resources/mybatis/mapper/MonitorInfoErrorMapper.xml diff --git a/sop-gateway/src/main/resources/mybatis/mapper/MonitorInfoMapper.xml b/sop-gateway_old/src/main/resources/mybatis/mapper/MonitorInfoMapper.xml similarity index 100% rename from sop-gateway/src/main/resources/mybatis/mapper/MonitorInfoMapper.xml rename to sop-gateway_old/src/main/resources/mybatis/mapper/MonitorInfoMapper.xml diff --git a/sop-gateway/src/test/java/com/gitee/sop/gateway/ExcludeTest.java b/sop-gateway_old/src/test/java/com/gitee/sop/gateway/ExcludeTest.java similarity index 100% rename from sop-gateway/src/test/java/com/gitee/sop/gateway/ExcludeTest.java rename to sop-gateway_old/src/test/java/com/gitee/sop/gateway/ExcludeTest.java diff --git a/sop-gateway/src/test/java/com/gitee/sop/gateway/RoundRobinTest.java b/sop-gateway_old/src/test/java/com/gitee/sop/gateway/RoundRobinTest.java similarity index 100% rename from sop-gateway/src/test/java/com/gitee/sop/gateway/RoundRobinTest.java rename to sop-gateway_old/src/test/java/com/gitee/sop/gateway/RoundRobinTest.java diff --git a/sop-gateway/src/test/java/com/gitee/sop/gateway/SopGatewayApplicationTests.java b/sop-gateway_old/src/test/java/com/gitee/sop/gateway/SopGatewayApplicationTests.java similarity index 100% rename from sop-gateway/src/test/java/com/gitee/sop/gateway/SopGatewayApplicationTests.java rename to sop-gateway_old/src/test/java/com/gitee/sop/gateway/SopGatewayApplicationTests.java diff --git a/sop-gateway/src/test/java/com/gitee/sop/gateway/UrlPatternTest.java b/sop-gateway_old/src/test/java/com/gitee/sop/gateway/UrlPatternTest.java similarity index 100% rename from sop-gateway/src/test/java/com/gitee/sop/gateway/UrlPatternTest.java rename to sop-gateway_old/src/test/java/com/gitee/sop/gateway/UrlPatternTest.java diff --git a/sop-index/pom.xml b/sop-index/pom.xml deleted file mode 100644 index 125d2cda..00000000 --- a/sop-index/pom.xml +++ /dev/null @@ -1,278 +0,0 @@ - - - 4.0.0 - - org.springframework.boot - spring-boot-starter-parent - 2.6.15 - - - - com.gitee.sop - sop-index - 5.0.0-SNAPSHOT - - - 8 - 8 - UTF-8 - - - 2.6.15 - - 2021.0.5 - - - 2021.0.5.0 - - 3.2.10 - - 4.11 - 2.5 - 1.3.3 - 3.2.2 - 3.8.1 - 1.11 - 1.2 - 2.0.1.Final - 6.0.13.Final - 3.0.10 - - - - - com.gitee.sop - sop-service-support - 5.0.0-SNAPSHOT - - - - org.springframework.boot - spring-boot-starter - - - - org.springframework.boot - spring-boot-starter-web - - - - org.apache.dubbo - dubbo-spring-boot-starter - - - - - org.apache.dubbo - dubbo-nacos-spring-boot-starter - - - - io.gitee.durcframework - fastmybatis-spring-boot-starter - - - - mysql - mysql-connector-java - - - - org.springframework.boot - spring-boot-starter-jdbc - - - - org.springframework.boot - spring-boot-starter-data-redis - - - - - commons-codec - commons-codec - - - org.apache.commons - commons-lang3 - - - commons-fileupload - commons-fileupload - - - - org.hibernate - hibernate-validator - - - - com.fasterxml.jackson.dataformat - jackson-dataformat-xml - - - - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.apache.dubbo - dubbo-dependencies-zookeeper-curator5 - ${dubbo.version} - pom - provided - - - - org.projectlombok - lombok - true - - - - - - - - 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 - - - org.apache.dubbo - dubbo-bom - ${dubbo.version} - pom - import - - - - io.gitee.durcframework - fastmybatis-spring-boot-starter - ${fastmybatis.version} - - - - com.squareup.okhttp3 - okhttp - 3.14.7 - - - - javax.validation - validation-api - ${validation-api.version} - - - org.hibernate - hibernate-validator - ${hibernate-validator.version} - - - - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - - - commons-collections - commons-collections - ${commons-collection.version} - - - commons-io - commons-io - ${commons-io.version} - - - commons-codec - commons-codec - ${commons-codec.version} - - - commons-fileupload - commons-fileupload - ${commons-fileupload.version} - - - commons-logging - commons-logging - ${commons-logging.version} - - - - org.projectlombok - lombok - 1.18.30 - - - javax.servlet - javax.servlet-api - 3.1.0 - - - - - - - aliyun - aliyun - https://maven.aliyun.com/repository/public - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - org.apache.maven.plugins - maven-surefire-plugin - 2.12.4 - - true - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.1 - - ${java.version} - ${java.version} - UTF-8 - - - - - - diff --git a/sop-index/src/main/java/com/gitee/sop/index/SopIndexApplication.java b/sop-index/src/main/java/com/gitee/sop/index/SopIndexApplication.java deleted file mode 100644 index b470841d..00000000 --- a/sop-index/src/main/java/com/gitee/sop/index/SopIndexApplication.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.gitee.sop.index; - -import org.apache.dubbo.config.spring.context.annotation.EnableDubbo; -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -@EnableDubbo -public class SopIndexApplication { - - public static void main(String[] args) { - SpringApplication.run(SopIndexApplication.class, args); - } - -} diff --git a/sop-index/src/main/java/com/gitee/sop/index/config/ApiConfig.java b/sop-index/src/main/java/com/gitee/sop/index/config/ApiConfig.java deleted file mode 100644 index f93dc8b5..00000000 --- a/sop-index/src/main/java/com/gitee/sop/index/config/ApiConfig.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.gitee.sop.index.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.context.annotation.Configuration; - -/** - * @author 六如 - */ -@Configuration -@ConfigurationProperties(prefix = "api") -@Data -public class ApiConfig { - - /** - * 超时时间 - */ - private int timeoutSeconds = 60 * 5; - - /** - * 是否开启限流功能 - */ - private boolean openLimit = true; - - /** - * 显示返回sign - */ - private boolean showReturnSign = true; - - /** 时间戳格式 */ - private String timestampPattern = "yyyy-MM-dd HH:mm:ss"; - - /** - * 时区,默认:Asia/Shanghai - */ - private String zoneId = "Asia/Shanghai"; -} diff --git a/sop-index/src/main/java/com/gitee/sop/index/config/RequestParamConfig.java b/sop-index/src/main/java/com/gitee/sop/index/config/RequestParamConfig.java deleted file mode 100644 index b048e956..00000000 --- a/sop-index/src/main/java/com/gitee/sop/index/config/RequestParamConfig.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.gitee.sop.index.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.context.annotation.Configuration; - -/** - * @author 六如 - */ -@Configuration -@ConfigurationProperties(prefix = "request.param") -@Data -public class RequestParamConfig { - - /** 分配给开发者的应用ID */ - private String appIdName = "app_id"; - /** 接口名称 */ - private String apiName = "method"; - /** 仅支持JSON */ - private String formatName = "format"; - /** 请求使用的编码格式 */ - private String charsetName = "charset"; - /** 商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2 */ - private String signTypeName = "sign_type"; - /** 商户请求参数的签名串 */ - private String signName = "sign"; - /** 发送请求的时间 */ - private String timestampName = "timestamp"; - /** 调用的接口版本 */ - private String versionName = "version"; - /** 开放平台主动通知商户服务器里指定的页面http/https路径 */ - private String notifyUrlName = "notify_url"; - /** OAuth 2.0授权token */ - private String appAuthTokenName = "app_auth_token"; - /** 请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档 */ - private String bizContentName = "biz_content"; - -} diff --git a/sop-index/src/main/resources/application-dev.properties b/sop-index/src/main/resources/application-dev.properties deleted file mode 100644 index 0b2b9000..00000000 --- a/sop-index/src/main/resources/application-dev.properties +++ /dev/null @@ -1,8 +0,0 @@ -dubbo.registry.address=zookeeper://localhost:2181 - -mybatis.print-sql=true - -# mysql config -mysql.host=127.0.0.1:3306 -mysql.username=root -mysql.password=root diff --git a/sop-index/src/main/resources/application.properties b/sop-index/src/main/resources/application.properties deleted file mode 100644 index f1ab3fd8..00000000 --- a/sop-index/src/main/resources/application.properties +++ /dev/null @@ -1,89 +0,0 @@ -spring.profiles.active=dev -spring.application.name=sop-index -server.port=8081 - -####### index config ####### -# request entry path -index.path=/api -# api manager,local/redis -index.manager.api=local -# isv manager,local/redis -index.manager.isv=local -# secret manger,local/redis -index.manager.secret=local - -####### request parameter name config ####### -request.param.app-id-name=app_id -request.param.api-name=method -request.param.format-name=format -request.param.charset-name=charset -request.param.sign-type-name=sign_type -request.param.sign-name=sign -request.param.timestamp-name=timestamp -request.param.version-name=version -request.param.notify-url-name=notify_url -request.param.app-auth-token-name=app_auth_token -request.param.biz-content-name=biz_content - -####### api config -# api request timeout -api.timeout-seconds=300 -# timestamp pattern -api.timestamp-pattern=yyyy-MM-dd HH:mm:ss -# default zone -api.zone-id=Asia/Shanghai - -####### dubbo config ####### -dubbo.protocol.name=dubbo -dubbo.protocol.port=-1 -# ### register config see:https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/reference-manual/registry/overview/ -# ------ -# nacos://localhost:8848 Cluster config:nacos://localhost:8848?backup=localshot:8846,localshot:8847 -# zookeeper://localhost:2181 Cluster config:zookeeper://10.20.153.10:2181?backup=10.20.153.11:2181,10.20.153.12:2181 -# redis://localhost:6379 Cluster config:redis://10.20.153.10:6379?backup=10.20.153.11:6379,10.20.153.12:6379 -# ------ -dubbo.registry.address=nacos://localhost:8848 -# max payload size, 10MB -# 1KB = 1024 -# 1MB = 1048576 -# 1GB = 1073741824 -# 1TB = 1099511627776 -dubbo.protocol.payload=10485760 - -####### file upload config ####### -# one file max size limit -upload.one-file-max-size=1MB -# total files max size limit -upload.total-file-max-size=5MB -# Ensure that this configuration is larger than {upload.one-file-max-size} -spring.servlet.multipart.max-file-size=6MB -# Ensure that this configuration is larger than {upload.total-file-max-size} and {dubbo.protocol.payload} -spring.servlet.multipart.max-request-size=20MB - -####### mysql config ####### -mysql.host=127.0.0.1:3306 -mysql.username= -mysql.password= -mysql.db=sop - -spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -spring.datasource.url=jdbc:mysql://${mysql.host}/${mysql.db}?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai -spring.datasource.username=${mysql.username} -spring.datasource.password=${mysql.password} - -####### redis config ####### -spring.redis.host=localhost -spring.redis.port=6379 -spring.redis.database=0 - -####### mybatis config ####### -mybatis.fill.com.gitee.fastmybatis.core.support.LocalDateTimeFillInsert=add_time -mybatis.fill.com.gitee.fastmybatis.core.support.LocalDateTimeFillUpdate=update_time -# mybatis config file -mybatis.config-location=classpath:mybatis/mybatisConfig.xml - - -# print SQL -logging.level.com.gitee.sop.index.dao=error -logging.level.com.gitee.fastmybatis=info -mybatis.print-sql=false diff --git a/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java b/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java index b3266c39..3316bfdc 100644 --- a/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java +++ b/sop-test/src/test/java/com/gitee/sop/test/AlipayClientPostTest.java @@ -49,7 +49,6 @@ public class AlipayClientPostTest extends TestBase { // 业务参数 Map bizContent = new HashMap<>(); bizContent.put("id", "1"); - bizContent.put("name", "葫芦娃"); params.put("biz_content", JSON.toJSONString(bizContent)); String content = AlipaySignature.getSignContent(params);