├── .gitignore ├── LICENSE ├── README.md ├── document ├── DEPLOY.md ├── README.md ├── authority.png └── login.png ├── dubbo-api ├── dubbo-api-admin │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── api │ │ │ └── admin │ │ │ ├── ApiAdminApplication.java │ │ │ ├── config │ │ │ └── ApiSwaggerConfig.java │ │ │ ├── controller │ │ │ ├── authentication │ │ │ │ └── AuthenticationController.java │ │ │ ├── authority │ │ │ │ ├── StaffAuthorityController.java │ │ │ │ └── SystemAuthorityController.java │ │ │ ├── search │ │ │ │ └── SearchController.java │ │ │ ├── staff │ │ │ │ └── StaffInfoController.java │ │ │ └── test │ │ │ │ └── TestController.java │ │ │ ├── dto │ │ │ ├── authentication │ │ │ │ ├── StaffLoginDTO.java │ │ │ │ └── StaffRegisterDTO.java │ │ │ ├── authority │ │ │ │ ├── StaffRoleDTO.java │ │ │ │ ├── SystemAuthorityDTO.java │ │ │ │ ├── SystemRoleAuthorityDTO.java │ │ │ │ └── SystemRoleDTO.java │ │ │ ├── search │ │ │ │ └── company │ │ │ │ │ └── CompanyDTO.java │ │ │ ├── staff │ │ │ │ └── StaffLogPageDTO.java │ │ │ └── test │ │ │ │ └── TestDTO.java │ │ │ └── vo │ │ │ ├── authentication │ │ │ └── AuthLoginVO.java │ │ │ ├── search │ │ │ └── company │ │ │ │ └── CompanyVO.java │ │ │ ├── staff │ │ │ ├── StaffInfoVO.java │ │ │ ├── StaffLoginLogVO.java │ │ │ └── StaffLogoutLogVO.java │ │ │ └── test │ │ │ └── TestVO.java │ │ └── resources │ │ ├── application.yaml │ │ ├── banner.txt │ │ ├── i18n │ │ ├── message.properties │ │ ├── message_en_US.properties │ │ └── message_zh_CN.properties │ │ └── static │ │ └── favicon.ico ├── dubbo-api-monitor │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── api │ │ │ └── monitor │ │ │ ├── MonitorApiApplication.java │ │ │ └── config │ │ │ ├── MonitorSecurityConfig.java │ │ │ └── RedirectFilter.java │ │ └── resources │ │ ├── application.yaml │ │ └── banner.txt ├── dubbo-api-test │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── api │ │ │ └── test │ │ │ ├── ApiTestApplication.java │ │ │ ├── config │ │ │ ├── ApiSwaggerConfig.java │ │ │ ├── LiyzAsyncConfig.java │ │ │ ├── LogRequestBodyAdvice.java │ │ │ ├── MybatisPlusConfig.java │ │ │ ├── RestClientConfig.java │ │ │ ├── RunRiskIndexProperties.java │ │ │ ├── SentinelRuleInitFunc.java │ │ │ ├── SscProperties.java │ │ │ └── WebClientConfig.java │ │ │ ├── controller │ │ │ ├── advice │ │ │ │ └── AdviceController.java │ │ │ ├── ecdh │ │ │ │ ├── EcdhController.java │ │ │ │ ├── EcdhController1.java │ │ │ │ └── Test.java │ │ │ ├── export │ │ │ │ └── ExportController.java │ │ │ ├── file │ │ │ │ └── FileController.java │ │ │ ├── http │ │ │ │ └── TestHttpController.java │ │ │ ├── json │ │ │ │ └── JsonController.java │ │ │ ├── limit │ │ │ │ └── TestLimitController.java │ │ │ ├── lock │ │ │ │ └── TestLockController.java │ │ │ ├── mq │ │ │ │ └── TestMqController.java │ │ │ ├── pattern │ │ │ │ └── PatternController.java │ │ │ ├── redis │ │ │ │ ├── TestRedisController.java │ │ │ │ └── TestZSetController.java │ │ │ ├── shardingjdbc │ │ │ │ └── ShardingJdbcController.java │ │ │ ├── skywalking │ │ │ │ └── TestSkywalkingController.java │ │ │ ├── thread │ │ │ │ └── TestThreadController.java │ │ │ ├── valid │ │ │ │ └── TestValidationController.java │ │ │ └── version │ │ │ │ └── TestVersionController.java │ │ │ ├── dao │ │ │ └── UserLoginLogMapper.java │ │ │ ├── dto │ │ │ ├── export │ │ │ │ └── ExportDTO.java │ │ │ ├── lock │ │ │ │ └── TestDTO.java │ │ │ ├── redis │ │ │ │ └── TestScoreDTO.java │ │ │ └── shardingjdbc │ │ │ │ ├── UserDTO.java │ │ │ │ └── UserLoginLogDTO.java │ │ │ ├── event │ │ │ └── mq │ │ │ │ └── TestRocketMQListener.java │ │ │ ├── excel │ │ │ └── SscStaffExcel.java │ │ │ ├── exception │ │ │ └── TestBlockLimitException.java │ │ │ ├── model │ │ │ └── UserLoginLogDO.java │ │ │ ├── result │ │ │ ├── PageResult.java │ │ │ └── Result.java │ │ │ ├── service │ │ │ ├── SschaService.java │ │ │ ├── UserLoginLogService.java │ │ │ └── impl │ │ │ │ ├── TestServiceImpl.java │ │ │ │ └── UserLoginLogServiceImpl.java │ │ │ ├── util │ │ │ ├── BeanUtil.java │ │ │ ├── RocketMQUtil.java │ │ │ └── TxMessage.java │ │ │ └── vo │ │ │ ├── export │ │ │ └── SscPageVO.java │ │ │ ├── lock │ │ │ └── TestVO.java │ │ │ ├── shardingjdbc │ │ │ └── UserLoginLogVO.java │ │ │ └── ssc │ │ │ └── CompanyInfoVO.java │ │ └── resources │ │ ├── META-INF │ │ └── services │ │ │ └── com.alibaba.csp.sentinel.init.InitFunc │ │ ├── application.yaml │ │ ├── banner.txt │ │ ├── puml │ │ ├── auth.puml │ │ ├── login.puml │ │ ├── 商品视频详情.png │ │ ├── 商品视频详情.puml │ │ ├── 添加视频-.png │ │ └── 添加视频.puml │ │ ├── sharding.yaml │ │ └── static │ │ └── favicon.ico ├── dubbo-api-user │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── api │ │ │ └── user │ │ │ ├── UserApiApplication.java │ │ │ ├── config │ │ │ ├── ApiSwaggerConfig.java │ │ │ └── LiyzAsyncConfig.java │ │ │ ├── controller │ │ │ ├── authen │ │ │ │ └── AuthenticationController.java │ │ │ ├── search │ │ │ │ ├── bid │ │ │ │ │ └── BidController.java │ │ │ │ ├── company │ │ │ │ │ └── CompanyController.java │ │ │ │ ├── finance │ │ │ │ │ └── CompanyFinancingController.java │ │ │ │ └── investor │ │ │ │ │ └── CompanyInvestorController.java │ │ │ └── user │ │ │ │ ├── TestDubboValidationController.java │ │ │ │ └── UserInfoController.java │ │ │ ├── dto │ │ │ ├── authen │ │ │ │ ├── UserLoginDTO.java │ │ │ │ └── UserRegisterDTO.java │ │ │ └── search │ │ │ │ ├── bid │ │ │ │ └── BidTenderCountDTO.java │ │ │ │ ├── company │ │ │ │ └── CompanyDTO.java │ │ │ │ ├── export │ │ │ │ └── ExportDTO.java │ │ │ │ ├── finance │ │ │ │ └── CompanyFinancingDTO.java │ │ │ │ └── investor │ │ │ │ └── CompanyInvestorDTO.java │ │ │ ├── event │ │ │ ├── guava │ │ │ │ ├── LoginEvent.java │ │ │ │ ├── config │ │ │ │ │ └── GuavaEventConfig.java │ │ │ │ └── listener │ │ │ │ │ └── LoginEventListener.java │ │ │ └── spring │ │ │ │ ├── SearchEvent.java │ │ │ │ └── listener │ │ │ │ └── SearchEventListener.java │ │ │ ├── excel │ │ │ └── SscStaffExcel.java │ │ │ └── vo │ │ │ ├── authen │ │ │ └── AuthLoginVO.java │ │ │ ├── search │ │ │ ├── AggVO.java │ │ │ ├── bid │ │ │ │ └── BidTenderCountVO.java │ │ │ ├── company │ │ │ │ ├── CompanyBasicVO.java │ │ │ │ └── CompanyVO.java │ │ │ ├── finance │ │ │ │ └── CompanyFinancingVO.java │ │ │ └── investor │ │ │ │ └── CompanyInvestorVO.java │ │ │ └── user │ │ │ ├── UserInfoVO.java │ │ │ ├── UserLoginLogVO.java │ │ │ └── UserLogoutLogVO.java │ │ └── resources │ │ ├── application.yaml │ │ ├── banner.txt │ │ ├── i18n │ │ ├── message.properties │ │ ├── message_en_US.properties │ │ └── message_zh_CN.properties │ │ └── static │ │ └── favicon.ico └── pom.xml ├── dubbo-common ├── dubbo-common-api-starter │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── common │ │ │ └── api │ │ │ ├── advice │ │ │ └── GlobalControllerExceptionAdvice.java │ │ │ ├── config │ │ │ ├── SwaggerConfig.java │ │ │ └── WebMvcAutoConfig.java │ │ │ ├── dto │ │ │ └── PageDTO.java │ │ │ ├── error │ │ │ └── ErrorApiController.java │ │ │ ├── result │ │ │ ├── PageResult.java │ │ │ └── Result.java │ │ │ └── util │ │ │ ├── CookieUtil.java │ │ │ ├── HttpServletContext.java │ │ │ └── I18nMessageUtil.java │ │ └── resources │ │ └── META-INF │ │ └── spring │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports ├── dubbo-common-dao-starter │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── common │ │ │ └── dao │ │ │ ├── config │ │ │ ├── DesensitizationProperties.java │ │ │ └── MybatisPlusAutoConfig.java │ │ │ ├── handler │ │ │ └── MybatisPlusMetaObjectHandler.java │ │ │ ├── interceptor │ │ │ ├── MapperParamInterceptor.java │ │ │ └── MapperResultInterceptor.java │ │ │ ├── model │ │ │ └── BaseDO.java │ │ │ └── transaction │ │ │ ├── LocalTransactionTemplate.java │ │ │ ├── callback │ │ │ ├── LocalTransactionCallback.java │ │ │ └── LocalTransactionCallbackWithoutResult.java │ │ │ ├── impl │ │ │ └── LocalTransactionTemplateImpl.java │ │ │ └── service │ │ │ └── HandlerService.java │ │ └── resources │ │ └── META-INF │ │ └── spring │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports ├── dubbo-common-lock-starter │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── common │ │ │ └── lock │ │ │ ├── config │ │ │ └── LockAutoConfig.java │ │ │ ├── exception │ │ │ ├── LockException.java │ │ │ └── LockExceptionCodeEnum.java │ │ │ ├── service │ │ │ ├── CommonInitService.java │ │ │ ├── LockInterface.java │ │ │ └── RedissonInitService.java │ │ │ └── util │ │ │ └── RedisLockUtil.java │ │ └── resources │ │ └── META-INF │ │ └── spring │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports ├── dubbo-common-remote │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── liyz │ │ └── boot3 │ │ └── common │ │ └── remote │ │ ├── exception │ │ ├── CommonExceptionCodeEnum.java │ │ ├── IExceptionService.java │ │ └── RemoteServiceException.java │ │ └── page │ │ ├── PageBO.java │ │ └── RemotePage.java ├── dubbo-common-search-starter │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── common │ │ │ └── search │ │ │ ├── annotation │ │ │ └── EsMapperScan.java │ │ │ ├── config │ │ │ ├── ElasticsearchPoolProperties.java │ │ │ ├── EsMapperScannerRegistrar.java │ │ │ └── EsPlusAutoConfig.java │ │ │ ├── exception │ │ │ ├── SearchException.java │ │ │ └── SearchExceptionCodeEnum.java │ │ │ ├── mapper │ │ │ ├── ClassPathEsMapperScanner.java │ │ │ ├── EsMapper.java │ │ │ ├── EsMapperFactoryBean.java │ │ │ ├── EsMapperRegistry.java │ │ │ └── EsMapperScannerConfig.java │ │ │ ├── metadata │ │ │ ├── IndexFieldInfo.java │ │ │ └── IndexInfo.java │ │ │ ├── method │ │ │ ├── AbstractEsMethod.java │ │ │ ├── Agg.java │ │ │ ├── EsMapperMethod.java │ │ │ ├── EsMethod.java │ │ │ ├── IEsMethod.java │ │ │ ├── SelectBatchIds.java │ │ │ ├── SelectById.java │ │ │ ├── SelectOne.java │ │ │ └── SelectPage.java │ │ │ ├── proxy │ │ │ ├── EsMapperProxy.java │ │ │ └── EsMapperProxyFactory.java │ │ │ ├── query │ │ │ ├── AbstractLambdaWrapper.java │ │ │ ├── AbstractWrapper.java │ │ │ ├── Column.java │ │ │ ├── Condition.java │ │ │ ├── EsBoolChildKey.java │ │ │ ├── EsBoolKey.java │ │ │ ├── EsSortField.java │ │ │ ├── LambdaQueryWrapper.java │ │ │ ├── Query.java │ │ │ ├── QueryAgg.java │ │ │ ├── QuerySort.java │ │ │ └── Wrapper.java │ │ │ ├── response │ │ │ ├── AggResponse.java │ │ │ └── EsResponse.java │ │ │ ├── toolkit │ │ │ ├── ColumnCache.java │ │ │ ├── IdeaProxyLambdaMeta.java │ │ │ ├── JsonNameBeanDeserializerModifier.java │ │ │ ├── LambdaMeta.java │ │ │ ├── ReflectLambdaMeta.java │ │ │ ├── Reflector.java │ │ │ ├── SFunction.java │ │ │ ├── SerializedLambda.java │ │ │ └── ShadowLambdaMeta.java │ │ │ └── util │ │ │ ├── GlobalEsCacheUtil.java │ │ │ ├── IndexInfoUtil.java │ │ │ └── LambdaUtils.java │ │ └── resources │ │ └── META-INF │ │ └── spring │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports ├── dubbo-common-service │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── liyz │ │ └── boot3 │ │ └── common │ │ └── service │ │ ├── constant │ │ └── CommonServiceConstant.java │ │ └── util │ │ └── BeanUtil.java ├── dubbo-common-util │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── liyz │ │ └── boot3 │ │ └── common │ │ └── util │ │ ├── ClassUtils.java │ │ ├── CryptoUtil.java │ │ ├── DateUtil.java │ │ ├── DesensitizeUtil.java │ │ ├── IPUtil.java │ │ ├── JsonMapperUtil.java │ │ ├── PatternUtil.java │ │ ├── PropertyUtil.java │ │ ├── RandomUtil.java │ │ ├── ReflectorUtil.java │ │ ├── ResourceUtil.java │ │ ├── TraceIdUtil.java │ │ ├── TypeParameterResolverUtil.java │ │ ├── VirtualThreadUtil.java │ │ ├── annotation │ │ ├── Desensitization.java │ │ └── Trim.java │ │ ├── constant │ │ └── DesensitizationType.java │ │ ├── deserializer │ │ └── TrimDeserializer.java │ │ ├── resolver │ │ └── TypeParameterResolver.java │ │ ├── serializer │ │ ├── DesensitizationSerializer.java │ │ └── DoubleSerializer.java │ │ └── service │ │ ├── DesensitizeService.java │ │ └── impl │ │ ├── CardNoDesensitizeServiceImpl.java │ │ ├── DefaultDesensitizeServiceImpl.java │ │ ├── DfaDesensitizeServiceImpl.java │ │ ├── EmailDesensitizeServiceImpl.java │ │ ├── EncryptDecryptDesensitizeServiceImpl.java │ │ ├── IgnoreDesensitizeServiceImpl.java │ │ ├── MobileDesensitizeServiceImpl.java │ │ ├── RealNameDesensitizeServiceImpl.java │ │ ├── SelfDefinitionDesensitizeServiceImpl.java │ │ └── TrimDesensitizeServiceImpl.java ├── dubbo-exception-filter │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── exception │ │ │ ├── filter │ │ │ └── RemoteServiceExceptionFilter.java │ │ │ └── util │ │ │ └── LoginUserContext.java │ │ └── resources │ │ └── META-INF │ │ └── dubbo │ │ └── internal │ │ └── org.apache.dubbo.rpc.Filter ├── dubbo-security-client-starter │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── security │ │ │ └── client │ │ │ ├── advice │ │ │ └── AuthExceptionHandleAdvice.java │ │ │ ├── annotation │ │ │ ├── Anonymous.java │ │ │ └── AuthUser.java │ │ │ ├── aspect │ │ │ └── AuthInfoInjectionAspect.java │ │ │ ├── bo │ │ │ └── LoginBO.java │ │ │ ├── config │ │ │ ├── AnonymousMappingConfig.java │ │ │ ├── AuthSecurityClientAutoConfig.java │ │ │ └── AuthSecurityClientProperties.java │ │ │ ├── constant │ │ │ └── SecurityClientConstant.java │ │ │ ├── context │ │ │ ├── AuthContext.java │ │ │ └── DeviceContext.java │ │ │ ├── dto │ │ │ └── BaseDTO.java │ │ │ ├── filter │ │ │ └── JwtAuthenticationTokenFilter.java │ │ │ ├── handler │ │ │ ├── AuthUserArgumentResolver.java │ │ │ ├── JwtAuthenticationEntryPoint.java │ │ │ └── RestfulAccessDeniedHandler.java │ │ │ ├── properties │ │ │ └── GatewayAuthHeaderProperties.java │ │ │ └── user │ │ │ ├── AuthGrantedAuthority.java │ │ │ ├── AuthUserDetails.java │ │ │ └── impl │ │ │ └── UserDetailsServiceImpl.java │ │ └── resources │ │ ├── META-INF │ │ ├── spring-configuration-metadata.json │ │ └── spring │ │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports │ │ └── security │ │ └── serialize.allowlist └── pom.xml ├── dubbo-dependencies-bom └── pom.xml ├── dubbo-gateway ├── pom.xml └── src │ └── main │ ├── java │ └── com │ │ └── liyz │ │ └── boot3 │ │ └── gateway │ │ ├── GatewayApplication.java │ │ ├── config │ │ ├── GatewayConfig.java │ │ ├── GlobalExceptionHandler.java │ │ └── SentinelConfig.java │ │ ├── constant │ │ └── GatewayConstant.java │ │ ├── filter │ │ ├── GlobalAuthInfoHeaderFilter.java │ │ ├── GlobalAuthorityFilter.java │ │ ├── GlobalCacheBodyFilter.java │ │ ├── GlobalJWTFilter.java │ │ ├── GlobalLimitFilter.java │ │ └── GlobalRequestTimeFilter.java │ │ ├── properties │ │ ├── AnonymousMappingProperties.java │ │ ├── AuthorityMappingProperties.java │ │ └── NonLimitMappingProperties.java │ │ └── util │ │ └── WebExchangeUtil.java │ └── resources │ ├── banner.txt │ ├── bootstrap.yaml │ ├── i18n │ ├── message.properties │ ├── message_en_US.properties │ └── message_zh_CN.properties │ └── static │ ├── favicon.ico │ └── img.png ├── dubbo-generation ├── dubbo-generation-mybatis │ ├── dalgen │ │ ├── Tables │ │ │ └── RISK_CONTROLLER_RECORD.xml │ │ ├── config │ │ │ ├── README.md │ │ │ ├── config.xml │ │ │ └── table-config-1.0.dtd │ │ ├── dalgen │ │ │ └── ext │ │ │ │ └── mybatis-config.xml.ftl │ │ ├── pom.xml │ │ └── templates │ │ │ ├── dalgen │ │ │ ├── BasePage.java.ftl │ │ │ ├── DAO.java.ftl │ │ │ ├── DBPreCheckMapper.java.ftl │ │ │ ├── DBPreCheckMapper.xml.ftl │ │ │ ├── DO.java.ftl │ │ │ ├── DOMapper.java.ftl │ │ │ ├── Page.java.ftl │ │ │ ├── ResultMap.java.ftl │ │ │ └── XMLMapper.xml.ftl │ │ │ ├── init │ │ │ └── initTableXml.ftl │ │ │ └── lib │ │ │ ├── function.ftl │ │ │ ├── lib.ftl │ │ │ └── macro.ftl │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── generation │ │ │ └── mybatis │ │ │ ├── dao │ │ │ └── RiskControllerRecordDAO.java │ │ │ ├── dataobject │ │ │ └── RiskControllerRecordDO.java │ │ │ └── mapper │ │ │ ├── DBPreCheckMapper.java │ │ │ └── RiskControllerRecordDOMapper.java │ │ └── resources │ │ ├── com │ │ └── liyz │ │ │ └── boot3 │ │ │ └── generation │ │ │ └── mybatis │ │ │ └── mapper │ │ │ └── xml │ │ │ ├── DBPreCheckMapper.xml │ │ │ └── RiskControllerRecordDOMapper.xml │ │ └── mybatis-config.xml └── pom.xml ├── dubbo-process ├── dubbo-process-flowable │ ├── flowable-biz │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liyz │ │ │ │ └── boot3 │ │ │ │ └── process │ │ │ │ └── flowable │ │ │ │ ├── FlowableApplication.java │ │ │ │ └── config │ │ │ │ └── FlowableConfig.java │ │ │ └── resources │ │ │ ├── application.yaml │ │ │ └── banner.txt │ ├── flowable-dao │ │ └── pom.xml │ ├── flowable-remote │ │ └── pom.xml │ └── pom.xml └── pom.xml ├── dubbo-service ├── dubbo-service-auth │ ├── auth-biz │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liyz │ │ │ │ └── boot3 │ │ │ │ └── service │ │ │ │ └── auth │ │ │ │ ├── AuthServiceApplication.java │ │ │ │ ├── config │ │ │ │ └── AuthCacheConfig.java │ │ │ │ ├── constants │ │ │ │ └── AuthConstants.java │ │ │ │ ├── provider │ │ │ │ ├── RemoteAuthServiceImpl.java │ │ │ │ └── RemoteJwtParseServiceImpl.java │ │ │ │ ├── service │ │ │ │ ├── AuthJwtService.java │ │ │ │ ├── AuthSourceService.java │ │ │ │ └── impl │ │ │ │ │ ├── AuthJwtServiceImpl.java │ │ │ │ │ └── AuthSourceServiceImpl.java │ │ │ │ └── util │ │ │ │ └── JwtUtil.java │ │ │ └── resources │ │ │ ├── application.yaml │ │ │ ├── banner.txt │ │ │ └── i18n │ │ │ ├── message.properties │ │ │ ├── message_en_US.properties │ │ │ └── message_zh_CN.properties │ ├── auth-dao │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── auth │ │ │ ├── dao │ │ │ ├── AuthJwtMapper.java │ │ │ └── AuthSourceMapper.java │ │ │ └── model │ │ │ ├── AuthJwtDO.java │ │ │ └── AuthSourceDO.java │ ├── auth-remote │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── auth │ │ │ ├── bo │ │ │ ├── AuthUserBO.java │ │ │ ├── AuthUserLoginBO.java │ │ │ ├── AuthUserLogoutBO.java │ │ │ └── AuthUserRegisterBO.java │ │ │ ├── enums │ │ │ ├── Device.java │ │ │ └── LoginType.java │ │ │ ├── exception │ │ │ ├── AuthExceptionCodeEnum.java │ │ │ └── RemoteAuthServiceException.java │ │ │ └── remote │ │ │ ├── RemoteAuthService.java │ │ │ └── RemoteJwtParseService.java │ ├── auth-server.sql │ └── pom.xml ├── dubbo-service-search │ ├── pom.xml │ ├── search-biz │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── liyz │ │ │ │ │ └── boot3 │ │ │ │ │ └── service │ │ │ │ │ └── search │ │ │ │ │ ├── SearchServiceApplication.java │ │ │ │ │ ├── excel │ │ │ │ │ └── CompanyFinancingExcel.java │ │ │ │ │ ├── provider │ │ │ │ │ ├── bid │ │ │ │ │ │ ├── RemoteBidDetailServiceImpl.java │ │ │ │ │ │ └── RemoteBidTenderCountServiceImpl.java │ │ │ │ │ ├── company │ │ │ │ │ │ ├── RemoteCompanyBasicServiceImpl.java │ │ │ │ │ │ ├── RemoteCompanyFinancingServiceImpl.java │ │ │ │ │ │ └── RemoteCompanyServiceImpl.java │ │ │ │ │ └── investor │ │ │ │ │ │ └── RemoteCompanyInvestorServiceImpl.java │ │ │ │ │ └── response │ │ │ │ │ └── EsResponse.java │ │ │ └── resources │ │ │ │ ├── application.yaml │ │ │ │ └── banner.txt │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── search │ │ │ └── provider │ │ │ ├── bid │ │ │ └── RemoteBidDetailServiceImplTest.java │ │ │ └── company │ │ │ └── RemoteCompanyServiceImplTest.java │ ├── search-dao │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── search │ │ │ ├── mapper │ │ │ ├── CompanyBasicMapper.java │ │ │ ├── CompanyFinancingMapper.java │ │ │ ├── CompanyHolderMapper.java │ │ │ ├── CompanyInvestorMapper.java │ │ │ └── CompanyMapper.java │ │ │ ├── model │ │ │ ├── BidTenderCountDO.java │ │ │ ├── CompanyBasicDO.java │ │ │ ├── CompanyDO.java │ │ │ ├── CompanyFinancingDO.java │ │ │ ├── CompanyHolderDO.java │ │ │ └── CompanyInvestorDO.java │ │ │ └── repository │ │ │ └── CompanyRepository.java │ └── search-remote │ │ ├── pom.xml │ │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── liyz │ │ └── boot3 │ │ └── service │ │ └── search │ │ ├── bo │ │ ├── BaseBO.java │ │ ├── agg │ │ │ └── AggBO.java │ │ ├── bid │ │ │ ├── BidDetailBO.java │ │ │ └── BidTenderCountBO.java │ │ ├── company │ │ │ ├── CompanyBO.java │ │ │ ├── CompanyBasicBO.java │ │ │ └── CompanyFinancingBO.java │ │ └── investor │ │ │ └── CompanyInvestorBO.java │ │ ├── exception │ │ ├── RemoteSearchServiceException.java │ │ └── SearchExceptionCodeEnum.java │ │ ├── query │ │ ├── PageQuery.java │ │ ├── agg │ │ │ └── AggQuery.java │ │ ├── bid │ │ │ └── BidDetailPageQuery.java │ │ └── company │ │ │ └── CompanyPageQuery.java │ │ └── remote │ │ ├── bid │ │ ├── RemoteBidDetailService.java │ │ └── RemoteBidTenderCountService.java │ │ ├── company │ │ ├── RemoteCompanyBasicService.java │ │ ├── RemoteCompanyFinancingService.java │ │ └── RemoteCompanyService.java │ │ └── investor │ │ └── RemoteCompanyInvestorService.java ├── dubbo-service-staff │ ├── authority.sql │ ├── pom.xml │ ├── staff-biz │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liyz │ │ │ │ └── boot3 │ │ │ │ └── service │ │ │ │ └── staff │ │ │ │ ├── StaffServiceApplication.java │ │ │ │ ├── provider │ │ │ │ ├── RemoteStaffInfoServiceImpl.java │ │ │ │ ├── RemoteStaffLoginLogServiceImpl.java │ │ │ │ ├── RemoteStaffLogoutLogServiceImpl.java │ │ │ │ ├── RemoteStaffRoleServiceImpl.java │ │ │ │ ├── RemoteSystemAuthorityServiceImpl.java │ │ │ │ ├── RemoteSystemRoleAuthorityServiceImpl.java │ │ │ │ ├── RemoteSystemRoleServiceImpl.java │ │ │ │ └── auth │ │ │ │ │ └── RemoteAuthServiceImpl.java │ │ │ │ └── service │ │ │ │ ├── LoginTypeService.java │ │ │ │ ├── StaffAuthEmailService.java │ │ │ │ ├── StaffAuthMobileService.java │ │ │ │ ├── StaffAuthorityService.java │ │ │ │ ├── StaffInfoService.java │ │ │ │ ├── StaffLoginLogService.java │ │ │ │ ├── StaffLogoutLogService.java │ │ │ │ ├── StaffRoleService.java │ │ │ │ ├── SystemAuthorityService.java │ │ │ │ ├── SystemRoleAuthorityService.java │ │ │ │ ├── SystemRoleService.java │ │ │ │ └── impl │ │ │ │ ├── StaffAuthEmailServiceImpl.java │ │ │ │ ├── StaffAuthMobileServiceImpl.java │ │ │ │ ├── StaffAuthorityServiceImpl.java │ │ │ │ ├── StaffInfoServiceImpl.java │ │ │ │ ├── StaffLoginLogServiceImpl.java │ │ │ │ ├── StaffLogoutLogServiceImpl.java │ │ │ │ ├── StaffRoleServiceImpl.java │ │ │ │ ├── SystemAuthorityServiceImpl.java │ │ │ │ ├── SystemRoleAuthorityServiceImpl.java │ │ │ │ └── SystemRoleServiceImpl.java │ │ │ └── resources │ │ │ ├── application.yaml │ │ │ └── banner.txt │ ├── staff-dao │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── staff │ │ │ ├── dao │ │ │ ├── StaffAuthEmailMapper.java │ │ │ ├── StaffAuthMobileMapper.java │ │ │ ├── StaffAuthorityMapper.java │ │ │ ├── StaffInfoMapper.java │ │ │ ├── StaffLoginLogMapper.java │ │ │ ├── StaffLogoutLogMapper.java │ │ │ ├── StaffRoleMapper.java │ │ │ ├── SystemAuthorityMapper.java │ │ │ ├── SystemRoleAuthorityMapper.java │ │ │ └── SystemRoleMapper.java │ │ │ └── model │ │ │ ├── StaffAuthEmailDO.java │ │ │ ├── StaffAuthMobileDO.java │ │ │ ├── StaffAuthorityDO.java │ │ │ ├── StaffInfoDO.java │ │ │ ├── StaffLoginLogDO.java │ │ │ ├── StaffLogoutLogDO.java │ │ │ ├── StaffRoleDO.java │ │ │ ├── SystemAuthorityDO.java │ │ │ ├── SystemRoleAuthorityDO.java │ │ │ ├── SystemRoleDO.java │ │ │ └── base │ │ │ └── StaffAuthBaseDO.java │ ├── staff-remote │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── staff │ │ │ ├── bo │ │ │ ├── StaffInfoBO.java │ │ │ ├── StaffLoginLogBO.java │ │ │ ├── StaffLogoutLogBO.java │ │ │ ├── StaffRoleBO.java │ │ │ ├── SystemAuthorityBO.java │ │ │ ├── SystemRoleAuthorityBO.java │ │ │ └── SystemRoleBO.java │ │ │ ├── constant │ │ │ └── StaffAuthorityConstant.java │ │ │ ├── exception │ │ │ ├── RemoteStaffServiceException.java │ │ │ └── StaffExceptionCodeEnum.java │ │ │ └── remote │ │ │ ├── RemoteStaffInfoService.java │ │ │ ├── RemoteStaffLoginLogService.java │ │ │ ├── RemoteStaffLogoutLogService.java │ │ │ ├── RemoteStaffRoleService.java │ │ │ ├── RemoteSystemAuthorityService.java │ │ │ ├── RemoteSystemRoleAuthorityService.java │ │ │ └── RemoteSystemRoleService.java │ └── staff.sql ├── dubbo-service-user │ ├── pom.xml │ ├── user-biz │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── liyz │ │ │ │ │ └── boot3 │ │ │ │ │ └── service │ │ │ │ │ └── user │ │ │ │ │ ├── UserServiceApplication.java │ │ │ │ │ ├── config │ │ │ │ │ └── UserConfig.java │ │ │ │ │ ├── provider │ │ │ │ │ ├── RemoteUserInfoServiceImpl.java │ │ │ │ │ ├── RemoteUserLoginLogServiceImpl.java │ │ │ │ │ ├── RemoteUserLogoutLogServiceImpl.java │ │ │ │ │ ├── auth │ │ │ │ │ │ └── RemoteAuthServiceImpl.java │ │ │ │ │ └── task │ │ │ │ │ │ └── RemoteTaskUserInfoServiceImpl.java │ │ │ │ │ └── service │ │ │ │ │ ├── LoginTypeService.java │ │ │ │ │ ├── UserAuthEmailService.java │ │ │ │ │ ├── UserAuthMobileService.java │ │ │ │ │ ├── UserInfoService.java │ │ │ │ │ ├── UserLoginLogService.java │ │ │ │ │ ├── UserLogoutLogService.java │ │ │ │ │ └── impl │ │ │ │ │ ├── UserAuthEmailServiceImpl.java │ │ │ │ │ ├── UserAuthMobileServiceImpl.java │ │ │ │ │ ├── UserInfoServiceImpl.java │ │ │ │ │ ├── UserLoginLogServiceImpl.java │ │ │ │ │ └── UserLogoutLogServiceImpl.java │ │ │ └── resources │ │ │ │ ├── application.yaml │ │ │ │ └── banner.txt │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── user │ │ │ └── provider │ │ │ └── RemoteUserLoginLogServiceImplTest.java │ ├── user-dao │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── user │ │ │ ├── dao │ │ │ ├── UserAuthEmailMapper.java │ │ │ ├── UserAuthMobileMapper.java │ │ │ ├── UserInfoMapper.java │ │ │ ├── UserLoginLogMapper.java │ │ │ └── UserLogoutLogMapper.java │ │ │ └── model │ │ │ ├── UserAuthEmailDO.java │ │ │ ├── UserAuthMobileDO.java │ │ │ ├── UserInfoDO.java │ │ │ ├── UserLoginLogDO.java │ │ │ ├── UserLogoutLogDO.java │ │ │ └── base │ │ │ └── UserAuthBaseDO.java │ ├── user-remote │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ └── java │ │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── service │ │ │ └── user │ │ │ ├── bo │ │ │ ├── UserInfoBO.java │ │ │ ├── UserLoginLogBO.java │ │ │ └── UserLogoutLogBO.java │ │ │ ├── exception │ │ │ ├── RemoteUserServiceException.java │ │ │ └── UserExceptionCodeEnum.java │ │ │ └── remote │ │ │ ├── RemoteUserInfoService.java │ │ │ ├── RemoteUserLoginLogService.java │ │ │ └── RemoteUserLogoutLogService.java │ └── user.sql └── pom.xml ├── dubbo-task ├── dubbo-task-elastic │ ├── elastic-biz │ │ ├── pom.xml │ │ └── src │ │ │ └── main │ │ │ ├── java │ │ │ └── com │ │ │ │ └── liyz │ │ │ │ └── boot3 │ │ │ │ └── task │ │ │ │ └── elastic │ │ │ │ ├── ElasticTaskApplication.java │ │ │ │ └── job │ │ │ │ ├── TestJob.java │ │ │ │ └── user │ │ │ │ └── UserInfoJob.java │ │ │ └── resources │ │ │ ├── application.yaml │ │ │ └── banner.txt │ ├── elastic-dao │ │ └── pom.xml │ ├── elastic-remote │ │ └── pom.xml │ └── pom.xml ├── dubbo-task-xxl │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── liyz │ │ │ └── boot3 │ │ │ └── task │ │ │ └── xxl │ │ │ ├── XxlJobApplication.java │ │ │ ├── config │ │ │ └── XxlJobConfig.java │ │ │ ├── job │ │ │ └── TestXxlJob.java │ │ │ └── properties │ │ │ └── XxlJobProperties.java │ │ └── resources │ │ ├── application.yaml │ │ └── banner.txt └── pom.xml └── pom.xml /.gitignore: -------------------------------------------------------------------------------- 1 | # Maven 2 | target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | !**/src/main/**/target/ 5 | !**/src/test/**/target/ 6 | *.ser 7 | *.ec 8 | 9 | ### IntelliJ IDEA ### 10 | .idea/ 11 | out/ 12 | *.iws 13 | *.iml 14 | *.ipr 15 | 16 | ### Eclipse ### 17 | .apt_generated 18 | .classpath 19 | .factorypath 20 | .project 21 | .settings 22 | .springBeans 23 | .sts4-cache 24 | 25 | ### NetBeans ### 26 | /nbproject/private/ 27 | /nbbuild/ 28 | /dist/ 29 | /nbdist/ 30 | /.nb-gradle/ 31 | build/ 32 | !**/src/main/**/build/ 33 | !**/src/test/**/build/ 34 | 35 | ### VS Code ### 36 | .vscode/ 37 | 38 | ### Mac OS ### 39 | .DS_Store -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Zhiqin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /document/README.md: -------------------------------------------------------------------------------- 1 | # Skywalking配置 2 | 3 | ```properties 4 | -javaagent:C:\skywalking-java\skywalking-agent\skywalking-agent.jar 5 | -Dskywalking.agent.keep_tracing=true 6 | -Dskywalking.agent.service_name=dubbo-service-auth 7 | -Dskywalking.collector.backend_service=localhost:11800 8 | ``` 9 | # Remote Debug配置监听 10 | 11 | ```properties 12 | -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=6666 13 | ``` -------------------------------------------------------------------------------- /document/authority.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/document/authority.png -------------------------------------------------------------------------------- /document/login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/document/login.png -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/ApiAdminApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/11/13 11:35 12 | */ 13 | @SpringBootApplication 14 | public class ApiAdminApplication { 15 | 16 | public static void main(String[] args) { 17 | SpringApplication.run(ApiAdminApplication.class, args); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/config/ApiSwaggerConfig.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.config; 2 | 3 | import com.liyz.boot3.common.api.config.SwaggerConfig; 4 | import org.springframework.context.annotation.Configuration; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/11/13 11:38 12 | */ 13 | @Configuration 14 | public class ApiSwaggerConfig extends SwaggerConfig { 15 | } 16 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/dto/authority/StaffRoleDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.dto.authority; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import jakarta.validation.constraints.NotNull; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | import java.io.Serializable; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/3/13 13:40 17 | */ 18 | @Getter 19 | @Setter 20 | public class StaffRoleDTO implements Serializable { 21 | @Serial 22 | private static final long serialVersionUID = -5019855188001537438L; 23 | 24 | @Schema(description = "员工ID") 25 | private Long staffId; 26 | 27 | @NotNull(message = "角色ID不能为空") 28 | @Schema(description = "角色ID", requiredMode = Schema.RequiredMode.REQUIRED) 29 | private Integer roleId; 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/dto/authority/SystemRoleAuthorityDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.dto.authority; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import jakarta.validation.constraints.NotNull; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | import java.io.Serializable; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/3/11 15:33 17 | */ 18 | @Getter 19 | @Setter 20 | public class SystemRoleAuthorityDTO implements Serializable { 21 | @Serial 22 | private static final long serialVersionUID = 8328113920009535585L; 23 | 24 | @NotNull(message = "角色ID不能为空") 25 | @Schema(description = "角色ID", required = true) 26 | private Integer roleId; 27 | 28 | @NotNull(message = "权限ID不能为空") 29 | @Schema(description = "权限ID", required = true) 30 | private Integer authorityId; 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/dto/authority/SystemRoleDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.dto.authority; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import jakarta.validation.constraints.NotBlank; 5 | import jakarta.validation.constraints.NotNull; 6 | import lombok.Getter; 7 | import lombok.Setter; 8 | 9 | import java.io.Serial; 10 | import java.io.Serializable; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/3/11 13:23 18 | */ 19 | @Getter 20 | @Setter 21 | public class SystemRoleDTO implements Serializable { 22 | @Serial 23 | private static final long serialVersionUID = 2197798732348814224L; 24 | 25 | @NotNull(message = "角色ID不能为空") 26 | @Schema(description = "角色ID", required = true) 27 | private Long roleId; 28 | 29 | @NotBlank(message = "角色名称不能为空") 30 | @Schema(description = "角色名称", required = true) 31 | private String roleName; 32 | 33 | @Schema(description = "父角色ID", required = true) 34 | private Integer parentRoleId; 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/dto/search/company/CompanyDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.dto.search.company; 2 | 3 | import com.liyz.boot3.common.api.dto.PageDTO; 4 | import io.swagger.v3.oas.annotations.media.Schema; 5 | import jakarta.validation.constraints.NotBlank; 6 | import lombok.Getter; 7 | import lombok.Setter; 8 | 9 | import java.io.Serial; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/11/15 10:27 17 | */ 18 | @Getter 19 | @Setter 20 | public class CompanyDTO extends PageDTO { 21 | @Serial 22 | private static final long serialVersionUID = 310955426454050170L; 23 | 24 | @Schema(description = "公司名称", defaultValue = "阿里巴巴") 25 | @NotBlank(message = "公司名称不能为空") 26 | private String companyName; 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/dto/staff/StaffLogPageDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.dto.staff; 2 | 3 | import com.liyz.boot3.common.api.dto.PageDTO; 4 | import io.swagger.v3.oas.annotations.media.Schema; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/11 10:29 16 | */ 17 | @Getter 18 | @Setter 19 | public class StaffLogPageDTO extends PageDTO { 20 | @Serial 21 | private static final long serialVersionUID = -4827292438113353379L; 22 | 23 | @Schema(description = "员工ID") 24 | private Long staffId; 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/dto/test/TestDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.dto.test; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import jakarta.validation.constraints.NotBlank; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | import java.io.Serializable; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/11/13 13:10 17 | */ 18 | @Getter 19 | @Setter 20 | public class TestDTO implements Serializable { 21 | @Serial 22 | private static final long serialVersionUID = -2923451254947704868L; 23 | 24 | @Schema(description = "名字") 25 | @NotBlank(message = "名字不能为空") 26 | private String name; 27 | 28 | @Schema(description = "年龄") 29 | private Integer age; 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/vo/authentication/AuthLoginVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.vo.authentication; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/6/15 16:13 16 | */ 17 | @Getter 18 | @Setter 19 | public class AuthLoginVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 1353574234588192865L; 22 | 23 | @Schema(description = "鉴权token") 24 | private String token; 25 | 26 | @Schema(description = "Token失效时间戳(ms)") 27 | private Long expiration; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/java/com/liyz/boot3/api/admin/vo/test/TestVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.admin.vo.test; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/11/13 13:09 16 | */ 17 | @Getter 18 | @Setter 19 | public class TestVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -2803393452733281029L; 22 | 23 | @Schema(description = "名字") 24 | private String name; 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/resources/i18n/message_en_US.properties: -------------------------------------------------------------------------------- 1 | SUCCESS=success 2 | FAIL=fail 3 | AEC_IV_LENGTH_ERROR=AEC IV length must be equal 16 digits 4 | AEC_KEY_LENGTH_ERROR=AEC key length must be equal 16 or 24 or 32 digits 5 | DEC_IV_LENGTH_ERROR=DEC key length must be equal 8 digits 6 | DEC_KEY_LENGTH_ERROR=DEC key length cannot be less than 8 digits 7 | OUT_LIMIT_COUNT=visit too fast 8 | PARAMS_VALIDATED=parameter verification failed 9 | REMOTE_SERVICE_FAIL=service fail 10 | NOT_HELD_LOCK=not held lock 11 | AUTHORIZATION_FAIL=authentication failed 12 | FORBIDDEN=log in to operate 13 | LOGIN_FAIL=username or password is incorrect 14 | NO_RIGHT=no permissions 15 | AUTHORIZATION_TIMEOUT=authentication expires 16 | REGISTRY_ERROR=registry fail 17 | LACK_SOURCE_ID=registry fail:resource client ID is missing 18 | LOGIN_ERROR=log in error 19 | OTHERS_LOGIN=other log in 20 | MOBILE_EXIST=mobile exist 21 | EMAIL_EXIST=email exist -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-admin/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-api/dubbo-api-admin/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-monitor/src/main/java/com/liyz/boot3/api/monitor/MonitorApiApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.monitor; 2 | 3 | import de.codecentric.boot.admin.server.config.EnableAdminServer; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/1/17 13:27 13 | */ 14 | @EnableAdminServer 15 | @SpringBootApplication 16 | public class MonitorApiApplication { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(MonitorApiApplication.class, args); 20 | } 21 | } -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-monitor/src/main/java/com/liyz/boot3/api/monitor/config/RedirectFilter.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.monitor.config; 2 | 3 | import jakarta.servlet.*; 4 | import lombok.extern.slf4j.Slf4j; 5 | 6 | import java.io.IOException; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2024/1/22 16:29 14 | */ 15 | @Slf4j 16 | public class RedirectFilter implements Filter { 17 | 18 | @Override 19 | public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { 20 | chain.doFilter(request, response); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/ApiTestApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | import org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration; 7 | import org.springframework.scheduling.annotation.EnableAsync; 8 | 9 | /** 10 | * Desc:启动类 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2024/10/31 11:33 15 | */ 16 | @EnableAsync 17 | @SpringBootApplication(exclude = {KafkaAutoConfiguration.class}) 18 | @MapperScan(basePackages = {"com.liyz.boot3.api.test.dao"}) 19 | public class ApiTestApplication { 20 | 21 | public static void main(String[] args) { 22 | SpringApplication.run(ApiTestApplication.class, args); 23 | } 24 | } -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/config/RestClientConfig.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.config; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.web.client.RestClient; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/1/12 9:54 13 | */ 14 | @Configuration 15 | public class RestClientConfig { 16 | 17 | @Bean 18 | public RestClient restClient() { 19 | return RestClient 20 | .builder() 21 | .baseUrl("https://openapi.sscha.com/services") 22 | .defaultHeader("Authorization", "736fe7a1-6bc4-4663-b1f3-fc99aa1af2b0") 23 | .build(); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/config/RunRiskIndexProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.config; 2 | 3 | import lombok.Data; 4 | import org.springframework.boot.context.properties.ConfigurationProperties; 5 | import org.springframework.stereotype.Component; 6 | 7 | import java.util.HashMap; 8 | import java.util.Map; 9 | 10 | /** 11 | * @author LiYangzhen 12 | * @version : RunRiskIndexProperties.java, v 0.1 2024-11-04 11:48 LiYangzhen Exp $ 13 | */ 14 | @Data 15 | @Component 16 | @ConfigurationProperties(prefix = "run-risk.controller") 17 | public class RunRiskIndexProperties { 18 | 19 | private Map index = new HashMap<>(); 20 | } 21 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/config/SentinelRuleInitFunc.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.config; 2 | 3 | import com.alibaba.csp.sentinel.init.InitFunc; 4 | import com.alibaba.csp.sentinel.slots.block.RuleConstant; 5 | import com.alibaba.csp.sentinel.slots.block.flow.FlowRule; 6 | import com.alibaba.csp.sentinel.slots.block.flow.FlowRuleManager; 7 | 8 | import java.util.ArrayList; 9 | import java.util.List; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2024/8/15 21:07 17 | */ 18 | public class SentinelRuleInitFunc implements InitFunc { 19 | 20 | @Override 21 | public void init() throws Exception { 22 | FlowRule flowRule = new FlowRule(); 23 | flowRule.setCount(2); 24 | flowRule.setGrade(RuleConstant.FLOW_GRADE_QPS); 25 | flowRule.setResource("test"); 26 | List list = new ArrayList<>(); 27 | list.add(flowRule); 28 | 29 | FlowRuleManager.loadRules(list); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/config/SscProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.config; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/4/7 9:58 13 | */ 14 | @Getter 15 | @Setter 16 | @ConfigurationProperties(prefix = "ssc") 17 | public class SscProperties { 18 | 19 | private String baseUrl; 20 | 21 | private String authHeader; 22 | 23 | private String authValue; 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/controller/advice/AdviceController.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.controller.advice; 2 | 3 | import com.liyz.boot3.api.test.dto.lock.TestDTO; 4 | import com.liyz.boot3.api.test.result.Result; 5 | import io.swagger.v3.oas.annotations.Operation; 6 | import io.swagger.v3.oas.annotations.tags.Tag; 7 | import lombok.extern.slf4j.Slf4j; 8 | import org.springframework.web.bind.annotation.*; 9 | 10 | /** 11 | * @author LiYangzhen 12 | * @version : AdviceController.java, v 0.1 2024-11-08 15:19 LiYangzhen Exp $ 13 | */ 14 | @Slf4j 15 | @Tag(name = "advice测试") 16 | @RestController 17 | @RequestMapping("/test/advice") 18 | public class AdviceController { 19 | 20 | @Operation(summary = "get") 21 | @GetMapping(value = "/get") 22 | public Result get(TestDTO testDTO) { 23 | return Result.success(Boolean.TRUE); 24 | } 25 | 26 | @Operation(summary = "post") 27 | @PostMapping(value = "/post") 28 | public Result post(@RequestBody TestDTO testDTO) { 29 | return Result.success(Boolean.TRUE); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/dao/UserLoginLogMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.api.test.model.UserLoginLogDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:41 12 | */ 13 | public interface UserLoginLogMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/dto/export/ExportDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.dto.export; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.List; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/11 19:26 16 | */ 17 | @Getter 18 | @Setter 19 | public class ExportDTO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 8556474743882878296L; 22 | 23 | private List companyIds; 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/dto/lock/TestDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.dto.lock; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import jakarta.validation.constraints.NotBlank; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | import java.io.Serializable; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/11/13 13:10 17 | */ 18 | @Getter 19 | @Setter 20 | public class TestDTO implements Serializable { 21 | @Serial 22 | private static final long serialVersionUID = -2923451254947704868L; 23 | 24 | @Schema(description = "名字") 25 | @NotBlank(message = "名字不能为空") 26 | private String name; 27 | 28 | @Schema(description = "手机号码") 29 | @NotBlank(message = "手机号码不能为空", groups = {Test1.class}) 30 | private String mobile; 31 | 32 | @Schema(description = "年龄") 33 | private Integer age; 34 | 35 | public interface Test1 {} 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/dto/redis/TestScoreDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.dto.redis; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2024/4/24 14:24 15 | */ 16 | @Getter 17 | @Setter 18 | public class TestScoreDTO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -265429768907635071L; 21 | 22 | private Long score; 23 | 24 | private Long id; 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/dto/shardingjdbc/UserDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.dto.shardingjdbc; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2024/1/11 19:26 15 | */ 16 | @Getter 17 | @Setter 18 | public class UserDTO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 8556474743882878296L; 21 | 22 | private Long userId; 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/dto/shardingjdbc/UserLoginLogDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.dto.shardingjdbc; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 16:56 16 | */ 17 | @Getter 18 | @Setter 19 | public class UserLoginLogDTO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 378737454967076747L; 22 | 23 | @Schema(description = "客户ID") 24 | private Long userId; 25 | 26 | @Schema(description = "登出方式(1:手机;2:邮箱)") 27 | private Integer loginType; 28 | 29 | @Schema(description = "登出设备(1移动端:;2:网页端)") 30 | private Integer device; 31 | 32 | @Schema(description = "IP地址") 33 | private String ip; 34 | } 35 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/event/mq/TestRocketMQListener.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.event.mq; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; 5 | import org.apache.rocketmq.spring.core.RocketMQListener; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/4/1 17:50 13 | */ 14 | @Slf4j 15 | //@Component 16 | @RocketMQMessageListener(topic = "QJD_NC", selectorExpression = "TEST", consumerGroup = "QJD_NC_TEST", consumeThreadMax = 20) 17 | public class TestRocketMQListener implements RocketMQListener { 18 | 19 | @Override 20 | public void onMessage(String s) { 21 | log.info("receive msg : {}", s); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/excel/SscStaffExcel.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.excel; 2 | 3 | import com.alibaba.excel.annotation.ExcelProperty; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/12 9:39 16 | */ 17 | @Getter 18 | @Setter 19 | public class SscStaffExcel implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -9070950674078062343L; 22 | 23 | @ExcelProperty(value = "公司名称", index = 0) 24 | private String companyName; 25 | 26 | @ExcelProperty(value = "高管名称", index = 1) 27 | private String employeeName; 28 | 29 | @ExcelProperty(value = "职务", index = 2) 30 | private String position; 31 | 32 | @ExcelProperty(value = "法人", index = 3) 33 | private String legalPerson; 34 | } 35 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/model/UserLoginLogDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.IdType; 4 | import com.baomidou.mybatisplus.annotation.TableId; 5 | import com.baomidou.mybatisplus.annotation.TableName; 6 | import lombok.*; 7 | 8 | import java.io.Serial; 9 | import java.io.Serializable; 10 | import java.util.Date; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/3/10 10:02 18 | */ 19 | @Getter 20 | @Setter 21 | @Builder 22 | @AllArgsConstructor 23 | @NoArgsConstructor 24 | @TableName("user_login_log") 25 | public class UserLoginLogDO implements Serializable { 26 | @Serial 27 | private static final long serialVersionUID = 3070437801653890936L; 28 | 29 | @TableId(type = IdType.AUTO) 30 | private Long id; 31 | 32 | private Long userId; 33 | 34 | /** 35 | * 登录方式:1:手机;2:邮箱 36 | */ 37 | private Integer loginType; 38 | 39 | private Integer device; 40 | 41 | private Date loginTime; 42 | 43 | private String ip; 44 | } 45 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/service/SschaService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.service; 2 | 3 | import com.liyz.boot3.api.test.result.Result; 4 | import com.liyz.boot3.api.test.vo.ssc.CompanyInfoVO; 5 | import org.springframework.http.MediaType; 6 | import org.springframework.web.bind.annotation.RequestParam; 7 | import org.springframework.web.service.annotation.GetExchange; 8 | import org.springframework.web.service.annotation.HttpExchange; 9 | import reactor.core.publisher.Mono; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2024/3/20 17:22 17 | */ 18 | @HttpExchange(url = "/services", accept = MediaType.APPLICATION_JSON_VALUE, contentType = MediaType.APPLICATION_JSON_VALUE) 19 | public interface SschaService { 20 | 21 | @GetExchange("/ic/baseinfo") 22 | Mono> getCompanyInfo(@RequestParam("keyword") String keyword); 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/service/UserLoginLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.api.test.model.UserLoginLogDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:43 12 | */ 13 | public interface UserLoginLogService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/service/impl/UserLoginLogServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.api.test.dao.UserLoginLogMapper; 5 | import com.liyz.boot3.api.test.model.UserLoginLogDO; 6 | import com.liyz.boot3.api.test.service.UserLoginLogService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/19 9:44 15 | */ 16 | @Service 17 | public class UserLoginLogServiceImpl extends ServiceImpl implements UserLoginLogService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/util/TxMessage.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.util; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.concurrent.Callable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/4/1 17:33 16 | */ 17 | @Getter 18 | @Setter 19 | public class TxMessage implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -5731993399979952927L; 22 | 23 | // 消息体 24 | private T data; 25 | // 业务操作 26 | private Callable callable; 27 | //消息关键字,用于消息查询 28 | private String key; 29 | // 消息返回结果 30 | private R result; 31 | 32 | public TxMessage(String key, T data, Callable callable) { 33 | this.data = data; 34 | this.callable = callable; 35 | this.key = key; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/java/com/liyz/boot3/api/test/vo/export/SscPageVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.test.vo.export; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.List; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/12 10:08 16 | */ 17 | @Getter 18 | @Setter 19 | public class SscPageVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -7866058511913991568L; 22 | 23 | private String code; 24 | 25 | private String message; 26 | 27 | private Data data; 28 | 29 | @Getter 30 | @Setter 31 | public static class Data implements Serializable { 32 | @Serial 33 | private static final long serialVersionUID = -4156339185088627049L; 34 | 35 | private Long total; 36 | 37 | private List items; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/META-INF/services/com.alibaba.csp.sentinel.init.InitFunc: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.api.test.config.SentinelRuleInitFunc -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/puml/auth.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | title 认证授权 4 | autonumber 5 | actor user 6 | user -> gateway: authority interface 7 | gateway -> gateway: GlobalRequestTimeFilter 8 | gateway -> gateway: GlobalCacheBodyFilter 9 | gateway -> serviceAuth: GlobalJWTFilter 10 | serviceAuth --> gateway: AuthUserBO 11 | gateway -> gateway: GlobalLimitFilter 12 | gateway -> serviceAuth: GlobalAuthorityFilter 13 | serviceAuth --> gateway: AuthGrantedAuthorityBO 14 | gateway -> gateway: GlobalAuthInfoHeaderFilter 15 | gateway -> apiAdmin: authority interface 16 | apiAdmin -> apiAdmin: JwtAuthenticationTokenFilter 17 | apiAdmin -> serviceStaff: interface 18 | serviceStaff --> apiAdmin: result 19 | apiAdmin --> gateway: result 20 | gateway --> user: result 21 | @enduml -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/puml/login.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 3 | title 登录过程 4 | autonumber 5 | actor user 6 | user -> gateway: login 7 | gateway -> apiAdmin: login 8 | apiAdmin -> apiAdmin: authenticationManager.authenticate 9 | apiAdmin -> apiAdmin: loadUserByUsername 10 | apiAdmin -> serviceAuth: login 11 | serviceAuth -> serviceStaff: login 12 | serviceStaff -> serviceStaff: save login log 13 | serviceStaff --> serviceAuth: staff info 14 | serviceAuth --> apiAdmin: staff info 15 | apiAdmin -> serviceAuth: create token 16 | serviceAuth --> apiAdmin: token 17 | apiAdmin --> gateway: token 18 | gateway --> user: login success and token 19 | @enduml -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/puml/商品视频详情.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-api/dubbo-api-test/src/main/resources/puml/商品视频详情.png -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/puml/商品视频详情.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 'https://plantuml.com/sequence-diagram 3 | 4 | title 已购买视频详情 5 | autonumber 6 | actor user 7 | user -> runFront: 获取课程详情 8 | runFront -> trade: 获取课程进度数据 9 | trade --> runFront: return 10 | runFront --> runFront: 校验订单信息、组装总进度数据 11 | runFront -> goods: 获取课程快照数据 12 | goods --> runFront: return 13 | runFront -> runFront: 组装课程相关数据 14 | runFront -> user: 返回课程详情数据 15 | 16 | user -> runFront: 获取课时信息 17 | runFront -> trade: 获取课程进度数据 18 | trade --> runFront: return 19 | runFront --> runFront: 校验订单信息、组装课时进度数据 20 | runFront -> goods: 获取课时快照数据 21 | goods --> runFront: return 22 | runFront -> runFront: 组装课时相关数据 23 | runFront -> user: 返回课时数据 24 | @enduml -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/puml/添加视频-.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-api/dubbo-api-test/src/main/resources/puml/添加视频-.png -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/puml/添加视频.puml: -------------------------------------------------------------------------------- 1 | @startuml 2 | 'https://plantuml.com/sequence-diagram 3 | title 添加视频 4 | autonumber 5 | 6 | actor 商家 as user 7 | 8 | user -> adminApi: 新增视频 9 | adminApi -> goods: 新增视频 10 | goods -> business: 获取视频状态、市场、播放地址 11 | business --> goods: return 12 | goods --> adminApi: return 13 | adminApi --> user: return 14 | 15 | goods -> goods: job刷新无播放地址且非结束状态的视频 16 | goods -> goods: job刷新有播放地址的视频的有效期 17 | @enduml -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-test/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-api/dubbo-api-test/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/UserApiApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration; 6 | import org.springframework.scheduling.annotation.EnableAsync; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/16 13:16 14 | */ 15 | @EnableAsync 16 | @SpringBootApplication(exclude = {KafkaAutoConfiguration.class}) 17 | public class UserApiApplication { 18 | 19 | public static void main(String[] args) { 20 | System.setProperty("java.util.concurrent.ForkJoinPool.common.parallelism", "2"); 21 | SpringApplication.run(UserApiApplication.class, args); 22 | } 23 | } -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/dto/search/bid/BidTenderCountDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.dto.search.bid; 2 | 3 | import lombok.Data; 4 | 5 | import java.io.Serial; 6 | import java.io.Serializable; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2024/3/18 11:27 14 | */ 15 | @Data 16 | public class BidTenderCountDTO implements Serializable { 17 | @Serial 18 | private static final long serialVersionUID = 5113896035737947927L; 19 | 20 | /** 21 | * 唯一主键 22 | */ 23 | private String _id; 24 | 25 | /** 26 | * 招标方ID 27 | */ 28 | private String tenderId; 29 | 30 | /** 31 | * 参与方名称 32 | */ 33 | private String partyName; 34 | 35 | /** 36 | * 参与方数量 37 | */ 38 | private String partyCount; 39 | 40 | private Integer type; 41 | } 42 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/dto/search/company/CompanyDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.dto.search.company; 2 | 3 | import com.liyz.boot3.common.api.dto.PageDTO; 4 | import io.swagger.v3.oas.annotations.media.Schema; 5 | import jakarta.validation.constraints.NotBlank; 6 | import lombok.Getter; 7 | import lombok.Setter; 8 | 9 | import java.io.Serial; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/11/15 10:27 17 | */ 18 | @Getter 19 | @Setter 20 | public class CompanyDTO extends PageDTO { 21 | @Serial 22 | private static final long serialVersionUID = 310955426454050170L; 23 | 24 | @Schema(description = "公司名称", defaultValue = "阿里巴巴") 25 | @NotBlank(message = "公司名称不能为空") 26 | private String companyName; 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/dto/search/export/ExportDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.dto.search.export; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.List; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/11 19:26 16 | */ 17 | @Getter 18 | @Setter 19 | public class ExportDTO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 8556474743882878296L; 22 | 23 | private List companyIds; 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/dto/search/finance/CompanyFinancingDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.dto.search.finance; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/9 14:25 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyFinancingDTO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -2476194349406602709L; 22 | 23 | private String companyId; 24 | 25 | private String financingRounds; 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/dto/search/investor/CompanyInvestorDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.dto.search.investor; 2 | 3 | import com.liyz.boot3.common.api.dto.PageDTO; 4 | import io.swagger.v3.oas.annotations.media.Schema; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/8 13:52 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyInvestorDTO extends PageDTO { 20 | @Serial 21 | private static final long serialVersionUID = 4580544315167900762L; 22 | 23 | @Schema(description = "公司ID") 24 | private String companyId; 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/event/guava/LoginEvent.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.event.guava; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024/2/1 11:11 12 | */ 13 | @Getter 14 | @Setter 15 | public class LoginEvent { 16 | 17 | public LoginEvent(String name) { 18 | this.name = name; 19 | } 20 | 21 | private String name; 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/event/guava/config/GuavaEventConfig.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.event.guava.config; 2 | 3 | import com.google.common.eventbus.EventBus; 4 | import com.liyz.boot3.api.user.event.guava.LoginEvent; 5 | import com.liyz.boot3.api.user.event.guava.listener.LoginEventListener; 6 | import org.springframework.context.annotation.Bean; 7 | import org.springframework.context.annotation.Configuration; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2024/2/1 11:15 15 | */ 16 | @Configuration 17 | public class GuavaEventConfig { 18 | 19 | @Bean 20 | public EventBus eventBus() { 21 | EventBus eventBus = new EventBus(); 22 | eventBus.register(new LoginEventListener()); 23 | return eventBus; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/event/guava/listener/LoginEventListener.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.event.guava.listener; 2 | 3 | import com.google.common.eventbus.Subscribe; 4 | import com.liyz.boot3.api.user.event.guava.LoginEvent; 5 | import lombok.extern.slf4j.Slf4j; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/2/1 11:12 13 | */ 14 | @Slf4j 15 | public class LoginEventListener { 16 | 17 | @Subscribe 18 | public void handleLoginEvent(LoginEvent loginEvent) { 19 | log.info("{} 上线啦!!!!", loginEvent.getName()); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/event/spring/SearchEvent.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.event.spring; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.context.ApplicationEvent; 6 | 7 | import java.io.Serial; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2024/1/5 14:52 15 | */ 16 | @Getter 17 | @Setter 18 | public class SearchEvent extends ApplicationEvent { 19 | @Serial 20 | private static final long serialVersionUID = -3047022577230548615L; 21 | 22 | public SearchEvent(Object source) { 23 | super(source); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/excel/SscStaffExcel.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.excel; 2 | 3 | import com.alibaba.excel.annotation.ExcelProperty; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/12 9:39 16 | */ 17 | @Getter 18 | @Setter 19 | public class SscStaffExcel implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -9070950674078062343L; 22 | 23 | @ExcelProperty(value = "公司名称", index = 0) 24 | private String companyName; 25 | 26 | @ExcelProperty(value = "高管名称", index = 1) 27 | private String employeeName; 28 | 29 | @ExcelProperty(value = "职务", index = 2) 30 | private String position; 31 | 32 | @ExcelProperty(value = "法人", index = 3) 33 | private String legalPerson; 34 | } 35 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/vo/authen/AuthLoginVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.vo.authen; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/6/15 16:13 16 | */ 17 | @Getter 18 | @Setter 19 | public class AuthLoginVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 1353574234588192865L; 22 | 23 | @Schema(description = "鉴权token") 24 | private String token; 25 | 26 | @Schema(description = "Token失效时间戳(ms)") 27 | private Long expiration; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/vo/search/AggVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.vo.search; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/11/14 15:16 16 | */ 17 | @Getter 18 | @Setter 19 | public class AggVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -4672225002891936839L; 22 | 23 | @Schema(description = "列") 24 | private String name; 25 | 26 | @Schema(description = "值") 27 | private Object value; 28 | 29 | } 30 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/vo/search/company/CompanyBasicVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.vo.search.company; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/11/14 9:34 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyBasicVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 170535601509514115L; 22 | 23 | @Schema(description = "主键") 24 | private String id; 25 | 26 | private String name; 27 | 28 | private String regNumber; 29 | 30 | private String creditCode; 31 | 32 | private String legalPersonName; 33 | 34 | private Long type; 35 | 36 | private Long companyType; 37 | 38 | private String regCapital; 39 | 40 | private String estiblishTime; 41 | } 42 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/java/com/liyz/boot3/api/user/vo/search/finance/CompanyFinancingVO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.api.user.vo.search.finance; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/9 14:05 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyFinancingVO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 7747494754239884918L; 22 | 23 | private String id; 24 | 25 | private String companyId; 26 | 27 | private String companyName; 28 | 29 | private Date financingDate; 30 | 31 | private String financingRounds; 32 | 33 | private String valuation; 34 | 35 | private Integer useFlag; 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/resources/i18n/message_en_US.properties: -------------------------------------------------------------------------------- 1 | SUCCESS=success 2 | FAIL=fail 3 | AEC_IV_LENGTH_ERROR=AEC IV length must be equal 16 digits 4 | AEC_KEY_LENGTH_ERROR=AEC key length must be equal 16 or 24 or 32 digits 5 | DEC_IV_LENGTH_ERROR=DEC key length must be equal 8 digits 6 | DEC_KEY_LENGTH_ERROR=DEC key length cannot be less than 8 digits 7 | OUT_LIMIT_COUNT=visit too fast 8 | PARAMS_VALIDATED=parameter verification failed 9 | REMOTE_SERVICE_FAIL=service fail 10 | NOT_HELD_LOCK=not held lock 11 | AUTHORIZATION_FAIL=authentication failed 12 | FORBIDDEN=log in to operate 13 | LOGIN_FAIL=username or password is incorrect 14 | NO_RIGHT=no permissions 15 | AUTHORIZATION_TIMEOUT=authentication expires 16 | REGISTRY_ERROR=registry fail 17 | LACK_SOURCE_ID=registry fail:resource client ID is missing 18 | LOGIN_ERROR=log in error 19 | OTHERS_LOGIN=other log in 20 | MOBILE_EXIST=mobile exist 21 | EMAIL_EXIST=email exist -------------------------------------------------------------------------------- /dubbo-api/dubbo-api-user/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-api/dubbo-api-user/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /dubbo-api/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-springboot3 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-api 13 | pom 14 | 15 | 16 | dubbo-api-admin 17 | dubbo-api-user 18 | dubbo-api-monitor 19 | dubbo-api-test 20 | 21 | 22 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-api-starter/src/main/java/com/liyz/boot3/common/api/dto/PageDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.api.dto; 2 | 3 | import io.swagger.v3.oas.annotations.media.Schema; 4 | import jakarta.validation.constraints.NotNull; 5 | import lombok.Getter; 6 | import lombok.Setter; 7 | 8 | import java.io.Serial; 9 | import java.io.Serializable; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/11/13 11:04 17 | */ 18 | @Getter 19 | @Setter 20 | public class PageDTO implements Serializable { 21 | @Serial 22 | private static final long serialVersionUID = 1L; 23 | 24 | @Schema(description = "页码", defaultValue = "1") 25 | @NotNull(groups = {PageQuery.class}, message = "分页查询页码不能为空") 26 | private Long pageNum = 1L; 27 | 28 | @Schema(description = "每页数量", defaultValue = "10") 29 | @NotNull(groups = {PageQuery.class}, message = "分页查询每页数量不能为空") 30 | private Long pageSize = 10L; 31 | 32 | public interface PageQuery {} 33 | 34 | public interface Query {} 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-api-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.common.api.config.WebMvcAutoConfig -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-dao-starter/src/main/java/com/liyz/boot3/common/dao/config/DesensitizationProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.dao.config; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/12/21 17:23 13 | */ 14 | @Getter 15 | @Setter 16 | @ConfigurationProperties("desensitization.database") 17 | public class DesensitizationProperties { 18 | 19 | private boolean enable = false; 20 | } 21 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-dao-starter/src/main/java/com/liyz/boot3/common/dao/transaction/LocalTransactionTemplate.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.dao.transaction; 2 | 3 | import com.liyz.boot3.common.dao.transaction.callback.LocalTransactionCallback; 4 | import com.liyz.boot3.common.dao.transaction.callback.LocalTransactionCallbackWithoutResult; 5 | 6 | /** 7 | * Desc:本地事务模板 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024-11-15 17:15 12 | */ 13 | public interface LocalTransactionTemplate { 14 | 15 | /** 16 | * 带返回值的本地事务模板执行入口 17 | * 18 | * @param action action 19 | * @return 执行结果 20 | * @param 执行结果类型 21 | */ 22 | T execute(LocalTransactionCallback action); 23 | 24 | /** 25 | * 无返回值的本地事务模板执行入口 26 | * 27 | * @param action action 28 | */ 29 | void execute(LocalTransactionCallbackWithoutResult action); 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-dao-starter/src/main/java/com/liyz/boot3/common/dao/transaction/callback/LocalTransactionCallback.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.dao.transaction.callback; 2 | 3 | import com.liyz.boot3.common.dao.transaction.service.HandlerService; 4 | import lombok.Getter; 5 | import org.springframework.transaction.support.TransactionCallback; 6 | 7 | /** 8 | * Desc:带返回结果 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024-11-15 17:19 13 | */ 14 | @Getter 15 | public abstract class LocalTransactionCallback implements TransactionCallback, HandlerService { 16 | 17 | private final String localTransactionName; 18 | 19 | public LocalTransactionCallback(String localTransactionName) { 20 | this.localTransactionName = localTransactionName; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-dao-starter/src/main/java/com/liyz/boot3/common/dao/transaction/callback/LocalTransactionCallbackWithoutResult.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.dao.transaction.callback; 2 | 3 | import com.liyz.boot3.common.dao.transaction.service.HandlerService; 4 | import lombok.Getter; 5 | import org.springframework.transaction.support.TransactionCallbackWithoutResult; 6 | 7 | /** 8 | * Desc:不带返回结果 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024-11-15 17:22 13 | */ 14 | @Getter 15 | public abstract class LocalTransactionCallbackWithoutResult extends TransactionCallbackWithoutResult implements HandlerService { 16 | 17 | private final String localTransactionName; 18 | 19 | public LocalTransactionCallbackWithoutResult(String localTransactionName) { 20 | this.localTransactionName = localTransactionName; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-dao-starter/src/main/java/com/liyz/boot3/common/dao/transaction/service/HandlerService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.dao.transaction.service; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2024-11-15 17:18 9 | */ 10 | public interface HandlerService { 11 | 12 | /** 13 | * 执行成功时的处理逻辑 14 | */ 15 | default void onSuccess() { 16 | } 17 | 18 | /** 19 | * 执行失败时的处理逻辑 20 | */ 21 | default void onError() { 22 | } 23 | 24 | /** 25 | * 执行异常时的处理逻辑 26 | * 27 | * @param e Exception 28 | */ 29 | default void onException(Exception e) { 30 | } 31 | 32 | /** 33 | * 执行结束(不论成功、失败还是异常等)必须要处理的一些逻辑 34 | */ 35 | default void onFinally() { 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-dao-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.common.dao.config.MybatisPlusAutoConfig -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-lock-starter/src/main/java/com/liyz/boot3/common/lock/exception/LockException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.lock.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import com.liyz.boot3.common.remote.exception.RemoteServiceException; 5 | 6 | import java.io.Serial; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/10/17 11:08 14 | */ 15 | public class LockException extends RemoteServiceException { 16 | @Serial 17 | private static final long serialVersionUID = 8746746093948718766L; 18 | 19 | public LockException() { 20 | super(); 21 | } 22 | 23 | public LockException(IExceptionService codeService) { 24 | super(codeService); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-lock-starter/src/main/java/com/liyz/boot3/common/lock/exception/LockExceptionCodeEnum.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.lock.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2023/10/17 11:08 11 | */ 12 | public enum LockExceptionCodeEnum implements IExceptionService { 13 | NOT_HELD_LOCK("14001", "未持有锁"), 14 | ; 15 | 16 | private final String code; 17 | 18 | private final String message; 19 | 20 | LockExceptionCodeEnum(String code, String message) { 21 | this.code = code; 22 | this.message = message; 23 | } 24 | 25 | @Override 26 | public String getCode() { 27 | return code; 28 | } 29 | 30 | @Override 31 | public String getMessage() { 32 | return message; 33 | } 34 | 35 | @Override 36 | public String getName() { 37 | return name(); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-lock-starter/src/main/java/com/liyz/boot3/common/lock/service/CommonInitService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.lock.service; 2 | 3 | import org.springframework.context.ApplicationContext; 4 | import org.springframework.core.io.Resource; 5 | 6 | import java.io.IOException; 7 | import java.io.InputStream; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/10/19 9:56 15 | */ 16 | public interface CommonInitService { 17 | 18 | /** 19 | * 获取上下文 20 | * 21 | * @return 上下文 22 | */ 23 | ApplicationContext getApplicationContext(); 24 | 25 | /** 26 | * 获取文件流 27 | * 28 | * @param file 文件路劲 29 | * @return 文件流 30 | * @throws IOException 异常 31 | */ 32 | default InputStream getConfigStream(String file) throws IOException { 33 | Resource resource = getApplicationContext().getResource(file); 34 | return resource.getInputStream(); 35 | } 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-lock-starter/src/main/java/com/liyz/boot3/common/lock/service/LockInterface.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.lock.service; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2023/10/12 18:12 9 | */ 10 | @FunctionalInterface 11 | public interface LockInterface { 12 | 13 | T callBack(); 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-lock-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.common.lock.config.LockAutoConfig -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-common 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-common-remote 13 | dubbo通用远程依赖 14 | 15 | 16 | 17 | org.projectlombok 18 | lombok 19 | 20 | 21 | org.apache.commons 22 | commons-lang3 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-remote/src/main/java/com/liyz/boot3/common/remote/exception/IExceptionService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.remote.exception; 2 | 3 | /** 4 | * Desc:exception interface 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2023/11/13 10:35 9 | */ 10 | public interface IExceptionService { 11 | 12 | /** 13 | * 获取异常code 14 | * 15 | * @return code 16 | */ 17 | String getCode(); 18 | 19 | /** 20 | * 获取异常信息 21 | * 22 | * @return 异常信息 23 | */ 24 | String getMessage(); 25 | 26 | /** 27 | * 获取枚举name 28 | * 29 | * @return name 30 | */ 31 | String getName(); 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-remote/src/main/java/com/liyz/boot3/common/remote/exception/RemoteServiceException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.remote.exception; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/13 10:35 14 | */ 15 | @Getter 16 | @Setter 17 | public class RemoteServiceException extends RuntimeException{ 18 | @Serial 19 | private static final long serialVersionUID = 1L; 20 | 21 | private String code; 22 | 23 | private String msg; 24 | 25 | public RemoteServiceException() { 26 | this(CommonExceptionCodeEnum.FAIL); 27 | } 28 | 29 | public RemoteServiceException(IExceptionService codeService) { 30 | this(codeService.getCode(), codeService.getMessage()); 31 | } 32 | 33 | public RemoteServiceException(String code, String message) { 34 | super(message); 35 | this.code = code; 36 | this.msg = message; 37 | } 38 | 39 | @Override 40 | public String getMessage() { 41 | return this.msg; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-remote/src/main/java/com/liyz/boot3/common/remote/page/PageBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.remote.page; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/13 10:28 15 | */ 16 | @Getter 17 | @Setter 18 | public class PageBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 1L; 21 | 22 | /** 23 | * 页码 24 | */ 25 | private Long pageNum = 1L; 26 | 27 | /** 28 | * 每页条数 29 | */ 30 | private Long pageSize = 10L; 31 | 32 | public static PageBO of(long pageNum, long pageSize) { 33 | PageBO pageBO = new PageBO(); 34 | pageBO.setPageSize(Math.max(pageNum, 1L)); 35 | pageBO.setPageSize(Math.max(pageSize, 1L)); 36 | return pageBO; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/annotation/EsMapperScan.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.annotation; 2 | 3 | import com.liyz.boot3.common.search.config.EsMapperScannerRegistrar; 4 | import org.springframework.context.annotation.Import; 5 | import org.springframework.core.annotation.AliasFor; 6 | 7 | import java.lang.annotation.*; 8 | 9 | /** 10 | * Desc:es mapper scan 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/12/30 15:02 15 | */ 16 | @Documented 17 | @Target({ElementType.TYPE}) 18 | @Retention(RetentionPolicy.RUNTIME) 19 | @Import({EsMapperScannerRegistrar.class}) 20 | public @interface EsMapperScan { 21 | 22 | @AliasFor("basePackages") 23 | String[] value() default {}; 24 | 25 | @AliasFor("value") 26 | String[] basePackages() default {}; 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/config/ElasticsearchPoolProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.config; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/12/19 16:28 13 | */ 14 | @Getter 15 | @Setter 16 | @ConfigurationProperties("spring.elasticsearch.pool") 17 | public class ElasticsearchPoolProperties { 18 | 19 | /** 20 | * 最大连接数 21 | */ 22 | private int maxConnTotal = 0; 23 | 24 | /** 25 | * 最大连接分片数 26 | */ 27 | private int maxConnPerRoute = 0; 28 | 29 | /** 30 | * 心跳策略时间 31 | */ 32 | private long keepAliveStrategy = 30000; 33 | 34 | /** 35 | * 连接请求超时时间 36 | */ 37 | private int connectionRequestTimeout = 5000; 38 | 39 | /** 40 | * 期望继续启用 41 | */ 42 | private boolean expectContinueEnabled = true; 43 | 44 | /** 45 | * 重定向 46 | */ 47 | private boolean redirectsEnabled =false; 48 | } 49 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/exception/SearchException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import com.liyz.boot3.common.remote.exception.RemoteServiceException; 5 | 6 | import java.io.Serial; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2024/1/4 14:01 14 | */ 15 | public class SearchException extends RemoteServiceException { 16 | @Serial 17 | private static final long serialVersionUID = 8746746093948718766L; 18 | 19 | public SearchException() { 20 | super(); 21 | } 22 | 23 | public SearchException(IExceptionService codeService) { 24 | super(codeService); 25 | } 26 | 27 | public SearchException(String code, String message) { 28 | super(code, message); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/method/Agg.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.method; 2 | 3 | import co.elastic.clients.elasticsearch.core.SearchRequest; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/1/11 16:08 11 | */ 12 | public class Agg extends AbstractEsMethod { 13 | 14 | public Agg() { 15 | this(EsMethod.AGG.getMethod()); 16 | } 17 | 18 | public Agg(String methodName) { 19 | super(methodName); 20 | } 21 | 22 | @Override 23 | protected SearchRequest.Builder buildRequest(Object[] args) { 24 | SearchRequest.Builder builder = super.buildRequest(args); 25 | return builder.size(0); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/method/IEsMethod.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.method; 2 | 3 | import java.lang.reflect.Method; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2023/12/30 21:13 11 | */ 12 | public interface IEsMethod { 13 | 14 | Object execute(Class mapperInterface, Method method, Object[] args); 15 | } 16 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/method/SelectById.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.method; 2 | 3 | import co.elastic.clients.elasticsearch._types.query_dsl.IdsQuery; 4 | import co.elastic.clients.elasticsearch.core.SearchRequest; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/12/31 13:31 12 | */ 13 | public class SelectById extends AbstractEsMethod { 14 | 15 | public SelectById() { 16 | this(EsMethod.SELECT_BY_ID.getMethod()); 17 | } 18 | 19 | public SelectById(String methodName) { 20 | super(methodName); 21 | } 22 | 23 | @Override 24 | protected SearchRequest.Builder buildRequest(Object[] args) { 25 | SearchRequest.Builder builder = super.buildRequest(args); 26 | return builder 27 | .query(q -> q.ids(IdsQuery.of(idq -> idq.values(args[0].toString())))) 28 | .size(1); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/method/SelectOne.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.method; 2 | 3 | import co.elastic.clients.elasticsearch.core.SearchRequest; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/1/8 16:43 11 | */ 12 | public class SelectOne extends AbstractEsMethod { 13 | 14 | public SelectOne() { 15 | this(EsMethod.SELECT_ONE.getMethod()); 16 | } 17 | 18 | public SelectOne(String methodName) { 19 | super(methodName); 20 | } 21 | 22 | @Override 23 | protected SearchRequest.Builder buildRequest(Object[] args) { 24 | SearchRequest.Builder builder = super.buildRequest(args); 25 | return builder.size(1); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/method/SelectPage.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.method; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2024/1/15 19:47 9 | */ 10 | public class SelectPage extends AbstractEsMethod { 11 | 12 | public SelectPage() { 13 | this(EsMethod.SELECT_PAGE.getMethod()); 14 | } 15 | 16 | public SelectPage(String methodName) { 17 | super(methodName); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/query/Column.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.query; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2024/2/3 14:17 9 | */ 10 | public interface Column { 11 | 12 | /** 13 | * 获取字段属性 14 | * 15 | * @param column 字段 16 | * @return 字段属性 17 | */ 18 | String columnToString(R column); 19 | } 20 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/query/EsBoolChildKey.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.query; 2 | 3 | import lombok.AllArgsConstructor; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/2/1 16:25 11 | */ 12 | @AllArgsConstructor 13 | public enum EsBoolChildKey { 14 | TERM, 15 | TERMS, 16 | 17 | ; 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/query/EsBoolKey.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.query; 2 | 3 | import lombok.AllArgsConstructor; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/2/1 16:25 11 | */ 12 | @AllArgsConstructor 13 | public enum EsBoolKey { 14 | FILTER, 15 | MUST, 16 | NOT_MUST, 17 | SHOULD; 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/query/EsSortField.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.query; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Getter; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024/1/11 15:46 12 | */ 13 | @Getter 14 | @AllArgsConstructor 15 | public enum EsSortField { 16 | COUNT("_count"), 17 | KEY("_key"), 18 | ; 19 | 20 | private final String sortField; 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/query/QuerySort.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.query; 2 | 3 | import co.elastic.clients.elasticsearch._types.SortOrder; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/9 17:49 16 | */ 17 | @Getter 18 | @Setter 19 | public class QuerySort implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -7983820262285665051L; 22 | 23 | private SortOrder esSort; 24 | 25 | private String colum; 26 | 27 | public QuerySort(SortOrder esSort, String colum) { 28 | this.esSort = esSort; 29 | this.colum = colum; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/query/Wrapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.query; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2024/1/4 15:13 9 | */ 10 | public abstract class Wrapper { 11 | 12 | /** 13 | * 实体对象(子类实现) 14 | * 15 | * @return 泛型 T 16 | */ 17 | public abstract T getEntity(); 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/response/AggResponse.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.response; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 15:16 15 | */ 16 | @Getter 17 | @Setter 18 | public class AggResponse implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -4672225002891936839L; 21 | 22 | private String name; 23 | 24 | private Object value; 25 | 26 | public static AggResponse of(String name, Object value) { 27 | AggResponse aggResponse = new AggResponse(); 28 | aggResponse.setName(name); 29 | aggResponse.setValue(value); 30 | return aggResponse; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/response/EsResponse.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.response; 2 | 3 | import com.liyz.boot3.common.remote.page.RemotePage; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | import java.util.List; 10 | import java.util.Map; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/11/14 15:54 18 | */ 19 | @Getter 20 | @Setter 21 | public class EsResponse implements Serializable { 22 | @Serial 23 | private static final long serialVersionUID = 6830405460023653657L; 24 | 25 | private RemotePage pageData; 26 | 27 | private Map> aggData; 28 | 29 | public static EsResponse of(RemotePage pageData, Map> aggData) { 30 | EsResponse esResponse = new EsResponse<>(); 31 | esResponse.setPageData(pageData); 32 | esResponse.setAggData(aggData); 33 | return esResponse; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/toolkit/ColumnCache.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.toolkit; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2024/1/4 13:33 15 | */ 16 | @Getter 17 | @Setter 18 | public class ColumnCache implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -5195044265637885402L; 21 | 22 | /** 23 | * 使用 column 24 | */ 25 | private String column; 26 | 27 | /** 28 | * 查询 column 29 | */ 30 | private String columnSelect; 31 | 32 | public ColumnCache(String column, String columnSelect) { 33 | this.column = column; 34 | this.columnSelect = columnSelect; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/toolkit/LambdaMeta.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.toolkit; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2024/1/4 13:36 9 | */ 10 | public interface LambdaMeta { 11 | 12 | /** 13 | * 获取 lambda 表达式实现方法的名称 14 | * 15 | * @return lambda 表达式对应的实现方法名称 16 | */ 17 | String getImplMethodName(); 18 | 19 | /** 20 | * 实例化该方法的类 21 | * 22 | * @return 返回对应的类名称 23 | */ 24 | Class getInstantiatedClass(); 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/toolkit/SFunction.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.toolkit; 2 | 3 | import java.io.Serializable; 4 | import java.util.function.Function; 5 | 6 | /** 7 | * Desc:支持序列化的 Function 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024/1/4 14:08 12 | */ 13 | @FunctionalInterface 14 | public interface SFunction extends Function, Serializable { 15 | } 16 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/java/com/liyz/boot3/common/search/toolkit/ShadowLambdaMeta.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.search.toolkit; 2 | 3 | import com.liyz.boot3.common.util.ClassUtils; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/1/4 14:05 11 | */ 12 | public class ShadowLambdaMeta implements LambdaMeta{ 13 | 14 | private final SerializedLambda lambda; 15 | 16 | public ShadowLambdaMeta(SerializedLambda lambda) { 17 | this.lambda = lambda; 18 | } 19 | 20 | @Override 21 | public String getImplMethodName() { 22 | return lambda.getImplMethodName(); 23 | } 24 | 25 | @Override 26 | public Class getInstantiatedClass() { 27 | String instantiatedMethodType = lambda.getInstantiatedMethodType(); 28 | String instantiatedType = instantiatedMethodType.substring(2, instantiatedMethodType.indexOf(";")).replace("/", "."); 29 | return ClassUtils.toClassConfident(instantiatedType, lambda.getCapturingClass().getClassLoader()); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-search-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.common.search.config.EsPlusAutoConfig -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-service/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-common 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-common-service 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter 18 | provided 19 | 20 | 21 | com.liyz.boot3 22 | dubbo-common-remote 23 | provided 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-service/src/main/java/com/liyz/boot3/common/service/constant/CommonServiceConstant.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.service.constant; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2023/11/13 13:17 9 | */ 10 | public interface CommonServiceConstant { 11 | 12 | /** 13 | * 默认连接符 14 | */ 15 | String DEFAULT_JOINER = ":"; 16 | 17 | String DEFAULT_PADDING = "================================================================"; 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/annotation/Trim.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.annotation; 2 | 3 | import java.lang.annotation.*; 4 | 5 | /** 6 | * Desc:该优先级比 validation 参数校验注解 高 7 | * 即 先处理 Trim 再 处理 validation 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/3/9 10:29 12 | */ 13 | @Documented 14 | @Retention(RetentionPolicy.RUNTIME) 15 | @Target({ElementType.FIELD, ElementType.PARAMETER}) 16 | public @interface Trim { 17 | 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/constant/DesensitizationType.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.constant; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Getter; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/12/4 13:27 12 | */ 13 | @Getter 14 | @AllArgsConstructor 15 | public enum DesensitizationType { 16 | DEFAULT("默认"), 17 | TRIM(""), 18 | MOBILE("手机号码"), 19 | EMAIL("邮箱地址"), 20 | REAL_NAME("真实姓名"), 21 | CARD_NO("身份证号码"), 22 | SELF_DEFINITION("自定义"), 23 | IGNORE("忽略"), 24 | ENCRYPT_DECRYPT("加密"), 25 | DFA("DFA算法"), 26 | ; 27 | 28 | private final String desc; 29 | } 30 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/serializer/DoubleSerializer.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.serializer; 2 | 3 | import com.fasterxml.jackson.core.JsonGenerator; 4 | import com.fasterxml.jackson.databind.JsonSerializer; 5 | import com.fasterxml.jackson.databind.SerializerProvider; 6 | 7 | import java.io.IOException; 8 | import java.math.BigDecimal; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/7/31 20:05 16 | */ 17 | public class DoubleSerializer extends JsonSerializer { 18 | 19 | @Override 20 | public void serialize(Double value, JsonGenerator gen, SerializerProvider serializers) throws IOException { 21 | BigDecimal d = new BigDecimal(value.toString()); 22 | gen.writeNumber(d.stripTrailingZeros().toPlainString()); 23 | } 24 | 25 | @Override 26 | public Class handledType() { 27 | return Double.class; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/service/DesensitizeService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.service; 2 | 3 | import com.liyz.boot3.common.util.annotation.Desensitization; 4 | import com.liyz.boot3.common.util.constant.DesensitizationType; 5 | 6 | /** 7 | * Desc:反序列化脱敏接口 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/2 15:06 12 | */ 13 | public interface DesensitizeService { 14 | 15 | /** 16 | * 脱敏 17 | * 18 | * @param value 原字段 19 | * @param annotation 脱毛注解 20 | * @return 脱敏后字段 21 | */ 22 | String desensitize(String value, Desensitization annotation); 23 | 24 | /** 25 | * 获取对应脱敏类型 26 | * 27 | * @return 脱敏类型 28 | */ 29 | DesensitizationType getType(); 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/service/impl/DefaultDesensitizeServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.service.impl; 2 | 3 | import com.liyz.boot3.common.util.annotation.Desensitization; 4 | import com.liyz.boot3.common.util.constant.DesensitizationType; 5 | import com.liyz.boot3.common.util.service.DesensitizeService; 6 | 7 | /** 8 | * 注释:默认脱敏服务 9 | * 10 | * @author liyangzhen 11 | * @version 1.0.0 12 | * @date 2022/4/20 19:50 13 | */ 14 | public class DefaultDesensitizeServiceImpl implements DesensitizeService { 15 | 16 | 17 | @Override 18 | public String desensitize(String value, Desensitization annotation) { 19 | return value; 20 | } 21 | 22 | @Override 23 | public DesensitizationType getType() { 24 | return DesensitizationType.DEFAULT; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/service/impl/DfaDesensitizeServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.service.impl; 2 | 3 | import cn.hutool.dfa.SensitiveUtil; 4 | import com.liyz.boot3.common.util.annotation.Desensitization; 5 | import com.liyz.boot3.common.util.constant.DesensitizationType; 6 | import com.liyz.boot3.common.util.service.DesensitizeService; 7 | import org.apache.commons.lang3.StringUtils; 8 | 9 | /** 10 | * Desc:dfa算法 11 | * 注:使用dfa算法时,一定要先init,否则不生效 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/9/14 10:08 16 | */ 17 | public class DfaDesensitizeServiceImpl implements DesensitizeService { 18 | 19 | @Override 20 | public String desensitize(String value, Desensitization annotation) { 21 | if (StringUtils.isNotBlank(value) && SensitiveUtil.isInited()) { 22 | value = SensitiveUtil.sensitiveFilter(value); 23 | } 24 | return value; 25 | } 26 | 27 | @Override 28 | public DesensitizationType getType() { 29 | return DesensitizationType.DFA; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/service/impl/IgnoreDesensitizeServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.service.impl; 2 | 3 | import com.liyz.boot3.common.util.annotation.Desensitization; 4 | import com.liyz.boot3.common.util.constant.DesensitizationType; 5 | import com.liyz.boot3.common.util.service.DesensitizeService; 6 | import org.apache.commons.lang3.StringUtils; 7 | 8 | import java.util.Objects; 9 | 10 | /** 11 | * 注释:忽略此字符 12 | * 注:如果此字符为null,则返回null;如果不为null,则返回一个长度为0的空字符 13 | * 14 | * @author liyangzhen 15 | * @version 1.0.0 16 | * @date 2022/4/20 20:32 17 | */ 18 | public class IgnoreDesensitizeServiceImpl implements DesensitizeService { 19 | 20 | @Override 21 | public String desensitize(String value, Desensitization annotation) { 22 | return Objects.nonNull(value) ? StringUtils.EMPTY : null; 23 | } 24 | 25 | @Override 26 | public DesensitizationType getType() { 27 | return DesensitizationType.IGNORE; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-common-util/src/main/java/com/liyz/boot3/common/util/service/impl/TrimDesensitizeServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.common.util.service.impl; 2 | 3 | import com.liyz.boot3.common.util.annotation.Desensitization; 4 | import com.liyz.boot3.common.util.constant.DesensitizationType; 5 | import com.liyz.boot3.common.util.service.DesensitizeService; 6 | import org.apache.commons.lang3.StringUtils; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/12/4 15:16 14 | */ 15 | public class TrimDesensitizeServiceImpl implements DesensitizeService { 16 | 17 | @Override 18 | public String desensitize(String value, Desensitization annotation) { 19 | return StringUtils.isNotBlank(value) ? value.trim() : value; 20 | } 21 | 22 | @Override 23 | public DesensitizationType getType() { 24 | return DesensitizationType.TRIM; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-exception-filter/src/main/resources/META-INF/dubbo/internal/org.apache.dubbo.rpc.Filter: -------------------------------------------------------------------------------- 1 | remoteServiceExceptionFilter=com.liyz.boot3.exception.filter.RemoteServiceExceptionFilter -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/annotation/Anonymous.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.annotation; 2 | 3 | import java.lang.annotation.*; 4 | 5 | /** 6 | * Desc:匿名访问注解 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2023/3/9 13:03 11 | */ 12 | @Documented 13 | @Target({ElementType.TYPE, ElementType.METHOD}) 14 | @Retention(RetentionPolicy.RUNTIME) 15 | public @interface Anonymous { 16 | } 17 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/annotation/AuthUser.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.annotation; 2 | 3 | import java.lang.annotation.*; 4 | 5 | /** 6 | * 注释:token解析user信息注解 7 | * 8 | * @author liyangzhen 9 | * @version 1.0.0 10 | * @date 2019/12/16 22:08 11 | */ 12 | @Target({ElementType.PARAMETER}) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | @Documented 15 | public @interface AuthUser { 16 | } 17 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/bo/LoginBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/14 14:02 15 | */ 16 | @Getter 17 | @Setter 18 | public class LoginBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 1L; 21 | 22 | /** 23 | * 用户名 24 | */ 25 | private String username; 26 | 27 | /** 28 | * 密码 29 | */ 30 | private String password; 31 | 32 | /** 33 | * 重定向路劲 34 | */ 35 | private String redirect; 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/config/AuthSecurityClientProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.config; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/12/21 15:35 13 | */ 14 | @Getter 15 | @Setter 16 | @ConfigurationProperties("auth.advice") 17 | public class AuthSecurityClientProperties { 18 | 19 | private boolean enable = true; 20 | } 21 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/dto/BaseDTO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.dto; 2 | 3 | import com.fasterxml.jackson.annotation.JsonIgnore; 4 | import com.liyz.boot3.service.auth.enums.Device; 5 | import com.liyz.boot3.service.auth.enums.LoginType; 6 | import lombok.Getter; 7 | import lombok.Setter; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/14 14:02 15 | */ 16 | @Getter 17 | @Setter 18 | public class BaseDTO { 19 | 20 | /** 21 | * 认证用户id 22 | */ 23 | @JsonIgnore 24 | private Long currentAuthId; 25 | 26 | /** 27 | * 登录类型 28 | * @see com.liyz.boot3.service.auth.enums.LoginType 29 | */ 30 | @JsonIgnore 31 | private LoginType currentLoginType; 32 | 33 | /** 34 | * 登录设备 35 | * @see com.liyz.boot3.service.auth.enums.Device 36 | */ 37 | @JsonIgnore 38 | private Device currentDevice; 39 | } 40 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/properties/GatewayAuthHeaderProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.properties; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/12/21 15:35 13 | */ 14 | @Getter 15 | @Setter 16 | @ConfigurationProperties("gateway.auth.header") 17 | public class GatewayAuthHeaderProperties { 18 | 19 | /** 20 | * header key 21 | */ 22 | private String key; 23 | 24 | /** 25 | * aes secret 26 | */ 27 | private String secret; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/java/com/liyz/boot3/security/client/user/AuthGrantedAuthority.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.security.client.user; 2 | 3 | import com.google.common.base.Joiner; 4 | import com.liyz.boot3.common.service.constant.CommonServiceConstant; 5 | import com.liyz.boot3.service.auth.bo.AuthUserBO; 6 | import lombok.Getter; 7 | import lombok.Setter; 8 | import org.springframework.security.core.GrantedAuthority; 9 | 10 | import java.io.Serial; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/6/14 16:24 18 | */ 19 | @Getter 20 | @Setter 21 | public class AuthGrantedAuthority extends AuthUserBO.AuthGrantedAuthorityBO implements GrantedAuthority { 22 | @Serial 23 | private static final long serialVersionUID = 1L; 24 | 25 | @Override 26 | public String getAuthority() { 27 | return Joiner.on(CommonServiceConstant.DEFAULT_JOINER).join(getClientId(), getAuthorityCode()).toUpperCase(); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/resources/META-INF/spring-configuration-metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "groups": [ 3 | { 4 | "name": "auth.advice", 5 | "type": "com.liyz.boot3.security.client.config.AuthSecurityClientProperties", 6 | "sourceType": "com.liyz.boot3.security.client.config.AuthSecurityClientProperties" 7 | } 8 | ], 9 | "properties": [ 10 | { 11 | "name": "auth.advice.enable", 12 | "type": "java.lang.Boolean", 13 | "sourceType": "com.liyz.boot3.security.client.config.AuthSecurityClientProperties", 14 | "defaultValue": true 15 | } 16 | ], 17 | "hints": [] 18 | } -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.security.client.config.AuthSecurityClientAutoConfig 2 | com.liyz.boot3.security.client.advice.AuthExceptionHandleAdvice -------------------------------------------------------------------------------- /dubbo-common/dubbo-security-client-starter/src/main/resources/security/serialize.allowlist: -------------------------------------------------------------------------------- 1 | com.liyz.boot3.security.client.user.AuthUserDetails -------------------------------------------------------------------------------- /dubbo-common/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-springboot3 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-common 13 | pom 14 | 15 | 16 | dubbo-common-api-starter 17 | dubbo-common-remote 18 | dubbo-common-service 19 | dubbo-common-util 20 | dubbo-exception-filter 21 | dubbo-common-dao-starter 22 | dubbo-security-client-starter 23 | dubbo-common-lock-starter 24 | dubbo-common-search-starter 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-gateway/src/main/java/com/liyz/boot3/gateway/GatewayApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.gateway; 2 | 3 | import com.liyz.boot3.common.api.config.WebMvcAutoConfig; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | import org.springframework.cloud.client.discovery.EnableDiscoveryClient; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/15 10:51 14 | */ 15 | @EnableDiscoveryClient 16 | @SpringBootApplication(exclude = {WebMvcAutoConfig.class}) 17 | public class GatewayApplication { 18 | 19 | public static void main(String[] args) { 20 | SpringApplication.run(GatewayApplication.class, args); 21 | } 22 | } -------------------------------------------------------------------------------- /dubbo-gateway/src/main/java/com/liyz/boot3/gateway/filter/GlobalCacheBodyFilter.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.gateway.filter; 2 | 3 | import jakarta.annotation.PostConstruct; 4 | import jakarta.annotation.Resource; 5 | import lombok.extern.slf4j.Slf4j; 6 | import org.springframework.cloud.gateway.config.GatewayProperties; 7 | import org.springframework.cloud.gateway.event.EnableBodyCachingEvent; 8 | import org.springframework.cloud.gateway.filter.AdaptCachedBodyGlobalFilter; 9 | import org.springframework.stereotype.Component; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2024/1/30 10:27 17 | */ 18 | @Slf4j 19 | @Component 20 | public class GlobalCacheBodyFilter extends AdaptCachedBodyGlobalFilter { 21 | 22 | @Resource 23 | private GatewayProperties gatewayProperties; 24 | 25 | @PostConstruct 26 | public void init() { 27 | gatewayProperties.getRoutes().forEach(route -> { 28 | EnableBodyCachingEvent event = new EnableBodyCachingEvent(new Object(), route.getId()); 29 | onApplicationEvent(event); 30 | }); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-gateway/src/main/java/com/liyz/boot3/gateway/properties/AnonymousMappingProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.gateway.properties; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | import java.util.Map; 8 | import java.util.Set; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/11/28 19:20 16 | */ 17 | @Getter 18 | @Setter 19 | @ConfigurationProperties(prefix = "anonymous.mapping") 20 | public class AnonymousMappingProperties { 21 | 22 | private Map> server; 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-gateway/src/main/java/com/liyz/boot3/gateway/properties/AuthorityMappingProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.gateway.properties; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | import org.springframework.cloud.context.config.annotation.RefreshScope; 7 | 8 | import java.util.HashMap; 9 | import java.util.Map; 10 | import java.util.Set; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/11/28 19:20 18 | */ 19 | @Getter 20 | @Setter 21 | @RefreshScope 22 | @ConfigurationProperties(prefix = "authority.mapping") 23 | public class AuthorityMappingProperties { 24 | 25 | private Map> white = new HashMap<>(); 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-gateway/src/main/java/com/liyz/boot3/gateway/properties/NonLimitMappingProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.gateway.properties; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | import java.util.Map; 8 | import java.util.Set; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/26 13:25 16 | */ 17 | @Getter 18 | @Setter 19 | @ConfigurationProperties(prefix = "non.limit.mapping") 20 | public class NonLimitMappingProperties { 21 | 22 | private Map> server; 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-gateway/src/main/resources/i18n/message.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-gateway/src/main/resources/i18n/message.properties -------------------------------------------------------------------------------- /dubbo-gateway/src/main/resources/i18n/message_en_US.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-gateway/src/main/resources/i18n/message_en_US.properties -------------------------------------------------------------------------------- /dubbo-gateway/src/main/resources/i18n/message_zh_CN.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-gateway/src/main/resources/i18n/message_zh_CN.properties -------------------------------------------------------------------------------- /dubbo-gateway/src/main/resources/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-gateway/src/main/resources/static/favicon.ico -------------------------------------------------------------------------------- /dubbo-gateway/src/main/resources/static/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-gateway/src/main/resources/static/img.png -------------------------------------------------------------------------------- /dubbo-generation/dubbo-generation-mybatis/dalgen/config/README.md: -------------------------------------------------------------------------------- 1 | > mybatis代码生成器,参考蚂蚁金服idalgen针对mybatis重新定义的一套代码生成器,idalgen在蚂蚁内部绝大多数应用都强制使用,优化版代码生成器除具有idalgen类似语法外,额外提供了常用的扩展功能 如List 自动转 Map,Map>等进一步减少体力开发 2 | 3 | [项目文档](http://git.oschina.net/bangis/mybatis.generator/wikis/pages) 4 | 5 |
6 | 7 |
8 | -------------------------------------------------------------------------------- /dubbo-generation/dubbo-generation-mybatis/dalgen/templates/dalgen/DBPreCheckMapper.java.ftl: -------------------------------------------------------------------------------- 1 | <@pp.dropOutputFile /> 2 | <#if dalgen.doMappers?size gt 0> 3 | <#assign tmpTables = dalgen.tmpTables> 4 | <#assign doMapper = dalgen.doMappers?first> 5 | <#assign dbName=""/> 6 | <#if !dalgen.getDataSourceSingle()><#assign dbName=dalgen.getDataSourceName()/> 7 | <@pp.changeOutputFile name = "/main/java/${doMapper.classPath}/${dbName}DBPreCheckMapper.java" /> 8 | package ${doMapper.packageName}; 9 | import java.util.List; 10 | /** 11 | * 数据库字段检查 12 | */ 13 | public interface ${dbName}DBPreCheckMapper{ 14 | 15 | List dbColumnCheck(); 16 | } 17 | 18 | -------------------------------------------------------------------------------- /dubbo-generation/dubbo-generation-mybatis/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-generation 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-generation-mybatis 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-webflux 18 | 19 | 20 | com.baomidou 21 | mybatis-plus-spring-boot3-starter 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /dubbo-generation/dubbo-generation-mybatis/src/main/java/com/liyz/boot3/generation/mybatis/mapper/DBPreCheckMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.generation.mybatis.mapper; 2 | import java.util.List; 3 | /** 4 | * 数据库字段检查 5 | */ 6 | public interface DBPreCheckMapper{ 7 | 8 | List dbColumnCheck(); 9 | } 10 | -------------------------------------------------------------------------------- /dubbo-generation/dubbo-generation-mybatis/src/main/resources/mybatis-config.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /dubbo-generation/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-springboot3 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-generation 13 | pom 14 | 15 | 16 | dubbo-generation-mybatis 17 | 18 | 19 | -------------------------------------------------------------------------------- /dubbo-process/dubbo-process-flowable/flowable-biz/src/main/java/com/liyz/boot3/process/flowable/FlowableApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.process.flowable; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | * Desc:启动类 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/4/28 11:16 13 | */ 14 | @SpringBootApplication 15 | @MapperScan(basePackages = {"com.liyz.boot3.process.flowable.dao"}) 16 | public class FlowableApplication { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(FlowableApplication.class, args); 20 | } 21 | } -------------------------------------------------------------------------------- /dubbo-process/dubbo-process-flowable/flowable-biz/src/main/java/com/liyz/boot3/process/flowable/config/FlowableConfig.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.process.flowable.config; 2 | 3 | import org.springframework.context.annotation.Configuration; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/4/28 13:20 11 | */ 12 | @Configuration 13 | public class FlowableConfig { 14 | 15 | } 16 | -------------------------------------------------------------------------------- /dubbo-process/dubbo-process-flowable/flowable-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-process-flowable 9 | 1.0-SNAPSHOT 10 | 11 | 12 | flowable-remote 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-validation 18 | provided 19 | 20 | 21 | com.liyz.boot3 22 | dubbo-common-remote 23 | provided 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-process/dubbo-process-flowable/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-process 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-process-flowable 13 | pom 14 | 15 | flowable-remote 16 | flowable-dao 17 | flowable-biz 18 | 19 | 20 | -------------------------------------------------------------------------------- /dubbo-process/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-springboot3 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-process 13 | pom 14 | 15 | dubbo-process-flowable 16 | 17 | 18 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/java/com/liyz/boot3/service/auth/AuthServiceApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/11/24 9:21 13 | */ 14 | @SpringBootApplication 15 | @MapperScan(basePackages = {"com.liyz.boot3.service.*.dao"}) 16 | public class AuthServiceApplication { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(AuthServiceApplication.class, args); 20 | } 21 | } -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/java/com/liyz/boot3/service/auth/constants/AuthConstants.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.constants; 2 | 3 | import com.google.common.base.Joiner; 4 | import com.liyz.boot3.common.service.constant.CommonServiceConstant; 5 | import lombok.experimental.UtilityClass; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/6/15 9:28 13 | */ 14 | @UtilityClass 15 | public class AuthConstants { 16 | 17 | /** 18 | * redis前缀 19 | */ 20 | public final String REDIS_PREFIX = "auth"; 21 | 22 | public final String LOGIN_KEY = "loginKey"; 23 | 24 | /** 25 | * 获取redis的key 26 | * 27 | * @param keys 28 | * @return 29 | */ 30 | public static String getRedisKey(String... keys) { 31 | return Joiner.on(CommonServiceConstant.DEFAULT_JOINER).join(REDIS_PREFIX, LOGIN_KEY, keys); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/java/com/liyz/boot3/service/auth/service/AuthJwtService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.auth.model.AuthJwtDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/14 17:59 12 | */ 13 | public interface AuthJwtService extends IService { 14 | 15 | /** 16 | * 根据资源ID获取JWT配置信息 17 | * 18 | * @param clientId 资源ID 19 | * @return JWT配置信息 20 | */ 21 | AuthJwtDO getByClientId(String clientId); 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/java/com/liyz/boot3/service/auth/service/AuthSourceService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.auth.model.AuthSourceDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/14 18:00 12 | */ 13 | public interface AuthSourceService extends IService { 14 | 15 | /** 16 | * 根据资源ID获取资源配置信息 17 | * 18 | * @param clientId 资源ID 19 | * @return 资源配置信息 20 | */ 21 | AuthSourceDO getByClientId(String clientId); 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/resources/i18n/message.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-service/dubbo-service-auth/auth-biz/src/main/resources/i18n/message.properties -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/resources/i18n/message_en_US.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-service/dubbo-service-auth/auth-biz/src/main/resources/i18n/message_en_US.properties -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-biz/src/main/resources/i18n/message_zh_CN.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ZhiQinIsZhen/dubbo-springboot3/408c2bb8ab855f3527a79cdac3fcd11882b21531/dubbo-service/dubbo-service-auth/auth-biz/src/main/resources/i18n/message_zh_CN.properties -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-dao/src/main/java/com/liyz/boot3/service/auth/dao/AuthJwtMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.auth.model.AuthJwtDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/14 17:43 12 | */ 13 | public interface AuthJwtMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-dao/src/main/java/com/liyz/boot3/service/auth/dao/AuthSourceMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.auth.model.AuthSourceDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/14 17:41 12 | */ 13 | public interface AuthSourceMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-dao/src/main/java/com/liyz/boot3/service/auth/model/AuthSourceDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.IdType; 4 | import com.baomidou.mybatisplus.annotation.TableId; 5 | import com.baomidou.mybatisplus.annotation.TableName; 6 | import com.liyz.boot3.common.dao.model.BaseDO; 7 | import lombok.Getter; 8 | import lombok.Setter; 9 | 10 | import java.io.Serial; 11 | import java.io.Serializable; 12 | 13 | /** 14 | * Desc: 15 | * 16 | * @author lyz 17 | * @version 1.0.0 18 | * @date 2023/3/9 15:38 19 | */ 20 | @Getter 21 | @Setter 22 | @TableName("auth_source") 23 | public class AuthSourceDO extends BaseDO implements Serializable { 24 | @Serial 25 | private static final long serialVersionUID = -5151397049526247715L; 26 | 27 | @TableId(type = IdType.AUTO) 28 | private Long id; 29 | 30 | /** 31 | * 应用名 32 | */ 33 | private String clientId; 34 | 35 | /** 36 | * dubbo tag 37 | */ 38 | private String clientTag; 39 | } 40 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service-auth 9 | 1.0-SNAPSHOT 10 | 11 | 12 | auth-remote 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-validation 18 | provided 19 | 20 | 21 | com.liyz.boot3 22 | dubbo-common-remote 23 | provided 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-remote/src/main/java/com/liyz/boot3/service/auth/bo/AuthUserRegisterBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/14 9:50 15 | */ 16 | @Getter 17 | @Setter 18 | public class AuthUserRegisterBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 1L; 21 | 22 | /** 23 | * 用户名 24 | */ 25 | private String username; 26 | 27 | /** 28 | * 密码 29 | */ 30 | private String password; 31 | 32 | /** 33 | * 加密盐 34 | */ 35 | private String salt; 36 | 37 | /** 38 | * 用户昵称 39 | */ 40 | private String nickName; 41 | 42 | /** 43 | * 用户真实名称 44 | */ 45 | private String realName; 46 | 47 | /** 48 | * 客户端ID 49 | */ 50 | private String clientId; 51 | } 52 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-remote/src/main/java/com/liyz/boot3/service/auth/enums/Device.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.enums; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Getter; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/3/9 14:12 12 | */ 13 | @Getter 14 | @AllArgsConstructor 15 | public enum Device { 16 | MOBILE(1, "移动端"), 17 | WEB(2, "网页端"), 18 | ; 19 | 20 | private final int type; 21 | private final String desc; 22 | 23 | public static Device getByType(int type) { 24 | for (Device device : Device.values()) { 25 | if (type == device.type) { 26 | return device; 27 | } 28 | } 29 | return null; 30 | } 31 | 32 | @Override 33 | public String toString() { 34 | return type + ":" + desc; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-remote/src/main/java/com/liyz/boot3/service/auth/enums/LoginType.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.enums; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Getter; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/3/9 14:12 12 | */ 13 | @Getter 14 | @AllArgsConstructor 15 | public enum LoginType { 16 | 17 | MOBILE(1, "手机号码登录"), 18 | EMAIL(2, "邮箱登录"), 19 | ; 20 | 21 | private final int type; 22 | private final String desc; 23 | 24 | public static LoginType getByType(int type) { 25 | for (LoginType loginType : LoginType.values()) { 26 | if (type == loginType.type) { 27 | return loginType; 28 | } 29 | } 30 | return null; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-remote/src/main/java/com/liyz/boot3/service/auth/exception/RemoteAuthServiceException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import com.liyz.boot3.common.remote.exception.RemoteServiceException; 5 | 6 | import java.io.Serial; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/24 9:26 14 | */ 15 | public class RemoteAuthServiceException extends RemoteServiceException { 16 | @Serial 17 | private static final long serialVersionUID = -7199913728327633511L; 18 | 19 | public RemoteAuthServiceException() { 20 | super(); 21 | } 22 | 23 | public RemoteAuthServiceException(IExceptionService codeService) { 24 | super(codeService); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/auth-remote/src/main/java/com/liyz/boot3/service/auth/remote/RemoteJwtParseService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.auth.remote; 2 | 3 | import com.liyz.boot3.service.auth.bo.AuthUserBO; 4 | import org.apache.commons.lang3.tuple.Pair; 5 | 6 | /** 7 | * Desc:JWT parse service 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/3/9 13:33 12 | */ 13 | public interface RemoteJwtParseService { 14 | 15 | /** 16 | * 解析token 17 | * 18 | * @param token jwt token 19 | * @param clientId 应用名称 20 | * @return 用户信息 21 | */ 22 | AuthUserBO parseToken(final String token, final String clientId); 23 | 24 | /** 25 | * 生成token 26 | * 27 | * @param authUser 用户信息 28 | * @return jwt token 29 | */ 30 | Pair generateToken(final AuthUserBO authUser); 31 | 32 | /** 33 | * 获取失效时间 34 | * 35 | * @param token jwt token 36 | * @return 失效时间 37 | */ 38 | Long getExpiration(final String token); 39 | } 40 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-auth/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-service-auth 13 | pom 14 | 15 | 16 | auth-remote 17 | auth-dao 18 | auth-biz 19 | 20 | 21 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-service-search 13 | pom 14 | 15 | 16 | search-remote 17 | search-dao 18 | search-biz 19 | 20 | 21 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-biz/src/main/java/com/liyz/boot3/service/search/SearchServiceApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search; 2 | 3 | import com.liyz.boot3.common.search.annotation.EsMapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/11/14 9:15 13 | */ 14 | @EsMapperScan(basePackages = "com.liyz.boot3.service.search.mapper") 15 | @SpringBootApplication 16 | public class SearchServiceApplication { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(SearchServiceApplication.class, args); 20 | } 21 | } -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-biz/src/test/java/com/liyz/boot3/service/search/provider/bid/RemoteBidDetailServiceImplTest.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.provider.bid; 2 | 3 | import com.liyz.boot3.service.search.remote.bid.RemoteBidDetailService; 4 | import jakarta.annotation.Resource; 5 | import lombok.extern.slf4j.Slf4j; 6 | import org.junit.Test; 7 | import org.junit.runner.RunWith; 8 | import org.springframework.boot.test.context.SpringBootTest; 9 | import org.springframework.test.context.junit4.SpringRunner; 10 | 11 | /** 12 | * Desc: 13 | * 14 | * @author lyz 15 | * @version 1.0.0 16 | * @date 2023/11/14 14:55 17 | */ 18 | @Slf4j 19 | @RunWith(SpringRunner.class) 20 | @SpringBootTest 21 | public class RemoteBidDetailServiceImplTest { 22 | 23 | @Resource 24 | private RemoteBidDetailService remoteBidDetailService; 25 | 26 | @Test 27 | public void test() { 28 | } 29 | } -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-dao/src/main/java/com/liyz/boot3/service/search/mapper/CompanyBasicMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.mapper; 2 | 3 | import com.liyz.boot3.common.search.mapper.EsMapper; 4 | import com.liyz.boot3.service.search.model.CompanyBasicDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024/1/20 15:53 12 | */ 13 | public interface CompanyBasicMapper extends EsMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-dao/src/main/java/com/liyz/boot3/service/search/mapper/CompanyFinancingMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.mapper; 2 | 3 | import com.liyz.boot3.common.search.mapper.EsMapper; 4 | import com.liyz.boot3.service.search.model.CompanyFinancingDO; 5 | 6 | import java.io.Serializable; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2024/1/9 14:10 14 | */ 15 | public interface CompanyFinancingMapper extends EsMapper, Serializable { 16 | } 17 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-dao/src/main/java/com/liyz/boot3/service/search/mapper/CompanyHolderMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.mapper; 2 | 3 | import com.liyz.boot3.common.search.mapper.EsMapper; 4 | import com.liyz.boot3.service.search.model.CompanyHolderDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/12/26 15:44 12 | */ 13 | public interface CompanyHolderMapper extends EsMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-dao/src/main/java/com/liyz/boot3/service/search/mapper/CompanyInvestorMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.mapper; 2 | 3 | import com.liyz.boot3.common.search.mapper.EsMapper; 4 | import com.liyz.boot3.service.search.model.CompanyInvestorDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024/1/8 13:40 12 | */ 13 | public interface CompanyInvestorMapper extends EsMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-dao/src/main/java/com/liyz/boot3/service/search/mapper/CompanyMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.mapper; 2 | 3 | import com.liyz.boot3.common.search.mapper.EsMapper; 4 | import com.liyz.boot3.service.search.model.CompanyDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/12/25 10:15 12 | */ 13 | public interface CompanyMapper extends EsMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-dao/src/main/java/com/liyz/boot3/service/search/repository/CompanyRepository.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.repository; 2 | 3 | import com.liyz.boot3.service.search.model.CompanyDO; 4 | import org.springframework.data.elasticsearch.repository.ElasticsearchRepository; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/11/14 9:37 12 | */ 13 | public interface CompanyRepository extends ElasticsearchRepository { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service-search 9 | 1.0-SNAPSHOT 10 | 11 | 12 | search-remote 13 | 14 | 15 | 16 | com.liyz.boot3 17 | dubbo-common-remote 18 | provided 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/bo/BaseBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/13 16:25 15 | */ 16 | @Getter 17 | @Setter 18 | public class BaseBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 6971827342998500218L; 21 | 22 | private String id; 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/bo/agg/AggBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.bo.agg; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 15:16 15 | */ 16 | @Getter 17 | @Setter 18 | public class AggBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -4672225002891936839L; 21 | 22 | private String name; 23 | 24 | private Object value; 25 | 26 | public static AggBO of(String name, Object value) { 27 | AggBO aggBO = new AggBO(); 28 | aggBO.setName(name); 29 | aggBO.setValue(value); 30 | return aggBO; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/bo/company/CompanyBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.bo.company; 2 | 3 | import com.liyz.boot3.service.search.bo.BaseBO; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.util.List; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/11/14 10:32 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyBO extends BaseBO { 20 | @Serial 21 | private static final long serialVersionUID = 1614910778903013522L; 22 | 23 | private String companyId; 24 | 25 | private String companyNameTag; 26 | 27 | private String companyCode; 28 | 29 | private String creditNo; 30 | 31 | private String legalPersonFlag; 32 | 33 | private String addressTag; 34 | 35 | private Long establishmentTime; 36 | 37 | private List honorFlag; 38 | 39 | private String ssqyFlag; 40 | } 41 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/bo/company/CompanyBasicBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.bo.company; 2 | 3 | import com.liyz.boot3.service.search.bo.BaseBO; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 9:34 15 | */ 16 | @Getter 17 | @Setter 18 | public class CompanyBasicBO extends BaseBO { 19 | @Serial 20 | private static final long serialVersionUID = 170535601509514115L; 21 | 22 | private String name; 23 | 24 | private String regNumber; 25 | 26 | private String creditCode; 27 | 28 | private String legalPersonName; 29 | 30 | private Long type; 31 | 32 | private Long companyType; 33 | 34 | private String regCapital; 35 | 36 | private String estiblishTime; 37 | } 38 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/bo/company/CompanyFinancingBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.bo.company; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/9 14:05 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyFinancingBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 7747494754239884918L; 22 | 23 | private String id; 24 | 25 | private String companyId; 26 | 27 | private String companyName; 28 | 29 | private Date financingDate; 30 | 31 | private String financingRounds; 32 | 33 | private String valuation; 34 | 35 | private Integer useFlag; 36 | 37 | private String ssqyFlag; 38 | 39 | private String ipo; 40 | } 41 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/bo/investor/CompanyInvestorBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.bo.investor; 2 | 3 | import com.liyz.boot3.service.search.bo.BaseBO; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2024/1/8 13:36 16 | */ 17 | @Getter 18 | @Setter 19 | public class CompanyInvestorBO extends BaseBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 2524475764297876678L; 22 | 23 | private String companyId; 24 | 25 | private String companyName; 26 | 27 | private String investorName; 28 | 29 | private String establishTime; 30 | 31 | private String mark; 32 | 33 | private String logo; 34 | } 35 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/exception/RemoteSearchServiceException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import com.liyz.boot3.common.remote.exception.RemoteServiceException; 5 | 6 | import java.io.Serial; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/14 9:39 14 | */ 15 | public class RemoteSearchServiceException extends RemoteServiceException { 16 | @Serial 17 | private static final long serialVersionUID = 7663963796387208961L; 18 | 19 | public RemoteSearchServiceException() { 20 | super(); 21 | } 22 | 23 | public RemoteSearchServiceException(IExceptionService codeService) { 24 | super(codeService); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/exception/SearchExceptionCodeEnum.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import lombok.AllArgsConstructor; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/11/14 9:38 12 | */ 13 | @AllArgsConstructor 14 | public enum SearchExceptionCodeEnum implements IExceptionService { 15 | NOT_SUPPORT_METHOD("50001", "不支持该方法"), 16 | ES_SEARCH_ERROR("50002", "数据查询错误"), 17 | ; 18 | 19 | private final String code; 20 | 21 | private final String message; 22 | 23 | @Override 24 | public String getCode() { 25 | return code; 26 | } 27 | 28 | @Override 29 | public String getMessage() { 30 | return message; 31 | } 32 | 33 | @Override 34 | public String getName() { 35 | return name(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/query/agg/AggQuery.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.query.agg; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 15:21 15 | */ 16 | @Getter 17 | @Setter 18 | public class AggQuery implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -5163642946677800494L; 21 | 22 | private String field; 23 | 24 | private int size = 100; 25 | 26 | private int minDocCount = 1; 27 | 28 | /** 29 | * _count 30 | * _key 31 | */ 32 | private String order; 33 | 34 | private boolean desc; 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/query/bid/BidDetailPageQuery.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.query.bid; 2 | 3 | import com.liyz.boot3.service.search.query.PageQuery; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 14:52 15 | */ 16 | @Getter 17 | @Setter 18 | public class BidDetailPageQuery extends PageQuery { 19 | @Serial 20 | private static final long serialVersionUID = -7561700001685083320L; 21 | } 22 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/query/company/CompanyPageQuery.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.query.company; 2 | 3 | import com.liyz.boot3.service.search.query.PageQuery; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import java.io.Serial; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 10:38 15 | */ 16 | @Getter 17 | @Setter 18 | public class CompanyPageQuery extends PageQuery { 19 | @Serial 20 | private static final long serialVersionUID = -1225057130309668169L; 21 | 22 | private String companyName; 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/remote/bid/RemoteBidDetailService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.remote.bid; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2023/11/14 14:53 9 | */ 10 | public interface RemoteBidDetailService { 11 | } 12 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/remote/bid/RemoteBidTenderCountService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.remote.bid; 2 | 3 | import com.liyz.boot3.service.search.bo.bid.BidTenderCountBO; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/3/18 14:40 13 | */ 14 | public interface RemoteBidTenderCountService { 15 | 16 | List list(BidTenderCountBO query); 17 | } 18 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/remote/company/RemoteCompanyBasicService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.remote.company; 2 | 3 | import com.liyz.boot3.service.search.bo.company.CompanyBasicBO; 4 | 5 | /** 6 | * Desc: 7 | * 8 | * @author lyz 9 | * @version 1.0.0 10 | * @date 2024/1/20 15:54 11 | */ 12 | public interface RemoteCompanyBasicService { 13 | 14 | CompanyBasicBO selectOne(CompanyBasicBO companyBO); 15 | } 16 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/remote/company/RemoteCompanyFinancingService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.remote.company; 2 | 3 | import com.liyz.boot3.service.search.bo.agg.AggBO; 4 | import com.liyz.boot3.service.search.bo.company.CompanyFinancingBO; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2024/1/9 14:10 14 | */ 15 | public interface RemoteCompanyFinancingService { 16 | 17 | CompanyFinancingBO selectOne(CompanyFinancingBO financingBO); 18 | 19 | void export(List companyIds); 20 | 21 | void export1(List companyNames); 22 | 23 | List agg(CompanyFinancingBO financingBO); 24 | } 25 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/remote/company/RemoteCompanyService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.remote.company; 2 | 3 | import com.liyz.boot3.common.remote.page.PageBO; 4 | import com.liyz.boot3.common.remote.page.RemotePage; 5 | import com.liyz.boot3.service.search.bo.company.CompanyBO; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/11/14 10:37 15 | */ 16 | public interface RemoteCompanyService { 17 | 18 | CompanyBO getById(String id); 19 | 20 | List getByIds(List ids); 21 | 22 | CompanyBO selectOne(CompanyBO companyBO); 23 | 24 | RemotePage selectPage(PageBO pageBO, CompanyBO companyBO); 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-search/search-remote/src/main/java/com/liyz/boot3/service/search/remote/investor/RemoteCompanyInvestorService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.search.remote.investor; 2 | 3 | import com.liyz.boot3.common.remote.page.RemotePage; 4 | import com.liyz.boot3.service.search.bo.investor.CompanyInvestorBO; 5 | import com.liyz.boot3.service.search.query.PageQuery; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/1/8 13:41 13 | */ 14 | public interface RemoteCompanyInvestorService { 15 | 16 | CompanyInvestorBO getById(String id); 17 | 18 | RemotePage page(PageQuery pageQuery); 19 | } 20 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-service-staff 13 | pom 14 | 15 | staff-remote 16 | staff-dao 17 | staff-biz 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/StaffServiceApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/11/23 16:48 13 | */ 14 | @SpringBootApplication 15 | @MapperScan(basePackages = {"com.liyz.boot3.service.*.dao"}) 16 | public class StaffServiceApplication { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(StaffServiceApplication.class, args); 20 | } 21 | } -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffAuthEmailService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.StaffAuthEmailDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:05 12 | */ 13 | public interface StaffAuthEmailService extends IService, LoginTypeService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffAuthMobileService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.StaffAuthMobileDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:03 12 | */ 13 | public interface StaffAuthMobileService extends IService, LoginTypeService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffAuthorityService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.StaffAuthorityDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:21 12 | */ 13 | public interface StaffAuthorityService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffInfoService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.StaffInfoDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:03 12 | */ 13 | public interface StaffInfoService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffLoginLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.auth.enums.Device; 5 | import com.liyz.boot3.service.staff.model.StaffLoginLogDO; 6 | 7 | import java.util.Date; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:02 15 | */ 16 | public interface StaffLoginLogService extends IService { 17 | 18 | /** 19 | * 获取上次登录时间 20 | * 21 | * @param staffId 员工ID 22 | * @param device 设备类型 23 | * @return 上次登录时间 24 | */ 25 | Date lastLoginTime(Long staffId, Device device); 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffLogoutLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.auth.enums.Device; 5 | import com.liyz.boot3.service.staff.model.StaffLogoutLogDO; 6 | 7 | import java.util.Date; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:00 15 | */ 16 | public interface StaffLogoutLogService extends IService { 17 | 18 | /** 19 | * 获取上次登出时间 20 | * 21 | * @param staffId 员工ID 22 | * @return 上次登出时间 23 | */ 24 | Date lastLogoutTime(Long staffId, Device device); 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/StaffRoleService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.StaffRoleDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:13 12 | */ 13 | public interface StaffRoleService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/SystemAuthorityService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.SystemAuthorityDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:17 12 | */ 13 | public interface SystemAuthorityService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/SystemRoleAuthorityService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.SystemRoleAuthorityDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:19 12 | */ 13 | public interface SystemRoleAuthorityService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/SystemRoleService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.staff.model.SystemRoleDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:15 12 | */ 13 | public interface SystemRoleService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/impl/StaffAuthorityServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.staff.dao.StaffAuthorityMapper; 5 | import com.liyz.boot3.service.staff.model.StaffAuthorityDO; 6 | import com.liyz.boot3.service.staff.service.StaffAuthorityService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:21 15 | */ 16 | @Service 17 | public class StaffAuthorityServiceImpl extends ServiceImpl implements StaffAuthorityService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/impl/StaffInfoServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.staff.dao.StaffInfoMapper; 5 | import com.liyz.boot3.service.staff.model.StaffInfoDO; 6 | import com.liyz.boot3.service.staff.service.StaffInfoService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:03 15 | */ 16 | @Service 17 | public class StaffInfoServiceImpl extends ServiceImpl implements StaffInfoService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/impl/StaffRoleServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.staff.dao.StaffRoleMapper; 5 | import com.liyz.boot3.service.staff.model.StaffRoleDO; 6 | import com.liyz.boot3.service.staff.service.StaffRoleService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:13 15 | */ 16 | @Service 17 | public class StaffRoleServiceImpl extends ServiceImpl implements StaffRoleService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/impl/SystemAuthorityServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.staff.dao.SystemAuthorityMapper; 5 | import com.liyz.boot3.service.staff.model.SystemAuthorityDO; 6 | import com.liyz.boot3.service.staff.service.SystemAuthorityService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:18 15 | */ 16 | @Service 17 | public class SystemAuthorityServiceImpl extends ServiceImpl implements SystemAuthorityService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/impl/SystemRoleAuthorityServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.staff.dao.SystemRoleAuthorityMapper; 5 | import com.liyz.boot3.service.staff.model.SystemRoleAuthorityDO; 6 | import com.liyz.boot3.service.staff.service.SystemRoleAuthorityService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:20 15 | */ 16 | @Service 17 | public class SystemRoleAuthorityServiceImpl extends ServiceImpl implements SystemRoleAuthorityService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-biz/src/main/java/com/liyz/boot3/service/staff/service/impl/SystemRoleServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.staff.dao.SystemRoleMapper; 5 | import com.liyz.boot3.service.staff.model.SystemRoleDO; 6 | import com.liyz.boot3.service.staff.service.SystemRoleService; 7 | import org.springframework.stereotype.Service; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/15 14:16 15 | */ 16 | @Service 17 | public class SystemRoleServiceImpl extends ServiceImpl implements SystemRoleService { 18 | } 19 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffAuthEmailMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffAuthEmailDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 13:59 12 | */ 13 | public interface StaffAuthEmailMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffAuthMobileMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffAuthMobileDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 13:59 12 | */ 13 | public interface StaffAuthMobileMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffAuthorityMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffAuthorityDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:21 12 | */ 13 | public interface StaffAuthorityMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffInfoMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffInfoDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 13:59 12 | */ 13 | public interface StaffInfoMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffLoginLogMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffLoginLogDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:00 12 | */ 13 | public interface StaffLoginLogMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffLogoutLogMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffLogoutLogDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:00 12 | */ 13 | public interface StaffLogoutLogMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/StaffRoleMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.StaffRoleDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:13 12 | */ 13 | public interface StaffRoleMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/SystemAuthorityMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.SystemAuthorityDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:17 12 | */ 13 | public interface SystemAuthorityMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/SystemRoleAuthorityMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.SystemRoleAuthorityDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:19 12 | */ 13 | public interface SystemRoleAuthorityMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/dao/SystemRoleMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.staff.model.SystemRoleDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/15 14:15 12 | */ 13 | public interface SystemRoleMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/model/StaffAuthEmailDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.TableName; 4 | import com.liyz.boot3.service.staff.model.base.StaffAuthBaseDO; 5 | import lombok.*; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 9:58 16 | */ 17 | @Getter 18 | @Setter 19 | @Builder 20 | @AllArgsConstructor 21 | @NoArgsConstructor 22 | @TableName("staff_auth_email") 23 | public class StaffAuthEmailDO extends StaffAuthBaseDO implements Serializable { 24 | @Serial 25 | private static final long serialVersionUID = 4693155700165619110L; 26 | 27 | private String email; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/model/StaffAuthMobileDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.TableName; 4 | import com.liyz.boot3.service.staff.model.base.StaffAuthBaseDO; 5 | import lombok.*; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 9:59 16 | */ 17 | @Getter 18 | @Setter 19 | @Builder 20 | @AllArgsConstructor 21 | @NoArgsConstructor 22 | @TableName("staff_auth_mobile") 23 | public class StaffAuthMobileDO extends StaffAuthBaseDO implements Serializable { 24 | @Serial 25 | private static final long serialVersionUID = 5417331084800908347L; 26 | 27 | private String mobile; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/model/StaffRoleDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.IdType; 4 | import com.baomidou.mybatisplus.annotation.TableId; 5 | import com.baomidou.mybatisplus.annotation.TableName; 6 | import com.liyz.boot3.common.dao.model.BaseDO; 7 | import lombok.*; 8 | 9 | import java.io.Serial; 10 | import java.io.Serializable; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/3/11 11:38 18 | */ 19 | @Getter 20 | @Setter 21 | @Builder 22 | @AllArgsConstructor 23 | @NoArgsConstructor 24 | @TableName("staff_role") 25 | public class StaffRoleDO extends BaseDO implements Serializable { 26 | @Serial 27 | private static final long serialVersionUID = -1600563077499546530L; 28 | 29 | @TableId(type = IdType.AUTO) 30 | private Long id; 31 | 32 | private Long staffId; 33 | 34 | /** 35 | * 角色ID 36 | */ 37 | private Integer roleId; 38 | 39 | } 40 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/model/SystemRoleAuthorityDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.IdType; 4 | import com.baomidou.mybatisplus.annotation.TableId; 5 | import com.baomidou.mybatisplus.annotation.TableName; 6 | import com.liyz.boot3.common.dao.model.BaseDO; 7 | import lombok.*; 8 | 9 | import java.io.Serial; 10 | import java.io.Serializable; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/3/11 11:38 18 | */ 19 | @Getter 20 | @Setter 21 | @Builder 22 | @AllArgsConstructor 23 | @NoArgsConstructor 24 | @TableName("system_role_authority") 25 | public class SystemRoleAuthorityDO extends BaseDO implements Serializable { 26 | @Serial 27 | private static final long serialVersionUID = -1600563077499546530L; 28 | 29 | @TableId(type = IdType.AUTO) 30 | private Long id; 31 | 32 | /** 33 | * 角色ID 34 | */ 35 | private Integer roleId; 36 | 37 | /** 38 | * 权限ID 39 | */ 40 | private Integer authorityId; 41 | 42 | } 43 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/model/SystemRoleDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.IdType; 4 | import com.baomidou.mybatisplus.annotation.TableId; 5 | import com.baomidou.mybatisplus.annotation.TableName; 6 | import com.liyz.boot3.common.dao.model.BaseDO; 7 | import lombok.*; 8 | 9 | import java.io.Serial; 10 | import java.io.Serializable; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/3/11 11:38 18 | */ 19 | @Getter 20 | @Setter 21 | @Builder 22 | @AllArgsConstructor 23 | @NoArgsConstructor 24 | @TableName("system_role") 25 | public class SystemRoleDO extends BaseDO implements Serializable { 26 | @Serial 27 | private static final long serialVersionUID = -1600563077499546530L; 28 | 29 | @TableId(type = IdType.INPUT) 30 | private Long roleId; 31 | 32 | /** 33 | * 角色名称 34 | */ 35 | private String roleName; 36 | 37 | /** 38 | * 父角色ID 39 | */ 40 | private Integer parentRoleId; 41 | 42 | } 43 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-dao/src/main/java/com/liyz/boot3/service/staff/model/base/StaffAuthBaseDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.model.base; 2 | 3 | import com.baomidou.mybatisplus.annotation.IdType; 4 | import com.baomidou.mybatisplus.annotation.TableId; 5 | import com.liyz.boot3.common.dao.model.BaseDO; 6 | import lombok.Getter; 7 | import lombok.Setter; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/14 9:26 15 | */ 16 | @Getter 17 | @Setter 18 | public class StaffAuthBaseDO extends BaseDO { 19 | 20 | /** 21 | * 员工ID 22 | */ 23 | @TableId(type = IdType.INPUT) 24 | private Long staffId; 25 | 26 | /** 27 | * 密码 28 | */ 29 | private String password; 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service-staff 9 | 1.0-SNAPSHOT 10 | 11 | 12 | staff-remote 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-validation 18 | provided 19 | 20 | 21 | com.liyz.boot3 22 | dubbo-common-remote 23 | provided 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/StaffInfoBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 10:15 16 | */ 17 | @Getter 18 | @Setter 19 | public class StaffInfoBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 477985923412638468L; 22 | 23 | private Long staffId; 24 | 25 | private String realName; 26 | 27 | private String nickName; 28 | 29 | private String mobile; 30 | 31 | private String email; 32 | 33 | private String salt; 34 | 35 | private Date registryTime; 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/StaffLoginLogBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 10:15 16 | */ 17 | @Getter 18 | @Setter 19 | public class StaffLoginLogBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -8978119199629210583L; 22 | 23 | private Long staffId; 24 | 25 | /** 26 | * 登录方式:1:手机;2:邮箱 27 | */ 28 | private Integer loginType; 29 | 30 | private Integer device; 31 | 32 | private Date loginTime; 33 | 34 | private String ip; 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/StaffLogoutLogBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 10:16 16 | */ 17 | @Getter 18 | @Setter 19 | public class StaffLogoutLogBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 3070437801653890936L; 22 | 23 | private Long staffId; 24 | 25 | /** 26 | * 登录方式:1:手机;2:邮箱 27 | */ 28 | private Integer logoutType; 29 | 30 | private Integer device; 31 | 32 | private Date logoutTime; 33 | 34 | private String ip; 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/StaffRoleBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/13 13:40 15 | */ 16 | @Getter 17 | @Setter 18 | public class StaffRoleBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -5019855188001537438L; 21 | 22 | /** 23 | * 员工ID 24 | */ 25 | private Long staffId; 26 | 27 | /** 28 | * 角色ID 29 | */ 30 | private Integer roleId; 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/SystemAuthorityBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/11 13:31 15 | */ 16 | @Getter 17 | @Setter 18 | public class SystemAuthorityBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = -6116744036977982899L; 21 | 22 | /** 23 | * 权限ID 24 | */ 25 | private Integer authorityId; 26 | 27 | /** 28 | * 权限码 29 | */ 30 | private String authority; 31 | 32 | /** 33 | * 权限名称 34 | */ 35 | private String authorityName; 36 | 37 | /** 38 | * 父权限ID 39 | */ 40 | private Integer parentAuthorityId; 41 | 42 | /** 43 | * 应用ID 44 | */ 45 | private String clientId; 46 | } 47 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/SystemRoleAuthorityBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/11 15:33 15 | */ 16 | @Getter 17 | @Setter 18 | public class SystemRoleAuthorityBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 8328113920009535585L; 21 | 22 | /** 23 | * 角色ID 24 | */ 25 | private Integer roleId; 26 | 27 | /** 28 | * 权限ID 29 | */ 30 | private Integer authorityId; 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/bo/SystemRoleBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/11 13:23 15 | */ 16 | @Getter 17 | @Setter 18 | public class SystemRoleBO implements Serializable { 19 | @Serial 20 | private static final long serialVersionUID = 2197798732348814224L; 21 | 22 | /** 23 | * 角色ID 24 | */ 25 | private Long roleId; 26 | 27 | /** 28 | * 角色名称 29 | */ 30 | private String roleName; 31 | 32 | /** 33 | * 父角色ID 34 | */ 35 | private Integer parentRoleId; 36 | } 37 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/constant/StaffAuthorityConstant.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.constant; 2 | 3 | /** 4 | * Desc: 5 | * 6 | * @author lyz 7 | * @version 1.0.0 8 | * @date 2023/11/24 15:21 9 | */ 10 | public interface StaffAuthorityConstant { 11 | 12 | String STAFF_INFO = "DUBBO-API-ADMIN:STAFFINFO"; 13 | 14 | default String getStaffInfo() { 15 | return STAFF_INFO; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/exception/RemoteStaffServiceException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import com.liyz.boot3.common.remote.exception.RemoteServiceException; 5 | 6 | import java.io.Serial; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/23 17:16 14 | */ 15 | public class RemoteStaffServiceException extends RemoteServiceException { 16 | @Serial 17 | private static final long serialVersionUID = 1309235357509826011L; 18 | 19 | public RemoteStaffServiceException() { 20 | super(); 21 | } 22 | 23 | public RemoteStaffServiceException(IExceptionService codeService) { 24 | super(codeService); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/exception/StaffExceptionCodeEnum.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import lombok.AllArgsConstructor; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/11/23 17:15 12 | */ 13 | @AllArgsConstructor 14 | public enum StaffExceptionCodeEnum implements IExceptionService { 15 | ; 16 | 17 | private final String code; 18 | 19 | private final String message; 20 | 21 | @Override 22 | public String getCode() { 23 | return code; 24 | } 25 | 26 | @Override 27 | public String getMessage() { 28 | return message; 29 | } 30 | 31 | @Override 32 | public String getName() { 33 | return name(); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteStaffInfoService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | import com.liyz.boot3.common.remote.page.PageBO; 4 | import com.liyz.boot3.common.remote.page.RemotePage; 5 | import com.liyz.boot3.service.staff.bo.StaffInfoBO; 6 | import jakarta.validation.constraints.NotNull; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/10 10:16 14 | */ 15 | public interface RemoteStaffInfoService { 16 | 17 | /** 18 | * 根据staffId获取用户信息 19 | * 20 | * @param staffId 员工ID 21 | * @return 员工信息 22 | */ 23 | StaffInfoBO getByStaffId(@NotNull Long staffId); 24 | 25 | /** 26 | * 分页查询员工信息 27 | * 28 | * @param pageBO 分页信息 29 | * @return 员工信息 30 | */ 31 | RemotePage page(@NotNull PageBO pageBO); 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteStaffLoginLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | 4 | import com.liyz.boot3.common.remote.page.PageBO; 5 | import com.liyz.boot3.common.remote.page.RemotePage; 6 | import com.liyz.boot3.service.staff.bo.StaffLoginLogBO; 7 | import jakarta.validation.constraints.NotNull; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/10 10:19 15 | */ 16 | public interface RemoteStaffLoginLogService { 17 | 18 | /** 19 | * 根据staffId分页查询登录日志 20 | * 21 | * @param staffId 员工ID 22 | * @param pageBO 分页信息 23 | * @return 员工登录日志 24 | */ 25 | RemotePage page(@NotNull Long staffId, @NotNull PageBO pageBO); 26 | } 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteStaffLogoutLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | import com.liyz.boot3.common.remote.page.PageBO; 4 | import com.liyz.boot3.common.remote.page.RemotePage; 5 | import com.liyz.boot3.service.staff.bo.StaffLogoutLogBO; 6 | import jakarta.validation.constraints.NotNull; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/10 10:21 14 | */ 15 | public interface RemoteStaffLogoutLogService { 16 | 17 | /** 18 | * 根据staffId分页查询登出日志 19 | * 20 | * @param staffId 员工ID 21 | * @param pageBO 分页信息 22 | * @return 登出日志 23 | */ 24 | RemotePage page(@NotNull Long staffId, @NotNull PageBO pageBO); 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteStaffRoleService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | import com.liyz.boot3.service.staff.bo.StaffRoleBO; 4 | import jakarta.validation.constraints.NotNull; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/13 13:40 14 | */ 15 | public interface RemoteStaffRoleService { 16 | 17 | /** 18 | * 给员工绑定一个角色 19 | * 20 | * @param staffRoleBO 员工角色参数 21 | * @return 员工角色 22 | */ 23 | StaffRoleBO bindRole(@NotNull StaffRoleBO staffRoleBO); 24 | 25 | /** 26 | * 查询员工拥有的角色 27 | * 28 | * @param staffId 员工ID 29 | * @return 员工角色 30 | */ 31 | List listByStaffId(@NotNull Long staffId); 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteSystemAuthorityService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | import com.liyz.boot3.service.staff.bo.SystemAuthorityBO; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/3/11 13:32 13 | */ 14 | public interface RemoteSystemAuthorityService { 15 | 16 | /** 17 | * 新增一个权限项 18 | * 19 | * @param systemAuthorityBO 系统授权项参数 20 | * @return 系统授权项 21 | */ 22 | SystemAuthorityBO addSystemAuthority(SystemAuthorityBO systemAuthorityBO); 23 | 24 | /** 25 | * 查询权限项列表 26 | * 27 | * @return 系统授权项 28 | */ 29 | List list(); 30 | } 31 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteSystemRoleAuthorityService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | import com.liyz.boot3.service.staff.bo.SystemRoleAuthorityBO; 4 | import jakarta.validation.constraints.NotNull; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/11 15:35 14 | */ 15 | public interface RemoteSystemRoleAuthorityService { 16 | 17 | /** 18 | * 给一个权限项绑定一个角色 19 | * 20 | * @param systemRoleAuthorityBO 系统角色授权项 21 | * @return 是否成功 22 | */ 23 | Boolean bindRole(@NotNull SystemRoleAuthorityBO systemRoleAuthorityBO); 24 | 25 | /** 26 | * 根据一个角色查询出权限项 27 | * 28 | * @param roleId 角色ID 29 | * @return 系统角色授权列表 30 | */ 31 | List getByRoleId(@NotNull Integer roleId); 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-staff/staff-remote/src/main/java/com/liyz/boot3/service/staff/remote/RemoteSystemRoleService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.staff.remote; 2 | 3 | import com.liyz.boot3.service.staff.bo.SystemRoleBO; 4 | import jakarta.validation.constraints.NotNull; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/11 13:21 14 | */ 15 | public interface RemoteSystemRoleService { 16 | 17 | /** 18 | * 创建一个角色 19 | * 20 | * @param systemRoleBO 系统角色参数 21 | * @return 系统角色 22 | */ 23 | SystemRoleBO addSystemRole(@NotNull SystemRoleBO systemRoleBO); 24 | 25 | /** 26 | * 查询角色列表 27 | * 28 | * @return 系统角色列表 29 | */ 30 | List list(); 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-service-user 13 | pom 14 | 15 | user-remote 16 | user-dao 17 | user-biz 18 | 19 | 20 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-biz/src/main/java/com/liyz/boot3/service/user/UserServiceApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | import org.springframework.scheduling.annotation.EnableAsync; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/11/23 16:49 14 | */ 15 | @EnableAsync 16 | @SpringBootApplication 17 | @MapperScan(basePackages = {"com.liyz.boot3.service.*.dao"}) 18 | public class UserServiceApplication { 19 | 20 | public static void main(String[] args) { 21 | SpringApplication.run(UserServiceApplication.class, args); 22 | } 23 | } -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-biz/src/main/java/com/liyz/boot3/service/user/service/UserAuthEmailService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.user.model.UserAuthEmailDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:46 12 | */ 13 | public interface UserAuthEmailService extends IService, LoginTypeService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-biz/src/main/java/com/liyz/boot3/service/user/service/UserAuthMobileService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.user.model.UserAuthMobileDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:45 12 | */ 13 | public interface UserAuthMobileService extends IService, LoginTypeService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-biz/src/main/java/com/liyz/boot3/service/user/service/UserInfoService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.user.model.UserInfoDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:44 12 | */ 13 | public interface UserInfoService extends IService { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-biz/src/main/java/com/liyz/boot3/service/user/service/UserLogoutLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.service; 2 | 3 | import com.baomidou.mybatisplus.extension.service.IService; 4 | import com.liyz.boot3.service.auth.enums.Device; 5 | import com.liyz.boot3.service.user.model.UserLogoutLogDO; 6 | 7 | import java.util.Date; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/6/19 9:42 15 | */ 16 | public interface UserLogoutLogService extends IService { 17 | 18 | /** 19 | * 获取上次登出时间 20 | * 21 | * @param userId 员工ID 22 | * @return 上次登出时间 23 | */ 24 | Date lastLogoutTime(Long userId, Device device); 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-biz/src/main/java/com/liyz/boot3/service/user/service/impl/UserInfoServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.service.impl; 2 | 3 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 4 | import com.liyz.boot3.service.user.dao.UserInfoMapper; 5 | import com.liyz.boot3.service.user.model.UserInfoDO; 6 | import com.liyz.boot3.service.user.service.UserInfoService; 7 | import org.springframework.cache.annotation.Cacheable; 8 | import org.springframework.stereotype.Service; 9 | 10 | import java.io.Serializable; 11 | 12 | /** 13 | * Desc: 14 | * 15 | * @author lyz 16 | * @version 1.0.0 17 | * @date 2023/6/19 9:44 18 | */ 19 | @Service 20 | public class UserInfoServiceImpl extends ServiceImpl implements UserInfoService { 21 | 22 | @Override 23 | @Cacheable(cacheNames = {"userInfo"}, key = "'id:' + #p0", unless = "#result == null") 24 | public UserInfoDO getById(Serializable id) { 25 | return super.getById(id); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/dao/UserAuthEmailMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.user.model.UserAuthEmailDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:41 12 | */ 13 | public interface UserAuthEmailMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/dao/UserAuthMobileMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.user.model.UserAuthMobileDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:41 12 | */ 13 | public interface UserAuthMobileMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/dao/UserInfoMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.user.model.UserInfoDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:41 12 | */ 13 | public interface UserInfoMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/dao/UserLoginLogMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.user.model.UserLoginLogDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:41 12 | */ 13 | public interface UserLoginLogMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/dao/UserLogoutLogMapper.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.dao; 2 | 3 | import com.baomidou.mybatisplus.core.mapper.BaseMapper; 4 | import com.liyz.boot3.service.user.model.UserLogoutLogDO; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/6/19 9:42 12 | */ 13 | public interface UserLogoutLogMapper extends BaseMapper { 14 | } 15 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/model/UserAuthEmailDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.TableName; 4 | import com.liyz.boot3.service.user.model.base.UserAuthBaseDO; 5 | import lombok.*; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 9:58 16 | */ 17 | @Getter 18 | @Setter 19 | @Builder 20 | @AllArgsConstructor 21 | @NoArgsConstructor 22 | @TableName("user_auth_email") 23 | public class UserAuthEmailDO extends UserAuthBaseDO implements Serializable { 24 | @Serial 25 | private static final long serialVersionUID = 4693155700165619110L; 26 | 27 | private String email; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/model/UserAuthMobileDO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.model; 2 | 3 | import com.baomidou.mybatisplus.annotation.TableName; 4 | import com.liyz.boot3.service.user.model.base.UserAuthBaseDO; 5 | import lombok.*; 6 | 7 | import java.io.Serial; 8 | import java.io.Serializable; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 9:59 16 | */ 17 | @Getter 18 | @Setter 19 | @Builder 20 | @AllArgsConstructor 21 | @NoArgsConstructor 22 | @TableName("user_auth_mobile") 23 | public class UserAuthMobileDO extends UserAuthBaseDO implements Serializable { 24 | @Serial 25 | private static final long serialVersionUID = 5417331084800908347L; 26 | 27 | private String mobile; 28 | } 29 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-dao/src/main/java/com/liyz/boot3/service/user/model/base/UserAuthBaseDO.java: -------------------------------------------------------------------------------- 1 | 2 | package com.liyz.boot3.service.user.model.base; 3 | 4 | import com.baomidou.mybatisplus.annotation.IdType; 5 | import com.baomidou.mybatisplus.annotation.TableId; 6 | import com.liyz.boot3.common.dao.model.BaseDO; 7 | import lombok.Getter; 8 | import lombok.Setter; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/14 9:26 16 | */ 17 | @Getter 18 | @Setter 19 | public class UserAuthBaseDO extends BaseDO { 20 | 21 | /** 22 | * 用户ID 23 | */ 24 | @TableId(type = IdType.INPUT) 25 | private Long userId; 26 | 27 | /** 28 | * 密码 29 | */ 30 | private String password; 31 | } 32 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-service-user 9 | 1.0-SNAPSHOT 10 | 11 | 12 | user-remote 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-validation 18 | provided 19 | 20 | 21 | com.liyz.boot3 22 | dubbo-common-remote 23 | provided 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/bo/UserLoginLogBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 10:15 16 | */ 17 | @Getter 18 | @Setter 19 | public class UserLoginLogBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = -8978119199629210583L; 22 | 23 | /** 24 | * 用户ID 25 | */ 26 | private Long userId; 27 | 28 | /** 29 | * 登录方式:1:手机;2:邮箱 30 | */ 31 | private Integer loginType; 32 | 33 | /** 34 | * 设备标识 35 | */ 36 | private Integer device; 37 | 38 | /** 39 | * 登录时间 40 | */ 41 | private Date loginTime; 42 | 43 | /** 44 | * 登录IP地址 45 | */ 46 | private String ip; 47 | } 48 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/bo/UserLogoutLogBO.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.bo; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import java.io.Serial; 7 | import java.io.Serializable; 8 | import java.util.Date; 9 | 10 | /** 11 | * Desc: 12 | * 13 | * @author lyz 14 | * @version 1.0.0 15 | * @date 2023/3/10 10:16 16 | */ 17 | @Getter 18 | @Setter 19 | public class UserLogoutLogBO implements Serializable { 20 | @Serial 21 | private static final long serialVersionUID = 3070437801653890936L; 22 | 23 | /** 24 | * 用户ID 25 | */ 26 | private Long userId; 27 | 28 | /** 29 | * 登录方式:1:手机;2:邮箱 30 | */ 31 | private Integer logoutType; 32 | 33 | /** 34 | * 设备标识 35 | */ 36 | private Integer device; 37 | 38 | /** 39 | * 登出时间 40 | */ 41 | private Date logoutTime; 42 | 43 | /** 44 | * 登出IP地址 45 | */ 46 | private String ip; 47 | } 48 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/exception/RemoteUserServiceException.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.exception; 2 | 3 | 4 | import com.liyz.boot3.common.remote.exception.IExceptionService; 5 | import com.liyz.boot3.common.remote.exception.RemoteServiceException; 6 | 7 | import java.io.Serial; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/10 9:32 15 | */ 16 | public class RemoteUserServiceException extends RemoteServiceException { 17 | @Serial 18 | private static final long serialVersionUID = -5631823158974550846L; 19 | 20 | public RemoteUserServiceException() { 21 | super(); 22 | } 23 | 24 | public RemoteUserServiceException(IExceptionService codeService) { 25 | super(codeService); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/exception/UserExceptionCodeEnum.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.exception; 2 | 3 | import com.liyz.boot3.common.remote.exception.IExceptionService; 4 | import lombok.AllArgsConstructor; 5 | 6 | /** 7 | * Desc: 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2023/3/10 9:31 12 | */ 13 | @AllArgsConstructor 14 | public enum UserExceptionCodeEnum implements IExceptionService { 15 | ; 16 | 17 | private final String code; 18 | 19 | private final String message; 20 | 21 | @Override 22 | public String getCode() { 23 | return code; 24 | } 25 | 26 | @Override 27 | public String getMessage() { 28 | return message; 29 | } 30 | 31 | @Override 32 | public String getName() { 33 | return name(); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/remote/RemoteUserInfoService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.remote; 2 | 3 | 4 | import com.liyz.boot3.common.remote.page.PageBO; 5 | import com.liyz.boot3.common.remote.page.RemotePage; 6 | import com.liyz.boot3.service.user.bo.UserInfoBO; 7 | import jakarta.validation.constraints.NotNull; 8 | 9 | /** 10 | * Desc: 11 | * 12 | * @author lyz 13 | * @version 1.0.0 14 | * @date 2023/3/10 10:16 15 | */ 16 | public interface RemoteUserInfoService { 17 | 18 | /** 19 | * 根据userId获取用户信息 20 | * 21 | * @param userId 用户ID 22 | * @return 用户信息 23 | */ 24 | UserInfoBO getByUserId(@NotNull(message = "用户ID不能为空") Long userId); 25 | 26 | /** 27 | * 分页查询客户信息 28 | * 29 | * @param pageBO 分页参数 30 | * @return 客户信息 31 | */ 32 | RemotePage page(@NotNull(message = "分页参数不能为空") PageBO pageBO); 33 | } 34 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/remote/RemoteUserLoginLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.remote; 2 | 3 | import com.liyz.boot3.common.remote.page.PageBO; 4 | import com.liyz.boot3.common.remote.page.RemotePage; 5 | import com.liyz.boot3.service.user.bo.UserLoginLogBO; 6 | import jakarta.validation.constraints.NotNull; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/10 10:19 14 | */ 15 | public interface RemoteUserLoginLogService { 16 | 17 | /** 18 | * 根据userId分页查询登录日志 19 | * 20 | * @param userId 用户ID 21 | * @param pageBO 分页参数 22 | * @return 用户登录日志 23 | */ 24 | RemotePage page(@NotNull Long userId, @NotNull PageBO pageBO); 25 | 26 | /** 27 | * 根据userId分页流式查询登录日志 28 | * 29 | * @param userId 用户ID 30 | * @param pageBO 分页参数 31 | * @return 用户登录日志 32 | */ 33 | RemotePage pageStream(@NotNull Long userId, @NotNull PageBO pageBO); 34 | } 35 | -------------------------------------------------------------------------------- /dubbo-service/dubbo-service-user/user-remote/src/main/java/com/liyz/boot3/service/user/remote/RemoteUserLogoutLogService.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.service.user.remote; 2 | 3 | import com.liyz.boot3.common.remote.page.PageBO; 4 | import com.liyz.boot3.common.remote.page.RemotePage; 5 | import com.liyz.boot3.service.user.bo.UserLogoutLogBO; 6 | import jakarta.validation.constraints.NotNull; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/3/10 10:21 14 | */ 15 | public interface RemoteUserLogoutLogService { 16 | 17 | /** 18 | * 根据userId分页查询登出日志 19 | * 20 | * @param userId 用户ID 21 | * @param pageBO 分页参数 22 | * @return 用户登出日志 23 | */ 24 | RemotePage page(@NotNull Long userId, @NotNull PageBO pageBO); 25 | } 26 | -------------------------------------------------------------------------------- /dubbo-service/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-springboot3 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-service 13 | pom 14 | 15 | 16 | dubbo-service-search 17 | dubbo-service-staff 18 | dubbo-service-user 19 | dubbo-service-auth 20 | 21 | 22 | -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-elastic/elastic-biz/src/main/java/com/liyz/boot3/task/elastic/ElasticTaskApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.task.elastic; 2 | 3 | import org.apache.shardingsphere.elasticjob.lite.spring.core.scanner.ElasticJobScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2023/12/20 19:27 13 | */ 14 | @ElasticJobScan(basePackages = {"com.liyz.boot3.task.elastic.job"}) 15 | @SpringBootApplication 16 | public class ElasticTaskApplication { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(ElasticTaskApplication.class); 20 | } 21 | } -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-elastic/elastic-biz/src/main/java/com/liyz/boot3/task/elastic/job/TestJob.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.task.elastic.job; 2 | 3 | import lombok.extern.slf4j.Slf4j; 4 | import org.apache.shardingsphere.elasticjob.annotation.ElasticJobConfiguration; 5 | import org.apache.shardingsphere.elasticjob.api.ShardingContext; 6 | import org.apache.shardingsphere.elasticjob.simple.job.SimpleJob; 7 | 8 | /** 9 | * Desc: 10 | * 11 | * @author lyz 12 | * @version 1.0.0 13 | * @date 2023/12/27 10:56 14 | */ 15 | @Slf4j 16 | @ElasticJobConfiguration(jobName = "Test", description = "测试", cron = "0/10 * * * * ?", shardingTotalCount = 1, overwrite = true) 17 | public class TestJob implements SimpleJob { 18 | 19 | @Override 20 | public void execute(ShardingContext shardingContext) { 21 | log.info("test job : {}", System.currentTimeMillis()); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-elastic/elastic-remote/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-task-elastic 9 | 1.0-SNAPSHOT 10 | 11 | 12 | elastic-remote 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-validation 18 | provided 19 | 20 | 21 | com.liyz.boot3 22 | dubbo-common-remote 23 | provided 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-elastic/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-task 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-task-elastic 13 | pom 14 | 15 | 16 | elastic-dao 17 | elastic-biz 18 | elastic-remote 19 | 20 | 21 | -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-xxl/src/main/java/com/liyz/boot3/task/xxl/XxlJobApplication.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.task.xxl; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | /** 7 | * Desc:启动类 8 | * 9 | * @author lyz 10 | * @version 1.0.0 11 | * @date 2024/5/15 10:11 12 | */ 13 | @SpringBootApplication 14 | public class XxlJobApplication { 15 | 16 | public static void main(String[] args) { 17 | SpringApplication.run(XxlJobApplication.class); 18 | } 19 | } -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-xxl/src/main/java/com/liyz/boot3/task/xxl/job/TestXxlJob.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.task.xxl.job; 2 | 3 | import com.xxl.job.core.handler.IJobHandler; 4 | import lombok.extern.slf4j.Slf4j; 5 | import org.springframework.stereotype.Service; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/5/15 10:30 13 | */ 14 | @Slf4j 15 | @Service 16 | public class TestXxlJob extends IJobHandler { 17 | 18 | @Override 19 | public void execute() throws Exception { 20 | log.info("testXxlJob start"); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-xxl/src/main/java/com/liyz/boot3/task/xxl/properties/XxlJobProperties.java: -------------------------------------------------------------------------------- 1 | package com.liyz.boot3.task.xxl.properties; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | import org.springframework.boot.context.properties.ConfigurationProperties; 6 | 7 | /** 8 | * Desc: 9 | * 10 | * @author lyz 11 | * @version 1.0.0 12 | * @date 2024/5/15 10:55 13 | */ 14 | @Getter 15 | @Setter 16 | @ConfigurationProperties(prefix = "xxl.job") 17 | public class XxlJobProperties { 18 | 19 | private String adminAddress; 20 | 21 | private String appName; 22 | 23 | private String ip; 24 | 25 | private String logPath; 26 | 27 | private int logRetentionDays; 28 | 29 | private int port; 30 | 31 | private String accessToken; 32 | } 33 | -------------------------------------------------------------------------------- /dubbo-task/dubbo-task-xxl/src/main/resources/application.yaml: -------------------------------------------------------------------------------- 1 | server: 2 | shutdown: graceful 3 | port: 7074 4 | # spring 5 | spring: 6 | application: 7 | name: &application_name dubbo-task-xxl 8 | main: 9 | allow-bean-definition-overriding: true 10 | allow-circular-references: true 11 | threads: 12 | virtual: 13 | enabled: true 14 | # log 15 | logging: 16 | file: 17 | name: '\srv\logs\${spring.application.name}\${spring.application.name}.log' 18 | # xxl-job 19 | xxl: 20 | job: 21 | admin-address: http://xxljob.liyz.com/xxl-job-admin 22 | app-name: dubbo-task-xxl-executor 23 | log-path: '\srv\logs\${spring.application.name}' 24 | port: 22882 25 | access-token: wls123456 26 | log-retention-days: 15 27 | -------------------------------------------------------------------------------- /dubbo-task/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.liyz.boot3 8 | dubbo-springboot3 9 | 1.0-SNAPSHOT 10 | 11 | 12 | dubbo-task 13 | pom 14 | 15 | 16 | dubbo-task-elastic 17 | dubbo-task-xxl 18 | 19 | 20 | --------------------------------------------------------------------------------