基于Java语言的chat-plus AI助手全套开源设计源码

作品简介

该项目是一款基于Java语言的AI助手全套开源设计源码,包含823个文件,其中Java文件730个,涵盖了Gradle构建脚本、YML配置、XML、SQL等多种文件类型。该AI助手整合了OpenAI、Azure、ChatGLM、讯飞星火、文心一言等多个大语言模型API,并集成了MidJourney和Stable Diffusion AI绘画功能,同时自带运营管理后台,提供开箱即用的便捷体验。

关键词

Java AI助手 开源设计 源码 大语言模型

目录结构

├── .gitignore
  ├── .workflow
  ├── branch-pipeline.yml
  ├── master-pipeline.yml
  ├── pr-pipeline.yml
  ├── release-pipeline.yml
├── LICENSE
  ├── application-api
  ├── build.gradle
    ├── src
      ├── main
        ├── java
          ├── com
            ├── chatplus
              ├── application
                ├── constant
                ├── Constants.java
                ├── PayConstants.java
                ├── domain
                  ├── dto
                  ├── AdminConfigDto.java
                  ├── ApiKeyDto.java
                  ├── DevopsConfigDto.java
                  ├── ExtendConfigDto.java
                  ├── FunctionParametersDto.java
                  ├── MJButtonDto.java
                  ├── MJJobDto.java
                  ├── MJPropertiesDto.java
                  ├── NoticeConfigDto.java
                  ├── OrderRemarkDto.java
                  ├── RewardDto.java
                  ├── RoleContextDto.java
                  ├── SdJobResult.java
                  ├── TextPromptsDto.java
                  ├── UserCustomChatConfigDto.java
                    ├── extend
                    ├── ImgResultDto.java
                    ├── WeiBoHotDto.java
                    ├── ZaoBaoNewsDto.java
                  ├── package-info.java
                    ├── ws
                    ├── ChatRecordMessage.java
                    ├── WsChatMessage.java
                  ├── entity
                    ├── account
                    ├── InviteCodeEntity.java
                    ├── InviteLogEntity.java
                    ├── UserEntity.java
                    ├── UserLoginLogEntity.java
                    ├── UserProductLogEntity.java
                    ├── WechatUserEntity.java
                    ├── basedata
                    ├── ApiKeyEntity.java
                    ├── ConfigEntity.java
                    ├── MenuEntity.java
                    ├── PowerLogsEntity.java
                    ├── ProductEntity.java
                    ├── SensitiveWordEntity.java
                    ├── chat
                    ├── ChatHistoryEntity.java
                    ├── ChatItemEntity.java
                    ├── ChatModelEntity.java
                    ├── ChatRoleEntity.java
                    ├── draw
                    ├── MjJobEntity.java
                    ├── SdJobEntity.java
                    ├── file
                    ├── FileEntity.java
                    ├── framework
                    ├── AuditLogRuleEntity.java
                    ├── PendingNotificationEntity.java
                    ├── functions
                    ├── FunctionEntity.java
                    ├── orders
                    ├── OrderEntity.java
                    ├── RewardEntity.java
                    ├── pay
                    ├── PayRequestEntity.java
                    ├── RefundRequestEntity.java
                  ├── model
                  ├── ImageScale.java
                  ├── package-info.java
                  ├── notification
                  ├── MJJobNotification.java
                  ├── PowerLogNotification.java
                  ├── ReloadSensitiveWordsEvent.java
                  ├── SaveImageNotification.java
                  ├── SdJobNotification.java
                  ├── SdLocalJobNotification.java
                  ├── SdStabilityJobNotification.java
                  ├── request
                  ├── AccountLoginRequest.java
                  ├── AccountRegisterRequest.java
                  ├── AccountResetPassRequest.java
                  ├── AccountSaveRequest.java
                  ├── AccountUpdatePassRequest.java
                  ├── AccountUpdateRequest.java
                  ├── ApiKeySaveRequest.java
                  ├── BotCheckCaptchaRequest.java
                  ├── ChatItemUpdateRequest.java
                  ├── ChatModelSaveRequest.java
                  ├── ChatRoleSaveRequest.java
                  ├── ChatTokenRequest.java
                  ├── FiledUpdateRequest.java
                  ├── ImagePublishRequest.java
                  ├── MjActionRequest.java
                  ├── MjCallbackNotifyRequest.java
                  ├── MjImageJobRequest.java
                  ├── PaymentQueryRequest.java
                  ├── PlusPageRequest.java
                  ├── PowerLogsRequest.java
                  ├── ProductSaveRequest.java
                  ├── PromptApiRequest.java
                  ├── QrCodePayRequest.java
                  ├── SdLocalImageRequest.java
                  ├── SdStabilityImageRequest.java
                  ├── SendSmsRequest.java
                  ├── SensitiveWordRequest.java
                  ├── UserChatRoleUpdateRequest.java
                    ├── admin
                    ├── ChatHistoryQueryRequest.java
                    ├── ChatItemQueryRequest.java
                    ├── ConfigUpdateAdminApiRequest.java
                    ├── FunctionSaveAdminApiRequest.java
                    ├── MenuSortRequest.java
                    ├── OrderAdminApiRequest.java
                    ├── extend
                    ├── Dalle3Request.java
                    ├── ws
                    ├── ChatWebSocketRequest.java
                  ├── response
                  ├── AccountLoginResponse.java
                  ├── AccountProfileResponse.java
                  ├── AccountSessionResponse.java
                  ├── BotCaptchaResponse.java
                  ├── CaptchaResponse.java
                  ├── ChatHistoryDetailResponse.java
                  ├── ChatItemDetailResponse.java
                  ├── ChatModelDetailResponse.java
                  ├── ChatRoleDetailResponse.java
                  ├── FileDetailApiResponse.java
                  ├── InviteCodeDetailResponse.java
                  ├── InviteCodeListResponse.java
                  ├── MenuDetailResponse.java
                  ├── MjJobDetailApiResponse.java
                  ├── OrderDetailApiResponse.java
                  ├── PaymentQueryResponse.java
                  ├── PlusPageResponse.java
                  ├── PowerLogsResponse.java
                  ├── ProductDetailApiResponse.java
                  ├── QrCodePayResponse.java
                  ├── SdJobDetailApiResponse.java
                  ├── SensitiveWordResponse.java
                  ├── SocialLoginBody.java
                  ├── WechatLoginQrResponse.java
                    ├── admin
                    ├── AccountLoginLogDetailResponse.java
                    ├── ApiKeyDetailResponse.java
                    ├── ChatHistoryQueryResponse.java
                    ├── ChatItemQueryResponse.java
                    ├── DashboardStatsResponse.java
                    ├── FunctionDetailApiResponse.java
                  ├── vo
                    ├── file
                    ├── UpLoadFileVo.java
                  ├── package-info.java
                ├── enumeration
                ├── AiPlatformEnum.java
                ├── AppBusinessCodeEnum.java
                ├── AuditLogRuleTypeEnum.java
                ├── CaptchaTypeEnum.java
                ├── FileChannelEnum.java
                ├── FundTypeEnum.java
                ├── GenderEnum.java
                ├── ImageTaskTypeEnum.java
                ├── ImgOperateType.java
                ├── MessageTypeEnum.java
                ├── MjJobActionEnum.java
                ├── MjJobStatusEnum.java
                ├── OrderStatusEnum.java
                ├── PayChannelEnum.java
                ├── PayStatusEnum.java
                ├── PowerLogTypeEnum.java
                ├── ProductTypeEnum.java
                ├── RefundStatusEnum.java
                ├── SubModeEnum.java
                ├── WechatUserStatusEnum.java
                ├── package-info.java
                ├── event
                ├── GenericEvent.java
                  ├── order
                  ├── OrderUpdateEvent.java
                    ├── dto
                    ├── OrderRequestEvent.java
                  ├── pay
                  ├── PayCloseEvent.java
                  ├── PayFailEvent.java
                  ├── PaySuccessEvent.java
                  ├── RefundFailEvent.java
                  ├── RefundSuccessEvent.java
                    ├── dto
                    ├── PayRequestEvent.java
                    ├── RefundRequestEvent.java
                ├── util
                ├── ToUrlParamsUtils.java
                ├── package-info.java
  ├── application-app
  ├── build.gradle
    ├── src
      ├── main
        ├── java
          ├── com
            ├── chatplus
              ├── application
              ├── StartApplication.java
                ├── config
                ├── PlusSpringCacheManager.java
                ├── RedissonConfiguration.java
                ├── controller
                  ├── admin
                    ├── account
                    ├── AccountAdminApiController.java
                    ├── biz
                    ├── ApiKeyAdminApiController.java
                    ├── ChatItemAdminApiController.java
                    ├── ChatModelAdminApiController.java
                    ├── ChatRoleAdminApiController.java
                    ├── ConfigAdminApiController.java
                    ├── DashboardAdminApiController.java
                    ├── FunctionAdminApiController.java
                    ├── MenuAdminApiController.java
                    ├── OrderAdminApiController.java
                    ├── PowerLogsAdminApiController.java
                    ├── ProductAdminApiController.java
                    ├── SensitiveWordController.java
                    ├── devops
                    ├── DevelopController.java
                    ├── TestController.java
                  ├── api
                  ├── AccountApiController.java
                  ├── CaptchaController.java
                  ├── ChatItemApiController.java
                  ├── ChatModelApiController.java
                  ├── ChatRoleApiController.java
                  ├── ConfigApiController.java
                  ├── FileApiController.java
                  ├── InviteApiController.java
                  ├── MenuApiController.java
                  ├── MjJobApiController.java
                  ├── OrderApiController.java
                  ├── PayNotifyController.java
                  ├── PaymentApiController.java
                  ├── PowerLogsApiController.java
                  ├── ProductApiController.java
                  ├── PromptApiController.java
                  ├── SdJobApiController.java
                  ├── SmsApiController.java
                  ├── SocialAuthController.java
                  ├── WechatMpController.java
                    ├── extend
                    ├── GptDalle3ExtendController.java
                    ├── WallpaperExtendController.java
                    ├── WeiBoExtendController.java
                    ├── ZaoBaoNewsExtendController.java
                  ├── package-info.java
                ├── listener
                ├── MJJobNotificationListener.java
                ├── PowerLogNotificationListener.java
                ├── SaveImageNotificationListener.java
                ├── SdJobProcess.java
                ├── SdLocalJobNotificationListener.java
                ├── SdStabilityJobNotificationListener.java
                  ├── order
                  ├── OrderEventListener.java
                ├── package-info.java
                  ├── pay
                  ├── PayResultEventListener.java
                  ├── sensitiveword
                  ├── SensitiveWordListener.java
                ├── scheduled
                ├── DrawTimeoutJob.java
                ├── OrderTaskJob.java
                ├── PayTaskJob.java
                ├── PendingNotificationJob.java
                ├── UserSubsTaskJob.java
                ├── package-info.java
        ├── resources
          ├── META-INF
          ├── spring.factories
        ├── apiclient_cert.pem
        ├── apiclient_key.pem
        ├── application-dev.yml
        ├── application-local.yml
        ├── application-prod.yml
        ├── application.yml
          ├── certs
            ├── alipay
            ├── alipayPublicCert.crt
            ├── alipayRootCert.crt
            ├── appPublicCert.crt
          ├── data
          ├── jieba_custom_words.dict
          ├── sensitive_words.dict
          ├── img
          ├── alipay.jpg
          ├── wechat-pay.jpg
        ├── ip2region.xdb
        ├── logback-spring.xml
        ├── logback.xml
          ├── logo
          ├── logo.png
        ├── rsalogin.txt
        ├── spy.properties
          ├── static
          ├── MP_verify_s7xR2vGWGuBZJhXU.txt
      ├── test
        ├── resources
        ├── logback.xml
  ├── application-dao
  ├── build.gradle
    ├── src
      ├── main
        ├── java
          ├── com
            ├── chatplus
              ├── application
                ├── dao
                  ├── account
                  ├── InviteCodeDao.java
                  ├── InviteLogDao.java
                  ├── UserDao.java
                  ├── UserLoginLogDao.java
                  ├── UserProductLogDao.java
                  ├── WechatUserDao.java
                  ├── basedata
                  ├── ApiKeyDao.java
                  ├── ConfigDao.java
                  ├── MenuDao.java
                  ├── PowerLogsDao.java
                  ├── ProductDao.java
                  ├── SensitiveWordDao.java
                  ├── chat
                  ├── ChatHistoryDao.java
                  ├── ChatItemDao.java
                  ├── ChatModelDao.java
                  ├── ChatRoleDao.java
                  ├── draw
                  ├── MjJobDao.java
                  ├── SdJobDao.java
                  ├── file
                  ├── FileDao.java
                  ├── framework
                  ├── AuditLogRuleDao.java
                  ├── PendingNotificationDao.java
                  ├── functions
                  ├── FunctionDao.java
                  ├── orders
                  ├── OrderDao.java
                  ├── RewardDao.java
                  ├── pay
                  ├── PayRequestDao.java
                  ├── RefundRequestDao.java
  ├── application-openai-sdk
  ├── build.gradle
    ├── src
      ├── main
        ├── java
          ├── cn
            ├── bugstack
              ├── openai
                ├── exception
                ├── OpenAiSdkException.java
                ├── executor
                ├── Executor.java
                  ├── interceptor
                  ├── KeyStrategyFunction.java
                  ├── model
                    ├── aliyun
                    ├── AliModelExecutor.java
                      ├── config
                      ├── AliModelConfig.java
                      ├── valobj
                      ├── AliModelCompletionRequest.java
                      ├── AliModelCompletionResponse.java
                      ├── FinishReason.java
                      ├── Message.java
                      ├── Model.java
                      ├── Role.java
                    ├── baidu
                    ├── BaiduModelExecutor.java
                      ├── config
                      ├── BaiduConfig.java
                      ├── utils
                      ├── AccessTokenUtils.java
                      ├── valobj
                      ├── BaiduCompletionRequest.java
                      ├── BaiduCompletionResponse.java
                      ├── BaiduImageRequest.java
                      ├── Message.java
                      ├── Model.java
                      ├── Role.java
                      ├── Usage.java
                    ├── brain360
                    ├── Brain360ModelExecutor.java
                      ├── config
                      ├── Brain360Config.java
                      ├── valobj
                      ├── Brain360CompletionRequest.java
                      ├── Brain360CompletionResponse.java
                      ├── ChatChoice.java
                      ├── Message.java
                      ├── Model.java
                      ├── Role.java
                      ├── Usage.java
                    ├── chatglm
                    ├── CharGLMModelExecutor.java
                    ├── ChatGLMModelExecutor.java
                      ├── config
                      ├── ChatGLMConfig.java
                      ├── utils
                      ├── BearerTokenUtils.java
                      ├── valobj
                      ├── CharGLMCompletionRequest.java
                      ├── ChatGLMCompletionRequest.java
                      ├── ChatGLMCompletionResponse.java
                      ├── EventType.java
                      ├── Model.java
                      ├── Role.java
                    ├── chatgpt
                    ├── ChatGPTModelExecutor.java
                      ├── config
                      ├── ChatGPTConfig.java
                      ├── valobj
                      ├── ChatChoice.java
                      ├── ChatGPTCompletionRequest.java
                      ├── ChatGPTCompletionResponse.java
                      ├── ChatGPTImageEditRequest.java
                      ├── ChatGPTImageEnum.java
                      ├── ChatGPTImageRequest.java
                      ├── ChatGPTImageResponse.java
                      ├── ChatGPTItem.java
                      ├── Message.java
                      ├── Usage.java
                    ├── claude
                    ├── ClaudeModelExecutor.java
                      ├── config
                      ├── ClaudeConfig.java
                      ├── valobj
                      ├── ClaudeCompletionRequest.java
                      ├── ClaudeCompletionResponse.java
                    ├── gemini
                    ├── GeminiProModelExecutor.java
                      ├── config
                      ├── GeminiProConfig.java
                      ├── valobj
                      ├── Candidate.java
                      ├── Content.java
                      ├── GeminiProCompletionRequest.java
                      ├── GeminiProCompletionResponse.java
                      ├── GenerationConfig.java
                      ├── InlineData.java
                      ├── Model.java
                      ├── Parts.java
                      ├── PromptFeedBack.java
                      ├── Role.java
                      ├── SafetyRating.java
                      ├── SafetySetting.java
                    ├── google
                    ├── GeminiProModelExecutor.java
                    ├── GeminiProTextModelExecutor.java
                    ├── PalmChatModelExecutor.java
                    ├── PalmModelExecutor.java
                    ├── PalmTextModelExecutor.java
                      ├── config
                      ├── Const.java
                      ├── GeminiProConfig.java
                      ├── PalmConfig.java
                    ├── package-info.java
                      ├── valobj
                      ├── GeminiProRole.java
                      ├── Role.java
                        ├── model
                        ├── GeminiProModel.java
                        ├── Model.java
                        ├── PalmModel.java
                        ├── SupportMethod.java
                        ├── request
                        ├── CitationMetadata.java
                        ├── CitationSource.java
                        ├── GeminiProTextRequest.java
                        ├── MessagePrompt.java
                        ├── PalmChatRequest.java
                        ├── PalmMessage.java
                        ├── PalmTextRequest.java
                        ├── TextPrompt.java
                        ├── response
                        ├── Candidate.java
                        ├── GeminiProCompletionResponse.java
                        ├── PalmCompletionResponse.java
                    ├── tencent
                    ├── TencentModelExecutor.java
                      ├── config
                      ├── TencentConfig.java
                    ├── package-info.java
                      ├── utils
                      ├── SecurityUtils.java
                      ├── valobj
                      ├── Action.java
                      ├── CanonicalRequest.java
                      ├── Message.java
                      ├── TencentCompletionRequest.java
                      ├── TencentCompletionResponse.java
                    ├── xunfei
                    ├── XunFeiModelExecutor.java
                      ├── config
                      ├── XunFeiConfig.java
                      ├── utils
                      ├── ImageUtil.java
                      ├── URLAuthUtils.java
                      ├── valobj
                      ├── Chat.java
                      ├── Choices.java
                      ├── Message.java
                      ├── PictureChat.java
                      ├── PictureMessage.java
                      ├── PictureText.java
                      ├── Text.java
                      ├── Usage.java
                      ├── XunFeiCompletionRequest.java
                      ├── XunFeiCompletionResponse.java
                      ├── XunFeiPictureRequest.java
                  ├── parameter
                  ├── ChatChoice.java
                  ├── CompletionRequest.java
                  ├── CompletionResponse.java
                  ├── FunctionCall.java
                  ├── Functions.java
                  ├── ImageEditRequest.java
                  ├── ImageEnum.java
                  ├── ImageRequest.java
                  ├── ImageResponse.java
                  ├── Item.java
                  ├── Message.java
                  ├── ParameterHandler.java
                  ├── PictureContentEnum.java
                  ├── PictureRequest.java
                  ├── RequestChannel.java
                  ├── Usage.java
                  ├── result
                  ├── ResultHandler.java
                ├── session
                ├── Configuration.java
                ├── OpenAiSession.java
                ├── OpenAiSessionFactory.java
                  ├── defaults
                  ├── DefaultOpenAiSession.java
                  ├── DefaultOpenAiSessionFactory.java
                  ├── SwitchProxySelector.java
                ├── util
                ├── JacksonUtil.java
      ├── test
        ├── resources
        ├── 1.png
  ├── application-service
  ├── build.gradle
    ├── src
      ├── main
        ├── java
          ├── com
            ├── chatplus
              ├── application
                ├── aiprocessor
                  ├── constant
                  ├── AIConstants.java
                  ├── function
                  ├── TriggerFunctionService.java
                    ├── impl
                    ├── Dalle3ServiceImpl.java
                    ├── WeiBoHotServiceImpl.java
                    ├── ZaoBaoServiceImpl.java
                  ├── handler
                  ├── ChatWebSocketHandler.java
                  ├── MJWebSocketHandler.java
                  ├── PromptHandler.java
                  ├── SdWebSocketHandler.java
                  ├── interceptor
                  ├── DynamicKeyHandleInterceptor.java
                  ├── KeyRandomStrategy.java
                  ├── listener
                  ├── CommonEventSourceListener.java
                  ├── platform
                    ├── chat
                    ├── ChatProcessorService.java
                      ├── aliyun
                      ├── AliYunQWenProcessor.java
                      ├── baidu
                      ├── BaiDuProcessor.java
                      ├── chatglm
                      ├── ChatGLMProcessor.java
                      ├── chatgpt
                      ├── ChatGPTProcessor.java
                      ├── xunfei
                      ├── XunFeiXhProcessor.java
                    ├── image
                    ├── ImgAiProcessorService.java
                      ├── chatgpt
                      ├── ChatGPTImageProcessor.java
                      ├── mj
                      ├── MjImageProcessor.java
                      ├── sd
                      ├── SdImageProcessor.java
                      ├── SdStabilityImageProcessor.java
                  ├── provider
                  ├── ChatAiProcessorServiceProvider.java
                  ├── ImgAiProcessorServiceProvider.java
                  ├── TriggerFunctionServiceProvider.java
                  ├── util
                  ├── ChatWebSocketUtil.java
                  ├── WebSocketManager.java
                ├── client
                  ├── pay
                  ├── AliPayClient.java
                  ├── WeChatPayClient.java
                    ├── domain
                      ├── request
                        ├── alipay
                        ├── AlipayOrderPayRequest.java
                        ├── AlipayRefundRequest.java
                        ├── wechat
                        ├── WeChatOrderPayRequest.java
                        ├── WeChatRefundRequest.java
                      ├── response
                      ├── InternalPayQueryResponse.java
                      ├── InternalPayResponse.java
                        ├── alipay
                        ├── AlipayOrderPayResponse.java
                        ├── wechat
                        ├── TurnRightWxPayRefundV3Result.java
                        ├── WechatOrderPayResponse.java
                ├── config
                  ├── extend
                  ├── ConfigChangeListener.java
                  ├── ExtendConfigContext.java
                  ├── ExtendConfigContextInitializer.java
                  ├── SpringConfigUtil.java
                    ├── runner
                    ├── ConfigAutoRefresher.java
                  ├── pay
                  ├── PayConfig.java
                  ├── properties
                  ├── AliPayProperties.java
                  ├── MailProperties.java
                  ├── WechatMpProperties.java
                  ├── WechatPayProperties.java
                  ├── runner
                  ├── SensitiveWordInitRunner.java
                  ├── SystemApplicationRunner.java
                  ├── ws
                  ├── WebSocketConfig.java
                    ├── interceptor
                    ├── PlusWebSocketInterceptor.java
                ├── service
                  ├── account
                  ├── InviteCodeService.java
                  ├── InviteLogService.java
                  ├── UserLoginLogService.java
                  ├── UserProductLogService.java
                  ├── UserService.java
                  ├── WechatUserService.java
                    ├── impl
                    ├── InviteCodeServiceImpl.java
                    ├── InviteLogServiceImpl.java
                    ├── UserLoginLogServiceImpl.java
                    ├── UserProductLogServiceImpl.java
                    ├── UserServiceImpl.java
                    ├── WechatUserServiceImpl.java
                  ├── auth
                    ├── authentication
                    ├── AuthenticationProvider.java
                    ├── AuthenticationToken.java
                    ├── PasswordAuthenticationToken.java
                    ├── SmsCaptchaAuthenticationToken.java
                    ├── UserAuthenticationService.java
                      ├── impl
                      ├── LoginFormUserAuthenticationServiceImpl.java
                      ├── PasswordAuthenticationProvider.java
                      ├── SmsCaptchaAuthenticationProvider.java
                    ├── request
                    ├── AccountAuthenticationRequest.java
                  ├── basedata
                  ├── ApiKeyService.java
                  ├── ConfigService.java
                  ├── MenuService.java
                  ├── PowerLogsService.java
                  ├── ProductService.java
                  ├── SensitiveWordService.java
                    ├── impl
                    ├── ApiKeyServiceImpl.java
                    ├── ConfigServiceImpl.java
                    ├── MenuServiceImpl.java
                    ├── PowerLogsServiceImpl.java
                    ├── ProductServiceImpl.java
                    ├── SensitiveWordServiceImpl.java
                  ├── chat
                  ├── ChatHistoryService.java
                  ├── ChatItemService.java
                  ├── ChatModelService.java
                  ├── ChatRoleService.java
                    ├── impl
                    ├── ChatHistoryServiceImpl.java
                    ├── ChatItemServiceImpl.java
                    ├── ChatModelServiceImpl.java
                    ├── ChatRoleServiceImpl.java
                  ├── draw
                  ├── MjJobService.java
                  ├── SdJobService.java
                    ├── impl
                    ├── MjJobServiceImpl.java
                    ├── SdJobServiceImpl.java
                  ├── file
                  ├── FileService.java
                    ├── impl
                    ├── ImgHandler.java
                    ├── LocalFileServiceImpl.java
                    ├── OssFileServiceImpl.java
                  ├── framework
                  ├── PendingNotificationService.java
                    ├── impl
                    ├── PendingNotificationServiceImpl.java
                  ├── functions
                  ├── FunctionService.java
                    ├── impl
                    ├── FunctionServiceImpl.java
                  ├── orders
                  ├── OrderService.java
                  ├── RewardService.java
                    ├── impl
                    ├── OrderServiceImpl.java
                    ├── RewardServiceImpl.java
                  ├── pay
                  ├── IPayRequestService.java
                  ├── IRefundRequestService.java
                  ├── PayChannelServiceProvider.java
                    ├── impl
                    ├── AliPayChannelServiceImpl.java
                    ├── PayChannelService.java
                    ├── PayProcessor.java
                    ├── PayRequestServiceImpl.java
                    ├── RefundProcessor.java
                    ├── RefundRequestServiceImpl.java
                    ├── WeChatChannelServiceImpl.java
                      ├── alipay
                      ├── AliPayApiService.java
                      ├── AliPayWebPayService.java
                      ├── wechat
                      ├── WeChatApiServiceProvider.java
                      ├── WeChatPayApiService.java
                      ├── WeChatPayH5PayService.java
                      ├── WeChatPayMpPayService.java
                      ├── WeChatPayWebPayService.java
                  ├── provider
                  ├── FileServiceProvider.java
                  ├── verification
                  ├── PlusCaptchaService.java
                    ├── domain
                      ├── model
                      ├── CaptchaSendInfo.java
                      ├── VerificationErrorCode.java
                    ├── impl
                    ├── EmailCaptchaServiceImpl.java
                    ├── SmsCaptchaServiceImpl.java
                  ├── wxmp
                  ├── WeChatMpEventKeyHandler.java
                    ├── builder
                    ├── AbstractBuilder.java
                    ├── ImageBuilder.java
                    ├── TextBuilder.java
                    ├── handler
                    ├── AbstractHandler.java
                    ├── MsgHandler.java
                    ├── ScanHandler.java
                    ├── SubscribeHandler.java
                    ├── UnsubscribeHandler.java
                    ├── impl
                    ├── WeChatMpService.java
                ├── util
                ├── BaiduTransUtil.java
                ├── ConfigUtil.java
                  ├── email
                  ├── MailUtils.java
        ├── resources
          ├── META-INF
          ├── spring-devtools.properties
          ├── spring.factories
├── build.gradle
  ├── core
    ├── common
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── common
                    ├── annotation
                    ├── RateLimiter.java
                    ├── RepeatSubmit.java
                    ├── config
                    ├── AsyncConfig.java
                    ├── constant
                    ├── GroupCacheNames.java
                    ├── RedisPrefix.java
                    ├── crypto
                    ├── Crypto.java
                    ├── CryptoBody.java
                    ├── CryptoBodyWrapper.java
                    ├── CryptoValue.java
                    ├── PBKDF2PasswordHasher.java
                    ├── RequestMessageDecryptor.java
                    ├── RequestMessageDecryptorRSAImpl.java
                    ├── domain
                      ├── response
                      ├── PayloadOnlyResponse.java
                      ├── SensitiveWordFilterResultResponse.java
                      ├── TurnRightResponse.java
                    ├── enumeration
                    ├── AccountErrorCode.java
                    ├── DeviceTypeEnum.java
                    ├── FileSizeUnit.java
                    ├── LimitType.java
                    ├── PhoneNumberSection.java
                    ├── UserStatusEnum.java
                    ├── UserTypeEnum.java
                    ├── event
                    ├── EventPubSub.java
                      ├── driver
                      ├── AbstractEventPubSub.java
                    ├── exception
                    ├── BadRequestException.java
                    ├── ForbiddenException.java
                    ├── IdempotentException.java
                    ├── InternalErrorException.java
                    ├── NameEnumNotFoundException.java
                    ├── NoContentException.java
                    ├── NotDevelopedException.java
                    ├── ServiceException.java
                    ├── SystemException.java
                    ├── TurnRightException.java
                    ├── UnauthorizedException.java
                    ├── UpgradeRequiredException.java
                    ├── ValueEnumNotFoundException.java
                      ├── status
                      ├── Code.java
                      ├── ErrorCode.java
                    ├── lock
                    ├── TLock.java
                    ├── TurnRightLock.java
                    ├── logging
                    ├── Pair.java
                    ├── SouthernQuietLogFormatter.java
                    ├── SouthernQuietLogger.java
                    ├── SouthernQuietLoggerFactory.java
                    ├── page
                    ├── PageParam.java
                    ├── PageResult.java
                    ├── Paging.java
                    ├── util
                    ├── AddressUtils.java
                    ├── Assert.java
                    ├── CacheGroupUtils.java
                    ├── Casts.java
                    ├── CommonUtils.java
                    ├── CreateCodeUtil.java
                    ├── FileUtils.java
                    ├── IdGenerator.java
                    ├── InMemoryCaches.java
                    ├── MapUtils.java
                    ├── MediaType.java
                    ├── MessageTokenUtil.java
                    ├── ModelCopyUtils.java
                    ├── MoneyUtils.java
                    ├── OkHttpClientUtil.java
                    ├── PlusJsonUtils.java
                    ├── RedisUtils.java
                    ├── ReflectionUtils.java
                    ├── RegexUtils.java
                    ├── RegionUtils.java
                    ├── ResourcesUtils.java
                    ├── StringFilterUtil.java
                    ├── TernaryOperator.java
                    ├── UnitTestUtils.java
                    ├── VoidConsumer.java
                      ├── enumeration
                      ├── NameEnum.java
                      ├── NameEnumUtils.java
                      ├── NameValueEnum.java
                      ├── ValueEnum.java
                      ├── ValueEnumUtils.java
                      ├── reflect
                      ├── ReflectUtils.java
                      ├── spring
                      ├── SpringCtxUtils.java
                      ├── SpringUtils.java
                    ├── validation
                    ├── SensitiveWordCheck.java
                    ├── SensitiveWordCheckValidator.java
                    ├── SensitiveWordValidationService.java
          ├── resources
            ├── META-INF
            ├── spring-devtools.properties
            ├── spring.factories
        ├── test
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── common
                    ├── util
                    ├── InMemoryCachesTest.java
          ├── resources
          ├── logback.xml
    ├── datasource
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── datasource
                  ├── DataSourceAutoConfiguration.java
                    ├── annotation
                    ├── JsonCollectionGenericType.java
                    ├── fill
                    ├── CustomMetaObjectHandler.java
                    ├── filter
                    ├── Property.java
                    ├── QueryGenerator.java
                      ├── condition
                      ├── Condition.java
                      ├── ConditionParser.java
                      ├── ConditionType.java
                        ├── support
                        ├── SimpleConditionParser.java
                      ├── generator
                      ├── WildcardParser.java
                        ├── mybatis
                        ├── MybatisPlusQueryGenerator.java
                          ├── wildcard
                          ├── BetweenWildcardParser.java
                          ├── EqWildcardParser.java
                          ├── EqnWildcardParser.java
                          ├── GeWildcardParser.java
                          ├── GtWildcardParser.java
                          ├── InWildcardParser.java
                          ├── JsonInWildcardParser.java
                          ├── LeWildcardParser.java
                          ├── LikeLeftWildcardParser.java
                          ├── LikeRightWildcardParser.java
                          ├── LikeWildcardParser.java
                          ├── LtWildcardParser.java
                          ├── NeWildcardParser.java
                          ├── NenWildcardParser.java
                          ├── NotInWildcardParser.java
                    ├── handler
                    ├── JacksonJsonTypeHandler.java
                    ├── NameValueEnumTypeHandler.java
                    ├── id
                    ├── BasicIdEntity.java
                    ├── IdEntity.java
                    ├── LogicDeleteEntity.java
                    ├── json
                    ├── AbstractJsonCollectionPostInterceptor.java
                      ├── support
                      ├── JacksonJsonCollectionPostInterceptor.java
          ├── resources
            ├── META-INF
              ├── services
              ├── org.apache.shardingsphere.encrypt.spi.EncryptAlgorithm
            ├── spring-devtools.properties
            ├── spring.factories
    ├── elasticsearch
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── elasticsearch
                  ├── ElasticSearchConfiguration.java
                    ├── model
                      ├── vo
                      ├── IndexDataToSave.java
                    ├── service
                    ├── EsService.java
                    ├── util
                    ├── IndexPropertiesUtils.java
          ├── resources
            ├── META-INF
            ├── spring-devtools.properties
            ├── spring.factories
        ├── test
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── elasticsearch
                    ├── service
                    ├── EsServiceExample.java
    ├── file
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── file
                    ├── core
                    ├── OssClient.java
                    ├── dto
                    ├── FileConfigDto.java
                    ├── entity
                    ├── UploadResult.java
                    ├── enumd
                    ├── AccessPolicyType.java
                    ├── PolicyType.java
                    ├── exception
                    ├── OssException.java
    ├── job
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── xxljob
                  ├── XxlJobAutoConfiguration.java
          ├── resources
            ├── META-INF
            ├── spring-devtools.properties
            ├── spring.factories
        ├── test
          ├── resources
          ├── application.yml
    ├── json
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── json
                  ├── Int64ArrayAsStringArray.java
                  ├── Int64AsString.java
                  ├── JsonAutoConfiguration.java
                  ├── JsonReader.java
                  ├── JsonWriter.java
                  ├── PhoneJsonSerializer.java
                  ├── TurnRightJsonReader.java
                  ├── TurnRightJsonWriter.java
          ├── resources
            ├── META-INF
            ├── spring-devtools.properties
            ├── spring.factories
        ├── test
          ├── java
            ├── com
              ├── qbzg
                ├── turnright
                  ├── application
                    ├── json
                      ├── test
                      ├── Test.java
          ├── resources
          ├── logback.xml
    ├── web
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── web
                  ├── AuditLogInterceptorConfiguration.java
                  ├── HttpServletRequestAware.java
                  ├── HttpServletResponseAware.java
                  ├── UndertowConfig.java
                  ├── VerificationConfig.java
                  ├── WebAutoConfiguration.java
                  ├── XSSFilterConfiguration.java
                    ├── advice
                    ├── BaseExceptionAdvice.java
                    ├── DecryptRequestBodyAdvice.java
                    ├── InternalErrorResponseAttributes.java
                    ├── TurnRightResponseAdvice.java
                    ├── aspect
                    ├── RateLimiterAspect.java
                    ├── RepeatSubmitAspect.java
                    ├── auditlogger
                    ├── AuditLogsEntity.java
                    ├── UrlFilterUtil.java
                      ├── properties
                      ├── AuditLoggerProperties.java
                    ├── basecontroller
                    ├── BaseController.java
                    ├── converter
                    ├── EnumConverterFactory.java
                    ├── TimestampStringToInstantConverter.java
                    ├── filter
                    ├── AuditLoggerFilter.java
                    ├── MyXssFilter.java
                    ├── XssHttpServletRequestWrapper.java
                    ├── handler
                    ├── AllUrlHandler.java
                    ├── idempotent
                    ├── LockType.java
                    ├── Time.java
                      ├── annotation
                      ├── Concurrent.java
                      ├── concurrent
                      ├── ConcurrentInterceptor.java
                      ├── ConcurrentPointcutAdvisor.java
                      ├── generator
                      ├── SpelExpressionValueGenerator.java
                      ├── ValueGenerator.java
                    ├── interceptor
                    ├── AuditLoggerInterceptor.java
                    ├── ContentCachingRequestWrapper.java
                    ├── IContentCachingRequestWrapper.java
                    ├── XssContentCachingRequestWrapper.java
                    ├── notification
                    ├── MessageSource.java
                    ├── NotificationListener.java
                    ├── NotificationPublisher.java
                    ├── RedisStreamListener.java
                      ├── redis
                      ├── RedisStreamManager.java
                    ├── resolver
                    ├── CryptoMethodArgumentResolver.java
                    ├── CryptoValueMethodArgumentResolver.java
                    ├── satoken
                    ├── SaTokenConfig.java
                      ├── constant
                      ├── UserConstants.java
                      ├── helper
                      ├── LoginHelper.java
                      ├── model
                      ├── LoginUser.java
                      ├── service
                      ├── SaPermissionImpl.java
                    ├── util
                    ├── IpUtil.java
                    ├── MessageUtils.java
                    ├── ParameterUtils.java
                    ├── ServletUtils.java
                    ├── WebApplicationContextHolder.java
            ├── io
              ├── jsonwebtoken
                ├── impl
                ├── CompatibleDefaultJwtParser.java
                ├── CompatibleJwtBuilder.java
                ├── CompatibleJwtParserBuilder.java
          ├── resources
            ├── META-INF
            ├── spring-devtools.properties
            ├── spring.factories
  ├── doc
  ├── Dockerfile
  ├── chat_plus.sql
    ├── config
      ├── certs
  ├── docker-compose.yaml
    ├── fonts
    ├── AlibabaPuHuiTi-2-105-Heavy.ttf
    ├── AlibabaPuHuiTi-2-115-Black.ttf
    ├── AlibabaPuHuiTi-2-35-Thin.ttf
    ├── AlibabaPuHuiTi-2-45-Light.ttf
    ├── AlibabaPuHuiTi-2-55-Regular.otf
    ├── AlibabaPuHuiTi-2-65-Medium.ttf
    ├── AlibabaPuHuiTi-2-75-SemiBold.ttf
    ├── AlibabaPuHuiTi-2-85-Bold.otf
    ├── AlibabaPuHuiTi-2-95-ExtraBold.ttf
    ├── image
    ├── img.png
    ├── img_1.png
    ├── img_2.png
    ├── img_3.png
    ├── wxqun.png
  ├── nginx.conf
  ├── update-4.0.0.sql
  ├── update-4.0.2.sql
  ├── xxl_job.sql
├── gradle.properties
  ├── gradle
    ├── wrapper
    ├── gradle-wrapper.jar
    ├── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── readme.txt
├── settings.gradle
  ├── tools
    ├── code-generator
    ├── build.gradle
      ├── src
        ├── main
          ├── java
            ├── com
              ├── chatplus
                ├── application
                  ├── code
                    ├── generator
                    ├── JavaCodeApplication.java
                    ├── JavaCodeProperties.java
                    ├── JavaCodeRunner.java
                      ├── execute
                      ├── TableHandler.java
                      ├── TemplateHandler.java
                      ├── model
                      ├── Column.java
                      ├── JavaType.java
                      ├── Table.java
                      ├── utils
                      ├── StringUtil.java
          ├── resources
          ├── application.yml
          ├── bootstrap.yml
            ├── templates
            ├── controller.ftl
            ├── dao.ftl
            ├── doc.ftl
            ├── entity.ftl
            ├── entityVO.ftl
            ├── include-mapper.ftl
            ├── mapper.ftl
            ├── searchVO.ftl
            ├── service-impl.ftl
            ├── service-interface.ftl
创作时间: