From de27d191c2fd2d36d477059ac27bc035f9ff3abf Mon Sep 17 00:00:00 2001 From: cengy Date: Fri, 11 Apr 2025 14:39:54 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E5=B7=A5=E7=A8=8B):=20=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E5=B7=A5=E7=A8=8B=E4=BB=A3=E7=A0=81=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ff-base/pom.xml | 207 ---- .../ff/base/system/domain/SysLogininfor.java | 146 --- .../com/ff/base/system/domain/SysMenu.java | 279 ------ .../com/ff/base/system/domain/SysOperLog.java | 270 ------ .../com/ff/base/system/domain/SysRole.java | 245 ----- .../ff/base/system/domain/SysUserOnline.java | 113 --- ff-bean/ff-mysql/pom.xml | 95 ++ .../agent/domain/TenantAgentCommission.java | 71 +- .../ff/agent/domain/TenantAgentInvite.java | 63 +- .../domain/TenantAgentInvitePlatform.java | 40 +- .../domain/TenantAgentInviteRegister.java | 58 +- .../agent/domain/TenantAgentWithdrawal.java | 33 +- .../com/ff/base/core/domain/BaseEntity.java | 39 +- .../com/ff/base/system/domain/SysConfig.java | 85 +- .../ff/base/system/domain/SysDatasource.java | 8 - .../com/ff/base/system/domain/SysDept.java | 0 .../ff/base/system/domain/SysDictData.java | 148 ++- .../ff/base/system/domain/SysDictType.java | 72 +- .../ff/base/system/domain/SysLogininfor.java | 134 +++ .../com/ff/base/system/domain/SysMenu.java | 279 ++++++ .../com/ff/base/system/domain/SysOperLog.java | 110 +++ .../com/ff/base/system/domain/SysPost.java | 95 +- .../com/ff/base/system/domain/SysRole.java | 233 +++++ .../ff/base/system/domain/SysRoleDept.java | 33 +- .../ff/base/system/domain/SysRoleMenu.java | 33 +- .../com/ff/base/system/domain/SysUser.java | 29 - .../ff/base/system/domain/SysUserOnline.java | 112 +++ .../ff/base/system/domain/SysUserPost.java | 31 +- .../ff/base/system/domain/SysUserRole.java | 31 +- .../ff/base/system/domain/TenantAgent.java | 50 +- .../ff/base/system/domain/TenantPlatform.java | 40 +- .../base/system/domain/TenantSecretKey.java | 88 +- .../ff/base/system/domain/TenantWhite.java | 21 +- .../java/com/ff/common/domain/Currency.java | 53 +- .../main/java/com/ff/common/domain/Lang.java | 29 +- .../ff/common/domain/TenantAgentPlatform.java | 32 +- .../com/ff/common/domain/TenantGameQuota.java | 34 +- .../ff/common/domain/TenantGameQuotaFlow.java | 74 +- .../ff/common/domain/TenantQuotaExchange.java | 43 +- .../java/com/ff/game/domain/CurrencyInfo.java | 0 .../main/java/com/ff/game/domain/ExtInfo.java | 0 .../main/java/com/ff/game/domain/Game.java | 11 +- .../ff/game/domain/GameBettingDetails.java | 183 ++++ .../com/ff/game/domain/GameExchangeMoney.java | 79 +- .../com/ff/game/domain/GameFreeRecord.java | 79 +- .../main/java/com/ff/game/domain/KeyInfo.java | 0 .../java/com/ff/game/domain/LangInfo.java | 0 .../java/com/ff/game/domain/NameInfo.java | 0 .../java/com/ff/game/domain/Platform.java | 0 .../java/com/ff/game/domain/PlatformInfo.java | 0 .../main/java/com/ff/game/domain/UrlInfo.java | 0 .../java/com/ff/member/domain/Member.java | 34 +- .../java/com/ff/sys/domain/SysFeedback.java | 60 ++ .../java/com/ff/sys/domain/SysNotice.java | 19 +- ff-fetcher/pom.xml | 108 +++ .../src/main/java/com/ff/FFApplication.java | 28 + .../com/ff/utils/CalculateDateDaysAgo.java | 25 + .../com/ff/utils/SortByAttributeNameASC.java | 40 + .../com/ff/utils/TimestampFromString.java | 27 + .../com/ff/xxljob/config/XxlJobConfig.java | 53 + .../java/com/ff/xxljob/fetch/TaskParam.java | 13 + .../java/com/ff/xxljob/task/AbstractTask.java | 29 + .../task/FetchHistoryOrderListTask.java | 20 + .../ff/xxljob/task/FetchOrderListTask.java | 20 + .../java/com/ff/xxljob/task/FetchTask.java | 24 + .../resources/application-prod.properties | 41 + .../src/main/resources/application.properties | 1 + .../resources/config/prod/mongo.properties | 2 + .../resources/config/prod/redis.properties | 12 + .../resources/config/prod/xxljob.properties | 9 + .../resources/config/test/mongo.properties | 2 + .../resources/config/test/redis.properties | 12 + .../resources/config/test/xxljob.properties | 9 + .../main/resources/i18n/messages.properties | 47 + ff-fetcher/src/main/resources/logback.xml | 93 ++ ff-game/pom.xml | 165 +++- .../src/main/java/com/ff/FFApplication.java | 15 +- .../java/com/ff/FFServletInitializer.java | 18 - .../ff/agent/controller/AgentController.java | 18 +- .../com/ff/base/annotation/Anonymous.java | 0 .../com/ff/base/annotation/DataScope.java | 0 .../com/ff/base/annotation/DataSource.java | 0 .../java/com/ff/base/annotation/Excel.java | 0 .../java/com/ff/base/annotation/Excels.java | 2 - .../main/java/com/ff/base/annotation/Log.java | 0 .../com/ff/base/annotation/RateLimiter.java | 0 .../com/ff/base/annotation/RepeatSubmit.java | 0 .../com/ff/base/annotation/Sensitive.java | 0 .../com/ff/base/aspectj/DataScopeAspect.java | 6 +- .../com/ff/base/aspectj/DataSourceAspect.java | 2 +- .../java/com/ff/base/aspectj/LogAspect.java | 8 +- .../ff/base/aspectj/RateLimiterAspect.java | 0 .../com/ff/base/config/ApplicationConfig.java | 0 .../java/com/ff/base/config/AsyncConfig.java | 0 .../com/ff/base/config/CaptchaConfig.java | 0 .../java/com/ff/base/config/DruidConfig.java | 0 .../java/com/ff/base/config/FFConfig.java | 0 .../config/FastJson2JsonRedisSerializer.java | 0 .../java/com/ff/base/config/FilterConfig.java | 0 .../java/com/ff/base/config/I18nConfig.java | 2 - .../com/ff/base/config/JacksonConfig.java | 0 .../ff/base/config/KaptchaTextCreator.java | 0 .../com/ff/base/config/MyBatisConfig.java | 0 .../java/com/ff/base/config/RedisConfig.java | 0 .../com/ff/base/config/ResourcesConfig.java | 0 .../com/ff/base/config/SecurityConfig.java | 0 .../java/com/ff/base/config/ServerConfig.java | 0 .../com/ff/base/config/ThreadPoolConfig.java | 0 .../config/properties/DruidProperties.java | 0 .../properties/PermitAllUrlProperties.java | 0 .../serializer/SensitiveJsonSerializer.java | 0 .../ff/base/constant/BusinessConstants.java | 0 .../com/ff/base/constant/CacheConstants.java | 0 .../ff/base/constant/CacheLockConstants.java | 0 .../com/ff/base/constant/ConfigConstants.java | 0 .../java/com/ff/base/constant/Constants.java | 0 .../com/ff/base/constant/GenConstants.java | 0 .../java/com/ff/base/constant/HttpStatus.java | 0 .../ff/base/constant/ScheduleConstants.java | 0 .../com/ff/base/constant/UserConstants.java | 0 .../base/core/controller/BaseController.java | 4 +- .../com/ff/base/core/domain/AjaxResult.java | 0 .../com/ff/base/core/domain/TreeEntity.java | 0 .../com/ff/base/core/domain/TreeSelect.java | 0 .../ff/base/core/domain/model/LoginBody.java | 0 .../ff/base/core/domain/model/LoginForm.java | 0 .../ff/base/core/domain/model/LoginUser.java | 0 .../base/core/domain/model/RegisterBody.java | 0 .../com/ff/base/core/page/PageDomain.java | 0 .../com/ff/base/core/page/TableDataInfo.java | 0 .../com/ff/base/core/page/TableSupport.java | 0 .../com/ff/base/core/redis/RedisCache.java | 0 .../com/ff/base/core/text/CharsetKit.java | 0 .../java/com/ff/base/core/text/Convert.java | 0 .../com/ff/base/core/text/StrFormatter.java | 0 .../ff/base/datasource/DynamicDataSource.java | 0 .../DynamicDataSourceContextHolder.java | 0 .../decorator/ContextCopyingDecorator.java | 0 .../com/ff/base/enums/BusinessStatus.java | 0 .../java/com/ff/base/enums/BusinessType.java | 0 .../base/enums/CommissionApprovalStatus.java | 0 .../ff/base/enums/CommissionSourceType.java | 1 - .../com/ff/base/enums/CommissionType.java | 0 .../com/ff/base/enums/DataSourceType.java | 0 .../com/ff/base/enums/DesensitizedType.java | 0 .../java/com/ff/base/enums/DomainType.java | 0 .../java/com/ff/base/enums/ErrorCode.java | 0 .../java/com/ff/base/enums/FBSportsType.java | 0 .../java/com/ff/base/enums/FCGameType.java | 1 - .../com/ff/base/enums/FCTransferType.java | 0 .../java/com/ff/base/enums/FreeStatus.java | 0 .../java/com/ff/base/enums/GPXGameType.java | 0 .../com/ff/base/enums/GameExchangeStep.java | 1 - .../ff/base/enums/GameExchangeStepStatus.java | 0 .../com/ff/base/enums/GameMemberStatus.java | 1 - .../java/com/ff/base/enums/GamePlatforms.java | 0 .../java/com/ff/base/enums/GameStatus.java | 0 .../java/com/ff/base/enums/HttpMethod.java | 0 .../java/com/ff/base/enums/IngressType.java | 0 .../java/com/ff/base/enums/InviteType.java | 0 .../ff/base/enums/InviterRegisterStatus.java | 0 .../java/com/ff/base/enums/JILIGameType.java | 0 .../java/com/ff/base/enums/KMGameType.java | 0 .../java/com/ff/base/enums/LimitType.java | 0 .../java/com/ff/base/enums/LoginType.java | 0 .../com/ff/base/enums/MeiTianGameType.java | 0 .../java/com/ff/base/enums/MemberStatus.java | 0 .../java/com/ff/base/enums/NGGameType.java | 0 .../java/com/ff/base/enums/NGPlatforms.java | 3 - .../ff/base/enums/NGSettlementStatusEnum.java | 0 .../com/ff/base/enums/NGTransferType.java | 0 .../java/com/ff/base/enums/OperationType.java | 0 .../java/com/ff/base/enums/OperatorType.java | 0 .../java/com/ff/base/enums/PGTBetStatus.java | 1 - .../java/com/ff/base/enums/PGTGameType.java | 1 - .../com/ff/base/enums/PGTPayoutStatus.java | 2 - .../com/ff/base/enums/PGXBetRecordStatus.java | 0 .../ff/base/enums/PGXTransactionStatus.java | 0 .../com/ff/base/enums/PGXTransferType.java | 0 .../com/ff/base/enums/PlatformHomeType.java | 1 - .../java/com/ff/base/enums/PlatformType.java | 0 .../java/com/ff/base/enums/QuotaType.java | 0 .../java/com/ff/base/enums/SAGameType.java | 1 - .../ff/base/enums/SettlementStatusEnum.java | 2 - .../main/java/com/ff/base/enums/Status.java | 0 .../java/com/ff/base/enums/StatusType.java | 0 .../com/ff/base/enums/TenantQuotaType.java | 0 .../java/com/ff/base/enums/TenantType.java | 0 .../java/com/ff/base/enums/TransferType.java | 0 .../java/com/ff/base/enums/UserStatus.java | 0 .../java/com/ff/base/enums/XKGameType.java | 0 .../ff/base/exception/DemoModeException.java | 0 .../ff/base/exception/GlobalException.java | 0 .../ff/base/exception/ServiceException.java | 0 .../com/ff/base/exception/UtilException.java | 0 .../ff/base/exception/base/ApiException.java | 2 - .../ff/base/exception/base/BaseException.java | 0 .../ff/base/exception/file/FileException.java | 0 .../FileNameLengthLimitExceededException.java | 0 .../file/FileSizeLimitExceededException.java | 0 .../exception/file/FileUploadException.java | 0 .../file/InvalidExtensionException.java | 0 .../ff/base/exception/job/TaskException.java | 0 .../exception/user/BlackListException.java | 0 .../base/exception/user/CaptchaException.java | 0 .../user/CaptchaExpireException.java | 2 - .../ff/base/exception/user/UserException.java | 0 .../user/UserNotExistsException.java | 0 .../user/UserPasswordNotMatchException.java | 2 - ...UserPasswordRetryLimitExceedException.java | 2 - .../base/filter/PropertyPreExcludeFilter.java | 0 .../com/ff/base/filter/RepeatableFilter.java | 0 .../base/filter/RepeatedlyRequestWrapper.java | 0 .../java/com/ff/base/filter/XssFilter.java | 1 - .../filter/XssHttpServletRequestWrapper.java | 0 .../java/com/ff/base/handler/JsonHandler.java | 0 .../com/ff/base/handler/JsonListHandler.java | 0 .../DataSourceSwitchInterceptor.java | 0 .../interceptor/RepeatSubmitInterceptor.java | 0 .../impl/SameUrlDataInterceptor.java | 2 +- .../com/ff/base/manager/AsyncManager.java | 1 + .../com/ff/base/manager/ShutdownManager.java | 0 .../ff/base/manager/factory/AsyncFactory.java | 8 +- .../context/AuthenticationContextHolder.java | 0 .../context/PermissionContextHolder.java | 0 .../encode/CustomMd5PasswordEncoder.java | 0 .../filter/JwtAuthenticationTokenFilter.java | 1 - .../handle/AuthenticationEntryPointImpl.java | 0 .../handle/LogoutSuccessHandlerImpl.java | 4 +- .../provider/MyDaoAuthenticationProvider.java | 0 .../com/ff/base/system/domain/vo/MetaVo.java | 1 + .../ff/base/system/domain/vo/RouterVo.java | 57 +- .../ff/base/system/dto/CreateTenantDTO.java | 2 - .../base/system/dto/TenantSecretKeyDTO.java | 7 - .../base/system/mapper/SysConfigMapper.java | 0 .../system/mapper/SysDatasourceMapper.java | 0 .../ff/base/system/mapper/SysDeptMapper.java | 0 .../base/system/mapper/SysDictDataMapper.java | 0 .../base/system/mapper/SysDictTypeMapper.java | 0 .../system/mapper/SysLogininforMapper.java | 0 .../ff/base/system/mapper/SysMenuMapper.java | 2 - .../base/system/mapper/SysOperLogMapper.java | 0 .../ff/base/system/mapper/SysPostMapper.java | 0 .../base/system/mapper/SysRoleDeptMapper.java | 0 .../ff/base/system/mapper/SysRoleMapper.java | 1 - .../base/system/mapper/SysRoleMenuMapper.java | 0 .../ff/base/system/mapper/SysUserMapper.java | 0 .../base/system/mapper/SysUserPostMapper.java | 0 .../base/system/mapper/SysUserRoleMapper.java | 0 .../base/system/mapper/TenantAgentMapper.java | 0 .../system/mapper/TenantPlatformMapper.java | 3 +- .../system/mapper/TenantSecretKeyMapper.java | 3 +- .../base/system/mapper/TenantWhiteMapper.java | 3 +- .../system/service/ISysConfigService.java | 0 .../system/service/ISysDatasourceService.java | 0 .../base/system/service/ISysDeptService.java | 0 .../system/service/ISysDictDataService.java | 0 .../system/service/ISysDictTypeService.java | 0 .../system/service/ISysLogininforService.java | 0 .../base/system/service/ISysMenuService.java | 1 - .../system/service/ISysOperLogService.java | 0 .../base/system/service/ISysPostService.java | 0 .../base/system/service/ISysRoleService.java | 0 .../system/service/ISysUserOnlineService.java | 0 .../base/system/service/ISysUserService.java | 0 .../system/service/ITenantAgentService.java | 0 .../service/ITenantPlatformService.java | 3 +- .../service/ITenantSecretKeyService.java | 3 +- .../system/service/ITenantWhiteService.java | 3 +- .../service/impl/SysConfigServiceImpl.java | 0 .../impl/SysDatasourceServiceImpl.java | 0 .../service/impl/SysDeptServiceImpl.java | 10 +- .../service/impl/SysDictDataServiceImpl.java | 2 +- .../service/impl/SysDictTypeServiceImpl.java | 0 .../impl/SysLogininforServiceImpl.java | 0 .../service/impl/SysMenuServiceImpl.java | 4 +- .../service/impl/SysOperLogServiceImpl.java | 0 .../service/impl/SysPostServiceImpl.java | 2 +- .../service/impl/SysRoleServiceImpl.java | 12 +- .../impl/SysUserOnlineServiceImpl.java | 2 +- .../service/impl/SysUserServiceImpl.java | 14 +- .../service/impl/TenantAgentServiceImpl.java | 5 +- .../impl/TenantPlatformServiceImpl.java | 12 +- .../impl/TenantSecretKeyServiceImpl.java | 14 +- .../service/impl/TenantWhiteServiceImpl.java | 11 +- .../main/java/com/ff/base/utils/Arith.java | 0 .../com/ff/base/utils/DESEncryptUtils.java | 12 +- .../java/com/ff/base/utils/DateUtils.java | 4 +- .../com/ff/base/utils/DesensitizedUtil.java | 2 - .../java/com/ff/base/utils/DictUtils.java | 2 +- .../java/com/ff/base/utils/ExceptionUtil.java | 0 .../main/java/com/ff/base/utils/JsonUtil.java | 0 .../main/java/com/ff/base/utils/LogUtils.java | 0 .../java/com/ff/base/utils/MessageUtils.java | 0 .../java/com/ff/base/utils/NumberUtils.java | 0 .../java/com/ff/base/utils/PageUtils.java | 2 +- .../java/com/ff/base/utils/QuotaUtils.java | 0 .../ff/base/utils/RandomGeneratorUtils.java | 2 - .../java/com/ff/base/utils/SecurityUtils.java | 2 - .../java/com/ff/base/utils/ServletUtils.java | 1 - .../java/com/ff/base/utils/SleepUtil.java | 0 .../java/com/ff/base/utils/StringUtils.java | 1 - .../java/com/ff/base/utils/TenantUtils.java | 4 - .../main/java/com/ff/base/utils/Threads.java | 0 .../main/java/com/ff/base/utils/XmlUtils.java | 9 - .../com/ff/base/utils/bean/BeanUtils.java | 0 .../ff/base/utils/bean/BeanValidators.java | 0 .../com/ff/base/utils/domain/DomainInfo.java | 0 .../com/ff/base/utils/domain/DomainUtils.java | 0 .../com/ff/base/utils/file/FileTypeUtils.java | 0 .../ff/base/utils/file/FileUploadUtils.java | 0 .../com/ff/base/utils/file/FileUtils.java | 0 .../com/ff/base/utils/file/ImageUtils.java | 0 .../com/ff/base/utils/file/MimeTypeUtils.java | 0 .../com/ff/base/utils/html/EscapeUtil.java | 1 - .../com/ff/base/utils/html/HTMLFilter.java | 0 .../base/utils/http/HttpClientSslUtils.java | 8 +- .../com/ff/base/utils/http/HttpHelper.java | 0 .../com/ff/base/utils/http/HttpUtils.java | 0 .../com/ff/base/utils/ip/AddressUtils.java | 0 .../java/com/ff/base/utils/ip/IpUtils.java | 0 .../com/ff/base/utils/nginx/NginxUtils.java | 0 .../base/utils/poi/ExcelHandlerAdapter.java | 0 .../java/com/ff/base/utils/poi/ExcelUtil.java | 0 .../ff/base/utils/qrcode/QRCodeGenerator.java | 1 + .../ff/base/utils/reflect/ReflectUtils.java | 0 .../java/com/ff/base/utils/sign/Base64.java | 0 .../java/com/ff/base/utils/sign/Md5Utils.java | 0 .../com/ff/base/utils/spring/SpringUtils.java | 0 .../java/com/ff/base/utils/sql/SqlUtil.java | 0 .../java/com/ff/base/utils/uuid/IdUtils.java | 2 - .../main/java/com/ff/base/utils/uuid/Seq.java | 0 .../java/com/ff/base/utils/uuid/UUID.java | 0 .../com/ff/base/web/domain/server/Cpu.java | 0 .../com/ff/base/web/domain/server/Jvm.java | 0 .../com/ff/base/web/domain/server/Mem.java | 0 .../com/ff/base/web/domain/server/Sys.java | 0 .../ff/base/web/domain/server/SysFile.java | 0 .../web/exception/GlobalExceptionHandler.java | 1 - .../web/service/AgentDetailsServiceImpl.java | 2 - .../base/web/service/PermissionService.java | 4 +- .../ff/base/web/service/SysLoginService.java | 14 +- .../base/web/service/SysPasswordService.java | 3 +- .../web/service/SysPermissionService.java | 0 .../base/web/service/SysRegisterService.java | 10 +- .../web/service/TenantDetailsServiceImpl.java | 4 - .../com/ff/base/web/service/TokenService.java | 0 .../web/service/UserDetailsServiceImpl.java | 6 +- .../src/main/java/com/ff/base/xss/Xss.java | 2 - .../java/com/ff/base/xss/XssValidator.java | 0 .../ff/common/dto/GameBalanceExchange.java | 10 +- .../java/com/ff/config/SwaggerConfig.java | 121 --- .../sa/dto/SAGetAllBetDetailsResponse.java | 1 - .../ff/game/domain/GameBettingDetails.java | 166 ---- .../com/ff/quartz/config/ScheduleConfig.java | 57 -- .../quartz/controller/SysJobController.java | 179 ---- .../controller/SysJobLogController.java | 88 -- .../java/com/ff/quartz/domain/SysJob.java | 175 ---- .../java/com/ff/quartz/domain/SysJobLog.java | 159 --- .../com/ff/quartz/mapper/SysJobLogMapper.java | 65 -- .../com/ff/quartz/mapper/SysJobMapper.java | 68 -- .../ff/quartz/service/ISysJobLogService.java | 57 -- .../com/ff/quartz/service/ISysJobService.java | 103 -- .../service/impl/SysJobLogServiceImpl.java | 90 -- .../service/impl/SysJobServiceImpl.java | 264 ----- .../java/com/ff/quartz/task/GameTask.java | 259 ----- .../main/java/com/ff/quartz/task/RyTask.java | 34 - .../com/ff/quartz/task/TenantQuotaTask.java | 94 -- .../com/ff/quartz/util/AbstractQuartzJob.java | 100 -- .../java/com/ff/quartz/util/CronUtils.java | 64 -- .../com/ff/quartz/util/JobInvokeUtil.java | 183 ---- .../QuartzDisallowConcurrentExecution.java | 23 - .../ff/quartz/util/QuartzJobExecution.java | 21 - .../com/ff/quartz/util/ScheduleUtils.java | 132 --- .../java/com/ff/sys/domain/SysFeedback.java | 52 - .../com/ff/xxljob/config/XxlJobConfig.java | 53 + .../java/com/ff/xxljob/task/AbstractTask.java | 31 + .../src/main/resources/application-druid.yml | 95 -- .../resources/application-prod.properties | 70 ++ .../src/main/resources/application-prod.yml | 115 --- .../resources/application-test.properties | 69 ++ .../src/main/resources/application.properties | 1 + ff-game/src/main/resources/application.yml | 123 --- .../config/prod/datasource.properties | 35 + .../resources/config/prod/forest.properties | 16 + .../resources/config/prod/mybatis.properties | 3 + .../resources/config/prod/redis.properties | 9 + .../resources/config/prod/xxljob.properties | 9 + .../config/test/datasource.properties | 35 + .../resources/config/test/forest.properties | 16 + .../resources/config/test/mybatis.properties | 3 + .../resources/config/test/redis.properties | 9 + .../resources/config/test/xxljob.properties | 9 + ff-game/src/main/resources/logback.xml | 2 +- .../mapper/quartz/SysJobLogMapper.xml | 96 -- .../resources/mapper/quartz/SysJobMapper.xml | 111 --- .../mapper/system/SysConfigMapper.xml | 0 .../mapper/system/SysDatasourceMapper.xml | 0 .../resources/mapper/system/SysDeptMapper.xml | 0 .../mapper/system/SysDictDataMapper.xml | 0 .../mapper/system/SysDictTypeMapper.xml | 0 .../mapper/system/SysLogininforMapper.xml | 0 .../resources/mapper/system/SysMenuMapper.xml | 0 .../mapper/system/SysOperLogMapper.xml | 0 .../resources/mapper/system/SysPostMapper.xml | 0 .../mapper/system/SysRoleDeptMapper.xml | 0 .../resources/mapper/system/SysRoleMapper.xml | 0 .../mapper/system/SysRoleMenuMapper.xml | 0 .../resources/mapper/system/SysUserMapper.xml | 0 .../mapper/system/SysUserPostMapper.xml | 0 .../mapper/system/SysUserRoleMapper.xml | 0 .../mapper/system/TenantAgentMapper.xml | 0 .../mapper/system/TenantPlatformMapper.xml | 0 .../mapper/system/TenantSecretKeyMapper.xml | 0 .../mapper/system/TenantWhiteMapper.xml | 0 ff-gen/pom.xml | 49 - .../java/com/ff/gen/config/GenConfig.java | 73 -- .../com/ff/gen/controller/GenController.java | 252 ----- .../main/java/com/ff/gen/domain/GenTable.java | 386 -------- .../com/ff/gen/domain/GenTableColumn.java | 374 -------- .../ff/gen/mapper/GenTableColumnMapper.java | 61 -- .../com/ff/gen/mapper/GenTableMapper.java | 92 -- .../service/GenTableColumnServiceImpl.java | 69 -- .../ff/gen/service/GenTableServiceImpl.java | 536 ----------- .../gen/service/IGenTableColumnService.java | 45 - .../com/ff/gen/service/IGenTableService.java | 131 --- .../main/java/com/ff/gen/util/GenUtils.java | 262 ----- .../com/ff/gen/util/VelocityInitializer.java | 35 - .../java/com/ff/gen/util/VelocityUtils.java | 409 -------- ff-gen/src/main/resources/generator.yml | 10 - .../mapper/gen/GenTableColumnMapper.xml | 129 --- .../resources/mapper/gen/GenTableMapper.xml | 216 ----- .../main/resources/vm/java/controller.java.vm | 115 --- .../src/main/resources/vm/java/domain.java.vm | 61 -- .../src/main/resources/vm/java/mapper.java.vm | 91 -- .../main/resources/vm/java/service.java.vm | 61 -- .../resources/vm/java/serviceImpl.java.vm | 172 ---- .../main/resources/vm/java/sub-domain.java.vm | 76 -- ff-gen/src/main/resources/vm/js/api.js.vm | 44 - ff-gen/src/main/resources/vm/sql/sql.vm | 22 - .../main/resources/vm/vue/index-tree.vue.vm | 505 ---------- ff-gen/src/main/resources/vm/vue/index.vue.vm | 602 ------------ .../resources/vm/vue/v3/index-tree.vue.vm | 474 --------- .../src/main/resources/vm/vue/v3/index.vue.vm | 590 ------------ .../src/main/resources/vm/xml/mapper.xml.vm | 140 --- pom.xml | 48 +- sh/linux/build.sh | 45 + sh/linux/create.sh | 6 - sh/linux/publish.sh | 15 - sh/linux/start-manager-api.sh | 20 - sh/linux/start.sh | 39 + sh/win/build.bat | 54 ++ sh/win/create.bat | 6 - sh/win/publish.bat | 23 - sh/win/start.bat | 32 +- sql/update_liukang.sql | 903 ------------------ sql/update_shi.sql | 422 -------- sql/update_xiongshang.sql | 359 ------- 458 files changed, 3439 insertions(+), 13282 deletions(-) delete mode 100644 ff-base/pom.xml delete mode 100644 ff-base/src/main/java/com/ff/base/system/domain/SysLogininfor.java delete mode 100644 ff-base/src/main/java/com/ff/base/system/domain/SysMenu.java delete mode 100644 ff-base/src/main/java/com/ff/base/system/domain/SysOperLog.java delete mode 100644 ff-base/src/main/java/com/ff/base/system/domain/SysRole.java delete mode 100644 ff-base/src/main/java/com/ff/base/system/domain/SysUserOnline.java create mode 100644 ff-bean/ff-mysql/pom.xml rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/agent/domain/TenantAgentCommission.java (55%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/agent/domain/TenantAgentInvite.java (55%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java (60%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java (61%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java (67%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/core/domain/BaseEntity.java (76%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysConfig.java (51%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysDatasource.java (76%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysDept.java (100%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysDictData.java (52%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysDictType.java (54%) create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysLogininfor.java create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysMenu.java create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysOperLog.java rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysPost.java (50%) create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRole.java rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysRoleDept.java (64%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysRoleMenu.java (64%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysUser.java (68%) create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserOnline.java rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysUserPost.java (51%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/SysUserRole.java (51%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/TenantAgent.java (64%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/TenantPlatform.java (60%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/TenantSecretKey.java (54%) rename {ff-base => ff-bean/ff-mysql}/src/main/java/com/ff/base/system/domain/TenantWhite.java (64%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/common/domain/Currency.java (53%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/common/domain/Lang.java (61%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/common/domain/TenantAgentPlatform.java (63%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/common/domain/TenantGameQuota.java (60%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java (55%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/common/domain/TenantQuotaExchange.java (61%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/CurrencyInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/ExtInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/Game.java (81%) create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameBettingDetails.java rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/GameExchangeMoney.java (52%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/GameFreeRecord.java (50%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/KeyInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/LangInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/NameInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/Platform.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/PlatformInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/game/domain/UrlInfo.java (100%) rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/member/domain/Member.java (65%) create mode 100644 ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysFeedback.java rename {ff-game => ff-bean/ff-mysql}/src/main/java/com/ff/sys/domain/SysNotice.java (60%) create mode 100644 ff-fetcher/pom.xml create mode 100644 ff-fetcher/src/main/java/com/ff/FFApplication.java create mode 100644 ff-fetcher/src/main/java/com/ff/utils/CalculateDateDaysAgo.java create mode 100644 ff-fetcher/src/main/java/com/ff/utils/SortByAttributeNameASC.java create mode 100644 ff-fetcher/src/main/java/com/ff/utils/TimestampFromString.java create mode 100644 ff-fetcher/src/main/java/com/ff/xxljob/config/XxlJobConfig.java create mode 100644 ff-fetcher/src/main/java/com/ff/xxljob/fetch/TaskParam.java create mode 100644 ff-fetcher/src/main/java/com/ff/xxljob/task/AbstractTask.java create mode 100644 ff-fetcher/src/main/java/com/ff/xxljob/task/FetchHistoryOrderListTask.java create mode 100644 ff-fetcher/src/main/java/com/ff/xxljob/task/FetchOrderListTask.java create mode 100644 ff-fetcher/src/main/java/com/ff/xxljob/task/FetchTask.java create mode 100644 ff-fetcher/src/main/resources/application-prod.properties create mode 100644 ff-fetcher/src/main/resources/application.properties create mode 100644 ff-fetcher/src/main/resources/config/prod/mongo.properties create mode 100644 ff-fetcher/src/main/resources/config/prod/redis.properties create mode 100644 ff-fetcher/src/main/resources/config/prod/xxljob.properties create mode 100644 ff-fetcher/src/main/resources/config/test/mongo.properties create mode 100644 ff-fetcher/src/main/resources/config/test/redis.properties create mode 100644 ff-fetcher/src/main/resources/config/test/xxljob.properties create mode 100644 ff-fetcher/src/main/resources/i18n/messages.properties create mode 100644 ff-fetcher/src/main/resources/logback.xml delete mode 100644 ff-game/src/main/java/com/ff/FFServletInitializer.java rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/Anonymous.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/DataScope.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/DataSource.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/Excel.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/Excels.java (90%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/Log.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/RateLimiter.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/RepeatSubmit.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/annotation/Sensitive.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/aspectj/DataScopeAspect.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/aspectj/DataSourceAspect.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/aspectj/LogAspect.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/aspectj/RateLimiterAspect.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/ApplicationConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/AsyncConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/CaptchaConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/DruidConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/FFConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/FastJson2JsonRedisSerializer.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/FilterConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/I18nConfig.java (97%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/JacksonConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/KaptchaTextCreator.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/MyBatisConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/RedisConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/ResourcesConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/SecurityConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/ServerConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/ThreadPoolConfig.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/properties/DruidProperties.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/properties/PermitAllUrlProperties.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/config/serializer/SensitiveJsonSerializer.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/BusinessConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/CacheConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/CacheLockConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/ConfigConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/Constants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/GenConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/HttpStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/ScheduleConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/constant/UserConstants.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/controller/BaseController.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/AjaxResult.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/TreeEntity.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/TreeSelect.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/model/LoginBody.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/model/LoginForm.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/model/LoginUser.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/domain/model/RegisterBody.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/page/PageDomain.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/page/TableDataInfo.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/page/TableSupport.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/redis/RedisCache.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/text/CharsetKit.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/text/Convert.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/core/text/StrFormatter.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/datasource/DynamicDataSource.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/datasource/DynamicDataSourceContextHolder.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/decorator/ContextCopyingDecorator.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/BusinessStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/BusinessType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/CommissionApprovalStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/CommissionSourceType.java (95%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/CommissionType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/DataSourceType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/DesensitizedType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/DomainType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/ErrorCode.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/FBSportsType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/FCGameType.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/FCTransferType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/FreeStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/GPXGameType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/GameExchangeStep.java (96%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/GameExchangeStepStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/GameMemberStatus.java (95%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/GamePlatforms.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/GameStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/HttpMethod.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/IngressType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/InviteType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/InviterRegisterStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/JILIGameType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/KMGameType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/LimitType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/LoginType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/MeiTianGameType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/MemberStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/NGGameType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/NGPlatforms.java (94%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/NGSettlementStatusEnum.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/NGTransferType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/OperationType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/OperatorType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PGTBetStatus.java (95%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PGTGameType.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PGTPayoutStatus.java (91%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PGXBetRecordStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PGXTransactionStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PGXTransferType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PlatformHomeType.java (95%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/PlatformType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/QuotaType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/SAGameType.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/SettlementStatusEnum.java (94%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/Status.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/StatusType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/TenantQuotaType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/TenantType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/TransferType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/UserStatus.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/enums/XKGameType.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/DemoModeException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/GlobalException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/ServiceException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/UtilException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/base/ApiException.java (94%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/base/BaseException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/file/FileException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/file/FileNameLengthLimitExceededException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/file/FileSizeLimitExceededException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/file/FileUploadException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/file/InvalidExtensionException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/job/TaskException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/BlackListException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/CaptchaException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java (85%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/UserException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/UserNotExistsException.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java (87%) rename {ff-base => ff-game}/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java (89%) rename {ff-base => ff-game}/src/main/java/com/ff/base/filter/PropertyPreExcludeFilter.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/filter/RepeatableFilter.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/filter/RepeatedlyRequestWrapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/filter/XssFilter.java (97%) rename {ff-base => ff-game}/src/main/java/com/ff/base/filter/XssHttpServletRequestWrapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/handler/JsonHandler.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/handler/JsonListHandler.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/interceptor/DataSourceSwitchInterceptor.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/interceptor/RepeatSubmitInterceptor.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/manager/AsyncManager.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/manager/ShutdownManager.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/manager/factory/AsyncFactory.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/context/AuthenticationContextHolder.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/context/PermissionContextHolder.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/encode/CustomMd5PasswordEncoder.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/handle/AuthenticationEntryPointImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/security/provider/MyDaoAuthenticationProvider.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/domain/vo/MetaVo.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/domain/vo/RouterVo.java (67%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java (95%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java (57%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysConfigMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysDatasourceMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysDeptMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysDictDataMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysDictTypeMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysLogininforMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java (97%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysOperLogMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysPostMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysRoleDeptMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysRoleMenuMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysUserMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysUserPostMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/SysUserRoleMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/TenantAgentMapper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysConfigService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysDatasourceService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysDeptService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysDictDataService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysDictTypeService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysLogininforService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysMenuService.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysOperLogService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysPostService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysRoleService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysUserOnlineService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ISysUserService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ITenantAgentService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ITenantPlatformService.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/ITenantWhiteService.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysConfigServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysDatasourceServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysDictTypeServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysLogininforServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysOperLogServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java (97%) rename {ff-base => ff-game}/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/Arith.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/DESEncryptUtils.java (87%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/DateUtils.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/DesensitizedUtil.java (96%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/DictUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/ExceptionUtil.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/JsonUtil.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/LogUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/MessageUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/NumberUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/PageUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/QuotaUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java (97%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/SecurityUtils.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/ServletUtils.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/SleepUtil.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/StringUtils.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/TenantUtils.java (76%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/Threads.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/XmlUtils.java (78%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/bean/BeanUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/bean/BeanValidators.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/domain/DomainInfo.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/domain/DomainUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/file/FileTypeUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/file/FileUploadUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/file/FileUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/file/ImageUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/file/MimeTypeUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/html/EscapeUtil.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/html/HTMLFilter.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java (97%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/http/HttpHelper.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/http/HttpUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/ip/AddressUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/ip/IpUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/nginx/NginxUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/poi/ExcelHandlerAdapter.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/poi/ExcelUtil.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/reflect/ReflectUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/sign/Base64.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/sign/Md5Utils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/spring/SpringUtils.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/sql/SqlUtil.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/uuid/IdUtils.java (96%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/uuid/Seq.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/utils/uuid/UUID.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/domain/server/Cpu.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/domain/server/Jvm.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/domain/server/Mem.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/domain/server/Sys.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/domain/server/SysFile.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java (99%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java (96%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/PermissionService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/SysLoginService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/SysPasswordService.java (98%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/SysPermissionService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/SysRegisterService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java (94%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/TokenService.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java (100%) rename {ff-base => ff-game}/src/main/java/com/ff/base/xss/Xss.java (94%) rename {ff-base => ff-game}/src/main/java/com/ff/base/xss/XssValidator.java (100%) delete mode 100644 ff-game/src/main/java/com/ff/config/SwaggerConfig.java delete mode 100644 ff-game/src/main/java/com/ff/game/domain/GameBettingDetails.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/config/ScheduleConfig.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/controller/SysJobController.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/controller/SysJobLogController.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/domain/SysJob.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/domain/SysJobLog.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/mapper/SysJobLogMapper.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/mapper/SysJobMapper.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/service/ISysJobLogService.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/service/ISysJobService.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/service/impl/SysJobLogServiceImpl.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/service/impl/SysJobServiceImpl.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/task/GameTask.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/task/RyTask.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/task/TenantQuotaTask.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/util/AbstractQuartzJob.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/util/CronUtils.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/util/JobInvokeUtil.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/util/QuartzDisallowConcurrentExecution.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/util/QuartzJobExecution.java delete mode 100644 ff-game/src/main/java/com/ff/quartz/util/ScheduleUtils.java delete mode 100644 ff-game/src/main/java/com/ff/sys/domain/SysFeedback.java create mode 100644 ff-game/src/main/java/com/ff/xxljob/config/XxlJobConfig.java create mode 100644 ff-game/src/main/java/com/ff/xxljob/task/AbstractTask.java delete mode 100644 ff-game/src/main/resources/application-druid.yml create mode 100644 ff-game/src/main/resources/application-prod.properties delete mode 100644 ff-game/src/main/resources/application-prod.yml create mode 100644 ff-game/src/main/resources/application-test.properties create mode 100644 ff-game/src/main/resources/application.properties delete mode 100644 ff-game/src/main/resources/application.yml create mode 100644 ff-game/src/main/resources/config/prod/datasource.properties create mode 100644 ff-game/src/main/resources/config/prod/forest.properties create mode 100644 ff-game/src/main/resources/config/prod/mybatis.properties create mode 100644 ff-game/src/main/resources/config/prod/redis.properties create mode 100644 ff-game/src/main/resources/config/prod/xxljob.properties create mode 100644 ff-game/src/main/resources/config/test/datasource.properties create mode 100644 ff-game/src/main/resources/config/test/forest.properties create mode 100644 ff-game/src/main/resources/config/test/mybatis.properties create mode 100644 ff-game/src/main/resources/config/test/redis.properties create mode 100644 ff-game/src/main/resources/config/test/xxljob.properties delete mode 100644 ff-game/src/main/resources/mapper/quartz/SysJobLogMapper.xml delete mode 100644 ff-game/src/main/resources/mapper/quartz/SysJobMapper.xml rename {ff-base => ff-game}/src/main/resources/mapper/system/SysConfigMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysDatasourceMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysDeptMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysDictDataMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysDictTypeMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysLogininforMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysMenuMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysOperLogMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysPostMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysRoleDeptMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysRoleMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysRoleMenuMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysUserMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysUserPostMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/SysUserRoleMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/TenantAgentMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/TenantPlatformMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/TenantSecretKeyMapper.xml (100%) rename {ff-base => ff-game}/src/main/resources/mapper/system/TenantWhiteMapper.xml (100%) delete mode 100644 ff-gen/pom.xml delete mode 100644 ff-gen/src/main/java/com/ff/gen/config/GenConfig.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/controller/GenController.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/domain/GenTable.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/domain/GenTableColumn.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/mapper/GenTableColumnMapper.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/mapper/GenTableMapper.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/service/GenTableColumnServiceImpl.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/service/GenTableServiceImpl.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/service/IGenTableColumnService.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/service/IGenTableService.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/util/GenUtils.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/util/VelocityInitializer.java delete mode 100644 ff-gen/src/main/java/com/ff/gen/util/VelocityUtils.java delete mode 100644 ff-gen/src/main/resources/generator.yml delete mode 100644 ff-gen/src/main/resources/mapper/gen/GenTableColumnMapper.xml delete mode 100644 ff-gen/src/main/resources/mapper/gen/GenTableMapper.xml delete mode 100644 ff-gen/src/main/resources/vm/java/controller.java.vm delete mode 100644 ff-gen/src/main/resources/vm/java/domain.java.vm delete mode 100644 ff-gen/src/main/resources/vm/java/mapper.java.vm delete mode 100644 ff-gen/src/main/resources/vm/java/service.java.vm delete mode 100644 ff-gen/src/main/resources/vm/java/serviceImpl.java.vm delete mode 100644 ff-gen/src/main/resources/vm/java/sub-domain.java.vm delete mode 100644 ff-gen/src/main/resources/vm/js/api.js.vm delete mode 100644 ff-gen/src/main/resources/vm/sql/sql.vm delete mode 100644 ff-gen/src/main/resources/vm/vue/index-tree.vue.vm delete mode 100644 ff-gen/src/main/resources/vm/vue/index.vue.vm delete mode 100644 ff-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm delete mode 100644 ff-gen/src/main/resources/vm/vue/v3/index.vue.vm delete mode 100644 ff-gen/src/main/resources/vm/xml/mapper.xml.vm create mode 100644 sh/linux/build.sh delete mode 100644 sh/linux/create.sh delete mode 100644 sh/linux/publish.sh delete mode 100644 sh/linux/start-manager-api.sh create mode 100644 sh/linux/start.sh create mode 100644 sh/win/build.bat delete mode 100644 sh/win/create.bat delete mode 100644 sh/win/publish.bat delete mode 100644 sql/update_liukang.sql delete mode 100644 sql/update_shi.sql delete mode 100644 sql/update_xiongshang.sql diff --git a/ff-base/pom.xml b/ff-base/pom.xml deleted file mode 100644 index fa53859..0000000 --- a/ff-base/pom.xml +++ /dev/null @@ -1,207 +0,0 @@ - - - 4.0.0 - - ff - com.ff - 0.0.1 - - - com.ff - ff-base - 0.0.1 - ff-base - ff-base - - - - - org.projectlombok - lombok - provided - - - - - com.dtflys.forest - forest-spring-boot-starter - 1.6.3 - - - - org.springframework.boot - spring-boot-dependencies - 2.5.15 - pom - import - - - - - org.springframework.boot - spring-boot-starter-web - - - - - org.springframework.boot - spring-boot-starter-aop - - - - - com.alibaba - druid-spring-boot-starter - - - - - pro.fessional - kaptcha - - - - - com.github.oshi - oshi-core - - - - - org.springframework - spring-context-support - - - - - org.springframework - spring-web - - - - - org.springframework.boot - spring-boot-starter-security - - - - - com.github.pagehelper - pagehelper-spring-boot-starter - - - - - org.springframework.boot - spring-boot-starter-validation - - - - - org.apache.commons - commons-lang3 - - - - - com.fasterxml.jackson.core - jackson-databind - - - - - com.alibaba.fastjson2 - fastjson2 - - - - - commons-io - commons-io - - - - - - - - org.apache.poi - poi-ooxml - - - - - org.apache.httpcomponents - httpclient - - - - com.squareup.okhttp3 - okhttp - - - - org.yaml - snakeyaml - - - - - io.jsonwebtoken - jjwt - - - - - javax.xml.bind - jaxb-api - - - - - org.springframework.boot - spring-boot-starter-data-redis - - - - - org.apache.commons - commons-pool2 - - - - - eu.bitwalker - UserAgentUtils - - - - - javax.servlet - javax.servlet-api - - - - - com.google.zxing - core - - - com.google.zxing - javase - - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysLogininfor.java b/ff-base/src/main/java/com/ff/base/system/domain/SysLogininfor.java deleted file mode 100644 index 54946da..0000000 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysLogininfor.java +++ /dev/null @@ -1,146 +0,0 @@ -package com.ff.base.system.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; -import com.ff.base.core.domain.BaseEntity; - -/** - * 系统访问记录表 sys_logininfor - * - * @author ff - */ -public class SysLogininfor extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** ID */ - @Excel(name = "序号", cellType = ColumnType.NUMERIC) - @JsonSerialize(using = ToStringSerializer.class) - private Long infoId; - - /** 用户账号 */ - @Excel(name = "用户账号") - private String userName; - - /** 登录状态 0成功 1失败 */ - @Excel(name = "登录状态", readConverterExp = "0=成功,1=失败") - private String status; - - /** 登录IP地址 */ - @Excel(name = "登录地址") - private String ipaddr; - - /** 登录地点 */ - @Excel(name = "登录地点") - private String loginLocation; - - /** 浏览器类型 */ - @Excel(name = "浏览器") - private String browser; - - /** 操作系统 */ - @Excel(name = "操作系统") - private String os; - - /** 提示消息 */ - @Excel(name = "提示消息") - private String msg; - - /** 访问时间 */ - - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private Long loginTime; - - public Long getInfoId() - { - return infoId; - } - - public void setInfoId(Long infoId) - { - this.infoId = infoId; - } - - public String getUserName() - { - return userName; - } - - public void setUserName(String userName) - { - this.userName = userName; - } - - public String getStatus() - { - return status; - } - - public void setStatus(String status) - { - this.status = status; - } - - public String getIpaddr() - { - return ipaddr; - } - - public void setIpaddr(String ipaddr) - { - this.ipaddr = ipaddr; - } - - public String getLoginLocation() - { - return loginLocation; - } - - public void setLoginLocation(String loginLocation) - { - this.loginLocation = loginLocation; - } - - public String getBrowser() - { - return browser; - } - - public void setBrowser(String browser) - { - this.browser = browser; - } - - public String getOs() - { - return os; - } - - public void setOs(String os) - { - this.os = os; - } - - public String getMsg() - { - return msg; - } - - public void setMsg(String msg) - { - this.msg = msg; - } - - public Long getLoginTime() - { - return loginTime; - } - - public void setLoginTime(Long loginTime) - { - this.loginTime = loginTime; - } -} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysMenu.java b/ff-base/src/main/java/com/ff/base/system/domain/SysMenu.java deleted file mode 100644 index b78d591..0000000 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysMenu.java +++ /dev/null @@ -1,279 +0,0 @@ -package com.ff.base.system.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.core.domain.BaseEntity; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; -import java.util.ArrayList; -import java.util.List; - -/** - * 菜单权限表 sys_menu - * - * @author ff - */ -public class SysMenu extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 菜单ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long menuId; - - /** 菜单名称 */ - private String menuName; - - /** 父菜单名称 */ - private String parentName; - - /** 父菜单ID */ - @JsonSerialize(using = ToStringSerializer.class) - private Long parentId; - - /** 显示顺序 */ - private Integer orderNum; - - /** 路由地址 */ - private String path; - - /** 组件路径 */ - private String component; - - /** 路由参数 */ - private String query; - - /** 路由名称,默认和路由地址相同的驼峰格式(注意:因为vue3版本的router会删除名称相同路由,为避免名字的冲突,特殊情况可以自定义) */ - private String routeName; - - /** 是否为外链(0是 1否) */ - private String isFrame; - - /** 是否缓存(0缓存 1不缓存) */ - private String isCache; - - /** 类型(M目录 C菜单 F按钮) */ - private String menuType; - - /** 显示状态(0显示 1隐藏) */ - private String visible; - - /** 菜单状态(0正常 1停用) */ - private String status; - - /** 权限字符串 */ - private String perms; - - /** 菜单图标 */ - private String icon; - - /** 子菜单 */ - private List children = new ArrayList(); - @JsonSerialize(using = ToStringSerializer.class) - public Long getMenuId() - { - return menuId; - } - - public void setMenuId(Long menuId) - { - this.menuId = menuId; - } - - @NotBlank(message = "菜单名称不能为空") - @Size(min = 0, max = 50, message = "菜单名称长度不能超过50个字符") - public String getMenuName() - { - return menuName; - } - - public void setMenuName(String menuName) - { - this.menuName = menuName; - } - - public String getParentName() - { - return parentName; - } - - public void setParentName(String parentName) - { - this.parentName = parentName; - } - - public Long getParentId() - { - return parentId; - } - - public void setParentId(Long parentId) - { - this.parentId = parentId; - } - - @NotNull(message = "显示顺序不能为空") - public Integer getOrderNum() - { - return orderNum; - } - - public void setOrderNum(Integer orderNum) - { - this.orderNum = orderNum; - } - - @Size(min = 0, max = 200, message = "路由地址不能超过200个字符") - public String getPath() - { - return path; - } - - public void setPath(String path) - { - this.path = path; - } - - @Size(min = 0, max = 200, message = "组件路径不能超过255个字符") - public String getComponent() - { - return component; - } - - public void setComponent(String component) - { - this.component = component; - } - - public String getQuery() - { - return query; - } - - public void setQuery(String query) - { - this.query = query; - } - - public String getRouteName() - { - return routeName; - } - - public void setRouteName(String routeName) - { - this.routeName = routeName; - } - - public String getIsFrame() - { - return isFrame; - } - - public void setIsFrame(String isFrame) - { - this.isFrame = isFrame; - } - - public String getIsCache() - { - return isCache; - } - - public void setIsCache(String isCache) - { - this.isCache = isCache; - } - - @NotBlank(message = "菜单类型不能为空") - public String getMenuType() - { - return menuType; - } - - public void setMenuType(String menuType) - { - this.menuType = menuType; - } - - public String getVisible() - { - return visible; - } - - public void setVisible(String visible) - { - this.visible = visible; - } - - public String getStatus() - { - return status; - } - - public void setStatus(String status) - { - this.status = status; - } - - @Size(min = 0, max = 100, message = "权限标识长度不能超过100个字符") - public String getPerms() - { - return perms; - } - - public void setPerms(String perms) - { - this.perms = perms; - } - - public String getIcon() - { - return icon; - } - - public void setIcon(String icon) - { - this.icon = icon; - } - - public List getChildren() - { - return children; - } - - public void setChildren(List children) - { - this.children = children; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("menuId", getMenuId()) - .append("menuName", getMenuName()) - .append("parentId", getParentId()) - .append("orderNum", getOrderNum()) - .append("path", getPath()) - .append("component", getComponent()) - .append("query", getQuery()) - .append("routeName", getRouteName()) - .append("isFrame", getIsFrame()) - .append("IsCache", getIsCache()) - .append("menuType", getMenuType()) - .append("visible", getVisible()) - .append("status ", getStatus()) - .append("perms", getPerms()) - .append("icon", getIcon()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); - } -} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysOperLog.java b/ff-base/src/main/java/com/ff/base/system/domain/SysOperLog.java deleted file mode 100644 index 5d07551..0000000 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysOperLog.java +++ /dev/null @@ -1,270 +0,0 @@ -package com.ff.base.system.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; -import com.ff.base.core.domain.BaseEntity; - -/** - * 操作日志记录表 oper_log - * - * @author ff - */ -public class SysOperLog extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 日志主键 */ - @Excel(name = "操作序号", cellType = ColumnType.NUMERIC) - @JsonSerialize(using = ToStringSerializer.class) - private Long operId; - - /** 操作模块 */ - @Excel(name = "操作模块") - private String title; - - /** 业务类型(0其它 1新增 2修改 3删除) */ - @Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据") - private Integer businessType; - - /** 业务类型数组 */ - private Integer[] businessTypes; - - /** 请求方法 */ - @Excel(name = "请求方法") - private String method; - - /** 请求方式 */ - @Excel(name = "请求方式") - private String requestMethod; - - /** 操作类别(0其它 1后台用户 2手机端用户) */ - @Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户") - private Integer operatorType; - - /** 操作人员 */ - @Excel(name = "操作人员") - private String operName; - - /** 部门名称 */ - @Excel(name = "部门名称") - private String deptName; - - /** 请求url */ - @Excel(name = "请求地址") - private String operUrl; - - /** 操作地址 */ - @Excel(name = "操作地址") - private String operIp; - - /** 操作地点 */ - @Excel(name = "操作地点") - private String operLocation; - - /** 请求参数 */ - @Excel(name = "请求参数") - private String operParam; - - /** 返回参数 */ - @Excel(name = "返回参数") - private String jsonResult; - - /** 操作状态(0正常 1异常) */ - @Excel(name = "状态", readConverterExp = "0=正常,1=异常") - private Integer status; - - /** 错误消息 */ - @Excel(name = "错误消息") - private String errorMsg; - - /** 操作时间 */ - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private Long operTime; - - /** 消耗时间 */ - @Excel(name = "消耗时间", suffix = "毫秒") - private Long costTime; - - public Long getOperId() - { - return operId; - } - - public void setOperId(Long operId) - { - this.operId = operId; - } - - public String getTitle() - { - return title; - } - - public void setTitle(String title) - { - this.title = title; - } - - public Integer getBusinessType() - { - return businessType; - } - - public void setBusinessType(Integer businessType) - { - this.businessType = businessType; - } - - public Integer[] getBusinessTypes() - { - return businessTypes; - } - - public void setBusinessTypes(Integer[] businessTypes) - { - this.businessTypes = businessTypes; - } - - public String getMethod() - { - return method; - } - - public void setMethod(String method) - { - this.method = method; - } - - public String getRequestMethod() - { - return requestMethod; - } - - public void setRequestMethod(String requestMethod) - { - this.requestMethod = requestMethod; - } - - public Integer getOperatorType() - { - return operatorType; - } - - public void setOperatorType(Integer operatorType) - { - this.operatorType = operatorType; - } - - public String getOperName() - { - return operName; - } - - public void setOperName(String operName) - { - this.operName = operName; - } - - public String getDeptName() - { - return deptName; - } - - public void setDeptName(String deptName) - { - this.deptName = deptName; - } - - public String getOperUrl() - { - return operUrl; - } - - public void setOperUrl(String operUrl) - { - this.operUrl = operUrl; - } - - public String getOperIp() - { - return operIp; - } - - public void setOperIp(String operIp) - { - this.operIp = operIp; - } - - public String getOperLocation() - { - return operLocation; - } - - public void setOperLocation(String operLocation) - { - this.operLocation = operLocation; - } - - public String getOperParam() - { - return operParam; - } - - public void setOperParam(String operParam) - { - this.operParam = operParam; - } - - public String getJsonResult() - { - return jsonResult; - } - - public void setJsonResult(String jsonResult) - { - this.jsonResult = jsonResult; - } - - public Integer getStatus() - { - return status; - } - - public void setStatus(Integer status) - { - this.status = status; - } - - public String getErrorMsg() - { - return errorMsg; - } - - public void setErrorMsg(String errorMsg) - { - this.errorMsg = errorMsg; - } - - public Long getOperTime() - { - return operTime; - } - - public void setOperTime(Long operTime) - { - this.operTime = operTime; - } - - public Long getCostTime() - { - return costTime; - } - - public void setCostTime(Long costTime) - { - this.costTime = costTime; - } -} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysRole.java b/ff-base/src/main/java/com/ff/base/system/domain/SysRole.java deleted file mode 100644 index a7122bc..0000000 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysRole.java +++ /dev/null @@ -1,245 +0,0 @@ -package com.ff.base.system.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; -import com.ff.base.core.domain.BaseEntity; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.Size; -import java.util.Set; - -/** - * 角色表 sys_role - * - * @author ff - */ -public class SysRole extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 角色ID */ - @Excel(name = "角色序号", cellType = ColumnType.NUMERIC) - @JsonSerialize(using = ToStringSerializer.class) - private Long roleId; - - /** 角色名称 */ - @Excel(name = "角色名称") - private String roleName; - - /** 角色权限 */ - @Excel(name = "角色权限") - private String roleKey; - - /** 角色排序 */ - @Excel(name = "角色排序") - private Integer roleSort; - - /** 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) */ - @Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限") - private String dataScope; - - /** 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) */ - private boolean menuCheckStrictly; - - /** 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 ) */ - private boolean deptCheckStrictly; - - /** 角色状态(0正常 1停用) */ - @Excel(name = "角色状态", readConverterExp = "0=正常,1=停用") - private String status; - - /** 删除标志(0代表存在 2代表删除) */ - private String delFlag; - - /** 用户是否存在此角色标识 默认不存在 */ - private boolean flag = false; - - /** 菜单组 */ - private Long[] menuIds; - - /** 部门组(数据权限) */ - private Long[] deptIds; - - /** 角色菜单权限 */ - private Set permissions; - - public SysRole() - { - - } - - public SysRole(Long roleId) - { - this.roleId = roleId; - } - @JsonSerialize(using = ToStringSerializer.class) - public Long getRoleId() - { - return roleId; - } - - public void setRoleId(Long roleId) - { - this.roleId = roleId; - } - - public boolean isAdmin() - { - return isAdmin(this.roleId); - } - - public static boolean isAdmin(Long roleId) - { - return roleId != null && 1L == roleId; - } - - @NotBlank(message = "角色名称不能为空") - @Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符") - public String getRoleName() - { - return roleName; - } - - public void setRoleName(String roleName) - { - this.roleName = roleName; - } - - @NotBlank(message = "权限字符不能为空") - @Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符") - public String getRoleKey() - { - return roleKey; - } - - public void setRoleKey(String roleKey) - { - this.roleKey = roleKey; - } - - @NotNull(message = "显示顺序不能为空") - public Integer getRoleSort() - { - return roleSort; - } - - public void setRoleSort(Integer roleSort) - { - this.roleSort = roleSort; - } - - public String getDataScope() - { - return dataScope; - } - - public void setDataScope(String dataScope) - { - this.dataScope = dataScope; - } - - public boolean isMenuCheckStrictly() - { - return menuCheckStrictly; - } - - public void setMenuCheckStrictly(boolean menuCheckStrictly) - { - this.menuCheckStrictly = menuCheckStrictly; - } - - public boolean isDeptCheckStrictly() - { - return deptCheckStrictly; - } - - public void setDeptCheckStrictly(boolean deptCheckStrictly) - { - this.deptCheckStrictly = deptCheckStrictly; - } - - public String getStatus() - { - return status; - } - - public void setStatus(String status) - { - this.status = status; - } - - public String getDelFlag() - { - return delFlag; - } - - public void setDelFlag(String delFlag) - { - this.delFlag = delFlag; - } - - public boolean isFlag() - { - return flag; - } - - public void setFlag(boolean flag) - { - this.flag = flag; - } - - public Long[] getMenuIds() - { - return menuIds; - } - - public void setMenuIds(Long[] menuIds) - { - this.menuIds = menuIds; - } - - public Long[] getDeptIds() - { - return deptIds; - } - - public void setDeptIds(Long[] deptIds) - { - this.deptIds = deptIds; - } - - public Set getPermissions() - { - return permissions; - } - - public void setPermissions(Set permissions) - { - this.permissions = permissions; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("roleId", getRoleId()) - .append("roleName", getRoleName()) - .append("roleKey", getRoleKey()) - .append("roleSort", getRoleSort()) - .append("dataScope", getDataScope()) - .append("menuCheckStrictly", isMenuCheckStrictly()) - .append("deptCheckStrictly", isDeptCheckStrictly()) - .append("status", getStatus()) - .append("delFlag", getDelFlag()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); - } -} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysUserOnline.java b/ff-base/src/main/java/com/ff/base/system/domain/SysUserOnline.java deleted file mode 100644 index 8d879d2..0000000 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysUserOnline.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.ff.base.system.domain; - -/** - * 当前在线会话 - * - * @author ff - */ -public class SysUserOnline -{ - /** 会话编号 */ - private String tokenId; - - /** 部门名称 */ - private String deptName; - - /** 用户名称 */ - private String userName; - - /** 登录IP地址 */ - private String ipaddr; - - /** 登录地址 */ - private String loginLocation; - - /** 浏览器类型 */ - private String browser; - - /** 操作系统 */ - private String os; - - /** 登录时间 */ - private Long loginTime; - - public String getTokenId() - { - return tokenId; - } - - public void setTokenId(String tokenId) - { - this.tokenId = tokenId; - } - - public String getDeptName() - { - return deptName; - } - - public void setDeptName(String deptName) - { - this.deptName = deptName; - } - - public String getUserName() - { - return userName; - } - - public void setUserName(String userName) - { - this.userName = userName; - } - - public String getIpaddr() - { - return ipaddr; - } - - public void setIpaddr(String ipaddr) - { - this.ipaddr = ipaddr; - } - - public String getLoginLocation() - { - return loginLocation; - } - - public void setLoginLocation(String loginLocation) - { - this.loginLocation = loginLocation; - } - - public String getBrowser() - { - return browser; - } - - public void setBrowser(String browser) - { - this.browser = browser; - } - - public String getOs() - { - return os; - } - - public void setOs(String os) - { - this.os = os; - } - - public Long getLoginTime() - { - return loginTime; - } - - public void setLoginTime(Long loginTime) - { - this.loginTime = loginTime; - } -} diff --git a/ff-bean/ff-mysql/pom.xml b/ff-bean/ff-mysql/pom.xml new file mode 100644 index 0000000..163e269 --- /dev/null +++ b/ff-bean/ff-mysql/pom.xml @@ -0,0 +1,95 @@ + + + 4.0.0 + + ff + com.ff + 0.0.1 + + + ff-mysql-entity + 0.0.1 + ff-mysql-entity + jar + + + + + com.xuxueli + xxl-job-core + + + + org.projectlombok + lombok + provided + + + com.dtflys.forest + forest-spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-web + + + + + org.springframework.boot + spring-boot-starter-validation + + + + + org.apache.commons + commons-lang3 + + + + + com.alibaba.fastjson2 + fastjson2 + + + + commons-io + commons-io + + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + org.apache.commons + commons-pool2 + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.5.15 + + true + + + + + repackage + + + + + + ff-mysql-entity + + + diff --git a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentCommission.java b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentCommission.java similarity index 55% rename from ff-game/src/main/java/com/ff/agent/domain/TenantAgentCommission.java rename to ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentCommission.java index a8e8f7f..a215e3d 100644 --- a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentCommission.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentCommission.java @@ -1,14 +1,15 @@ package com.ff.agent.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; -import lombok.*; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 代理佣金管理 对象 ff_tenant_agent_commission * @@ -19,11 +20,12 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgentCommission extends BaseEntity -{ +public class TenantAgentCommission extends BaseEntity { private static final long serialVersionUID = 1L; - /** $column.columnComment */ + /** + * $column.columnComment + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; @@ -33,49 +35,60 @@ public class TenantAgentCommission extends BaseEntity @JsonSerialize(using = ToStringSerializer.class) private Long agentId; - /** 来源id */ - @Excel(name = "来源id") + /** + * 来源id + */ @JsonSerialize(using = ToStringSerializer.class) private Long sourceId; - /** 来源类型 CommissionSourceType */ - @Excel(name = "来源类型 CommissionSourceType") + /** + * 来源类型 CommissionSourceType + */ private Integer sourceType; - /** 佣金类型 ff_tenant_agent_commission_type commissionType */ - @Excel(name = "佣金类型 commissionType") + /** + * 佣金类型 ff_tenant_agent_commission_type commissionType + */ private Integer commissionType; - /** 币种 */ - @Excel(name = "币种") + /** + * 币种 + */ private String currencyCode; - /** 平台代码 */ - @Excel(name = "平台代码") + /** + * 平台代码 + */ private String platformCode; - /** 成本比例 */ - @Excel(name = "成本比例") + /** + * 成本比例 + */ private BigDecimal costBalance; - /** 商户比例 */ - @Excel(name = "商户比例") + /** + * 商户比例 + */ private BigDecimal merchantBalance; - /** 充值金额 */ - @Excel(name = "充值金额") + /** + * 充值金额 + */ private BigDecimal balance; - /** 佣金金额 */ - @Excel(name = "佣金金额") + /** + * 佣金金额 + */ private BigDecimal commissionBalance; - /** USDT金额 */ - @Excel(name = "USDT金额") + /** + * USDT金额 + */ private BigDecimal usdtBalance; - /** 佣金审批状态 ff_tenant_agent_approval_status 0 未提现 1 提现中 1 已提现 */ - @Excel(name = "佣金审批状态 0 未提现 1 提现中 1 已提现") + /** + * 佣金审批状态 ff_tenant_agent_approval_status 0 未提现 1 提现中 1 已提现 + */ private Integer approvalStatus; diff --git a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentInvite.java b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInvite.java similarity index 55% rename from ff-game/src/main/java/com/ff/agent/domain/TenantAgentInvite.java rename to ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInvite.java index b26acf7..10c7934 100644 --- a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentInvite.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInvite.java @@ -1,17 +1,15 @@ package com.ff.agent.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 代理邀请链接对象 ff_tenant_agent_invite * @@ -22,53 +20,64 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgentInvite extends BaseEntity -{ +public class TenantAgentInvite extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 代理id */ - @Excel(name = "代理id") + /** + * 代理id + */ @JsonSerialize(using = ToStringSerializer.class) private Long agentId; - /** 缴费金额 */ - @Excel(name = "缴费金额") + /** + * 缴费金额 + */ private BigDecimal balance; - /** 邀请类型 1 租户 2代理 ff_agent_invite_type */ - @Excel(name = "邀请类型 1 租户 2代理 ") + /** + * 邀请类型 1 租户 2代理 ff_agent_invite_type + */ private Integer inviteType; - /** 额度类型 TenantQuotaType 枚举 */ - @Excel(name = "额度类型 TenantQuotaType 枚举") + /** + * 额度类型 TenantQuotaType 枚举 + */ private Integer quotaType; - /** 买分比例 */ - @Excel(name = "买分比例") + /** + * 买分比例 + */ private BigDecimal scoreRatio; - /** 租户类型 TenantType 枚举 */ - @Excel(name = "租户类型 TenantType 枚举") + /** + * 租户类型 TenantType 枚举 + */ private Integer tenantType; - /** 透支比例 */ - @Excel(name = "透支比例") + /** + * 透支比例 + */ private BigDecimal depositRatio; - /** 信誉额度 */ - @Excel(name = "信誉额度") + /** + * 信誉额度 + */ private BigDecimal realBalance; - /** 邀请码 */ - @Excel(name = "邀请码") + /** + * 邀请码 + */ private String inviteCode; - /** 邀请链接 */ - @Excel(name = "邀请链接") + /** + * 邀请链接 + */ private String inviteUrl; } diff --git a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java similarity index 60% rename from ff-game/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java rename to ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java index 1f97b24..0344a82 100644 --- a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInvitePlatform.java @@ -1,17 +1,15 @@ package com.ff.agent.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 平台邀请注册成本管理对象 ff_tenant_agent_invite_platform * @@ -22,32 +20,38 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgentInvitePlatform extends BaseEntity -{ +public class TenantAgentInvitePlatform extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ private Long id; - /** 邀请码id */ - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "邀请码id", width = 30, dateFormat = "yyyy-MM-dd") + /** + * 邀请码id + */ + @JsonSerialize(using = ToStringSerializer.class) private Long inviteId; - /** 平台编码 */ - @Excel(name = "平台编码") + /** + * 平台编码 + */ private String platformCode; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 成本 */ - @Excel(name = "成本") + /** + * 成本 + */ private BigDecimal cost; - /** 使用成本 */ - @Excel(name = "使用成本") + /** + * 使用成本 + */ private BigDecimal useCost; diff --git a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java similarity index 61% rename from ff-game/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java rename to ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java index e6d3b6f..f01b70a 100644 --- a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentInviteRegister.java @@ -1,17 +1,15 @@ package com.ff.agent.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 代理邀请注册对象 ff_tenant_agent_invite_register * @@ -22,50 +20,60 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgentInviteRegister extends BaseEntity -{ +public class TenantAgentInviteRegister extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 代理id */ - @Excel(name = "代理id") + /** + * 代理id + */ @JsonSerialize(using = ToStringSerializer.class) private Long agentId; - /** 邀请码 */ - @Excel(name = "邀请码") + /** + * 邀请码 + */ private String inviteCode; - /** 账号 */ - @Excel(name = "账号") + /** + * 账号 + */ private String account; - /** 密码 */ - @Excel(name = "密码") + /** + * 密码 + */ private String password; - /** 缴费金额 */ - @Excel(name = "缴费金额") + /** + * 缴费金额 + */ private BigDecimal balance; - /** 注册时间 */ - @Excel(name = "注册时间") + /** + * 注册时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long registerTime; - /** 注册IP */ - @Excel(name = "注册IP") + /** + * 注册IP + */ private String registerIp; - /** 注册ip的城市 */ - @Excel(name = "注册ip的城市") + /** + * 注册ip的城市 + */ private String registerIpCity; - /** 状态 1 待激活 2已激活 InviterRegisterStatus 枚举*/ - @Excel(name = "状态 1 待激活 2已激活") + /** + * 状态 1 待激活 2已激活 InviterRegisterStatus 枚举 + */ private Integer status; /** diff --git a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java similarity index 67% rename from ff-game/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java rename to ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java index 23b73ce..56e1061 100644 --- a/ff-game/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/agent/domain/TenantAgentWithdrawal.java @@ -1,17 +1,15 @@ package com.ff.agent.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 代理申请提现审批管理对象 ff_tenant_agent_withdrawal * @@ -22,11 +20,12 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgentWithdrawal extends BaseEntity -{ +public class TenantAgentWithdrawal extends BaseEntity { private static final long serialVersionUID = 1L; - /** $column.columnComment */ + /** + * $column.columnComment + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; /** @@ -35,20 +34,24 @@ public class TenantAgentWithdrawal extends BaseEntity @JsonSerialize(using = ToStringSerializer.class) private Long agentId; - /** 佣金余额 */ - @Excel(name = "佣金余额") + /** + * 佣金余额 + */ private BigDecimal commissionBalance; - /** 币种协议 */ - @Excel(name = "币种协议") + /** + * 币种协议 + */ private String currencyAgreement; - /** 钱包地址 */ - @Excel(name = "钱包地址") + /** + * 钱包地址 + */ private String walletAddress; - /** 0 未提现 1 提现中 1 已提现 3 已拒绝 */ - @Excel(name = " 0 未提现 1 提现中 1 已提现 3 已拒绝") + /** + * 0 未提现 1 提现中 1 已提现 3 已拒绝 + */ private Integer approvalStatus; diff --git a/ff-base/src/main/java/com/ff/base/core/domain/BaseEntity.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/core/domain/BaseEntity.java similarity index 76% rename from ff-base/src/main/java/com/ff/base/core/domain/BaseEntity.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/core/domain/BaseEntity.java index f0e179c..a000b5a 100644 --- a/ff-base/src/main/java/com/ff/base/core/domain/BaseEntity.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/core/domain/BaseEntity.java @@ -5,7 +5,6 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -23,8 +22,7 @@ import java.util.Map; @SuperBuilder @AllArgsConstructor @NoArgsConstructor -public class BaseEntity implements Serializable -{ +public class BaseEntity implements Serializable { private static final long serialVersionUID = 1L; /** @@ -32,37 +30,48 @@ public class BaseEntity implements Serializable */ private Long id; - /** 搜索值 */ + /** + * 搜索值 + */ @JsonIgnore private String searchValue; - /** 创建者 */ + /** + * 创建者 + */ private String createBy; - /** 创建时间 */ + /** + * 创建时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long createTime; - /** 更新者 */ + /** + * 更新者 + */ private String updateBy; - /** 更新时间 */ + /** + * 更新时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long updateTime; - /** 备注 */ + /** + * 备注 + */ private String remark; - /** 请求参数 */ + /** + * 请求参数 + */ @JsonInclude(JsonInclude.Include.NON_EMPTY) private Map params; - - public Map getParams() - { - if (params == null) - { + public Map getParams() { + if (params == null) { params = new HashMap<>(); } return params; diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysConfig.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysConfig.java similarity index 51% rename from ff-base/src/main/java/com/ff/base/system/domain/SysConfig.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysConfig.java index 4f14ff3..91553c9 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysConfig.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysConfig.java @@ -2,8 +2,6 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; import com.ff.base.core.domain.BaseEntity; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -16,100 +14,95 @@ import javax.validation.constraints.Size; * * @author ff */ -public class SysConfig extends BaseEntity -{ +public class SysConfig extends BaseEntity { private static final long serialVersionUID = 1L; - /** 参数主键 */ - @Excel(name = "参数主键", cellType = ColumnType.NUMERIC) + /** + * 参数主键 + */ @JsonSerialize(using = ToStringSerializer.class) private Long configId; - /** 参数名称 */ - @Excel(name = "参数名称") + /** + * 参数名称 + */ private String configName; - /** 参数键名 */ - @Excel(name = "参数键名") + /** + * 参数键名 + */ private String configKey; - /** 参数键值 */ - @Excel(name = "参数键值") + /** + * 参数键值 + */ private String configValue; - /** 系统内置(Y是 N否) */ - @Excel(name = "系统内置", readConverterExp = "Y=是,N=否") + /** + * 系统内置(Y是 N否) + */ private String configType; + @JsonSerialize(using = ToStringSerializer.class) - public Long getConfigId() - { + public Long getConfigId() { return configId; } - public void setConfigId(Long configId) - { + public void setConfigId(Long configId) { this.configId = configId; } @NotBlank(message = "参数名称不能为空") @Size(min = 0, max = 100, message = "参数名称不能超过100个字符") - public String getConfigName() - { + public String getConfigName() { return configName; } - public void setConfigName(String configName) - { + public void setConfigName(String configName) { this.configName = configName; } @NotBlank(message = "参数键名长度不能为空") @Size(min = 0, max = 100, message = "参数键名长度不能超过100个字符") - public String getConfigKey() - { + public String getConfigKey() { return configKey; } - public void setConfigKey(String configKey) - { + public void setConfigKey(String configKey) { this.configKey = configKey; } @NotBlank(message = "参数键值不能为空") @Size(min = 0, max = 500, message = "参数键值长度不能超过500个字符") - public String getConfigValue() - { + public String getConfigValue() { return configValue; } - public void setConfigValue(String configValue) - { + public void setConfigValue(String configValue) { this.configValue = configValue; } - public String getConfigType() - { + public String getConfigType() { return configType; } - public void setConfigType(String configType) - { + public void setConfigType(String configType) { this.configType = configType; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("configId", getConfigId()) - .append("configName", getConfigName()) - .append("configKey", getConfigKey()) - .append("configValue", getConfigValue()) - .append("configType", getConfigType()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("configId", getConfigId()) + .append("configName", getConfigName()) + .append("configKey", getConfigKey()) + .append("configValue", getConfigValue()) + .append("configType", getConfigType()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); } } diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysDatasource.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDatasource.java similarity index 76% rename from ff-base/src/main/java/com/ff/base/system/domain/SysDatasource.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDatasource.java index 8eb1e6f..d55bb34 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysDatasource.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDatasource.java @@ -2,7 +2,6 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.Data; /** @@ -21,31 +20,24 @@ public class SysDatasource extends BaseEntity private Long id; /** 租户id */ - @Excel(name = "租户id") private String tenantId; /** 连接地址 */ - @Excel(name = "连接地址") private String url; /** 用户名 */ - @Excel(name = "用户名") private String username; /** 密码 */ - @Excel(name = "密码") private String password; /** 数据库驱动 */ - @Excel(name = "数据库驱动") private String driverClassName; /** 时区 */ - @Excel(name = "时区") private String timeZone; /** 状态(0 停用 1 启用) */ - @Excel(name = "状态", readConverterExp = "0=,停=用,1=,启=用") private String status; /** 时区名称 */ diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysDept.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDept.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/domain/SysDept.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDept.java diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysDictData.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDictData.java similarity index 52% rename from ff-base/src/main/java/com/ff/base/system/domain/SysDictData.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDictData.java index 24120b7..4a4a045 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysDictData.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDictData.java @@ -3,9 +3,6 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; -import com.ff.base.constant.UserConstants; import com.ff.base.core.domain.BaseEntity; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -18,53 +15,66 @@ import javax.validation.constraints.Size; * * @author ff */ -public class SysDictData extends BaseEntity -{ +public class SysDictData extends BaseEntity { private static final long serialVersionUID = 1L; - public interface DictDataSimpleView {}; - /** 字典编码 */ - @Excel(name = "字典编码", cellType = ColumnType.NUMERIC) + public interface DictDataSimpleView { + } + + ; + /** + * 字典编码 + */ @JsonView(DictDataSimpleView.class) @JsonSerialize(using = ToStringSerializer.class) private Long dictCode; - /** 字典排序 */ - @Excel(name = "字典排序", cellType = ColumnType.NUMERIC) + /** + * 字典排序 + */ @JsonView(DictDataSimpleView.class) @JsonSerialize(using = ToStringSerializer.class) private Long dictSort; - /** 字典标签 */ - @Excel(name = "字典标签") + /** + * 字典标签 + */ @JsonView(DictDataSimpleView.class) private String dictLabel; - /** 字典键值 */ - @Excel(name = "字典键值") + /** + * 字典键值 + */ @JsonView(DictDataSimpleView.class) private String dictValue; - /** 字典类型 */ - @Excel(name = "字典类型") + /** + * 字典类型 + */ @JsonView(DictDataSimpleView.class) private String dictType; - /** 样式属性(其他样式扩展) */ + /** + * 样式属性(其他样式扩展) + */ @JsonView(DictDataSimpleView.class) private String cssClass; - /** 表格字典样式 */ + /** + * 表格字典样式 + */ @JsonView(DictDataSimpleView.class) private String listClass; - /** 是否默认(Y是 N否) */ - @Excel(name = "是否默认", readConverterExp = "Y=是,N=否") + /** + * 是否默认(Y是 N否) + */ @JsonView(DictDataSimpleView.class) private String isDefault; - /** 状态(0正常 1停用) */ - @Excel(name = "状态", readConverterExp = "0=正常,1=停用") + /** + * 状态(0正常 1停用) + */ private String status; @Override @@ -76,128 +86,112 @@ public class SysDictData extends BaseEntity public void setRemark(String remark) { this.remark = remark; } + @JsonView(DictDataSimpleView.class) private String remark; + @JsonSerialize(using = ToStringSerializer.class) - public Long getDictCode() - { + public Long getDictCode() { return dictCode; } - public void setDictCode(Long dictCode) - { + public void setDictCode(Long dictCode) { this.dictCode = dictCode; } + @JsonSerialize(using = ToStringSerializer.class) - public Long getDictSort() - { + public Long getDictSort() { return dictSort; } - public void setDictSort(Long dictSort) - { + public void setDictSort(Long dictSort) { this.dictSort = dictSort; } @NotBlank(message = "字典标签不能为空") @Size(min = 0, max = 200, message = "字典标签长度不能超过200个字符") - public String getDictLabel() - { + public String getDictLabel() { return dictLabel; } - public void setDictLabel(String dictLabel) - { + public void setDictLabel(String dictLabel) { this.dictLabel = dictLabel; } @NotBlank(message = "字典键值不能为空") @Size(min = 0, max = 200, message = "字典键值长度不能超过200个字符") - public String getDictValue() - { + public String getDictValue() { return dictValue; } - public void setDictValue(String dictValue) - { + public void setDictValue(String dictValue) { this.dictValue = dictValue; } @NotBlank(message = "字典类型不能为空") @Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符") - public String getDictType() - { + public String getDictType() { return dictType; } - public void setDictType(String dictType) - { + public void setDictType(String dictType) { this.dictType = dictType; } @Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符") - public String getCssClass() - { + public String getCssClass() { return cssClass; } - public void setCssClass(String cssClass) - { + public void setCssClass(String cssClass) { this.cssClass = cssClass; } - public String getListClass() - { + public String getListClass() { return listClass; } - public void setListClass(String listClass) - { + public void setListClass(String listClass) { this.listClass = listClass; } - public boolean getDefault() - { - return UserConstants.YES.equals(this.isDefault); + public boolean getDefault() { + return "Y".equals(this.isDefault); } - public String getIsDefault() - { + public String getIsDefault() { return isDefault; } - public void setIsDefault(String isDefault) - { + public void setIsDefault(String isDefault) { this.isDefault = isDefault; } - public String getStatus() - { + public String getStatus() { return status; } - public void setStatus(String status) - { + public void setStatus(String status) { this.status = status; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("dictCode", getDictCode()) - .append("dictSort", getDictSort()) - .append("dictLabel", getDictLabel()) - .append("dictValue", getDictValue()) - .append("dictType", getDictType()) - .append("cssClass", getCssClass()) - .append("listClass", getListClass()) - .append("isDefault", getIsDefault()) - .append("status", getStatus()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("dictCode", getDictCode()) + .append("dictSort", getDictSort()) + .append("dictLabel", getDictLabel()) + .append("dictValue", getDictValue()) + .append("dictType", getDictType()) + .append("cssClass", getCssClass()) + .append("listClass", getListClass()) + .append("isDefault", getIsDefault()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); } } diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysDictType.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDictType.java similarity index 54% rename from ff-base/src/main/java/com/ff/base/system/domain/SysDictType.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDictType.java index 1763a52..f5d4a04 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysDictType.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysDictType.java @@ -2,8 +2,6 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; import com.ff.base.core.domain.BaseEntity; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -17,84 +15,80 @@ import javax.validation.constraints.Size; * * @author ff */ -public class SysDictType extends BaseEntity -{ +public class SysDictType extends BaseEntity { private static final long serialVersionUID = 1L; - /** 字典主键 */ - @Excel(name = "字典主键", cellType = ColumnType.NUMERIC) + /** + * 字典主键 + */ @JsonSerialize(using = ToStringSerializer.class) private Long dictId; - /** 字典名称 */ - @Excel(name = "字典名称") + /** + * 字典名称 + */ private String dictName; - /** 字典类型 */ - @Excel(name = "字典类型") + /** + * 字典类型 + */ private String dictType; - /** 状态(0正常 1停用) */ - @Excel(name = "状态", readConverterExp = "0=正常,1=停用") + /** + * 状态(0正常 1停用) + */ private String status; + @JsonSerialize(using = ToStringSerializer.class) - public Long getDictId() - { + public Long getDictId() { return dictId; } - public void setDictId(Long dictId) - { + public void setDictId(Long dictId) { this.dictId = dictId; } @NotBlank(message = "字典名称不能为空") @Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符") - public String getDictName() - { + public String getDictName() { return dictName; } - public void setDictName(String dictName) - { + public void setDictName(String dictName) { this.dictName = dictName; } @NotBlank(message = "字典类型不能为空") @Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符") @Pattern(regexp = "^[a-z][a-z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)") - public String getDictType() - { + public String getDictType() { return dictType; } - public void setDictType(String dictType) - { + public void setDictType(String dictType) { this.dictType = dictType; } - public String getStatus() - { + public String getStatus() { return status; } - public void setStatus(String status) - { + public void setStatus(String status) { this.status = status; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("dictId", getDictId()) - .append("dictName", getDictName()) - .append("dictType", getDictType()) - .append("status", getStatus()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("dictId", getDictId()) + .append("dictName", getDictName()) + .append("dictType", getDictType()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); } } diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysLogininfor.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysLogininfor.java new file mode 100644 index 0000000..b145987 --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysLogininfor.java @@ -0,0 +1,134 @@ +package com.ff.base.system.domain; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ff.base.core.domain.BaseEntity; + +/** + * 系统访问记录表 sys_logininfor + * + * @author ff + */ +public class SysLogininfor extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * ID + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long infoId; + + /** + * 用户账号 + */ + private String userName; + + /** + * 登录状态 0成功 1失败 + */ + private String status; + + /** + * 登录IP地址 + */ + private String ipaddr; + + /** + * 登录地点 + */ + private String loginLocation; + + /** + * 浏览器类型 + */ + private String browser; + + /** + * 操作系统 + */ + private String os; + + /** + * 提示消息 + */ + private String msg; + + /** + * 访问时间 + */ + + @JsonSerialize(using = ToStringSerializer.class) + private Long loginTime; + + public Long getInfoId() { + return infoId; + } + + public void setInfoId(Long infoId) { + this.infoId = infoId; + } + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getIpaddr() { + return ipaddr; + } + + public void setIpaddr(String ipaddr) { + this.ipaddr = ipaddr; + } + + public String getLoginLocation() { + return loginLocation; + } + + public void setLoginLocation(String loginLocation) { + this.loginLocation = loginLocation; + } + + public String getBrowser() { + return browser; + } + + public void setBrowser(String browser) { + this.browser = browser; + } + + public String getOs() { + return os; + } + + public void setOs(String os) { + this.os = os; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public Long getLoginTime() { + return loginTime; + } + + public void setLoginTime(Long loginTime) { + this.loginTime = loginTime; + } +} diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysMenu.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysMenu.java new file mode 100644 index 0000000..f09b645 --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysMenu.java @@ -0,0 +1,279 @@ +package com.ff.base.system.domain; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ff.base.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; +import java.util.ArrayList; +import java.util.List; + +/** + * 菜单权限表 sys_menu + * + * @author ff + */ +public class SysMenu extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 菜单ID + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long menuId; + + /** + * 菜单名称 + */ + private String menuName; + + /** + * 父菜单名称 + */ + private String parentName; + + /** + * 父菜单ID + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long parentId; + + /** + * 显示顺序 + */ + private Integer orderNum; + + /** + * 路由地址 + */ + private String path; + + /** + * 组件路径 + */ + private String component; + + /** + * 路由参数 + */ + private String query; + + /** + * 路由名称,默认和路由地址相同的驼峰格式(注意:因为vue3版本的router会删除名称相同路由,为避免名字的冲突,特殊情况可以自定义) + */ + private String routeName; + + /** + * 是否为外链(0是 1否) + */ + private String isFrame; + + /** + * 是否缓存(0缓存 1不缓存) + */ + private String isCache; + + /** + * 类型(M目录 C菜单 F按钮) + */ + private String menuType; + + /** + * 显示状态(0显示 1隐藏) + */ + private String visible; + + /** + * 菜单状态(0正常 1停用) + */ + private String status; + + /** + * 权限字符串 + */ + private String perms; + + /** + * 菜单图标 + */ + private String icon; + + /** + * 子菜单 + */ + private List children = new ArrayList(); + + @JsonSerialize(using = ToStringSerializer.class) + public Long getMenuId() { + return menuId; + } + + public void setMenuId(Long menuId) { + this.menuId = menuId; + } + + @NotBlank(message = "菜单名称不能为空") + @Size(min = 0, max = 50, message = "菜单名称长度不能超过50个字符") + public String getMenuName() { + return menuName; + } + + public void setMenuName(String menuName) { + this.menuName = menuName; + } + + public String getParentName() { + return parentName; + } + + public void setParentName(String parentName) { + this.parentName = parentName; + } + + public Long getParentId() { + return parentId; + } + + public void setParentId(Long parentId) { + this.parentId = parentId; + } + + @NotNull(message = "显示顺序不能为空") + public Integer getOrderNum() { + return orderNum; + } + + public void setOrderNum(Integer orderNum) { + this.orderNum = orderNum; + } + + @Size(min = 0, max = 200, message = "路由地址不能超过200个字符") + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + + @Size(min = 0, max = 200, message = "组件路径不能超过255个字符") + public String getComponent() { + return component; + } + + public void setComponent(String component) { + this.component = component; + } + + public String getQuery() { + return query; + } + + public void setQuery(String query) { + this.query = query; + } + + public String getRouteName() { + return routeName; + } + + public void setRouteName(String routeName) { + this.routeName = routeName; + } + + public String getIsFrame() { + return isFrame; + } + + public void setIsFrame(String isFrame) { + this.isFrame = isFrame; + } + + public String getIsCache() { + return isCache; + } + + public void setIsCache(String isCache) { + this.isCache = isCache; + } + + @NotBlank(message = "菜单类型不能为空") + public String getMenuType() { + return menuType; + } + + public void setMenuType(String menuType) { + this.menuType = menuType; + } + + public String getVisible() { + return visible; + } + + public void setVisible(String visible) { + this.visible = visible; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + @Size(min = 0, max = 100, message = "权限标识长度不能超过100个字符") + public String getPerms() { + return perms; + } + + public void setPerms(String perms) { + this.perms = perms; + } + + public String getIcon() { + return icon; + } + + public void setIcon(String icon) { + this.icon = icon; + } + + public List getChildren() { + return children; + } + + public void setChildren(List children) { + this.children = children; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("menuId", getMenuId()) + .append("menuName", getMenuName()) + .append("parentId", getParentId()) + .append("orderNum", getOrderNum()) + .append("path", getPath()) + .append("component", getComponent()) + .append("query", getQuery()) + .append("routeName", getRouteName()) + .append("isFrame", getIsFrame()) + .append("IsCache", getIsCache()) + .append("menuType", getMenuType()) + .append("visible", getVisible()) + .append("status ", getStatus()) + .append("perms", getPerms()) + .append("icon", getIcon()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysOperLog.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysOperLog.java new file mode 100644 index 0000000..25d3193 --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysOperLog.java @@ -0,0 +1,110 @@ +package com.ff.base.system.domain; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ff.base.core.domain.BaseEntity; +import lombok.Data; + +/** + * 操作日志记录表 oper_log + * + * @author ff + */ +@Data +public class SysOperLog extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 日志主键 + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long operId; + + /** + * 操作模块 + */ + private String title; + + /** + * 业务类型(0其它 1新增 2修改 3删除) + */ + private Integer businessType; + + /** + * 业务类型数组 + */ + private Integer[] businessTypes; + + /** + * 请求方法 + */ + private String method; + + /** + * 请求方式 + */ + private String requestMethod; + + /** + * 操作类别(0其它 1后台用户 2手机端用户) + */ + private Integer operatorType; + + /** + * 操作人员 + */ + private String operName; + + /** + * 部门名称 + */ + private String deptName; + + /** + * 请求url + */ + private String operUrl; + + /** + * 操作地址 + */ + private String operIp; + + /** + * 操作地点 + */ + private String operLocation; + + /** + * 请求参数 + */ + private String operParam; + + /** + * 返回参数 + */ + private String jsonResult; + + /** + * 操作状态(0正常 1异常) + */ + private Integer status; + + /** + * 错误消息 + */ + private String errorMsg; + + /** + * 操作时间 + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long operTime; + + /** + * 消耗时间 + */ + private Long costTime; + + +} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysPost.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysPost.java similarity index 50% rename from ff-base/src/main/java/com/ff/base/system/domain/SysPost.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysPost.java index ede0789..d19295b 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysPost.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysPost.java @@ -2,8 +2,6 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; import com.ff.base.core.domain.BaseEntity; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; @@ -17,112 +15,107 @@ import javax.validation.constraints.Size; * * @author ff */ -public class SysPost extends BaseEntity -{ +public class SysPost extends BaseEntity { private static final long serialVersionUID = 1L; - /** 岗位序号 */ - @Excel(name = "岗位序号", cellType = ColumnType.NUMERIC) + /** + * 岗位序号 + */ @JsonSerialize(using = ToStringSerializer.class) private Long postId; - /** 岗位编码 */ - @Excel(name = "岗位编码") + /** + * 岗位编码 + */ private String postCode; - /** 岗位名称 */ - @Excel(name = "岗位名称") + /** + * 岗位名称 + */ private String postName; - /** 岗位排序 */ - @Excel(name = "岗位排序") + /** + * 岗位排序 + */ private Integer postSort; - /** 状态(0正常 1停用) */ - @Excel(name = "状态", readConverterExp = "0=正常,1=停用") + /** + * 状态(0正常 1停用) + */ private String status; - /** 用户是否存在此岗位标识 默认不存在 */ + /** + * 用户是否存在此岗位标识 默认不存在 + */ private boolean flag = false; + @JsonSerialize(using = ToStringSerializer.class) - public Long getPostId() - { + public Long getPostId() { return postId; } - public void setPostId(Long postId) - { + public void setPostId(Long postId) { this.postId = postId; } @NotBlank(message = "岗位编码不能为空") @Size(min = 0, max = 64, message = "岗位编码长度不能超过64个字符") - public String getPostCode() - { + public String getPostCode() { return postCode; } - public void setPostCode(String postCode) - { + public void setPostCode(String postCode) { this.postCode = postCode; } @NotBlank(message = "岗位名称不能为空") @Size(min = 0, max = 50, message = "岗位名称长度不能超过50个字符") - public String getPostName() - { + public String getPostName() { return postName; } - public void setPostName(String postName) - { + public void setPostName(String postName) { this.postName = postName; } @NotNull(message = "显示顺序不能为空") - public Integer getPostSort() - { + public Integer getPostSort() { return postSort; } - public void setPostSort(Integer postSort) - { + public void setPostSort(Integer postSort) { this.postSort = postSort; } - public String getStatus() - { + public String getStatus() { return status; } - public void setStatus(String status) - { + public void setStatus(String status) { this.status = status; } - public boolean isFlag() - { + public boolean isFlag() { return flag; } - public void setFlag(boolean flag) - { + public void setFlag(boolean flag) { this.flag = flag; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("postId", getPostId()) - .append("postCode", getPostCode()) - .append("postName", getPostName()) - .append("postSort", getPostSort()) - .append("status", getStatus()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("postId", getPostId()) + .append("postCode", getPostCode()) + .append("postName", getPostName()) + .append("postSort", getPostSort()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); } } diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRole.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRole.java new file mode 100644 index 0000000..faa01f8 --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRole.java @@ -0,0 +1,233 @@ +package com.ff.base.system.domain; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ff.base.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; +import java.util.Set; + +/** + * 角色表 sys_role + * + * @author ff + */ +public class SysRole extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 角色ID + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long roleId; + + /** + * 角色名称 + */ + private String roleName; + + /** + * 角色权限 + */ + private String roleKey; + + /** + * 角色排序 + */ + private Integer roleSort; + + /** + * 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) + */ + private String dataScope; + + /** + * 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) + */ + private boolean menuCheckStrictly; + + /** + * 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 ) + */ + private boolean deptCheckStrictly; + + /** + * 角色状态(0正常 1停用) + */ + private String status; + + /** + * 删除标志(0代表存在 2代表删除) + */ + private String delFlag; + + /** + * 用户是否存在此角色标识 默认不存在 + */ + private boolean flag = false; + + /** + * 菜单组 + */ + private Long[] menuIds; + + /** + * 部门组(数据权限) + */ + private Long[] deptIds; + + /** + * 角色菜单权限 + */ + private Set permissions; + + public SysRole() { + + } + + public SysRole(Long roleId) { + this.roleId = roleId; + } + + @JsonSerialize(using = ToStringSerializer.class) + public Long getRoleId() { + return roleId; + } + + public void setRoleId(Long roleId) { + this.roleId = roleId; + } + + public boolean isAdmin() { + return isAdmin(this.roleId); + } + + public static boolean isAdmin(Long roleId) { + return roleId != null && 1L == roleId; + } + + @NotBlank(message = "角色名称不能为空") + @Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符") + public String getRoleName() { + return roleName; + } + + public void setRoleName(String roleName) { + this.roleName = roleName; + } + + @NotBlank(message = "权限字符不能为空") + @Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符") + public String getRoleKey() { + return roleKey; + } + + public void setRoleKey(String roleKey) { + this.roleKey = roleKey; + } + + @NotNull(message = "显示顺序不能为空") + public Integer getRoleSort() { + return roleSort; + } + + public void setRoleSort(Integer roleSort) { + this.roleSort = roleSort; + } + + public String getDataScope() { + return dataScope; + } + + public void setDataScope(String dataScope) { + this.dataScope = dataScope; + } + + public boolean isMenuCheckStrictly() { + return menuCheckStrictly; + } + + public void setMenuCheckStrictly(boolean menuCheckStrictly) { + this.menuCheckStrictly = menuCheckStrictly; + } + + public boolean isDeptCheckStrictly() { + return deptCheckStrictly; + } + + public void setDeptCheckStrictly(boolean deptCheckStrictly) { + this.deptCheckStrictly = deptCheckStrictly; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public boolean isFlag() { + return flag; + } + + public void setFlag(boolean flag) { + this.flag = flag; + } + + public Long[] getMenuIds() { + return menuIds; + } + + public void setMenuIds(Long[] menuIds) { + this.menuIds = menuIds; + } + + public Long[] getDeptIds() { + return deptIds; + } + + public void setDeptIds(Long[] deptIds) { + this.deptIds = deptIds; + } + + public Set getPermissions() { + return permissions; + } + + public void setPermissions(Set permissions) { + this.permissions = permissions; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("roleId", getRoleId()) + .append("roleName", getRoleName()) + .append("roleKey", getRoleKey()) + .append("roleSort", getRoleSort()) + .append("dataScope", getDataScope()) + .append("menuCheckStrictly", isMenuCheckStrictly()) + .append("deptCheckStrictly", isDeptCheckStrictly()) + .append("status", getStatus()) + .append("delFlag", getDelFlag()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysRoleDept.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRoleDept.java similarity index 64% rename from ff-base/src/main/java/com/ff/base/system/domain/SysRoleDept.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRoleDept.java index 3829123..e8025f5 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysRoleDept.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRoleDept.java @@ -10,41 +10,42 @@ import org.apache.commons.lang3.builder.ToStringStyle; * * @author ff */ -public class SysRoleDept -{ - /** 角色ID */ +public class SysRoleDept { + /** + * 角色ID + */ @JsonSerialize(using = ToStringSerializer.class) private Long roleId; - /** 部门ID */ + /** + * 部门ID + */ @JsonSerialize(using = ToStringSerializer.class) private Long deptId; + @JsonSerialize(using = ToStringSerializer.class) - public Long getRoleId() - { + public Long getRoleId() { return roleId; } - public void setRoleId(Long roleId) - { + public void setRoleId(Long roleId) { this.roleId = roleId; } + @JsonSerialize(using = ToStringSerializer.class) - public Long getDeptId() - { + public Long getDeptId() { return deptId; } - public void setDeptId(Long deptId) - { + public void setDeptId(Long deptId) { this.deptId = deptId; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("roleId", getRoleId()) - .append("deptId", getDeptId()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("roleId", getRoleId()) + .append("deptId", getDeptId()) + .toString(); } } diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysRoleMenu.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRoleMenu.java similarity index 64% rename from ff-base/src/main/java/com/ff/base/system/domain/SysRoleMenu.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRoleMenu.java index 701199d..8741de2 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysRoleMenu.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysRoleMenu.java @@ -10,41 +10,42 @@ import org.apache.commons.lang3.builder.ToStringStyle; * * @author ff */ -public class SysRoleMenu -{ - /** 角色ID */ +public class SysRoleMenu { + /** + * 角色ID + */ @JsonSerialize(using = ToStringSerializer.class) private Long roleId; - /** 菜单ID */ + /** + * 菜单ID + */ @JsonSerialize(using = ToStringSerializer.class) private Long menuId; + @JsonSerialize(using = ToStringSerializer.class) - public Long getRoleId() - { + public Long getRoleId() { return roleId; } - public void setRoleId(Long roleId) - { + public void setRoleId(Long roleId) { this.roleId = roleId; } + @JsonSerialize(using = ToStringSerializer.class) - public Long getMenuId() - { + public Long getMenuId() { return menuId; } - public void setMenuId(Long menuId) - { + public void setMenuId(Long menuId) { this.menuId = menuId; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("roleId", getRoleId()) - .append("menuId", getMenuId()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("roleId", getRoleId()) + .append("menuId", getMenuId()) + .toString(); } } diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysUser.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUser.java similarity index 68% rename from ff-base/src/main/java/com/ff/base/system/domain/SysUser.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUser.java index 2bde598..fdede26 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysUser.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUser.java @@ -2,15 +2,8 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; -import com.ff.base.annotation.Excel.Type; -import com.ff.base.annotation.Excels; import com.ff.base.core.domain.BaseEntity; -import com.ff.base.xss.Xss; import lombok.Data; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import javax.validation.constraints.Email; import javax.validation.constraints.NotBlank; @@ -30,21 +23,17 @@ public class SysUser extends BaseEntity { * 用户ID */ @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "用户序号", type = Type.EXPORT, cellType = ColumnType.NUMERIC, prompt = "用户编号") private Long userId; /** * 部门ID */ - @Excel(name = "部门编号", type = Type.IMPORT) @JsonSerialize(using = ToStringSerializer.class) private Long deptId; /** * 用户账号 */ - @Excel(name = "登录名称") - @Xss(message = "用户账号不能包含脚本字符") @NotBlank(message = "用户账号不能为空") @Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符") private String userName; @@ -52,15 +41,12 @@ public class SysUser extends BaseEntity { /** * 用户昵称 */ - @Excel(name = "用户名称") - @Xss(message = "用户昵称不能包含脚本字符") @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符") private String nickName; /** * 用户邮箱 */ - @Excel(name = "用户邮箱") @Email(message = "邮箱格式不正确") @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符") private String email; @@ -68,14 +54,12 @@ public class SysUser extends BaseEntity { /** * 手机号码 */ - @Excel(name = "手机号码", cellType = ColumnType.TEXT) @Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符") private String phonenumber; /** * 用户性别 */ - @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") private String sex; /** @@ -91,7 +75,6 @@ public class SysUser extends BaseEntity { /** * 帐号状态(0正常 1停用) */ - @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用") private String status; /** @@ -102,23 +85,17 @@ public class SysUser extends BaseEntity { /** * 最后登录IP */ - @Excel(name = "最后登录IP", type = Type.EXPORT) private String loginIp; /** * 最后登录时间 */ - @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT) @JsonSerialize(using = ToStringSerializer.class) private Long loginDate; /** * 部门对象 */ - @Excels({ - @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT), - @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT) - }) private SysDept dept; /** @@ -148,18 +125,12 @@ public class SysUser extends BaseEntity { private Integer loginType; - - /** * 真实姓名 */ private String realName; - - - - public SysUser() { } diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserOnline.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserOnline.java new file mode 100644 index 0000000..216f539 --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserOnline.java @@ -0,0 +1,112 @@ +package com.ff.base.system.domain; + +/** + * 当前在线会话 + * + * @author ff + */ +public class SysUserOnline { + /** + * 会话编号 + */ + private String tokenId; + + /** + * 部门名称 + */ + private String deptName; + + /** + * 用户名称 + */ + private String userName; + + /** + * 登录IP地址 + */ + private String ipaddr; + + /** + * 登录地址 + */ + private String loginLocation; + + /** + * 浏览器类型 + */ + private String browser; + + /** + * 操作系统 + */ + private String os; + + /** + * 登录时间 + */ + private Long loginTime; + + public String getTokenId() { + return tokenId; + } + + public void setTokenId(String tokenId) { + this.tokenId = tokenId; + } + + public String getDeptName() { + return deptName; + } + + public void setDeptName(String deptName) { + this.deptName = deptName; + } + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public String getIpaddr() { + return ipaddr; + } + + public void setIpaddr(String ipaddr) { + this.ipaddr = ipaddr; + } + + public String getLoginLocation() { + return loginLocation; + } + + public void setLoginLocation(String loginLocation) { + this.loginLocation = loginLocation; + } + + public String getBrowser() { + return browser; + } + + public void setBrowser(String browser) { + this.browser = browser; + } + + public String getOs() { + return os; + } + + public void setOs(String os) { + this.os = os; + } + + public Long getLoginTime() { + return loginTime; + } + + public void setLoginTime(Long loginTime) { + this.loginTime = loginTime; + } +} diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysUserPost.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserPost.java similarity index 51% rename from ff-base/src/main/java/com/ff/base/system/domain/SysUserPost.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserPost.java index 0cf5688..144c67d 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysUserPost.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserPost.java @@ -8,39 +8,38 @@ import org.apache.commons.lang3.builder.ToStringStyle; * * @author ff */ -public class SysUserPost -{ - /** 用户ID */ +public class SysUserPost { + /** + * 用户ID + */ private Long userId; - /** 岗位ID */ + /** + * 岗位ID + */ private Long postId; - public Long getUserId() - { + public Long getUserId() { return userId; } - public void setUserId(Long userId) - { + public void setUserId(Long userId) { this.userId = userId; } - public Long getPostId() - { + public Long getPostId() { return postId; } - public void setPostId(Long postId) - { + public void setPostId(Long postId) { this.postId = postId; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("userId", getUserId()) - .append("postId", getPostId()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("userId", getUserId()) + .append("postId", getPostId()) + .toString(); } } diff --git a/ff-base/src/main/java/com/ff/base/system/domain/SysUserRole.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserRole.java similarity index 51% rename from ff-base/src/main/java/com/ff/base/system/domain/SysUserRole.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserRole.java index 5563642..114b29a 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/SysUserRole.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/SysUserRole.java @@ -8,39 +8,38 @@ import org.apache.commons.lang3.builder.ToStringStyle; * * @author ff */ -public class SysUserRole -{ - /** 用户ID */ +public class SysUserRole { + /** + * 用户ID + */ private Long userId; - /** 角色ID */ + /** + * 角色ID + */ private Long roleId; - public Long getUserId() - { + public Long getUserId() { return userId; } - public void setUserId(Long userId) - { + public void setUserId(Long userId) { this.userId = userId; } - public Long getRoleId() - { + public Long getRoleId() { return roleId; } - public void setRoleId(Long roleId) - { + public void setRoleId(Long roleId) { this.roleId = roleId; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("userId", getUserId()) - .append("roleId", getRoleId()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("userId", getUserId()) + .append("roleId", getRoleId()) + .toString(); } } diff --git a/ff-base/src/main/java/com/ff/base/system/domain/TenantAgent.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantAgent.java similarity index 64% rename from ff-base/src/main/java/com/ff/base/system/domain/TenantAgent.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantAgent.java index 84d42bb..1c62c3d 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/TenantAgent.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantAgent.java @@ -2,10 +2,8 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -20,50 +18,58 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgent extends BaseEntity -{ +public class TenantAgent extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 账号 */ - @Excel(name = "账号") + /** + * 账号 + */ private String account; - /** 密码 */ - @Excel(name = "密码") + /** + * 密码 + */ private String password; - /** 注册时间 */ - @Excel(name = "注册时间") + /** + * 注册时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long registerTime; - /** 注册IP */ - @Excel(name = "注册IP") + /** + * 注册IP + */ private String registerIp; - /** 注册ip的城市 */ - @Excel(name = "注册ip的城市") + /** + * 注册ip的城市 + */ private String registerIpCity; - /** 最后登录ip */ - @Excel(name = "最后登录ip") + /** + * 最后登录ip + */ private String loginIp; - /** 最后登录时间 */ - @Excel(name = "最后登录时间") + /** + * 最后登录时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long loginData; - /** 租户状态 1正常 0停用 */ - @Excel(name = "租户状态 1正常 0停用") + /** + * 租户状态 1正常 0停用 + */ private Boolean tenantStatus; - /** * 货币协议 */ diff --git a/ff-base/src/main/java/com/ff/base/system/domain/TenantPlatform.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantPlatform.java similarity index 60% rename from ff-base/src/main/java/com/ff/base/system/domain/TenantPlatform.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantPlatform.java index fa77865..5ecedeb 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/TenantPlatform.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantPlatform.java @@ -1,17 +1,15 @@ package com.ff.base.system.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 租户成本管理对象 ff_tenant_platform * @@ -22,32 +20,38 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantPlatform extends BaseEntity -{ +public class TenantPlatform extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ private Long id; - /** 租户id */ - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "租户id", width = 30, dateFormat = "yyyy-MM-dd") + /** + * 租户id + */ + @JsonSerialize(using = ToStringSerializer.class) private Long tenantId; - /** 平台编码 */ - @Excel(name = "平台编码") + /** + * 平台编码 + */ private String platformCode; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 成本 */ - @Excel(name = "成本") + /** + * 成本 + */ private BigDecimal cost; - /** 使用成本 */ - @Excel(name = "使用成本") + /** + * 使用成本 + */ private BigDecimal useCost; diff --git a/ff-base/src/main/java/com/ff/base/system/domain/TenantSecretKey.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantSecretKey.java similarity index 54% rename from ff-base/src/main/java/com/ff/base/system/domain/TenantSecretKey.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantSecretKey.java index 5b6dca2..5cedab9 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/TenantSecretKey.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantSecretKey.java @@ -1,18 +1,16 @@ package com.ff.base.system.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 用户租户密钥对象 ff_tenant_secret_key * @@ -23,76 +21,92 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantSecretKey extends BaseEntity -{ +public class TenantSecretKey extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 租户key */ - @Excel(name = "租户key") + /** + * 租户key + */ private String tenantKey; - /** 密码 */ - @Excel(name = "密码") + /** + * 密码 + */ @JsonIgnore private String password; - /** 注册时间 */ + /** + * 注册时间 + */ @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "注册时间") private Long registerTime; - /** 注册ip */ - @Excel(name = "注册ip") + /** + * 注册ip + */ private String registerIp; - /** 注册ip的城市 */ - @Excel(name = "注册ip的城市") + /** + * 注册ip的城市 + */ private String registerIpCity; - /** 最后登录ip */ - @Excel(name = "最后登录ip") + /** + * 最后登录ip + */ private String loginIp; - /** 最后登录时间 */ + /** + * 最后登录时间 + */ @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "最后登录时间") private Long loginData; - /** 上级代理id */ + /** + * 上级代理id + */ @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "上级代理id") private Long agentId; - /** 商户后缀 */ - @Excel(name = "商户后缀") + /** + * 商户后缀 + */ private String tenantSn; - /** 租户密钥 */ - @Excel(name = "租户密钥") + /** + * 租户密钥 + */ private String tenantSecret; - /** 租户状态 1正常 0停用 */ - @Excel(name = "租户状态 1正常 0停用") + /** + * 租户状态 1正常 0停用 + */ private Boolean tenantStatus; - /** 额度类型 TenantQuotaType 枚举 */ - @Excel(name = "额度类型 TenantQuotaType 枚举") + /** + * 额度类型 TenantQuotaType 枚举 + */ private Integer quotaType; - /** 买分比例 */ - @Excel(name = "买分比例") + /** + * 买分比例 + */ private BigDecimal scoreRatio; - /** 租户类型 TenantType 枚举 */ - @Excel(name = "租户类型 TenantType 枚举") + /** + * 租户类型 TenantType 枚举 + */ private Integer tenantType; - /** 透支比例 */ - @Excel(name = "透支比例") + /** + * 透支比例 + */ private BigDecimal depositRatio; diff --git a/ff-base/src/main/java/com/ff/base/system/domain/TenantWhite.java b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantWhite.java similarity index 64% rename from ff-base/src/main/java/com/ff/base/system/domain/TenantWhite.java rename to ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantWhite.java index ba394ef..24caffb 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/TenantWhite.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/base/system/domain/TenantWhite.java @@ -2,10 +2,8 @@ package com.ff.base.system.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -20,20 +18,23 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantWhite extends BaseEntity -{ +public class TenantWhite extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ private Long id; - /** 租户id */ - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "租户id", width = 30, dateFormat = "yyyy-MM-dd") + /** + * 租户id + */ + @JsonSerialize(using = ToStringSerializer.class) private Long tenantId; - /** 白名单ip地址 */ - @Excel(name = "白名单ip地址") + /** + * 白名单ip地址 + */ private String whiteIp; diff --git a/ff-game/src/main/java/com/ff/common/domain/Currency.java b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/Currency.java similarity index 53% rename from ff-game/src/main/java/com/ff/common/domain/Currency.java rename to ff-bean/ff-mysql/src/main/java/com/ff/common/domain/Currency.java index a763b79..dad7638 100644 --- a/ff-game/src/main/java/com/ff/common/domain/Currency.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/Currency.java @@ -1,12 +1,12 @@ package com.ff.common.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.Data; + +import java.math.BigDecimal; + /** * 币种对象 ff_currency * @@ -14,44 +14,53 @@ import lombok.Data; * @date 2025-02-10 */ @Data -public class Currency extends BaseEntity -{ +public class Currency extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 币种状态(0正常 1停用) */ - @Excel(name = "币种状态", readConverterExp = "0=正常,1=停用") + /** + * 币种状态(0正常 1停用) + */ private String status; - /** 币种国家 */ - @Excel(name = "币种国家") + /** + * 币种国家 + */ private String country; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 币种符号 */ - @Excel(name = "币种符号") + /** + * 币种符号 + */ private String currencySign; - /** 汇率 */ - @Excel(name = "汇率") + /** + * 汇率 + */ private BigDecimal gameRate; - /** 币种展示内容 */ - @Excel(name = "币种展示内容") + /** + * 币种展示内容 + */ private String currencyDisplay; - /** 币种名称 */ - @Excel(name = "币种名称") + /** + * 币种名称 + */ private String currencyName; - /** 币种全称 */ - @Excel(name = "币种全称") + /** + * 币种全称 + */ private String fullName; diff --git a/ff-game/src/main/java/com/ff/common/domain/Lang.java b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/Lang.java similarity index 61% rename from ff-game/src/main/java/com/ff/common/domain/Lang.java rename to ff-bean/ff-mysql/src/main/java/com/ff/common/domain/Lang.java index ca5fa39..4cd99b6 100644 --- a/ff-game/src/main/java/com/ff/common/domain/Lang.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/Lang.java @@ -2,9 +2,9 @@ package com.ff.common.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.Data; + /** * 系统语种管理 对象 ff_lang * @@ -12,28 +12,33 @@ import lombok.Data; * @date 2025-02-10 */ @Data -public class Lang extends BaseEntity -{ +public class Lang extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 语言名称 */ - @Excel(name = "语言名称") + /** + * 语言名称 + */ private String name; - /** 国家代码 */ - @Excel(name = "国家代码") + /** + * 国家代码 + */ private String country; - /** 语种 */ - @Excel(name = "语种") + /** + * 语种 + */ private String langCode; - /** 语种开关 0 关闭 1 开启 */ - @Excel(name = "语种开关 0 关闭 1 开启") + /** + * 语种开关 0 关闭 1 开启 + */ private Boolean langStatus; diff --git a/ff-game/src/main/java/com/ff/common/domain/TenantAgentPlatform.java b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantAgentPlatform.java similarity index 63% rename from ff-game/src/main/java/com/ff/common/domain/TenantAgentPlatform.java rename to ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantAgentPlatform.java index 29b7757..56a71bd 100644 --- a/ff-game/src/main/java/com/ff/common/domain/TenantAgentPlatform.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantAgentPlatform.java @@ -1,14 +1,13 @@ package com.ff.common.domain; -import java.math.BigDecimal; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 平台利润成本管理对象 ff_tenant_agent_platform * @@ -19,27 +18,32 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantAgentPlatform extends BaseEntity -{ +public class TenantAgentPlatform extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ private Long id; - /** 平台编码 */ - @Excel(name = "平台编码") + /** + * 平台编码 + */ private String platformCode; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 成本 */ - @Excel(name = "成本") + /** + * 成本 + */ private BigDecimal cost; - /** 使用成本 */ - @Excel(name = "使用成本") + /** + * 使用成本 + */ private BigDecimal useCost; diff --git a/ff-game/src/main/java/com/ff/common/domain/TenantGameQuota.java b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantGameQuota.java similarity index 60% rename from ff-game/src/main/java/com/ff/common/domain/TenantGameQuota.java rename to ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantGameQuota.java index 83033f4..2e99fc0 100644 --- a/ff-game/src/main/java/com/ff/common/domain/TenantGameQuota.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantGameQuota.java @@ -1,18 +1,15 @@ package com.ff.common.domain; -import java.math.BigDecimal; - - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 租户游戏配额对象 ff_tenant_game_quota * @@ -23,28 +20,33 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantGameQuota extends BaseEntity -{ +public class TenantGameQuota extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 租户key */ - @Excel(name = "租户key") + /** + * 租户key + */ private String tenantKey; - /** 游戏额度 */ - @Excel(name = "游戏额度") + /** + * 游戏额度 + */ private BigDecimal balance; - /** 额度类型 TenantQuotaType 枚举或者平台_币种或者平台_币种_FALSE 假额度 */ - @Excel(name = "额度类型 TenantQuotaType 枚举或者平台_币种或者平台_币种_FALSE 假额度") + /** + * 额度类型 TenantQuotaType 枚举或者平台_币种或者平台_币种_FALSE 假额度 + */ private String quotaType; - /** 版本号 */ - @Excel(name = "版本号") + /** + * 版本号 + */ private Integer version; diff --git a/ff-game/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java similarity index 55% rename from ff-game/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java rename to ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java index 899fa2a..5eadf7c 100644 --- a/ff-game/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantGameQuotaFlow.java @@ -1,17 +1,15 @@ package com.ff.common.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 租户游戏额度流水对象 ff_tenant_game_quota_flow * @@ -22,65 +20,77 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantGameQuotaFlow extends BaseEntity -{ +public class TenantGameQuotaFlow extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 租户key */ - @Excel(name = "租户key") + /** + * 租户key + */ private String tenantKey; - /** 额度类型 */ - @Excel(name = "额度类型") + /** + * 额度类型 + */ private String quotaType; - /** 用户账号id */ - @Excel(name = "用户账号id") + /** + * 用户账号id + */ @JsonSerialize(using = ToStringSerializer.class) private Long memberId; - /** 平台 */ - @Excel(name = "平台") + /** + * 平台 + */ private String platformCode; - /** 币种代码 */ - @Excel(name = "币种代码") + /** + * 币种代码 + */ private String currencyCode; - - /** 充值类型 false 扣除 true 充值 */ - @Excel(name = "充值类型 false 扣除 true 充值") + /** + * 充值类型 false 扣除 true 充值 + */ private Boolean isOut; - /** 操作类型 operationType枚举 */ - @Excel(name = "操作类型 operationType枚举") + /** + * 操作类型 operationType枚举 + */ private Integer operationType; - /** 游戏额度之前 */ - @Excel(name = "游戏额度之前") + /** + * 游戏额度之前 + */ private BigDecimal balanceBefore; - /** 游戏额度 */ - @Excel(name = "游戏额度") + /** + * 游戏额度 + */ private BigDecimal balance; - /** 兑换比例 */ - @Excel(name = "兑换比例") + /** + * 兑换比例 + */ private BigDecimal exchangeRatio; - /** 兑换金额 */ - @Excel(name = "兑换金额") + /** + * 兑换金额 + */ private BigDecimal exchangeMoney; - /** 游戏额度之后 */ - @Excel(name = "游戏额度之后") + /** + * 游戏额度之后 + */ private BigDecimal balanceAfter; /** diff --git a/ff-game/src/main/java/com/ff/common/domain/TenantQuotaExchange.java b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantQuotaExchange.java similarity index 61% rename from ff-game/src/main/java/com/ff/common/domain/TenantQuotaExchange.java rename to ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantQuotaExchange.java index 55347a1..28efd1f 100644 --- a/ff-game/src/main/java/com/ff/common/domain/TenantQuotaExchange.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/common/domain/TenantQuotaExchange.java @@ -1,17 +1,15 @@ package com.ff.common.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 币种汇率对象 ff_tenant_quota_exchange * @@ -22,36 +20,43 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class TenantQuotaExchange extends BaseEntity -{ +public class TenantQuotaExchange extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 兑换币种编码 */ - @Excel(name = "兑换币种编码") + /** + * 兑换币种编码 + */ private String exchangeCurrencyCode; - /** 市场兑换金额 */ - @Excel(name = "市场兑换金额") + /** + * 市场兑换金额 + */ private BigDecimal exchangeRate; - /** 汇率差 1百分比 2 固定值 */ - @Excel(name = "汇率差 1百分比 2 固定值") + /** + * 汇率差 1百分比 2 固定值 + */ private Integer differenceType; - /** 汇率差值 */ - @Excel(name = "汇率差值") + /** + * 汇率差值 + */ private BigDecimal differenceValue; - /** 实际兑换金额 */ - @Excel(name = "实际兑换金额") + /** + * 实际兑换金额 + */ private BigDecimal actualBalance; diff --git a/ff-game/src/main/java/com/ff/game/domain/CurrencyInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/CurrencyInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/CurrencyInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/CurrencyInfo.java diff --git a/ff-game/src/main/java/com/ff/game/domain/ExtInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/ExtInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/ExtInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/ExtInfo.java diff --git a/ff-game/src/main/java/com/ff/game/domain/Game.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/Game.java similarity index 81% rename from ff-game/src/main/java/com/ff/game/domain/Game.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/Game.java index 5b65e5b..bad00da 100644 --- a/ff-game/src/main/java/com/ff/game/domain/Game.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/Game.java @@ -2,7 +2,6 @@ package com.ff.game.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; @@ -33,20 +32,17 @@ public class Game extends BaseEntity { /** * 排序 */ - @Excel(name = "排序") private Integer sortNo; /** * 游戏平台id */ - @Excel(name = "游戏平台id") @JsonSerialize(using = ToStringSerializer.class) private Long platformId; /** * 游戏第三方id */ - @Excel(name = "游戏第三方id") private String gameCode; /** @@ -57,31 +53,26 @@ public class Game extends BaseEntity { /** * 第三方来源分类 */ - @Excel(name = "第三方来源分类") private String gameSourceType; /** * 游戏名称 */ - @Excel(name = "游戏名称") private String gameName; /** * 是否支持免费游戏 1 支持 0 不支持 */ - @Excel(name = "是否支持免费游戏 1 支持 0 不支持") private Boolean freespin; /** * 是否支持试玩 0关闭 1开启 */ - @Excel(name = "是否支持试玩 0关闭 1开启") private Boolean demoStatus; /** * 维护开关 维护状态 */ - @Excel(name = "维护开关 ") private Boolean stopStatus; /** @@ -102,5 +93,5 @@ public class Game extends BaseEntity { /** * 游戏id */ - private String gameId; + private String gameId; } diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameBettingDetails.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameBettingDetails.java new file mode 100644 index 0000000..4453290 --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameBettingDetails.java @@ -0,0 +1,183 @@ +package com.ff.game.domain; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ff.base.core.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.math.BigDecimal; + +/** + * 会员投注细目对象 ff_game_betting_details + * + * @author shi + * @date 2025-02-10 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class GameBettingDetails extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + + + /** + * 租户key + */ + private String tenantKey; + + + /** + * 币种编码 + */ + private String currencyCode; + + /** + * 会员id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long memberId; + + /** + * 游戏id + */ + private String gameCode; + + /** + * 游戏id + */ + @JsonSerialize(using = ToStringSerializer.class) + private String gameId; + + /** + * 游戏类型 ff_game_type 字典 + */ + private Integer gameType; + + /** + * 游戏平台 + */ + private String platformCode; + + /** + * 游戏名称 + */ + private String gameName; + + /** + * 注单状态 1: 赢 2: 输 3: 平局 4 未知 + */ + private Integer gameStatus; + + /** + * 注单类型 + * 1 一般下注 + * 9 舞龙争霸和梅杜莎的 + * 11 道具卡 + * 12 游戏内购 + * 17 满额必开 (下注) + * 18 满额必开 (开奖) + * 19 免费游戏 + * 28 旋转奖金 + * DG + * (1:注单,2:红包小费) + * AE + * 正常状况: + * 预设:0 + * 结果更改过状况: + * Resettle / Unsettle / Voidsettle / Unvoidsettle: 1 + * Voidbet: -1 + */ + private Integer gameStatusType; + + /** + * 游戏币种类型 + */ + private String gameCurrencyCode; + + /** + * 游戏账号 + */ + private String account; + + + /** + * 局号 + */ + private String round; + + /** + * 桌号 + */ + private String table; + + /** + * 座号 + */ + private String seat; + + /** + * 投注内容,部分游戏字段内容较长,建议数据库字段类型为 text + */ + private String betContent; + + /** + * 游戏注单唯一值 + */ + private String wagersId; + + /** + * 投注时间 (Unix 时间戳) + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long wagersTime; + + /** + * 投注金额 + */ + private BigDecimal betAmount; + + /** + * 派彩时间 (Unix 时间戳) + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long payoffTime; + + /** + * 派彩金额 + */ + private BigDecimal payoffAmount; + + + /** + * 对帐时间 (Unix 时间戳) + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long settlementTime; + + /** + * 有效投注金额 ※注 1 + */ + private BigDecimal turnover; + + /** + * 订单id + */ + private String orderNo; + + /** + * 结算状态 1 未结算 2已结算 3 已撤单 4 已取消 + */ + private Integer settlementStatus; + + +} diff --git a/ff-game/src/main/java/com/ff/game/domain/GameExchangeMoney.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameExchangeMoney.java similarity index 52% rename from ff-game/src/main/java/com/ff/game/domain/GameExchangeMoney.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameExchangeMoney.java index 336dd12..62a074c 100644 --- a/ff-game/src/main/java/com/ff/game/domain/GameExchangeMoney.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameExchangeMoney.java @@ -1,17 +1,15 @@ package com.ff.game.domain; -import java.math.BigDecimal; - import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.math.BigDecimal; + /** * 会员金额转移记录对象 ff_game_exchange_money * @@ -22,24 +20,28 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class GameExchangeMoney extends BaseEntity -{ +public class GameExchangeMoney extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 租户key */ - @Excel(name = "租户key") + /** + * 租户key + */ private String tenantKey; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 第三方交易id */ - @Excel(name = "第三方交易id") + /** + * 第三方交易id + */ private String transactionId; /** @@ -47,47 +49,56 @@ public class GameExchangeMoney extends BaseEntity */ private String orderId; - /** 会员id */ - @Excel(name = "会员id") + /** + * 会员id + */ @JsonSerialize(using = ToStringSerializer.class) private Long memberId; - /** 游戏平台 */ - @Excel(name = "游戏平台 ") + /** + * 游戏平台 + */ private String platformCode; - /** 操作金额 */ - @Excel(name = "操作金额") + /** + * 操作金额 + */ private BigDecimal balance; - /** 租户操作额度 */ - @Excel(name = "租户操作额度") + /** + * 租户操作额度 + */ private BigDecimal quota; - /** 转账前金额(游戏币) */ - @Excel(name = " 转账前金额(游戏币)") + /** + * 转账前金额(游戏币) + */ private BigDecimal coinBefore; - /** 转账后金额(游戏币) */ - @Excel(name = "转账后金额(游戏币)") + /** + * 转账后金额(游戏币) + */ private BigDecimal coinAfter; - /** 转账前金额(指定货币) */ - @Excel(name = "转账前金额(指定货币)") + /** + * 转账前金额(指定货币) + */ private BigDecimal currencyBefore; - /** 转账后金额(指定货币) */ - @Excel(name = "转账后金额(指定货币)") + /** + * 转账后金额(指定货币) + */ private BigDecimal currencyAfter; - - /** 转出类型 1游戏商转入到用户全部转出 2 用户转移到游戏商 3 游戏商转移额度到平台商 */ - @Excel(name = "转出类型 1游戏商转入到用户全部转出 2 用户转移到游戏商 3 游戏商转移额度到平台商") + /** + * 转出类型 1游戏商转入到用户全部转出 2 用户转移到游戏商 3 游戏商转移额度到平台商 + */ private Integer exchangeType; - /** 状态,0:进行中、1:成功、2:失败 */ - @Excel(name = "状态 1 成功 2失败") + /** + * 状态,0:进行中、1:成功、2:失败 + */ private Integer status; /** diff --git a/ff-game/src/main/java/com/ff/game/domain/GameFreeRecord.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameFreeRecord.java similarity index 50% rename from ff-game/src/main/java/com/ff/game/domain/GameFreeRecord.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameFreeRecord.java index b749f64..5a5ee78 100644 --- a/ff-game/src/main/java/com/ff/game/domain/GameFreeRecord.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/GameFreeRecord.java @@ -2,10 +2,8 @@ package com.ff.game.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -20,73 +18,88 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @SuperBuilder @NoArgsConstructor -public class GameFreeRecord extends BaseEntity -{ +public class GameFreeRecord extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; - /** 平台代码 */ - @Excel(name = "平台代码") + /** + * 平台代码 + */ private String platformCode; - /** 免费局数序号(唯一标识符) */ - @Excel(name = "免费局数序号", readConverterExp = "唯=一标识符") + /** + * 免费局数序号(唯一标识符) + */ private String referenceId; - /** 会员id */ - @Excel(name = "会员id") + /** + * 会员id + */ @JsonSerialize(using = ToStringSerializer.class) private Long memberId; - /** 用户账号 */ - @Excel(name = "用户账号") + /** + * 用户账号 + */ private String memberAccount; - /** 游戏id */ - @Excel(name = "游戏id ") + /** + * 游戏id + */ @JsonSerialize(using = ToStringSerializer.class) private Long gameId; - /** 免费游戏局数可使用的开始时间 */ - @Excel(name = "免费游戏局数可使用的开始时间") + /** + * 免费游戏局数可使用的开始时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long sendTime; - /** 免费局数过期时间 */ - @Excel(name = "免费局数过期时间") + /** + * 免费局数过期时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long expiredTime; - /** 免费局数记录更新时间 */ - @Excel(name = "免费局数记录更新时间") + /** + * 免费局数记录更新时间 + */ @JsonSerialize(using = ToStringSerializer.class) private Long freeUpdateTime; - /** 免费局数赠送的游戏名称 */ - @Excel(name = "免费局数赠送的游戏名称") + /** + * 免费局数赠送的游戏名称 + */ private String sendGame; - /** 免费局数赠送的数量 */ - @Excel(name = "免费局数赠送的数量") + /** + * 免费局数赠送的数量 + */ private Integer sendAmount; - /** 已使用的免费局数数量 */ - @Excel(name = "已使用的免费局数数量") + /** + * 已使用的免费局数数量 + */ private Integer usedAmount; - /** 未使用的免费局数数量 */ - @Excel(name = "未使用的免费局数数量") + /** + * 未使用的免费局数数量 + */ private Integer unusedAmount; - /** 免费状态 1正常 0 取消 */ - @Excel(name = "免费状态 1正常 0 取消 ") + /** + * 免费状态 1正常 0 取消 + */ private Integer freeStatus; diff --git a/ff-game/src/main/java/com/ff/game/domain/KeyInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/KeyInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/KeyInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/KeyInfo.java diff --git a/ff-game/src/main/java/com/ff/game/domain/LangInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/LangInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/LangInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/LangInfo.java diff --git a/ff-game/src/main/java/com/ff/game/domain/NameInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/NameInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/NameInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/NameInfo.java diff --git a/ff-game/src/main/java/com/ff/game/domain/Platform.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/Platform.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/Platform.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/Platform.java diff --git a/ff-game/src/main/java/com/ff/game/domain/PlatformInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/PlatformInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/PlatformInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/PlatformInfo.java diff --git a/ff-game/src/main/java/com/ff/game/domain/UrlInfo.java b/ff-bean/ff-mysql/src/main/java/com/ff/game/domain/UrlInfo.java similarity index 100% rename from ff-game/src/main/java/com/ff/game/domain/UrlInfo.java rename to ff-bean/ff-mysql/src/main/java/com/ff/game/domain/UrlInfo.java diff --git a/ff-game/src/main/java/com/ff/member/domain/Member.java b/ff-bean/ff-mysql/src/main/java/com/ff/member/domain/Member.java similarity index 65% rename from ff-game/src/main/java/com/ff/member/domain/Member.java rename to ff-bean/ff-mysql/src/main/java/com/ff/member/domain/Member.java index 93535ce..19c7d77 100644 --- a/ff-game/src/main/java/com/ff/member/domain/Member.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/member/domain/Member.java @@ -2,10 +2,8 @@ package com.ff.member.domain; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -20,32 +18,38 @@ import lombok.experimental.SuperBuilder; @AllArgsConstructor @NoArgsConstructor @SuperBuilder -public class Member extends BaseEntity -{ +public class Member extends BaseEntity { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ @JsonSerialize(using = ToStringSerializer.class) private Long id; - /** 租户key */ - @Excel(name = "租户key") + /** + * 租户key + */ private String tenantKey; - /** 会员账号 */ - @Excel(name = "会员账号") + /** + * 会员账号 + */ private String memberAccount; - /** 游戏账号 */ - @Excel(name = "游戏账号") + /** + * 游戏账号 + */ private String gameAccount; - /** 平台编码 */ - @Excel(name = "平台编码") + /** + * 平台编码 + */ private String platformCode; - /** 币种编码 */ - @Excel(name = "币种编码") + /** + * 币种编码 + */ private String currencyCode; diff --git a/ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysFeedback.java b/ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysFeedback.java new file mode 100644 index 0000000..da3731c --- /dev/null +++ b/ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysFeedback.java @@ -0,0 +1,60 @@ +package com.ff.sys.domain; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.ff.base.core.domain.BaseEntity; +import lombok.Data; + +/** + * 系统反馈对象 ff_sys_feedback + * + * @author shi + * @date 2025-02-27 + */ +@Data +public class SysFeedback extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 用户类型 1 租户 2代理 + */ + private Integer userType; + + /** + * 用户id + */ + @JsonSerialize(using = ToStringSerializer.class) + private Long userId; + + /** + * 标题 + */ + private String title; + + /** + * 手机号 + */ + private String phone; + + /** + * 反馈内容 + */ + private String content; + + /** + * 状态 1待处理 2已处理 + */ + private Integer status; + + /** + * 回复内容 + */ + private String replyContent; + + +} diff --git a/ff-game/src/main/java/com/ff/sys/domain/SysNotice.java b/ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysNotice.java similarity index 60% rename from ff-game/src/main/java/com/ff/sys/domain/SysNotice.java rename to ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysNotice.java index a36fff3..71eac6d 100644 --- a/ff-game/src/main/java/com/ff/sys/domain/SysNotice.java +++ b/ff-bean/ff-mysql/src/main/java/com/ff/sys/domain/SysNotice.java @@ -1,8 +1,8 @@ package com.ff.sys.domain; -import com.ff.base.annotation.Excel; import com.ff.base.core.domain.BaseEntity; import lombok.Data; + /** * 系统公告对象 ff_sys_notice * @@ -10,19 +10,22 @@ import lombok.Data; * @date 2025-02-28 */ @Data -public class SysNotice extends BaseEntity -{ +public class SysNotice extends BaseEntity { private static final long serialVersionUID = 1L; - /** $column.columnComment */ + /** + * $column.columnComment + */ private Long id; - /** 标题 */ - @Excel(name = "标题") + /** + * 标题 + */ private String title; - /** 内容 */ - @Excel(name = "内容") + /** + * 内容 + */ private String content; diff --git a/ff-fetcher/pom.xml b/ff-fetcher/pom.xml new file mode 100644 index 0000000..c8541c1 --- /dev/null +++ b/ff-fetcher/pom.xml @@ -0,0 +1,108 @@ + + + 4.0.0 + + ff + com.ff + 0.0.1 + + + com.ff + ff-fetcher + 0.0.1 + ff-fetcher + + + + + com.xuxueli + xxl-job-core + + + + org.projectlombok + lombok + provided + + + com.dtflys.forest + forest-spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-web + + + + + org.springframework.boot + spring-boot-starter-validation + + + + + org.apache.commons + commons-lang3 + + + + + com.alibaba.fastjson2 + fastjson2 + + + + commons-io + commons-io + + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + org.apache.commons + commons-pool2 + + + org.springframework.boot + spring-boot-starter-data-mongodb + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + 2.5.15 + + true + + + + + repackage + + + + + + org.apache.maven.plugins + maven-war-plugin + 3.1.0 + + false + xk-fetcher + + + + xk-fetcher + + + diff --git a/ff-fetcher/src/main/java/com/ff/FFApplication.java b/ff-fetcher/src/main/java/com/ff/FFApplication.java new file mode 100644 index 0000000..95cbff3 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/FFApplication.java @@ -0,0 +1,28 @@ +package com.ff; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.SpringBootVersion; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.scheduling.annotation.EnableAsync; + +/** + * 启动程序 + * + * @author ff + */ +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) +@EnableAsync +public class FFApplication { + + + public static void main(String[] args) { + // System.setProperty("spring.devtools.restart.enabled", "false"); + SpringApplication.run(FFApplication.class, args); + System.out.println("(♥◠‿◠)ノ゙ FF启动成功 ლ(´ڡ`ლ)゙" + SpringBootVersion.getVersion()); + + + } + + +} diff --git a/ff-fetcher/src/main/java/com/ff/utils/CalculateDateDaysAgo.java b/ff-fetcher/src/main/java/com/ff/utils/CalculateDateDaysAgo.java new file mode 100644 index 0000000..dc5363b --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/utils/CalculateDateDaysAgo.java @@ -0,0 +1,25 @@ +package com.ff.utils; + +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; + +/** + * @author cengy + */ +public class CalculateDateDaysAgo { + + public static LocalDate get(int daysToSubtract) { + return LocalDate.now().minusDays(daysToSubtract); + } + + public static String getStr(int daysToSubtract) { + // 获取当前日期减去指定天数 + LocalDate date = get(daysToSubtract); + + // 定义日期格式 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + + // 返回格式化日期字符串 + return date.format(formatter); + } +} diff --git a/ff-fetcher/src/main/java/com/ff/utils/SortByAttributeNameASC.java b/ff-fetcher/src/main/java/com/ff/utils/SortByAttributeNameASC.java new file mode 100644 index 0000000..6e351b1 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/utils/SortByAttributeNameASC.java @@ -0,0 +1,40 @@ +package com.ff.utils; + +import com.alibaba.fastjson2.JSON; + +import java.lang.reflect.Field; +import java.util.Arrays; +import java.util.LinkedHashMap; +import java.util.Map; + +/** + * @author cengy + */ +public class SortByAttributeNameASC { + public static String get(Object o) { + // Create a map to store field names and values + Map fieldMap = new LinkedHashMap<>(); + + // Get all fields of the class + Field[] fields = o.getClass().getDeclaredFields(); + + // Sort field names + Arrays.sort(fields, (f1, f2) -> f1.getName().compareTo(f2.getName())); + + // Fill the map with sorted fields and their values + for (Field field : fields) { + field.setAccessible(true); // Make private fields accessible + Object value = null; + try { + value = field.get(o); + } catch (IllegalAccessException e) { + throw new RuntimeException(e); + } + fieldMap.put(field.getName(), value); + } + + + return JSON.toJSONString(fieldMap); + } + +} diff --git a/ff-fetcher/src/main/java/com/ff/utils/TimestampFromString.java b/ff-fetcher/src/main/java/com/ff/utils/TimestampFromString.java new file mode 100644 index 0000000..8a3ddd6 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/utils/TimestampFromString.java @@ -0,0 +1,27 @@ +package com.ff.utils; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +/** + * @author cengy + */ +public class TimestampFromString { + + public static final String PATTERN_DATE = "yyyy-MM-dd HH:mm:ss"; + + public static Long from(String date) { + SimpleDateFormat simpleDateFormat = new SimpleDateFormat(PATTERN_DATE); + try { + Date parse = simpleDateFormat.parse(date); + return parse.getTime(); + } catch (ParseException e) { + return 0L; + } + } + + public static Long to(String timestamp) { + return Long.parseLong(timestamp); + } +} diff --git a/ff-fetcher/src/main/java/com/ff/xxljob/config/XxlJobConfig.java b/ff-fetcher/src/main/java/com/ff/xxljob/config/XxlJobConfig.java new file mode 100644 index 0000000..60c88da --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/xxljob/config/XxlJobConfig.java @@ -0,0 +1,53 @@ +package com.ff.xxljob.config; + +import com.xxl.job.core.executor.impl.XxlJobSpringExecutor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Slf4j +public class XxlJobConfig { + + @Value("${xxl.job.admin.addresses}") + private String adminAddresses; + + @Value("${xxl.job.accessToken}") + private String accessToken; + + @Value("${xxl.job.executor.appname}") + private String appname; + + @Value("${xxl.job.executor.address}") + private String address; + + @Value("${xxl.job.executor.ip}") + private String ip; + + @Value("${xxl.job.executor.port}") + private int port; + + @Value("${xxl.job.executor.logpath}") + private String logPath; + + @Value("${xxl.job.executor.logretentiondays}") + private int logRetentionDays; + + + @Bean + public XxlJobSpringExecutor xxlJobExecutor() { + log.info(">>>>>>>>>>> xxl-job config init."); + XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor(); + xxlJobSpringExecutor.setAdminAddresses(adminAddresses); + xxlJobSpringExecutor.setAppname(appname); + xxlJobSpringExecutor.setAddress(address); + xxlJobSpringExecutor.setIp(ip); + xxlJobSpringExecutor.setPort(port); + xxlJobSpringExecutor.setAccessToken(accessToken); + xxlJobSpringExecutor.setLogPath(logPath); + xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays); + + return xxlJobSpringExecutor; + } +} diff --git a/ff-fetcher/src/main/java/com/ff/xxljob/fetch/TaskParam.java b/ff-fetcher/src/main/java/com/ff/xxljob/fetch/TaskParam.java new file mode 100644 index 0000000..51b98b8 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/xxljob/fetch/TaskParam.java @@ -0,0 +1,13 @@ +package com.ff.xxljob.fetch; + +import lombok.Data; + +/** + * @author cengy + */ +@Data +public class TaskParam { + // 定时任务的参数:平台code, 拉多少分钟前的 + private String platformCode; + private long ago; +} diff --git a/ff-fetcher/src/main/java/com/ff/xxljob/task/AbstractTask.java b/ff-fetcher/src/main/java/com/ff/xxljob/task/AbstractTask.java new file mode 100644 index 0000000..55251f2 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/xxljob/task/AbstractTask.java @@ -0,0 +1,29 @@ +package com.ff.xxljob.task; + +import com.xxl.job.core.context.XxlJobHelper; +import com.xxl.job.core.handler.IJobHandler; +import lombok.extern.slf4j.Slf4j; + +/** + * 定时任务执行抽象类 + * + * @author cengy + */ +@Slf4j +public abstract class AbstractTask extends IJobHandler { + + /** + * 执行有参方法 + */ + abstract void doExecute(String params); + + /** + * 无参执行方法 执行业务前切换数据源 + */ + @Override + public void execute() throws Exception { + String params = XxlJobHelper.getJobParam(); // 获取任务参数 + doExecute(params); + } + +} diff --git a/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchHistoryOrderListTask.java b/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchHistoryOrderListTask.java new file mode 100644 index 0000000..1a532f6 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchHistoryOrderListTask.java @@ -0,0 +1,20 @@ +package com.ff.xxljob.task; + +import com.ff.xxljob.fetch.TaskParam; +import com.xxl.job.core.handler.annotation.XxlJob; +import org.springframework.stereotype.Component; + +/** + * 拉取历史投注订单列表 + * + * @author cengy + */ +@Component +public class FetchHistoryOrderListTask extends FetchTask { + + @XxlJob("fetchHistoryOrderListTask") + @Override + public void doExecute(TaskParam taskParam) { + + } +} diff --git a/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchOrderListTask.java b/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchOrderListTask.java new file mode 100644 index 0000000..24ccec5 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchOrderListTask.java @@ -0,0 +1,20 @@ +package com.ff.xxljob.task; + +import com.ff.xxljob.fetch.TaskParam; +import com.xxl.job.core.handler.annotation.XxlJob; +import org.springframework.stereotype.Component; + +/** + * 拉取投注订单列表 + * + * @author cengy + */ +@Component +public class FetchOrderListTask extends FetchTask { + + @XxlJob("fetchOrderListTask") + @Override + public void doExecute(TaskParam taskParam) { + + } +} diff --git a/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchTask.java b/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchTask.java new file mode 100644 index 0000000..09f2943 --- /dev/null +++ b/ff-fetcher/src/main/java/com/ff/xxljob/task/FetchTask.java @@ -0,0 +1,24 @@ +package com.ff.xxljob.task; + +import com.ff.xxljob.fetch.TaskParam; +import org.apache.commons.lang3.StringUtils; + +/** + * @author cengy + */ +public abstract class FetchTask extends AbstractTask { + + @Override + void doExecute(String params) { + if (StringUtils.isEmpty(params)) { + return; + } + String[] split = params.split(","); + TaskParam param = new TaskParam(); + param.setPlatformCode(split[0]); + param.setAgo(Long.parseLong(split[1])); + doExecute(param); + } + + abstract public void doExecute(TaskParam taskParam); +} diff --git a/ff-fetcher/src/main/resources/application-prod.properties b/ff-fetcher/src/main/resources/application-prod.properties new file mode 100644 index 0000000..c28a3a3 --- /dev/null +++ b/ff-fetcher/src/main/resources/application-prod.properties @@ -0,0 +1,41 @@ +# 引入子配置文件 +spring.config.import=\ + classpath:config/test/redis.properties,\ + classpath:config/test/xxljob.properties,\ + classpath:config/test/mongo.properties + + +# 项目相关配置 +ff.name=FF-Fetcher +ff.version=0.0.1 +ff.copyrightYear=2024 +ff.profile=D:/ff/uploadPath +ff.addressEnabled=false +ff.captchaType=math + +# 开发环境配置 +server.port=19080 +server.servlet.context-path=/ +server.tomcat.uri-encoding=UTF-8 +server.tomcat.accept-count=1000 +server.tomcat.threads.max=800 +server.tomcat.threads.min-spare=100 + +# 日志配置 +logging.level.com.ff=debug +logging.level.org.springframework=warn + +# 用户配置 +user.password.maxRetryCount=5 +user.password.lockTime=10 + +# Spring配置 +spring.mvc.pathmatch.matching-strategy=ant_path_matcher +spring.messages.basename=i18n/messages +spring.servlet.multipart.max-file-size=20MB +spring.servlet.multipart.max-request-size=20MB + +# Token配置 +token.header=Authorization +token.secret=abcdefghijklmnopqrstuvwxyz +token.expireTime=10080 diff --git a/ff-fetcher/src/main/resources/application.properties b/ff-fetcher/src/main/resources/application.properties new file mode 100644 index 0000000..f841722 --- /dev/null +++ b/ff-fetcher/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.profiles.active=test diff --git a/ff-fetcher/src/main/resources/config/prod/mongo.properties b/ff-fetcher/src/main/resources/config/prod/mongo.properties new file mode 100644 index 0000000..51783d3 --- /dev/null +++ b/ff-fetcher/src/main/resources/config/prod/mongo.properties @@ -0,0 +1,2 @@ +# Mongo 数据源配置 +spring.data.mongodb.uri=mongodb://admin:123456@localhost:17017/?authSource=admin \ No newline at end of file diff --git a/ff-fetcher/src/main/resources/config/prod/redis.properties b/ff-fetcher/src/main/resources/config/prod/redis.properties new file mode 100644 index 0000000..b46b3c2 --- /dev/null +++ b/ff-fetcher/src/main/resources/config/prod/redis.properties @@ -0,0 +1,12 @@ +# Redis 配置 +spring.redis.host=192.168.50.11 +spring.redis.port=26379 +spring.redis.database=10 +spring.redis.password=reAa123456 +spring.redis.timeout=10s + +# Lettuce 连接池配置 +spring.redis.lettuce.pool.min-idle=0 +spring.redis.lettuce.pool.max-idle=8 +spring.redis.lettuce.pool.max-active=8 +spring.redis.lettuce.pool.max-wait=-1ms diff --git a/ff-fetcher/src/main/resources/config/prod/xxljob.properties b/ff-fetcher/src/main/resources/config/prod/xxljob.properties new file mode 100644 index 0000000..00ed333 --- /dev/null +++ b/ff-fetcher/src/main/resources/config/prod/xxljob.properties @@ -0,0 +1,9 @@ +# XXL-Job配置 +xxl.job.admin.addresses=http://192.168.50.11:2980/xxl-job-admin/ +xxl.job.accessToken= +xxl.job.executor.appname=ff-admin-job-name +xxl.job.executor.address=http://192.168.50.28:13998 +xxl.job.executor.ip=192.168.50.28 +xxl.job.executor.port=13998 +xxl.job.executor.logpath=./logs/job +xxl.job.executor.logretentiondays=30 diff --git a/ff-fetcher/src/main/resources/config/test/mongo.properties b/ff-fetcher/src/main/resources/config/test/mongo.properties new file mode 100644 index 0000000..51783d3 --- /dev/null +++ b/ff-fetcher/src/main/resources/config/test/mongo.properties @@ -0,0 +1,2 @@ +# Mongo 数据源配置 +spring.data.mongodb.uri=mongodb://admin:123456@localhost:17017/?authSource=admin \ No newline at end of file diff --git a/ff-fetcher/src/main/resources/config/test/redis.properties b/ff-fetcher/src/main/resources/config/test/redis.properties new file mode 100644 index 0000000..b46b3c2 --- /dev/null +++ b/ff-fetcher/src/main/resources/config/test/redis.properties @@ -0,0 +1,12 @@ +# Redis 配置 +spring.redis.host=192.168.50.11 +spring.redis.port=26379 +spring.redis.database=10 +spring.redis.password=reAa123456 +spring.redis.timeout=10s + +# Lettuce 连接池配置 +spring.redis.lettuce.pool.min-idle=0 +spring.redis.lettuce.pool.max-idle=8 +spring.redis.lettuce.pool.max-active=8 +spring.redis.lettuce.pool.max-wait=-1ms diff --git a/ff-fetcher/src/main/resources/config/test/xxljob.properties b/ff-fetcher/src/main/resources/config/test/xxljob.properties new file mode 100644 index 0000000..00ed333 --- /dev/null +++ b/ff-fetcher/src/main/resources/config/test/xxljob.properties @@ -0,0 +1,9 @@ +# XXL-Job配置 +xxl.job.admin.addresses=http://192.168.50.11:2980/xxl-job-admin/ +xxl.job.accessToken= +xxl.job.executor.appname=ff-admin-job-name +xxl.job.executor.address=http://192.168.50.28:13998 +xxl.job.executor.ip=192.168.50.28 +xxl.job.executor.port=13998 +xxl.job.executor.logpath=./logs/job +xxl.job.executor.logretentiondays=30 diff --git a/ff-fetcher/src/main/resources/i18n/messages.properties b/ff-fetcher/src/main/resources/i18n/messages.properties new file mode 100644 index 0000000..c10300d --- /dev/null +++ b/ff-fetcher/src/main/resources/i18n/messages.properties @@ -0,0 +1,47 @@ +#错误消息 +opration.success=操作成功 +opration.fail=操作失败 +not.null=* 必须填写 +user.jcaptcha.error=验证码错误 +user.jcaptcha.expire=验证码已失效 +user.not.exists=用户不存在/密码错误 +user.password.not.match=用户不存在/密码错误 +user.password.retry.limit.count=密码输入错误{0}次 +user.password.retry.limit.exceed=密码输入错误{0}次,帐户锁定{1}分钟 +user.password.delete=对不起,您的账号已被删除 +user.blocked=用户已封禁,请联系管理员 +role.blocked=角色已封禁,请联系管理员 +login.blocked=很遗憾,访问IP已被列入系统黑名单 +user.logout.success=退出成功 + +length.not.valid=长度必须在{min}到{max}个字符之间 + +user.username.not.valid=* 2到20个汉字、字母、数字或下划线组成,且必须以非数字开头 +user.password.not.valid=* 5-50个字符 + +user.email.not.valid=邮箱格式错误 +user.mobile.phone.number.not.valid=手机号格式错误 +user.login.success=登录成功 +user.register.success=注册成功 +user.notfound=请重新登录 +user.forcelogout=管理员强制退出,请重新登录 +user.unknown.error=未知错误,请重新登录 + +##文件上传消息 +upload.exceed.maxSize=上传的文件大小超出限制的文件大小!
允许的文件最大大小是:{0}MB! +upload.filename.exceed.length=上传的文件名最长{0}个字符 +upload.file.exception=本地文件上传异常 +upload.file.server.not.exist=文件服务不存在 + +##权限 +no.permission=您没有数据的权限,请联系管理员添加权限 [{0}] +no.create.permission=您没有创建数据的权限,请联系管理员添加权限 [{0}] +no.update.permission=您没有修改数据的权限,请联系管理员添加权限 [{0}] +no.delete.permission=您没有删除数据的权限,请联系管理员添加权限 [{0}] +no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}] +no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}] + + +##租户 +operation.tenant.account.already.used=租户账号已被使用,请更换租户账号 +operation.password.mismatch=两次密码不一致 \ No newline at end of file diff --git a/ff-fetcher/src/main/resources/logback.xml b/ff-fetcher/src/main/resources/logback.xml new file mode 100644 index 0000000..67659a6 --- /dev/null +++ b/ff-fetcher/src/main/resources/logback.xml @@ -0,0 +1,93 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/sys-info.log + + + + ${log.path}/sys-info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/sys-error.log + + + + ${log.path}/sys-error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + ${log.path}/sys-user.log + + + ${log.path}/sys-user.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ff-game/pom.xml b/ff-game/pom.xml index abeced9..c51f537 100644 --- a/ff-game/pom.xml +++ b/ff-game/pom.xml @@ -11,46 +11,35 @@ com.ff ff-game 0.0.1 - ff-admin - ff-admin + ff-game + ff-game + + com.ff + ff-mysql-entity + + + com.xuxueli + xxl-job-core + - + - + true <!– 表示依赖不会传递 –> + --> com.fasterxml.jackson.dataformat jackson-dataformat-xml - - - org.springframework - spring-context - - - - - io.springfox - springfox-boot-starter - - - - - io.swagger - swagger-models - 1.6.2 - - mysql @@ -69,17 +58,6 @@ - - - com.ff - ff-base - - - - - com.ff - ff-gen - org.projectlombok lombok @@ -97,8 +75,113 @@ 1.0.0 + + com.dtflys.forest + forest-spring-boot-starter + + + + org.springframework.boot + spring-boot-starter-web + + + + com.alibaba + druid-spring-boot-starter + + + + + pro.fessional + kaptcha + + + + com.github.oshi + oshi-core + + + + + com.github.pagehelper + pagehelper-spring-boot-starter + + + + + org.springframework.boot + spring-boot-starter-validation + + + + + org.apache.commons + commons-lang3 + + + + + com.alibaba.fastjson2 + fastjson2 + + + + commons-io + commons-io + + + + + org.apache.poi + poi-ooxml + + + + + io.jsonwebtoken + jjwt + + + + + org.springframework.boot + spring-boot-starter-data-redis + + + + + eu.bitwalker + UserAgentUtils + + + + + com.google.zxing + core + + + com.google.zxing + javase + + + + + org.springframework.boot + spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-aop + + + + + org.apache.commons + commons-pool2 + @@ -118,17 +201,9 @@ - - org.apache.maven.plugins - maven-war-plugin - 3.1.0 - - false - ${project.artifactId} - - + - ${project.artifactId} + xk-admin diff --git a/ff-game/src/main/java/com/ff/FFApplication.java b/ff-game/src/main/java/com/ff/FFApplication.java index a4bc75d..df86721 100644 --- a/ff-game/src/main/java/com/ff/FFApplication.java +++ b/ff-game/src/main/java/com/ff/FFApplication.java @@ -1,8 +1,5 @@ package com.ff; -import org.mybatis.spring.annotation.MapperScan; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringBootVersion; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -17,20 +14,16 @@ import org.springframework.security.authentication.dao.DaoAuthenticationProvider * * @author ff */ -@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class }) -@MapperScan({"com.ff.base.system.mapper","com.ff.quartz.mapper","com.ff.gen.mapper"}) +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) @ComponentScan(excludeFilters = {@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = DaoAuthenticationProvider.class)}) @EnableAsync -public class FFApplication -{ +public class FFApplication { - - public static void main(String[] args) - { + public static void main(String[] args) { // System.setProperty("spring.devtools.restart.enabled", "false"); SpringApplication.run(FFApplication.class, args); - System.out.println("(♥◠‿◠)ノ゙ FF启动成功 ლ(´ڡ`ლ)゙"+ SpringBootVersion.getVersion()); + System.out.println("(♥◠‿◠)ノ゙ FF启动成功 ლ(´ڡ`ლ)゙" + SpringBootVersion.getVersion()); } diff --git a/ff-game/src/main/java/com/ff/FFServletInitializer.java b/ff-game/src/main/java/com/ff/FFServletInitializer.java deleted file mode 100644 index 7e82010..0000000 --- a/ff-game/src/main/java/com/ff/FFServletInitializer.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.ff; - -import org.springframework.boot.builder.SpringApplicationBuilder; -import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; - -/** - * web容器中进行部署 - * - * @author ff - */ -public class FFServletInitializer extends SpringBootServletInitializer -{ - @Override - protected SpringApplicationBuilder configure(SpringApplicationBuilder application) - { - return application.sources(FFApplication.class); - } -} diff --git a/ff-game/src/main/java/com/ff/agent/controller/AgentController.java b/ff-game/src/main/java/com/ff/agent/controller/AgentController.java index b6bfbc6..1bf86d6 100644 --- a/ff-game/src/main/java/com/ff/agent/controller/AgentController.java +++ b/ff-game/src/main/java/com/ff/agent/controller/AgentController.java @@ -1,9 +1,8 @@ package com.ff.agent.controller; -import - com.ff.agent.dto.AgentTenantSecretKeyDTO; import com.ff.agent.dto.AgentCreateTenantDTO; +import com.ff.agent.dto.AgentTenantSecretKeyDTO; import com.ff.base.constant.Constants; import com.ff.base.core.controller.BaseController; import com.ff.base.core.domain.AjaxResult; @@ -12,23 +11,19 @@ import com.ff.base.enums.OperationType; import com.ff.base.enums.QuotaType; import com.ff.base.exception.base.BaseException; import com.ff.base.system.domain.TenantPlatform; +import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.dto.CreateTenantDTO; import com.ff.base.system.dto.TenantSecretKeyDTO; -import com.ff.base.system.service.ISysDeptService; -import com.ff.base.system.service.ISysRoleService; -import com.ff.base.system.service.ISysUserService; +import com.ff.base.system.service.ITenantPlatformService; +import com.ff.base.system.service.ITenantSecretKeyService; import com.ff.base.utils.DateUtils; import com.ff.base.utils.bean.BeanUtils; import com.ff.base.utils.ip.IpUtils; -import com.ff.base.system.domain.TenantSecretKey; import com.ff.common.domain.TenantAgentPlatform; import com.ff.common.dto.BalanceChangesDTO; import com.ff.common.service.ITenantAgentPlatformService; import com.ff.common.service.ITenantGameQuotaService; -import com.ff.base.system.service.ITenantSecretKeyService; -import com.ff.base.system.service.ITenantPlatformService; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; @@ -61,6 +56,7 @@ public class AgentController extends BaseController { @Resource private ITenantAgentPlatformService tenantAgentPlatformService; + /** * 列表 * @@ -80,7 +76,7 @@ public class AgentController extends BaseController { AgentTenantSecretKeyDTO agentTenantSecretKeyDTO = new AgentTenantSecretKeyDTO(); BeanUtils.copyProperties(row, agentTenantSecretKeyDTO); agentTenantSecretKeyDTO.setTenantPlatforms(tenantPlatformService.selectTenantPlatformList(TenantPlatform.builder() - .tenantId(row.getId()) + .tenantId(row.getId()) .build())); list.add(agentTenantSecretKeyDTO); } @@ -105,7 +101,7 @@ public class AgentController extends BaseController { for (TenantAgentPlatform tenantAgentPlatform : agentCreateTenantDTO.getTenantAgentPlatforms()) { TenantAgentPlatform agentPlatform = tenantAgentPlatformService.selectTenantAgentPlatformById(tenantAgentPlatform.getId()); // 成本比平台成本大 - if (agentPlatform.getCost().compareTo(tenantAgentPlatform.getCost())>0){ + if (agentPlatform.getCost().compareTo(tenantAgentPlatform.getCost()) > 0) { throw new BaseException("成本比例不允许比最低比例小"); } TenantPlatform tenantPlatform = new TenantPlatform(); diff --git a/ff-base/src/main/java/com/ff/base/annotation/Anonymous.java b/ff-game/src/main/java/com/ff/base/annotation/Anonymous.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/Anonymous.java rename to ff-game/src/main/java/com/ff/base/annotation/Anonymous.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/DataScope.java b/ff-game/src/main/java/com/ff/base/annotation/DataScope.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/DataScope.java rename to ff-game/src/main/java/com/ff/base/annotation/DataScope.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/DataSource.java b/ff-game/src/main/java/com/ff/base/annotation/DataSource.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/DataSource.java rename to ff-game/src/main/java/com/ff/base/annotation/DataSource.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/Excel.java b/ff-game/src/main/java/com/ff/base/annotation/Excel.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/Excel.java rename to ff-game/src/main/java/com/ff/base/annotation/Excel.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/Excels.java b/ff-game/src/main/java/com/ff/base/annotation/Excels.java similarity index 90% rename from ff-base/src/main/java/com/ff/base/annotation/Excels.java rename to ff-game/src/main/java/com/ff/base/annotation/Excels.java index 8a1e940..b7ad024 100644 --- a/ff-base/src/main/java/com/ff/base/annotation/Excels.java +++ b/ff-game/src/main/java/com/ff/base/annotation/Excels.java @@ -1,7 +1,5 @@ package com.ff.base.annotation; -import com.ff.base.annotation.Excel; - import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; diff --git a/ff-base/src/main/java/com/ff/base/annotation/Log.java b/ff-game/src/main/java/com/ff/base/annotation/Log.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/Log.java rename to ff-game/src/main/java/com/ff/base/annotation/Log.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/RateLimiter.java b/ff-game/src/main/java/com/ff/base/annotation/RateLimiter.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/RateLimiter.java rename to ff-game/src/main/java/com/ff/base/annotation/RateLimiter.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/RepeatSubmit.java b/ff-game/src/main/java/com/ff/base/annotation/RepeatSubmit.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/RepeatSubmit.java rename to ff-game/src/main/java/com/ff/base/annotation/RepeatSubmit.java diff --git a/ff-base/src/main/java/com/ff/base/annotation/Sensitive.java b/ff-game/src/main/java/com/ff/base/annotation/Sensitive.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/annotation/Sensitive.java rename to ff-game/src/main/java/com/ff/base/annotation/Sensitive.java diff --git a/ff-base/src/main/java/com/ff/base/aspectj/DataScopeAspect.java b/ff-game/src/main/java/com/ff/base/aspectj/DataScopeAspect.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/aspectj/DataScopeAspect.java rename to ff-game/src/main/java/com/ff/base/aspectj/DataScopeAspect.java index db84520..4ed57d7 100644 --- a/ff-base/src/main/java/com/ff/base/aspectj/DataScopeAspect.java +++ b/ff-game/src/main/java/com/ff/base/aspectj/DataScopeAspect.java @@ -2,13 +2,13 @@ package com.ff.base.aspectj; import com.ff.base.annotation.DataScope; import com.ff.base.core.domain.BaseEntity; -import com.ff.base.system.domain.SysRole; -import com.ff.base.system.domain.SysUser; import com.ff.base.core.domain.model.LoginUser; import com.ff.base.core.text.Convert; +import com.ff.base.security.context.PermissionContextHolder; +import com.ff.base.system.domain.SysRole; +import com.ff.base.system.domain.SysUser; import com.ff.base.utils.SecurityUtils; import com.ff.base.utils.StringUtils; -import com.ff.base.security.context.PermissionContextHolder; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; diff --git a/ff-base/src/main/java/com/ff/base/aspectj/DataSourceAspect.java b/ff-game/src/main/java/com/ff/base/aspectj/DataSourceAspect.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/aspectj/DataSourceAspect.java rename to ff-game/src/main/java/com/ff/base/aspectj/DataSourceAspect.java index ead00f0..1417a89 100644 --- a/ff-base/src/main/java/com/ff/base/aspectj/DataSourceAspect.java +++ b/ff-game/src/main/java/com/ff/base/aspectj/DataSourceAspect.java @@ -1,8 +1,8 @@ package com.ff.base.aspectj; import com.ff.base.annotation.DataSource; -import com.ff.base.utils.StringUtils; import com.ff.base.datasource.DynamicDataSourceContextHolder; +import com.ff.base.utils.StringUtils; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; diff --git a/ff-base/src/main/java/com/ff/base/aspectj/LogAspect.java b/ff-game/src/main/java/com/ff/base/aspectj/LogAspect.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/aspectj/LogAspect.java rename to ff-game/src/main/java/com/ff/base/aspectj/LogAspect.java index cf3d912..4e86e41 100644 --- a/ff-base/src/main/java/com/ff/base/aspectj/LogAspect.java +++ b/ff-game/src/main/java/com/ff/base/aspectj/LogAspect.java @@ -2,18 +2,18 @@ package com.ff.base.aspectj; import com.alibaba.fastjson2.JSON; import com.ff.base.annotation.Log; -import com.ff.base.system.domain.SysUser; import com.ff.base.core.domain.model.LoginUser; import com.ff.base.enums.BusinessStatus; import com.ff.base.enums.HttpMethod; import com.ff.base.filter.PropertyPreExcludeFilter; +import com.ff.base.manager.AsyncManager; +import com.ff.base.manager.factory.AsyncFactory; +import com.ff.base.system.domain.SysOperLog; +import com.ff.base.system.domain.SysUser; import com.ff.base.utils.SecurityUtils; import com.ff.base.utils.ServletUtils; import com.ff.base.utils.StringUtils; import com.ff.base.utils.ip.IpUtils; -import com.ff.base.manager.AsyncManager; -import com.ff.base.manager.factory.AsyncFactory; -import com.ff.base.system.domain.SysOperLog; import org.apache.commons.lang3.ArrayUtils; import org.aspectj.lang.JoinPoint; import org.aspectj.lang.annotation.AfterReturning; diff --git a/ff-base/src/main/java/com/ff/base/aspectj/RateLimiterAspect.java b/ff-game/src/main/java/com/ff/base/aspectj/RateLimiterAspect.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/aspectj/RateLimiterAspect.java rename to ff-game/src/main/java/com/ff/base/aspectj/RateLimiterAspect.java diff --git a/ff-base/src/main/java/com/ff/base/config/ApplicationConfig.java b/ff-game/src/main/java/com/ff/base/config/ApplicationConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/ApplicationConfig.java rename to ff-game/src/main/java/com/ff/base/config/ApplicationConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/AsyncConfig.java b/ff-game/src/main/java/com/ff/base/config/AsyncConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/AsyncConfig.java rename to ff-game/src/main/java/com/ff/base/config/AsyncConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/CaptchaConfig.java b/ff-game/src/main/java/com/ff/base/config/CaptchaConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/CaptchaConfig.java rename to ff-game/src/main/java/com/ff/base/config/CaptchaConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/DruidConfig.java b/ff-game/src/main/java/com/ff/base/config/DruidConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/DruidConfig.java rename to ff-game/src/main/java/com/ff/base/config/DruidConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/FFConfig.java b/ff-game/src/main/java/com/ff/base/config/FFConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/FFConfig.java rename to ff-game/src/main/java/com/ff/base/config/FFConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/FastJson2JsonRedisSerializer.java b/ff-game/src/main/java/com/ff/base/config/FastJson2JsonRedisSerializer.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/FastJson2JsonRedisSerializer.java rename to ff-game/src/main/java/com/ff/base/config/FastJson2JsonRedisSerializer.java diff --git a/ff-base/src/main/java/com/ff/base/config/FilterConfig.java b/ff-game/src/main/java/com/ff/base/config/FilterConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/FilterConfig.java rename to ff-game/src/main/java/com/ff/base/config/FilterConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/I18nConfig.java b/ff-game/src/main/java/com/ff/base/config/I18nConfig.java similarity index 97% rename from ff-base/src/main/java/com/ff/base/config/I18nConfig.java rename to ff-game/src/main/java/com/ff/base/config/I18nConfig.java index 05b77d0..0791228 100644 --- a/ff-base/src/main/java/com/ff/base/config/I18nConfig.java +++ b/ff-game/src/main/java/com/ff/base/config/I18nConfig.java @@ -10,8 +10,6 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver; import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; -import java.lang.reflect.Field; -import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Locale; diff --git a/ff-base/src/main/java/com/ff/base/config/JacksonConfig.java b/ff-game/src/main/java/com/ff/base/config/JacksonConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/JacksonConfig.java rename to ff-game/src/main/java/com/ff/base/config/JacksonConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/KaptchaTextCreator.java b/ff-game/src/main/java/com/ff/base/config/KaptchaTextCreator.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/KaptchaTextCreator.java rename to ff-game/src/main/java/com/ff/base/config/KaptchaTextCreator.java diff --git a/ff-base/src/main/java/com/ff/base/config/MyBatisConfig.java b/ff-game/src/main/java/com/ff/base/config/MyBatisConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/MyBatisConfig.java rename to ff-game/src/main/java/com/ff/base/config/MyBatisConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/RedisConfig.java b/ff-game/src/main/java/com/ff/base/config/RedisConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/RedisConfig.java rename to ff-game/src/main/java/com/ff/base/config/RedisConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/ResourcesConfig.java b/ff-game/src/main/java/com/ff/base/config/ResourcesConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/ResourcesConfig.java rename to ff-game/src/main/java/com/ff/base/config/ResourcesConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/SecurityConfig.java b/ff-game/src/main/java/com/ff/base/config/SecurityConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/SecurityConfig.java rename to ff-game/src/main/java/com/ff/base/config/SecurityConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/ServerConfig.java b/ff-game/src/main/java/com/ff/base/config/ServerConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/ServerConfig.java rename to ff-game/src/main/java/com/ff/base/config/ServerConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/ThreadPoolConfig.java b/ff-game/src/main/java/com/ff/base/config/ThreadPoolConfig.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/ThreadPoolConfig.java rename to ff-game/src/main/java/com/ff/base/config/ThreadPoolConfig.java diff --git a/ff-base/src/main/java/com/ff/base/config/properties/DruidProperties.java b/ff-game/src/main/java/com/ff/base/config/properties/DruidProperties.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/properties/DruidProperties.java rename to ff-game/src/main/java/com/ff/base/config/properties/DruidProperties.java diff --git a/ff-base/src/main/java/com/ff/base/config/properties/PermitAllUrlProperties.java b/ff-game/src/main/java/com/ff/base/config/properties/PermitAllUrlProperties.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/properties/PermitAllUrlProperties.java rename to ff-game/src/main/java/com/ff/base/config/properties/PermitAllUrlProperties.java diff --git a/ff-base/src/main/java/com/ff/base/config/serializer/SensitiveJsonSerializer.java b/ff-game/src/main/java/com/ff/base/config/serializer/SensitiveJsonSerializer.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/config/serializer/SensitiveJsonSerializer.java rename to ff-game/src/main/java/com/ff/base/config/serializer/SensitiveJsonSerializer.java diff --git a/ff-base/src/main/java/com/ff/base/constant/BusinessConstants.java b/ff-game/src/main/java/com/ff/base/constant/BusinessConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/BusinessConstants.java rename to ff-game/src/main/java/com/ff/base/constant/BusinessConstants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/CacheConstants.java b/ff-game/src/main/java/com/ff/base/constant/CacheConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/CacheConstants.java rename to ff-game/src/main/java/com/ff/base/constant/CacheConstants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/CacheLockConstants.java b/ff-game/src/main/java/com/ff/base/constant/CacheLockConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/CacheLockConstants.java rename to ff-game/src/main/java/com/ff/base/constant/CacheLockConstants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/ConfigConstants.java b/ff-game/src/main/java/com/ff/base/constant/ConfigConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/ConfigConstants.java rename to ff-game/src/main/java/com/ff/base/constant/ConfigConstants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/Constants.java b/ff-game/src/main/java/com/ff/base/constant/Constants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/Constants.java rename to ff-game/src/main/java/com/ff/base/constant/Constants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/GenConstants.java b/ff-game/src/main/java/com/ff/base/constant/GenConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/GenConstants.java rename to ff-game/src/main/java/com/ff/base/constant/GenConstants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/HttpStatus.java b/ff-game/src/main/java/com/ff/base/constant/HttpStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/HttpStatus.java rename to ff-game/src/main/java/com/ff/base/constant/HttpStatus.java diff --git a/ff-base/src/main/java/com/ff/base/constant/ScheduleConstants.java b/ff-game/src/main/java/com/ff/base/constant/ScheduleConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/ScheduleConstants.java rename to ff-game/src/main/java/com/ff/base/constant/ScheduleConstants.java diff --git a/ff-base/src/main/java/com/ff/base/constant/UserConstants.java b/ff-game/src/main/java/com/ff/base/constant/UserConstants.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/constant/UserConstants.java rename to ff-game/src/main/java/com/ff/base/constant/UserConstants.java diff --git a/ff-base/src/main/java/com/ff/base/core/controller/BaseController.java b/ff-game/src/main/java/com/ff/base/core/controller/BaseController.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/controller/BaseController.java rename to ff-game/src/main/java/com/ff/base/core/controller/BaseController.java index b28e6e1..583bf0c 100644 --- a/ff-base/src/main/java/com/ff/base/core/controller/BaseController.java +++ b/ff-game/src/main/java/com/ff/base/core/controller/BaseController.java @@ -1,7 +1,5 @@ package com.ff.base.core.controller; -import com.github.pagehelper.PageHelper; -import com.github.pagehelper.PageInfo; import com.ff.base.constant.HttpStatus; import com.ff.base.core.domain.AjaxResult; import com.ff.base.core.domain.model.LoginUser; @@ -13,6 +11,8 @@ import com.ff.base.utils.PageUtils; import com.ff.base.utils.SecurityUtils; import com.ff.base.utils.StringUtils; import com.ff.base.utils.sql.SqlUtil; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.WebDataBinder; diff --git a/ff-base/src/main/java/com/ff/base/core/domain/AjaxResult.java b/ff-game/src/main/java/com/ff/base/core/domain/AjaxResult.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/AjaxResult.java rename to ff-game/src/main/java/com/ff/base/core/domain/AjaxResult.java diff --git a/ff-base/src/main/java/com/ff/base/core/domain/TreeEntity.java b/ff-game/src/main/java/com/ff/base/core/domain/TreeEntity.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/TreeEntity.java rename to ff-game/src/main/java/com/ff/base/core/domain/TreeEntity.java diff --git a/ff-base/src/main/java/com/ff/base/core/domain/TreeSelect.java b/ff-game/src/main/java/com/ff/base/core/domain/TreeSelect.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/TreeSelect.java rename to ff-game/src/main/java/com/ff/base/core/domain/TreeSelect.java diff --git a/ff-base/src/main/java/com/ff/base/core/domain/model/LoginBody.java b/ff-game/src/main/java/com/ff/base/core/domain/model/LoginBody.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/model/LoginBody.java rename to ff-game/src/main/java/com/ff/base/core/domain/model/LoginBody.java diff --git a/ff-base/src/main/java/com/ff/base/core/domain/model/LoginForm.java b/ff-game/src/main/java/com/ff/base/core/domain/model/LoginForm.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/model/LoginForm.java rename to ff-game/src/main/java/com/ff/base/core/domain/model/LoginForm.java diff --git a/ff-base/src/main/java/com/ff/base/core/domain/model/LoginUser.java b/ff-game/src/main/java/com/ff/base/core/domain/model/LoginUser.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/model/LoginUser.java rename to ff-game/src/main/java/com/ff/base/core/domain/model/LoginUser.java diff --git a/ff-base/src/main/java/com/ff/base/core/domain/model/RegisterBody.java b/ff-game/src/main/java/com/ff/base/core/domain/model/RegisterBody.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/domain/model/RegisterBody.java rename to ff-game/src/main/java/com/ff/base/core/domain/model/RegisterBody.java diff --git a/ff-base/src/main/java/com/ff/base/core/page/PageDomain.java b/ff-game/src/main/java/com/ff/base/core/page/PageDomain.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/page/PageDomain.java rename to ff-game/src/main/java/com/ff/base/core/page/PageDomain.java diff --git a/ff-base/src/main/java/com/ff/base/core/page/TableDataInfo.java b/ff-game/src/main/java/com/ff/base/core/page/TableDataInfo.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/page/TableDataInfo.java rename to ff-game/src/main/java/com/ff/base/core/page/TableDataInfo.java diff --git a/ff-base/src/main/java/com/ff/base/core/page/TableSupport.java b/ff-game/src/main/java/com/ff/base/core/page/TableSupport.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/page/TableSupport.java rename to ff-game/src/main/java/com/ff/base/core/page/TableSupport.java diff --git a/ff-base/src/main/java/com/ff/base/core/redis/RedisCache.java b/ff-game/src/main/java/com/ff/base/core/redis/RedisCache.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/redis/RedisCache.java rename to ff-game/src/main/java/com/ff/base/core/redis/RedisCache.java diff --git a/ff-base/src/main/java/com/ff/base/core/text/CharsetKit.java b/ff-game/src/main/java/com/ff/base/core/text/CharsetKit.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/text/CharsetKit.java rename to ff-game/src/main/java/com/ff/base/core/text/CharsetKit.java diff --git a/ff-base/src/main/java/com/ff/base/core/text/Convert.java b/ff-game/src/main/java/com/ff/base/core/text/Convert.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/text/Convert.java rename to ff-game/src/main/java/com/ff/base/core/text/Convert.java diff --git a/ff-base/src/main/java/com/ff/base/core/text/StrFormatter.java b/ff-game/src/main/java/com/ff/base/core/text/StrFormatter.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/core/text/StrFormatter.java rename to ff-game/src/main/java/com/ff/base/core/text/StrFormatter.java diff --git a/ff-base/src/main/java/com/ff/base/datasource/DynamicDataSource.java b/ff-game/src/main/java/com/ff/base/datasource/DynamicDataSource.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/datasource/DynamicDataSource.java rename to ff-game/src/main/java/com/ff/base/datasource/DynamicDataSource.java diff --git a/ff-base/src/main/java/com/ff/base/datasource/DynamicDataSourceContextHolder.java b/ff-game/src/main/java/com/ff/base/datasource/DynamicDataSourceContextHolder.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/datasource/DynamicDataSourceContextHolder.java rename to ff-game/src/main/java/com/ff/base/datasource/DynamicDataSourceContextHolder.java diff --git a/ff-base/src/main/java/com/ff/base/decorator/ContextCopyingDecorator.java b/ff-game/src/main/java/com/ff/base/decorator/ContextCopyingDecorator.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/decorator/ContextCopyingDecorator.java rename to ff-game/src/main/java/com/ff/base/decorator/ContextCopyingDecorator.java diff --git a/ff-base/src/main/java/com/ff/base/enums/BusinessStatus.java b/ff-game/src/main/java/com/ff/base/enums/BusinessStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/BusinessStatus.java rename to ff-game/src/main/java/com/ff/base/enums/BusinessStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/BusinessType.java b/ff-game/src/main/java/com/ff/base/enums/BusinessType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/BusinessType.java rename to ff-game/src/main/java/com/ff/base/enums/BusinessType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/CommissionApprovalStatus.java b/ff-game/src/main/java/com/ff/base/enums/CommissionApprovalStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/CommissionApprovalStatus.java rename to ff-game/src/main/java/com/ff/base/enums/CommissionApprovalStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/CommissionSourceType.java b/ff-game/src/main/java/com/ff/base/enums/CommissionSourceType.java similarity index 95% rename from ff-base/src/main/java/com/ff/base/enums/CommissionSourceType.java rename to ff-game/src/main/java/com/ff/base/enums/CommissionSourceType.java index 414b256..734a16e 100644 --- a/ff-base/src/main/java/com/ff/base/enums/CommissionSourceType.java +++ b/ff-game/src/main/java/com/ff/base/enums/CommissionSourceType.java @@ -1,6 +1,5 @@ package com.ff.base.enums; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/CommissionType.java b/ff-game/src/main/java/com/ff/base/enums/CommissionType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/CommissionType.java rename to ff-game/src/main/java/com/ff/base/enums/CommissionType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/DataSourceType.java b/ff-game/src/main/java/com/ff/base/enums/DataSourceType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/DataSourceType.java rename to ff-game/src/main/java/com/ff/base/enums/DataSourceType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/DesensitizedType.java b/ff-game/src/main/java/com/ff/base/enums/DesensitizedType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/DesensitizedType.java rename to ff-game/src/main/java/com/ff/base/enums/DesensitizedType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/DomainType.java b/ff-game/src/main/java/com/ff/base/enums/DomainType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/DomainType.java rename to ff-game/src/main/java/com/ff/base/enums/DomainType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/ErrorCode.java b/ff-game/src/main/java/com/ff/base/enums/ErrorCode.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/ErrorCode.java rename to ff-game/src/main/java/com/ff/base/enums/ErrorCode.java diff --git a/ff-base/src/main/java/com/ff/base/enums/FBSportsType.java b/ff-game/src/main/java/com/ff/base/enums/FBSportsType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/FBSportsType.java rename to ff-game/src/main/java/com/ff/base/enums/FBSportsType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/FCGameType.java b/ff-game/src/main/java/com/ff/base/enums/FCGameType.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/enums/FCGameType.java rename to ff-game/src/main/java/com/ff/base/enums/FCGameType.java index 0fb07ec..99f86d4 100644 --- a/ff-base/src/main/java/com/ff/base/enums/FCGameType.java +++ b/ff-game/src/main/java/com/ff/base/enums/FCGameType.java @@ -3,7 +3,6 @@ package com.ff.base.enums; import lombok.Getter; -import java.util.HashMap; import java.util.Optional; import java.util.stream.Stream; diff --git a/ff-base/src/main/java/com/ff/base/enums/FCTransferType.java b/ff-game/src/main/java/com/ff/base/enums/FCTransferType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/FCTransferType.java rename to ff-game/src/main/java/com/ff/base/enums/FCTransferType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/FreeStatus.java b/ff-game/src/main/java/com/ff/base/enums/FreeStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/FreeStatus.java rename to ff-game/src/main/java/com/ff/base/enums/FreeStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/GPXGameType.java b/ff-game/src/main/java/com/ff/base/enums/GPXGameType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/GPXGameType.java rename to ff-game/src/main/java/com/ff/base/enums/GPXGameType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/GameExchangeStep.java b/ff-game/src/main/java/com/ff/base/enums/GameExchangeStep.java similarity index 96% rename from ff-base/src/main/java/com/ff/base/enums/GameExchangeStep.java rename to ff-game/src/main/java/com/ff/base/enums/GameExchangeStep.java index 2f13939..3b238d0 100644 --- a/ff-base/src/main/java/com/ff/base/enums/GameExchangeStep.java +++ b/ff-game/src/main/java/com/ff/base/enums/GameExchangeStep.java @@ -2,7 +2,6 @@ package com.ff.base.enums; import lombok.AllArgsConstructor; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/GameExchangeStepStatus.java b/ff-game/src/main/java/com/ff/base/enums/GameExchangeStepStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/GameExchangeStepStatus.java rename to ff-game/src/main/java/com/ff/base/enums/GameExchangeStepStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/GameMemberStatus.java b/ff-game/src/main/java/com/ff/base/enums/GameMemberStatus.java similarity index 95% rename from ff-base/src/main/java/com/ff/base/enums/GameMemberStatus.java rename to ff-game/src/main/java/com/ff/base/enums/GameMemberStatus.java index bbf2486..4f96779 100644 --- a/ff-base/src/main/java/com/ff/base/enums/GameMemberStatus.java +++ b/ff-game/src/main/java/com/ff/base/enums/GameMemberStatus.java @@ -1,6 +1,5 @@ package com.ff.base.enums; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/GamePlatforms.java b/ff-game/src/main/java/com/ff/base/enums/GamePlatforms.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/GamePlatforms.java rename to ff-game/src/main/java/com/ff/base/enums/GamePlatforms.java diff --git a/ff-base/src/main/java/com/ff/base/enums/GameStatus.java b/ff-game/src/main/java/com/ff/base/enums/GameStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/GameStatus.java rename to ff-game/src/main/java/com/ff/base/enums/GameStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/HttpMethod.java b/ff-game/src/main/java/com/ff/base/enums/HttpMethod.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/HttpMethod.java rename to ff-game/src/main/java/com/ff/base/enums/HttpMethod.java diff --git a/ff-base/src/main/java/com/ff/base/enums/IngressType.java b/ff-game/src/main/java/com/ff/base/enums/IngressType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/IngressType.java rename to ff-game/src/main/java/com/ff/base/enums/IngressType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/InviteType.java b/ff-game/src/main/java/com/ff/base/enums/InviteType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/InviteType.java rename to ff-game/src/main/java/com/ff/base/enums/InviteType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/InviterRegisterStatus.java b/ff-game/src/main/java/com/ff/base/enums/InviterRegisterStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/InviterRegisterStatus.java rename to ff-game/src/main/java/com/ff/base/enums/InviterRegisterStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/JILIGameType.java b/ff-game/src/main/java/com/ff/base/enums/JILIGameType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/JILIGameType.java rename to ff-game/src/main/java/com/ff/base/enums/JILIGameType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/KMGameType.java b/ff-game/src/main/java/com/ff/base/enums/KMGameType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/KMGameType.java rename to ff-game/src/main/java/com/ff/base/enums/KMGameType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/LimitType.java b/ff-game/src/main/java/com/ff/base/enums/LimitType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/LimitType.java rename to ff-game/src/main/java/com/ff/base/enums/LimitType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/LoginType.java b/ff-game/src/main/java/com/ff/base/enums/LoginType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/LoginType.java rename to ff-game/src/main/java/com/ff/base/enums/LoginType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/MeiTianGameType.java b/ff-game/src/main/java/com/ff/base/enums/MeiTianGameType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/MeiTianGameType.java rename to ff-game/src/main/java/com/ff/base/enums/MeiTianGameType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/MemberStatus.java b/ff-game/src/main/java/com/ff/base/enums/MemberStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/MemberStatus.java rename to ff-game/src/main/java/com/ff/base/enums/MemberStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/NGGameType.java b/ff-game/src/main/java/com/ff/base/enums/NGGameType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/NGGameType.java rename to ff-game/src/main/java/com/ff/base/enums/NGGameType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/NGPlatforms.java b/ff-game/src/main/java/com/ff/base/enums/NGPlatforms.java similarity index 94% rename from ff-base/src/main/java/com/ff/base/enums/NGPlatforms.java rename to ff-game/src/main/java/com/ff/base/enums/NGPlatforms.java index 493017f..7facd60 100644 --- a/ff-base/src/main/java/com/ff/base/enums/NGPlatforms.java +++ b/ff-game/src/main/java/com/ff/base/enums/NGPlatforms.java @@ -2,12 +2,9 @@ package com.ff.base.enums; import lombok.Getter; -import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Optional; import java.util.stream.Collectors; -import java.util.stream.Stream; /** * ng平台 支持游戏 diff --git a/ff-base/src/main/java/com/ff/base/enums/NGSettlementStatusEnum.java b/ff-game/src/main/java/com/ff/base/enums/NGSettlementStatusEnum.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/NGSettlementStatusEnum.java rename to ff-game/src/main/java/com/ff/base/enums/NGSettlementStatusEnum.java diff --git a/ff-base/src/main/java/com/ff/base/enums/NGTransferType.java b/ff-game/src/main/java/com/ff/base/enums/NGTransferType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/NGTransferType.java rename to ff-game/src/main/java/com/ff/base/enums/NGTransferType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/OperationType.java b/ff-game/src/main/java/com/ff/base/enums/OperationType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/OperationType.java rename to ff-game/src/main/java/com/ff/base/enums/OperationType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/OperatorType.java b/ff-game/src/main/java/com/ff/base/enums/OperatorType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/OperatorType.java rename to ff-game/src/main/java/com/ff/base/enums/OperatorType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/PGTBetStatus.java b/ff-game/src/main/java/com/ff/base/enums/PGTBetStatus.java similarity index 95% rename from ff-base/src/main/java/com/ff/base/enums/PGTBetStatus.java rename to ff-game/src/main/java/com/ff/base/enums/PGTBetStatus.java index f5537c2..6743692 100644 --- a/ff-base/src/main/java/com/ff/base/enums/PGTBetStatus.java +++ b/ff-game/src/main/java/com/ff/base/enums/PGTBetStatus.java @@ -1,7 +1,6 @@ package com.ff.base.enums; import lombok.AllArgsConstructor; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/PGTGameType.java b/ff-game/src/main/java/com/ff/base/enums/PGTGameType.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/enums/PGTGameType.java rename to ff-game/src/main/java/com/ff/base/enums/PGTGameType.java index 94ebdb1..38ab970 100644 --- a/ff-base/src/main/java/com/ff/base/enums/PGTGameType.java +++ b/ff-game/src/main/java/com/ff/base/enums/PGTGameType.java @@ -1,7 +1,6 @@ package com.ff.base.enums; import lombok.AllArgsConstructor; -import lombok.Data; import lombok.Getter; import java.util.Optional; diff --git a/ff-base/src/main/java/com/ff/base/enums/PGTPayoutStatus.java b/ff-game/src/main/java/com/ff/base/enums/PGTPayoutStatus.java similarity index 91% rename from ff-base/src/main/java/com/ff/base/enums/PGTPayoutStatus.java rename to ff-game/src/main/java/com/ff/base/enums/PGTPayoutStatus.java index 7c62692..3db1a1a 100644 --- a/ff-base/src/main/java/com/ff/base/enums/PGTPayoutStatus.java +++ b/ff-game/src/main/java/com/ff/base/enums/PGTPayoutStatus.java @@ -1,8 +1,6 @@ package com.ff.base.enums; -import com.dtflys.forest.annotation.Get; import lombok.AllArgsConstructor; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/PGXBetRecordStatus.java b/ff-game/src/main/java/com/ff/base/enums/PGXBetRecordStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/PGXBetRecordStatus.java rename to ff-game/src/main/java/com/ff/base/enums/PGXBetRecordStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/PGXTransactionStatus.java b/ff-game/src/main/java/com/ff/base/enums/PGXTransactionStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/PGXTransactionStatus.java rename to ff-game/src/main/java/com/ff/base/enums/PGXTransactionStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/PGXTransferType.java b/ff-game/src/main/java/com/ff/base/enums/PGXTransferType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/PGXTransferType.java rename to ff-game/src/main/java/com/ff/base/enums/PGXTransferType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/PlatformHomeType.java b/ff-game/src/main/java/com/ff/base/enums/PlatformHomeType.java similarity index 95% rename from ff-base/src/main/java/com/ff/base/enums/PlatformHomeType.java rename to ff-game/src/main/java/com/ff/base/enums/PlatformHomeType.java index 2f151d1..aac017d 100644 --- a/ff-base/src/main/java/com/ff/base/enums/PlatformHomeType.java +++ b/ff-game/src/main/java/com/ff/base/enums/PlatformHomeType.java @@ -1,6 +1,5 @@ package com.ff.base.enums; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/PlatformType.java b/ff-game/src/main/java/com/ff/base/enums/PlatformType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/PlatformType.java rename to ff-game/src/main/java/com/ff/base/enums/PlatformType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/QuotaType.java b/ff-game/src/main/java/com/ff/base/enums/QuotaType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/QuotaType.java rename to ff-game/src/main/java/com/ff/base/enums/QuotaType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/SAGameType.java b/ff-game/src/main/java/com/ff/base/enums/SAGameType.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/enums/SAGameType.java rename to ff-game/src/main/java/com/ff/base/enums/SAGameType.java index 2171f23..be4d9e7 100644 --- a/ff-base/src/main/java/com/ff/base/enums/SAGameType.java +++ b/ff-game/src/main/java/com/ff/base/enums/SAGameType.java @@ -1,7 +1,6 @@ package com.ff.base.enums; import lombok.AllArgsConstructor; -import lombok.Data; import lombok.Getter; /** diff --git a/ff-base/src/main/java/com/ff/base/enums/SettlementStatusEnum.java b/ff-game/src/main/java/com/ff/base/enums/SettlementStatusEnum.java similarity index 94% rename from ff-base/src/main/java/com/ff/base/enums/SettlementStatusEnum.java rename to ff-game/src/main/java/com/ff/base/enums/SettlementStatusEnum.java index 5a90261..c6793f5 100644 --- a/ff-base/src/main/java/com/ff/base/enums/SettlementStatusEnum.java +++ b/ff-game/src/main/java/com/ff/base/enums/SettlementStatusEnum.java @@ -3,8 +3,6 @@ package com.ff.base.enums; import lombok.AllArgsConstructor; import lombok.Getter; -import java.util.Arrays; - /** * 结算状态枚举 * diff --git a/ff-base/src/main/java/com/ff/base/enums/Status.java b/ff-game/src/main/java/com/ff/base/enums/Status.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/Status.java rename to ff-game/src/main/java/com/ff/base/enums/Status.java diff --git a/ff-base/src/main/java/com/ff/base/enums/StatusType.java b/ff-game/src/main/java/com/ff/base/enums/StatusType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/StatusType.java rename to ff-game/src/main/java/com/ff/base/enums/StatusType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/TenantQuotaType.java b/ff-game/src/main/java/com/ff/base/enums/TenantQuotaType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/TenantQuotaType.java rename to ff-game/src/main/java/com/ff/base/enums/TenantQuotaType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/TenantType.java b/ff-game/src/main/java/com/ff/base/enums/TenantType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/TenantType.java rename to ff-game/src/main/java/com/ff/base/enums/TenantType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/TransferType.java b/ff-game/src/main/java/com/ff/base/enums/TransferType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/TransferType.java rename to ff-game/src/main/java/com/ff/base/enums/TransferType.java diff --git a/ff-base/src/main/java/com/ff/base/enums/UserStatus.java b/ff-game/src/main/java/com/ff/base/enums/UserStatus.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/UserStatus.java rename to ff-game/src/main/java/com/ff/base/enums/UserStatus.java diff --git a/ff-base/src/main/java/com/ff/base/enums/XKGameType.java b/ff-game/src/main/java/com/ff/base/enums/XKGameType.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/enums/XKGameType.java rename to ff-game/src/main/java/com/ff/base/enums/XKGameType.java diff --git a/ff-base/src/main/java/com/ff/base/exception/DemoModeException.java b/ff-game/src/main/java/com/ff/base/exception/DemoModeException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/DemoModeException.java rename to ff-game/src/main/java/com/ff/base/exception/DemoModeException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/GlobalException.java b/ff-game/src/main/java/com/ff/base/exception/GlobalException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/GlobalException.java rename to ff-game/src/main/java/com/ff/base/exception/GlobalException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/ServiceException.java b/ff-game/src/main/java/com/ff/base/exception/ServiceException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/ServiceException.java rename to ff-game/src/main/java/com/ff/base/exception/ServiceException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/UtilException.java b/ff-game/src/main/java/com/ff/base/exception/UtilException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/UtilException.java rename to ff-game/src/main/java/com/ff/base/exception/UtilException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/base/ApiException.java b/ff-game/src/main/java/com/ff/base/exception/base/ApiException.java similarity index 94% rename from ff-base/src/main/java/com/ff/base/exception/base/ApiException.java rename to ff-game/src/main/java/com/ff/base/exception/base/ApiException.java index f4b91c9..ba94f9b 100644 --- a/ff-base/src/main/java/com/ff/base/exception/base/ApiException.java +++ b/ff-game/src/main/java/com/ff/base/exception/base/ApiException.java @@ -1,8 +1,6 @@ package com.ff.base.exception.base; import com.ff.base.enums.ErrorCode; -import com.ff.base.utils.MessageUtils; -import com.ff.base.utils.StringUtils; import lombok.Getter; import org.springframework.lang.Nullable; diff --git a/ff-base/src/main/java/com/ff/base/exception/base/BaseException.java b/ff-game/src/main/java/com/ff/base/exception/base/BaseException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/base/BaseException.java rename to ff-game/src/main/java/com/ff/base/exception/base/BaseException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/file/FileException.java b/ff-game/src/main/java/com/ff/base/exception/file/FileException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/file/FileException.java rename to ff-game/src/main/java/com/ff/base/exception/file/FileException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/file/FileNameLengthLimitExceededException.java b/ff-game/src/main/java/com/ff/base/exception/file/FileNameLengthLimitExceededException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/file/FileNameLengthLimitExceededException.java rename to ff-game/src/main/java/com/ff/base/exception/file/FileNameLengthLimitExceededException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/file/FileSizeLimitExceededException.java b/ff-game/src/main/java/com/ff/base/exception/file/FileSizeLimitExceededException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/file/FileSizeLimitExceededException.java rename to ff-game/src/main/java/com/ff/base/exception/file/FileSizeLimitExceededException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/file/FileUploadException.java b/ff-game/src/main/java/com/ff/base/exception/file/FileUploadException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/file/FileUploadException.java rename to ff-game/src/main/java/com/ff/base/exception/file/FileUploadException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/file/InvalidExtensionException.java b/ff-game/src/main/java/com/ff/base/exception/file/InvalidExtensionException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/file/InvalidExtensionException.java rename to ff-game/src/main/java/com/ff/base/exception/file/InvalidExtensionException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/job/TaskException.java b/ff-game/src/main/java/com/ff/base/exception/job/TaskException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/job/TaskException.java rename to ff-game/src/main/java/com/ff/base/exception/job/TaskException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/user/BlackListException.java b/ff-game/src/main/java/com/ff/base/exception/user/BlackListException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/user/BlackListException.java rename to ff-game/src/main/java/com/ff/base/exception/user/BlackListException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/user/CaptchaException.java b/ff-game/src/main/java/com/ff/base/exception/user/CaptchaException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/user/CaptchaException.java rename to ff-game/src/main/java/com/ff/base/exception/user/CaptchaException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java b/ff-game/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java similarity index 85% rename from ff-base/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java rename to ff-game/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java index fedd22f..93650b6 100644 --- a/ff-base/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java +++ b/ff-game/src/main/java/com/ff/base/exception/user/CaptchaExpireException.java @@ -1,7 +1,5 @@ package com.ff.base.exception.user; -import com.ff.base.exception.user.UserException; - /** * 验证码失效异常类 * diff --git a/ff-base/src/main/java/com/ff/base/exception/user/UserException.java b/ff-game/src/main/java/com/ff/base/exception/user/UserException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/user/UserException.java rename to ff-game/src/main/java/com/ff/base/exception/user/UserException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/user/UserNotExistsException.java b/ff-game/src/main/java/com/ff/base/exception/user/UserNotExistsException.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/exception/user/UserNotExistsException.java rename to ff-game/src/main/java/com/ff/base/exception/user/UserNotExistsException.java diff --git a/ff-base/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java b/ff-game/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java similarity index 87% rename from ff-base/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java rename to ff-game/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java index 44f7646..569c436 100644 --- a/ff-base/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java +++ b/ff-game/src/main/java/com/ff/base/exception/user/UserPasswordNotMatchException.java @@ -1,7 +1,5 @@ package com.ff.base.exception.user; -import com.ff.base.exception.user.UserException; - /** * 用户密码不正确或不符合规范异常类 * diff --git a/ff-base/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java b/ff-game/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java similarity index 89% rename from ff-base/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java rename to ff-game/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java index e867112..07f1d5f 100644 --- a/ff-base/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java +++ b/ff-game/src/main/java/com/ff/base/exception/user/UserPasswordRetryLimitExceedException.java @@ -1,7 +1,5 @@ package com.ff.base.exception.user; -import com.ff.base.exception.user.UserException; - /** * 用户错误最大次数异常类 * diff --git a/ff-base/src/main/java/com/ff/base/filter/PropertyPreExcludeFilter.java b/ff-game/src/main/java/com/ff/base/filter/PropertyPreExcludeFilter.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/filter/PropertyPreExcludeFilter.java rename to ff-game/src/main/java/com/ff/base/filter/PropertyPreExcludeFilter.java diff --git a/ff-base/src/main/java/com/ff/base/filter/RepeatableFilter.java b/ff-game/src/main/java/com/ff/base/filter/RepeatableFilter.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/filter/RepeatableFilter.java rename to ff-game/src/main/java/com/ff/base/filter/RepeatableFilter.java diff --git a/ff-base/src/main/java/com/ff/base/filter/RepeatedlyRequestWrapper.java b/ff-game/src/main/java/com/ff/base/filter/RepeatedlyRequestWrapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/filter/RepeatedlyRequestWrapper.java rename to ff-game/src/main/java/com/ff/base/filter/RepeatedlyRequestWrapper.java diff --git a/ff-base/src/main/java/com/ff/base/filter/XssFilter.java b/ff-game/src/main/java/com/ff/base/filter/XssFilter.java similarity index 97% rename from ff-base/src/main/java/com/ff/base/filter/XssFilter.java rename to ff-game/src/main/java/com/ff/base/filter/XssFilter.java index c0ccba2..3acdf80 100644 --- a/ff-base/src/main/java/com/ff/base/filter/XssFilter.java +++ b/ff-game/src/main/java/com/ff/base/filter/XssFilter.java @@ -1,7 +1,6 @@ package com.ff.base.filter; import com.ff.base.enums.HttpMethod; -import com.ff.base.filter.XssHttpServletRequestWrapper; import com.ff.base.utils.StringUtils; import javax.servlet.*; diff --git a/ff-base/src/main/java/com/ff/base/filter/XssHttpServletRequestWrapper.java b/ff-game/src/main/java/com/ff/base/filter/XssHttpServletRequestWrapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/filter/XssHttpServletRequestWrapper.java rename to ff-game/src/main/java/com/ff/base/filter/XssHttpServletRequestWrapper.java diff --git a/ff-base/src/main/java/com/ff/base/handler/JsonHandler.java b/ff-game/src/main/java/com/ff/base/handler/JsonHandler.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/handler/JsonHandler.java rename to ff-game/src/main/java/com/ff/base/handler/JsonHandler.java diff --git a/ff-base/src/main/java/com/ff/base/handler/JsonListHandler.java b/ff-game/src/main/java/com/ff/base/handler/JsonListHandler.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/handler/JsonListHandler.java rename to ff-game/src/main/java/com/ff/base/handler/JsonListHandler.java diff --git a/ff-base/src/main/java/com/ff/base/interceptor/DataSourceSwitchInterceptor.java b/ff-game/src/main/java/com/ff/base/interceptor/DataSourceSwitchInterceptor.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/interceptor/DataSourceSwitchInterceptor.java rename to ff-game/src/main/java/com/ff/base/interceptor/DataSourceSwitchInterceptor.java diff --git a/ff-base/src/main/java/com/ff/base/interceptor/RepeatSubmitInterceptor.java b/ff-game/src/main/java/com/ff/base/interceptor/RepeatSubmitInterceptor.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/interceptor/RepeatSubmitInterceptor.java rename to ff-game/src/main/java/com/ff/base/interceptor/RepeatSubmitInterceptor.java diff --git a/ff-base/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java b/ff-game/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java rename to ff-game/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java index 6272255..121ffdf 100644 --- a/ff-base/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java +++ b/ff-game/src/main/java/com/ff/base/interceptor/impl/SameUrlDataInterceptor.java @@ -5,9 +5,9 @@ import com.ff.base.annotation.RepeatSubmit; import com.ff.base.constant.CacheConstants; import com.ff.base.core.redis.RedisCache; import com.ff.base.filter.RepeatedlyRequestWrapper; +import com.ff.base.interceptor.RepeatSubmitInterceptor; import com.ff.base.utils.StringUtils; import com.ff.base.utils.http.HttpHelper; -import com.ff.base.interceptor.RepeatSubmitInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; diff --git a/ff-base/src/main/java/com/ff/base/manager/AsyncManager.java b/ff-game/src/main/java/com/ff/base/manager/AsyncManager.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/manager/AsyncManager.java rename to ff-game/src/main/java/com/ff/base/manager/AsyncManager.java index 4e2458f..3e1fb32 100644 --- a/ff-base/src/main/java/com/ff/base/manager/AsyncManager.java +++ b/ff-game/src/main/java/com/ff/base/manager/AsyncManager.java @@ -2,6 +2,7 @@ package com.ff.base.manager; import com.ff.base.utils.Threads; import com.ff.base.utils.spring.SpringUtils; + import java.util.TimerTask; import java.util.concurrent.Callable; import java.util.concurrent.Future; diff --git a/ff-base/src/main/java/com/ff/base/manager/ShutdownManager.java b/ff-game/src/main/java/com/ff/base/manager/ShutdownManager.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/manager/ShutdownManager.java rename to ff-game/src/main/java/com/ff/base/manager/ShutdownManager.java diff --git a/ff-base/src/main/java/com/ff/base/manager/factory/AsyncFactory.java b/ff-game/src/main/java/com/ff/base/manager/factory/AsyncFactory.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/manager/factory/AsyncFactory.java rename to ff-game/src/main/java/com/ff/base/manager/factory/AsyncFactory.java index c3f1ea8..0c4f92d 100644 --- a/ff-base/src/main/java/com/ff/base/manager/factory/AsyncFactory.java +++ b/ff-game/src/main/java/com/ff/base/manager/factory/AsyncFactory.java @@ -1,16 +1,16 @@ package com.ff.base.manager.factory; import com.ff.base.constant.Constants; +import com.ff.base.system.domain.SysLogininfor; +import com.ff.base.system.domain.SysOperLog; +import com.ff.base.system.service.ISysLogininforService; +import com.ff.base.system.service.ISysOperLogService; import com.ff.base.utils.LogUtils; import com.ff.base.utils.ServletUtils; import com.ff.base.utils.StringUtils; import com.ff.base.utils.ip.AddressUtils; import com.ff.base.utils.ip.IpUtils; import com.ff.base.utils.spring.SpringUtils; -import com.ff.base.system.domain.SysLogininfor; -import com.ff.base.system.domain.SysOperLog; -import com.ff.base.system.service.ISysLogininforService; -import com.ff.base.system.service.ISysOperLogService; import eu.bitwalker.useragentutils.UserAgent; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/ff-base/src/main/java/com/ff/base/security/context/AuthenticationContextHolder.java b/ff-game/src/main/java/com/ff/base/security/context/AuthenticationContextHolder.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/security/context/AuthenticationContextHolder.java rename to ff-game/src/main/java/com/ff/base/security/context/AuthenticationContextHolder.java diff --git a/ff-base/src/main/java/com/ff/base/security/context/PermissionContextHolder.java b/ff-game/src/main/java/com/ff/base/security/context/PermissionContextHolder.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/security/context/PermissionContextHolder.java rename to ff-game/src/main/java/com/ff/base/security/context/PermissionContextHolder.java diff --git a/ff-base/src/main/java/com/ff/base/security/encode/CustomMd5PasswordEncoder.java b/ff-game/src/main/java/com/ff/base/security/encode/CustomMd5PasswordEncoder.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/security/encode/CustomMd5PasswordEncoder.java rename to ff-game/src/main/java/com/ff/base/security/encode/CustomMd5PasswordEncoder.java diff --git a/ff-base/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java b/ff-game/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java rename to ff-game/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java index 3a359a6..4ef7410 100644 --- a/ff-base/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java +++ b/ff-game/src/main/java/com/ff/base/security/filter/JwtAuthenticationTokenFilter.java @@ -5,7 +5,6 @@ import com.ff.base.constant.HttpStatus; import com.ff.base.core.domain.AjaxResult; import com.ff.base.core.domain.model.LoginUser; import com.ff.base.core.redis.RedisCache; -import com.ff.base.datasource.DynamicDataSourceContextHolder; import com.ff.base.enums.MemberStatus; import com.ff.base.utils.SecurityUtils; import com.ff.base.utils.ServletUtils; diff --git a/ff-base/src/main/java/com/ff/base/security/handle/AuthenticationEntryPointImpl.java b/ff-game/src/main/java/com/ff/base/security/handle/AuthenticationEntryPointImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/security/handle/AuthenticationEntryPointImpl.java rename to ff-game/src/main/java/com/ff/base/security/handle/AuthenticationEntryPointImpl.java diff --git a/ff-base/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java b/ff-game/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java rename to ff-game/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java index fedf15d..1e36e91 100644 --- a/ff-base/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java +++ b/ff-game/src/main/java/com/ff/base/security/handle/LogoutSuccessHandlerImpl.java @@ -4,11 +4,11 @@ import com.alibaba.fastjson2.JSON; import com.ff.base.constant.Constants; import com.ff.base.core.domain.AjaxResult; import com.ff.base.core.domain.model.LoginUser; +import com.ff.base.manager.AsyncManager; +import com.ff.base.manager.factory.AsyncFactory; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.ServletUtils; import com.ff.base.utils.StringUtils; -import com.ff.base.manager.AsyncManager; -import com.ff.base.manager.factory.AsyncFactory; import com.ff.base.web.service.TokenService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; diff --git a/ff-base/src/main/java/com/ff/base/security/provider/MyDaoAuthenticationProvider.java b/ff-game/src/main/java/com/ff/base/security/provider/MyDaoAuthenticationProvider.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/security/provider/MyDaoAuthenticationProvider.java rename to ff-game/src/main/java/com/ff/base/security/provider/MyDaoAuthenticationProvider.java diff --git a/ff-base/src/main/java/com/ff/base/system/domain/vo/MetaVo.java b/ff-game/src/main/java/com/ff/base/system/domain/vo/MetaVo.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/domain/vo/MetaVo.java rename to ff-game/src/main/java/com/ff/base/system/domain/vo/MetaVo.java index cebed56..62bc0b2 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/vo/MetaVo.java +++ b/ff-game/src/main/java/com/ff/base/system/domain/vo/MetaVo.java @@ -1,5 +1,6 @@ package com.ff.base.system.domain.vo; + import com.ff.base.utils.StringUtils; /** diff --git a/ff-base/src/main/java/com/ff/base/system/domain/vo/RouterVo.java b/ff-game/src/main/java/com/ff/base/system/domain/vo/RouterVo.java similarity index 67% rename from ff-base/src/main/java/com/ff/base/system/domain/vo/RouterVo.java rename to ff-game/src/main/java/com/ff/base/system/domain/vo/RouterVo.java index 352cf6e..f69212c 100644 --- a/ff-base/src/main/java/com/ff/base/system/domain/vo/RouterVo.java +++ b/ff-game/src/main/java/com/ff/base/system/domain/vo/RouterVo.java @@ -10,8 +10,7 @@ import java.util.List; * @author ff */ @JsonInclude(JsonInclude.Include.NON_EMPTY) -public class RouterVo -{ +public class RouterVo { /** * 路由名字 */ @@ -57,93 +56,75 @@ public class RouterVo */ private List children; - public String getName() - { + public String getName() { return name; } - public void setName(String name) - { + public void setName(String name) { this.name = name; } - public String getPath() - { + public String getPath() { return path; } - public void setPath(String path) - { + public void setPath(String path) { this.path = path; } - public boolean getHidden() - { + public boolean getHidden() { return hidden; } - public void setHidden(boolean hidden) - { + public void setHidden(boolean hidden) { this.hidden = hidden; } - public String getRedirect() - { + public String getRedirect() { return redirect; } - public void setRedirect(String redirect) - { + public void setRedirect(String redirect) { this.redirect = redirect; } - public String getComponent() - { + public String getComponent() { return component; } - public void setComponent(String component) - { + public void setComponent(String component) { this.component = component; } - public String getQuery() - { + public String getQuery() { return query; } - public void setQuery(String query) - { + public void setQuery(String query) { this.query = query; } - public Boolean getAlwaysShow() - { + public Boolean getAlwaysShow() { return alwaysShow; } - public void setAlwaysShow(Boolean alwaysShow) - { + public void setAlwaysShow(Boolean alwaysShow) { this.alwaysShow = alwaysShow; } - public MetaVo getMeta() - { + public MetaVo getMeta() { return meta; } - public void setMeta(MetaVo meta) - { + public void setMeta(MetaVo meta) { this.meta = meta; } - public List getChildren() - { + public List getChildren() { return children; } - public void setChildren(List children) - { + public void setChildren(List children) { this.children = children; } } diff --git a/ff-base/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java b/ff-game/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java similarity index 95% rename from ff-base/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java rename to ff-game/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java index 458782f..dc08d56 100644 --- a/ff-base/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java +++ b/ff-game/src/main/java/com/ff/base/system/dto/CreateTenantDTO.java @@ -2,10 +2,8 @@ package com.ff.base.system.dto; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; import com.ff.base.system.domain.TenantPlatform; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; diff --git a/ff-base/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java b/ff-game/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java similarity index 57% rename from ff-base/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java rename to ff-game/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java index 9594eeb..6bb12e1 100644 --- a/ff-base/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java +++ b/ff-game/src/main/java/com/ff/base/system/dto/TenantSecretKeyDTO.java @@ -1,14 +1,7 @@ package com.ff.base.system.dto; -import com.ff.base.annotation.Excel; -import com.ff.base.core.domain.BaseEntity; import com.ff.base.system.domain.TenantSecretKey; -import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; /** * 用户租户密钥对象 ff_tenant_secret_key diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysConfigMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysConfigMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysConfigMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysConfigMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysDatasourceMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysDatasourceMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysDatasourceMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysDatasourceMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysDeptMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysDeptMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysDeptMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysDeptMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysDictDataMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysDictDataMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysDictDataMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysDictDataMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysDictTypeMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysDictTypeMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysDictTypeMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysDictTypeMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysLogininforMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysLogininforMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysLogininforMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysLogininforMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java similarity index 97% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java index 07a3a45..b859ba9 100644 --- a/ff-base/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java +++ b/ff-game/src/main/java/com/ff/base/system/mapper/SysMenuMapper.java @@ -1,11 +1,9 @@ package com.ff.base.system.mapper; import com.ff.base.system.domain.SysMenu; -import com.ff.base.system.domain.SysRole; import org.apache.ibatis.annotations.Param; import java.util.List; -import java.util.Set; /** * 菜单表 数据层 diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysOperLogMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysOperLogMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysOperLogMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysOperLogMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysPostMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysPostMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysPostMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysPostMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysRoleDeptMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysRoleDeptMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysRoleDeptMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysRoleDeptMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java index 939add2..bd7194d 100644 --- a/ff-base/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java +++ b/ff-game/src/main/java/com/ff/base/system/mapper/SysRoleMapper.java @@ -2,7 +2,6 @@ package com.ff.base.system.mapper; import com.ff.base.system.domain.SysRole; -import javax.management.relation.Role; import java.util.List; /** diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysRoleMenuMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysRoleMenuMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysRoleMenuMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysRoleMenuMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysUserMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysUserMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysUserMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysUserMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysUserPostMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysUserPostMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysUserPostMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysUserPostMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/SysUserRoleMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/SysUserRoleMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/SysUserRoleMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/SysUserRoleMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/TenantAgentMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/TenantAgentMapper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/mapper/TenantAgentMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/TenantAgentMapper.java diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java index 4a24981..b0c5164 100644 --- a/ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java +++ b/ff-game/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java @@ -1,8 +1,9 @@ package com.ff.base.system.mapper; -import java.util.List; import com.ff.base.system.domain.TenantPlatform; +import java.util.List; + /** * 租户成本管理Mapper接口 * diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java index bb74dd5..dcd368c 100644 --- a/ff-base/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java +++ b/ff-game/src/main/java/com/ff/base/system/mapper/TenantSecretKeyMapper.java @@ -1,9 +1,10 @@ package com.ff.base.system.mapper; -import java.util.List; import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.dto.TenantSecretKeyDTO; +import java.util.List; + /** * 用户租户密钥Mapper接口 * diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java b/ff-game/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java rename to ff-game/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java index 310db8a..b9cebe5 100644 --- a/ff-base/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java +++ b/ff-game/src/main/java/com/ff/base/system/mapper/TenantWhiteMapper.java @@ -1,8 +1,9 @@ package com.ff.base.system.mapper; -import java.util.List; import com.ff.base.system.domain.TenantWhite; +import java.util.List; + /** * 租户白名单Mapper接口 * diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysConfigService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysConfigService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysConfigService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysConfigService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysDatasourceService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysDatasourceService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysDatasourceService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysDatasourceService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysDeptService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysDeptService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysDeptService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysDeptService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysDictDataService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysDictDataService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysDictDataService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysDictDataService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysDictTypeService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysDictTypeService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysDictTypeService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysDictTypeService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysLogininforService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysLogininforService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysLogininforService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysLogininforService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysMenuService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysMenuService.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/system/service/ISysMenuService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysMenuService.java index 5ade323..6cacb09 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/ISysMenuService.java +++ b/ff-game/src/main/java/com/ff/base/system/service/ISysMenuService.java @@ -2,7 +2,6 @@ package com.ff.base.system.service; import com.ff.base.core.domain.TreeSelect; import com.ff.base.system.domain.SysMenu; -import com.ff.base.system.domain.SysRole; import com.ff.base.system.domain.vo.RouterVo; import java.util.List; diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysOperLogService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysOperLogService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysOperLogService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysOperLogService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysPostService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysPostService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysPostService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysPostService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysRoleService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysRoleService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysRoleService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysRoleService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysUserOnlineService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysUserOnlineService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysUserOnlineService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysUserOnlineService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ISysUserService.java b/ff-game/src/main/java/com/ff/base/system/service/ISysUserService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ISysUserService.java rename to ff-game/src/main/java/com/ff/base/system/service/ISysUserService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ITenantAgentService.java b/ff-game/src/main/java/com/ff/base/system/service/ITenantAgentService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/ITenantAgentService.java rename to ff-game/src/main/java/com/ff/base/system/service/ITenantAgentService.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java b/ff-game/src/main/java/com/ff/base/system/service/ITenantPlatformService.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java rename to ff-game/src/main/java/com/ff/base/system/service/ITenantPlatformService.java index 786cbc7..b4bb439 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java +++ b/ff-game/src/main/java/com/ff/base/system/service/ITenantPlatformService.java @@ -1,8 +1,9 @@ package com.ff.base.system.service; -import java.util.List; import com.ff.base.system.domain.TenantPlatform; +import java.util.List; + /** * 租户成本管理Service接口 * diff --git a/ff-base/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java b/ff-game/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java rename to ff-game/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java index f94fa3a..bde044e 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java +++ b/ff-game/src/main/java/com/ff/base/system/service/ITenantSecretKeyService.java @@ -1,10 +1,11 @@ package com.ff.base.system.service; -import java.util.List; import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.dto.CreateTenantDTO; import com.ff.base.system.dto.TenantSecretKeyDTO; +import java.util.List; + /** * 用户租户密钥Service接口 * diff --git a/ff-base/src/main/java/com/ff/base/system/service/ITenantWhiteService.java b/ff-game/src/main/java/com/ff/base/system/service/ITenantWhiteService.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/service/ITenantWhiteService.java rename to ff-game/src/main/java/com/ff/base/system/service/ITenantWhiteService.java index 75061a5..e0ed357 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/ITenantWhiteService.java +++ b/ff-game/src/main/java/com/ff/base/system/service/ITenantWhiteService.java @@ -1,8 +1,9 @@ package com.ff.base.system.service; -import java.util.List; import com.ff.base.system.domain.TenantWhite; +import java.util.List; + /** * 租户白名单Service接口 * diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysConfigServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysConfigServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysConfigServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysConfigServiceImpl.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysDatasourceServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysDatasourceServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysDatasourceServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysDatasourceServiceImpl.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java index f477f55..abfa435 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysDeptServiceImpl.java @@ -4,17 +4,17 @@ import cn.hutool.core.util.IdUtil; import com.ff.base.annotation.DataScope; import com.ff.base.constant.UserConstants; import com.ff.base.core.domain.TreeSelect; +import com.ff.base.core.text.Convert; +import com.ff.base.exception.ServiceException; import com.ff.base.system.domain.SysDept; import com.ff.base.system.domain.SysRole; import com.ff.base.system.domain.SysUser; -import com.ff.base.core.text.Convert; -import com.ff.base.exception.ServiceException; -import com.ff.base.utils.SecurityUtils; -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.spring.SpringUtils; import com.ff.base.system.mapper.SysDeptMapper; import com.ff.base.system.mapper.SysRoleMapper; import com.ff.base.system.service.ISysDeptService; +import com.ff.base.utils.SecurityUtils; +import com.ff.base.utils.StringUtils; +import com.ff.base.utils.spring.SpringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java index 4271437..33c52b6 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysDictDataServiceImpl.java @@ -2,9 +2,9 @@ package com.ff.base.system.service.impl; import cn.hutool.core.util.IdUtil; import com.ff.base.system.domain.SysDictData; -import com.ff.base.utils.DictUtils; import com.ff.base.system.mapper.SysDictDataMapper; import com.ff.base.system.service.ISysDictDataService; +import com.ff.base.utils.DictUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysDictTypeServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysDictTypeServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysDictTypeServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysDictTypeServiceImpl.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysLogininforServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysLogininforServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysLogininforServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysLogininforServiceImpl.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java index 6e65523..d6cab51 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysMenuServiceImpl.java @@ -7,14 +7,14 @@ import com.ff.base.core.domain.TreeSelect; import com.ff.base.system.domain.SysMenu; import com.ff.base.system.domain.SysRole; import com.ff.base.system.domain.SysUser; -import com.ff.base.utils.SecurityUtils; -import com.ff.base.utils.StringUtils; import com.ff.base.system.domain.vo.MetaVo; import com.ff.base.system.domain.vo.RouterVo; import com.ff.base.system.mapper.SysMenuMapper; import com.ff.base.system.mapper.SysRoleMapper; import com.ff.base.system.mapper.SysRoleMenuMapper; import com.ff.base.system.service.ISysMenuService; +import com.ff.base.utils.SecurityUtils; +import com.ff.base.utils.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysOperLogServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysOperLogServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysOperLogServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysOperLogServiceImpl.java diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java index dc4d830..42d3a7d 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysPostServiceImpl.java @@ -3,11 +3,11 @@ package com.ff.base.system.service.impl; import cn.hutool.core.util.IdUtil; import com.ff.base.constant.UserConstants; import com.ff.base.exception.ServiceException; -import com.ff.base.utils.StringUtils; import com.ff.base.system.domain.SysPost; import com.ff.base.system.mapper.SysPostMapper; import com.ff.base.system.mapper.SysUserPostMapper; import com.ff.base.system.service.ISysPostService; +import com.ff.base.utils.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java index 35074be..06333de 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysRoleServiceImpl.java @@ -3,20 +3,16 @@ package com.ff.base.system.service.impl; import cn.hutool.core.util.IdUtil; import com.ff.base.annotation.DataScope; import com.ff.base.constant.UserConstants; -import com.ff.base.system.domain.SysRole; -import com.ff.base.system.domain.SysUser; import com.ff.base.exception.ServiceException; -import com.ff.base.utils.SecurityUtils; -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.spring.SpringUtils; -import com.ff.base.system.domain.SysRoleDept; -import com.ff.base.system.domain.SysRoleMenu; -import com.ff.base.system.domain.SysUserRole; +import com.ff.base.system.domain.*; import com.ff.base.system.mapper.SysRoleDeptMapper; import com.ff.base.system.mapper.SysRoleMapper; import com.ff.base.system.mapper.SysRoleMenuMapper; import com.ff.base.system.mapper.SysUserRoleMapper; import com.ff.base.system.service.ISysRoleService; +import com.ff.base.utils.SecurityUtils; +import com.ff.base.utils.StringUtils; +import com.ff.base.utils.spring.SpringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java index 49f0fc9..76ce57d 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysUserOnlineServiceImpl.java @@ -1,9 +1,9 @@ package com.ff.base.system.service.impl; import com.ff.base.core.domain.model.LoginUser; -import com.ff.base.utils.StringUtils; import com.ff.base.system.domain.SysUserOnline; import com.ff.base.system.service.ISysUserOnlineService; +import com.ff.base.utils.StringUtils; import org.springframework.stereotype.Service; /** diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java index e2a745b..0389662 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/SysUserServiceImpl.java @@ -3,20 +3,16 @@ package com.ff.base.system.service.impl; import cn.hutool.core.util.IdUtil; import com.ff.base.annotation.DataScope; import com.ff.base.constant.UserConstants; -import com.ff.base.system.domain.SysRole; -import com.ff.base.system.domain.SysUser; import com.ff.base.exception.ServiceException; -import com.ff.base.utils.SecurityUtils; -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.bean.BeanValidators; -import com.ff.base.utils.spring.SpringUtils; -import com.ff.base.system.domain.SysPost; -import com.ff.base.system.domain.SysUserPost; -import com.ff.base.system.domain.SysUserRole; +import com.ff.base.system.domain.*; import com.ff.base.system.mapper.*; import com.ff.base.system.service.ISysConfigService; import com.ff.base.system.service.ISysDeptService; import com.ff.base.system.service.ISysUserService; +import com.ff.base.utils.SecurityUtils; +import com.ff.base.utils.StringUtils; +import com.ff.base.utils.bean.BeanValidators; +import com.ff.base.utils.spring.SpringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java index c376ed7..27a9069 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantAgentServiceImpl.java @@ -1,7 +1,5 @@ package com.ff.base.system.service.impl; -import java.util.List; - import com.ff.base.constant.Constants; import com.ff.base.core.domain.model.LoginForm; import com.ff.base.core.domain.model.LoginUser; @@ -12,7 +10,6 @@ import com.ff.base.manager.AsyncManager; import com.ff.base.manager.factory.AsyncFactory; import com.ff.base.security.context.AuthenticationContextHolder; import com.ff.base.system.domain.TenantAgent; -import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.mapper.TenantAgentMapper; import com.ff.base.system.service.ITenantAgentService; import com.ff.base.utils.DateUtils; @@ -25,10 +22,10 @@ import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.stereotype.Service; -import org.springframework.util.Assert; import org.springframework.util.ObjectUtils; import javax.annotation.Resource; +import java.util.List; /** * 代理Service业务层处理 diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java index 0e3f11f..c7bf0f7 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java @@ -1,14 +1,14 @@ package com.ff.base.system.service.impl; -import java.util.Collections; -import java.util.List; +import cn.hutool.core.util.IdUtil; +import com.ff.base.system.domain.TenantPlatform; +import com.ff.base.system.mapper.TenantPlatformMapper; +import com.ff.base.system.service.ITenantPlatformService; import com.ff.base.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.ff.base.system.mapper.TenantPlatformMapper; -import com.ff.base.system.domain.TenantPlatform; -import com.ff.base.system.service.ITenantPlatformService; -import cn.hutool.core.util.IdUtil; + +import java.util.List; /** diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java similarity index 97% rename from ff-base/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java index 9105c0f..920d02c 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantSecretKeyServiceImpl.java @@ -1,25 +1,22 @@ package com.ff.base.system.service.impl; -import java.util.Collections; -import java.util.List; - import cn.hutool.core.util.IdUtil; import com.ff.base.constant.Constants; import com.ff.base.core.domain.model.LoginForm; import com.ff.base.core.domain.model.LoginUser; import com.ff.base.enums.LoginType; -import com.ff.base.enums.OperationType; -import com.ff.base.enums.QuotaType; import com.ff.base.exception.ServiceException; -import com.ff.base.exception.base.BaseException; import com.ff.base.exception.user.UserPasswordNotMatchException; import com.ff.base.manager.AsyncManager; import com.ff.base.manager.factory.AsyncFactory; import com.ff.base.security.context.AuthenticationContextHolder; import com.ff.base.system.domain.TenantPlatform; +import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.dto.CreateTenantDTO; import com.ff.base.system.dto.TenantSecretKeyDTO; +import com.ff.base.system.mapper.TenantSecretKeyMapper; import com.ff.base.system.service.ITenantPlatformService; +import com.ff.base.system.service.ITenantSecretKeyService; import com.ff.base.utils.DateUtils; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.NumberUtils; @@ -34,13 +31,10 @@ import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.stereotype.Service; -import com.ff.base.system.mapper.TenantSecretKeyMapper; -import com.ff.base.system.domain.TenantSecretKey; -import com.ff.base.system.service.ITenantSecretKeyService; import org.springframework.util.CollectionUtils; -import org.springframework.util.ObjectUtils; import javax.annotation.Resource; +import java.util.List; /** * 用户租户密钥Service业务层处理 diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java rename to ff-game/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java index 46c1d6b..515587c 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/system/service/impl/TenantWhiteServiceImpl.java @@ -1,13 +1,14 @@ package com.ff.base.system.service.impl; -import java.util.List; +import cn.hutool.core.util.IdUtil; +import com.ff.base.system.domain.TenantWhite; +import com.ff.base.system.mapper.TenantWhiteMapper; +import com.ff.base.system.service.ITenantWhiteService; import com.ff.base.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.ff.base.system.mapper.TenantWhiteMapper; -import com.ff.base.system.domain.TenantWhite; -import com.ff.base.system.service.ITenantWhiteService; -import cn.hutool.core.util.IdUtil; + +import java.util.List; /** diff --git a/ff-base/src/main/java/com/ff/base/utils/Arith.java b/ff-game/src/main/java/com/ff/base/utils/Arith.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/Arith.java rename to ff-game/src/main/java/com/ff/base/utils/Arith.java diff --git a/ff-base/src/main/java/com/ff/base/utils/DESEncryptUtils.java b/ff-game/src/main/java/com/ff/base/utils/DESEncryptUtils.java similarity index 87% rename from ff-base/src/main/java/com/ff/base/utils/DESEncryptUtils.java rename to ff-game/src/main/java/com/ff/base/utils/DESEncryptUtils.java index f80963c..c7aee91 100644 --- a/ff-base/src/main/java/com/ff/base/utils/DESEncryptUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/DESEncryptUtils.java @@ -1,17 +1,13 @@ package com.ff.base.utils; import com.ff.base.exception.base.BaseException; -import lombok.Data; -import javax.crypto.*; +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.SecretKey; +import javax.crypto.SecretKeyFactory; import javax.crypto.spec.DESKeySpec; import javax.crypto.spec.IvParameterSpec; -import javax.crypto.spec.SecretKeySpec; -import java.nio.charset.StandardCharsets; -import java.security.InvalidAlgorithmParameterException; -import java.security.InvalidKeyException; -import java.security.NoSuchAlgorithmException; -import java.security.spec.InvalidKeySpecException; import java.security.spec.KeySpec; import java.util.Base64; diff --git a/ff-base/src/main/java/com/ff/base/utils/DateUtils.java b/ff-game/src/main/java/com/ff/base/utils/DateUtils.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/utils/DateUtils.java rename to ff-game/src/main/java/com/ff/base/utils/DateUtils.java index 4f598c9..8c59e26 100644 --- a/ff-base/src/main/java/com/ff/base/utils/DateUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/DateUtils.java @@ -310,7 +310,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { */ public static Long getDayStart(long timestamp, String timeZoneId) { ZoneId zoneId = ZoneId.of(timeZoneId); - ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(java.time.Instant.ofEpochMilli(timestamp), zoneId); + ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(Instant.ofEpochMilli(timestamp), zoneId); LocalDate localDate = zonedDateTime.toLocalDate(); LocalDateTime startOfDay = localDate.atStartOfDay(); ZonedDateTime startOfDayZoned = startOfDay.atZone(zoneId); @@ -340,7 +340,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { */ public static Long getDayEnd(long timestamp, String timeZoneId) { ZoneId zoneId = ZoneId.of(timeZoneId); - ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(java.time.Instant.ofEpochMilli(timestamp), zoneId); + ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(Instant.ofEpochMilli(timestamp), zoneId); LocalDate localDate = zonedDateTime.toLocalDate(); LocalDateTime endOfDay = localDate.atTime(23, 59, 59, 999999999); ZonedDateTime endOfDayZoned = endOfDay.atZone(zoneId); diff --git a/ff-base/src/main/java/com/ff/base/utils/DesensitizedUtil.java b/ff-game/src/main/java/com/ff/base/utils/DesensitizedUtil.java similarity index 96% rename from ff-base/src/main/java/com/ff/base/utils/DesensitizedUtil.java rename to ff-game/src/main/java/com/ff/base/utils/DesensitizedUtil.java index eb48a3f..2058f27 100644 --- a/ff-base/src/main/java/com/ff/base/utils/DesensitizedUtil.java +++ b/ff-game/src/main/java/com/ff/base/utils/DesensitizedUtil.java @@ -1,7 +1,5 @@ package com.ff.base.utils; -import com.ff.base.utils.StringUtils; - /** * 脱敏工具类 * diff --git a/ff-base/src/main/java/com/ff/base/utils/DictUtils.java b/ff-game/src/main/java/com/ff/base/utils/DictUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/DictUtils.java rename to ff-game/src/main/java/com/ff/base/utils/DictUtils.java index fd73253..b51a4f7 100644 --- a/ff-base/src/main/java/com/ff/base/utils/DictUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/DictUtils.java @@ -2,8 +2,8 @@ package com.ff.base.utils; import com.alibaba.fastjson2.JSONArray; import com.ff.base.constant.CacheConstants; -import com.ff.base.system.domain.SysDictData; import com.ff.base.core.redis.RedisCache; +import com.ff.base.system.domain.SysDictData; import com.ff.base.utils.spring.SpringUtils; import java.util.Collection; diff --git a/ff-base/src/main/java/com/ff/base/utils/ExceptionUtil.java b/ff-game/src/main/java/com/ff/base/utils/ExceptionUtil.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/ExceptionUtil.java rename to ff-game/src/main/java/com/ff/base/utils/ExceptionUtil.java diff --git a/ff-base/src/main/java/com/ff/base/utils/JsonUtil.java b/ff-game/src/main/java/com/ff/base/utils/JsonUtil.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/JsonUtil.java rename to ff-game/src/main/java/com/ff/base/utils/JsonUtil.java diff --git a/ff-base/src/main/java/com/ff/base/utils/LogUtils.java b/ff-game/src/main/java/com/ff/base/utils/LogUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/LogUtils.java rename to ff-game/src/main/java/com/ff/base/utils/LogUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/MessageUtils.java b/ff-game/src/main/java/com/ff/base/utils/MessageUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/MessageUtils.java rename to ff-game/src/main/java/com/ff/base/utils/MessageUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/NumberUtils.java b/ff-game/src/main/java/com/ff/base/utils/NumberUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/NumberUtils.java rename to ff-game/src/main/java/com/ff/base/utils/NumberUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/PageUtils.java b/ff-game/src/main/java/com/ff/base/utils/PageUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/PageUtils.java rename to ff-game/src/main/java/com/ff/base/utils/PageUtils.java index 8c6182e..55d04d8 100644 --- a/ff-base/src/main/java/com/ff/base/utils/PageUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/PageUtils.java @@ -1,9 +1,9 @@ package com.ff.base.utils; -import com.github.pagehelper.PageHelper; import com.ff.base.core.page.PageDomain; import com.ff.base.core.page.TableSupport; import com.ff.base.utils.sql.SqlUtil; +import com.github.pagehelper.PageHelper; /** * 分页工具类 diff --git a/ff-base/src/main/java/com/ff/base/utils/QuotaUtils.java b/ff-game/src/main/java/com/ff/base/utils/QuotaUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/QuotaUtils.java rename to ff-game/src/main/java/com/ff/base/utils/QuotaUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java b/ff-game/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java similarity index 97% rename from ff-base/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java rename to ff-game/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java index 71ed8ba..c1ec1d9 100644 --- a/ff-base/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/RandomGeneratorUtils.java @@ -1,8 +1,6 @@ package com.ff.base.utils; import java.security.SecureRandom; -import java.util.HashSet; -import java.util.Set; /** * 随机发生器 diff --git a/ff-base/src/main/java/com/ff/base/utils/SecurityUtils.java b/ff-game/src/main/java/com/ff/base/utils/SecurityUtils.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/utils/SecurityUtils.java rename to ff-game/src/main/java/com/ff/base/utils/SecurityUtils.java index 1874748..53fa0ae 100644 --- a/ff-base/src/main/java/com/ff/base/utils/SecurityUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/SecurityUtils.java @@ -14,10 +14,8 @@ import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.util.PatternMatchUtils; -import javax.management.relation.Role; import java.util.Collection; import java.util.List; -import java.util.Set; import java.util.stream.Collectors; /** diff --git a/ff-base/src/main/java/com/ff/base/utils/ServletUtils.java b/ff-game/src/main/java/com/ff/base/utils/ServletUtils.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/utils/ServletUtils.java rename to ff-game/src/main/java/com/ff/base/utils/ServletUtils.java index e90caa0..e2ee4f4 100644 --- a/ff-base/src/main/java/com/ff/base/utils/ServletUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/ServletUtils.java @@ -2,7 +2,6 @@ package com.ff.base.utils; import com.ff.base.constant.Constants; import com.ff.base.core.text.Convert; -import com.ff.base.utils.StringUtils; import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; diff --git a/ff-base/src/main/java/com/ff/base/utils/SleepUtil.java b/ff-game/src/main/java/com/ff/base/utils/SleepUtil.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/SleepUtil.java rename to ff-game/src/main/java/com/ff/base/utils/SleepUtil.java diff --git a/ff-base/src/main/java/com/ff/base/utils/StringUtils.java b/ff-game/src/main/java/com/ff/base/utils/StringUtils.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/utils/StringUtils.java rename to ff-game/src/main/java/com/ff/base/utils/StringUtils.java index d35bd9e..d92ff73 100644 --- a/ff-base/src/main/java/com/ff/base/utils/StringUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/StringUtils.java @@ -1,6 +1,5 @@ package com.ff.base.utils; -import com.ff.base.constant.ConfigConstants; import com.ff.base.constant.Constants; import com.ff.base.core.text.StrFormatter; import org.springframework.util.AntPathMatcher; diff --git a/ff-base/src/main/java/com/ff/base/utils/TenantUtils.java b/ff-game/src/main/java/com/ff/base/utils/TenantUtils.java similarity index 76% rename from ff-base/src/main/java/com/ff/base/utils/TenantUtils.java rename to ff-game/src/main/java/com/ff/base/utils/TenantUtils.java index 3dd9718..e1586dc 100644 --- a/ff-base/src/main/java/com/ff/base/utils/TenantUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/TenantUtils.java @@ -2,10 +2,6 @@ package com.ff.base.utils; import com.ff.base.constant.Constants; import com.ff.base.datasource.DynamicDataSourceContextHolder; -import org.springframework.web.context.request.RequestContextHolder; -import org.springframework.web.context.request.ServletRequestAttributes; - -import javax.servlet.http.HttpServletRequest; /** * 持有Utils diff --git a/ff-base/src/main/java/com/ff/base/utils/Threads.java b/ff-game/src/main/java/com/ff/base/utils/Threads.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/Threads.java rename to ff-game/src/main/java/com/ff/base/utils/Threads.java diff --git a/ff-base/src/main/java/com/ff/base/utils/XmlUtils.java b/ff-game/src/main/java/com/ff/base/utils/XmlUtils.java similarity index 78% rename from ff-base/src/main/java/com/ff/base/utils/XmlUtils.java rename to ff-game/src/main/java/com/ff/base/utils/XmlUtils.java index 711b0fb..1d62279 100644 --- a/ff-base/src/main/java/com/ff/base/utils/XmlUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/XmlUtils.java @@ -1,20 +1,11 @@ package com.ff.base.utils; import com.ff.base.exception.base.BaseException; -import org.apache.poi.ss.formula.functions.T; -import javax.crypto.Cipher; -import javax.crypto.KeyGenerator; -import javax.crypto.SecretKey; -import javax.crypto.SecretKeyFactory; -import javax.crypto.spec.DESKeySpec; -import javax.crypto.spec.IvParameterSpec; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Unmarshaller; import java.io.StringReader; -import java.security.spec.KeySpec; -import java.util.Base64; /** diff --git a/ff-base/src/main/java/com/ff/base/utils/bean/BeanUtils.java b/ff-game/src/main/java/com/ff/base/utils/bean/BeanUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/bean/BeanUtils.java rename to ff-game/src/main/java/com/ff/base/utils/bean/BeanUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/bean/BeanValidators.java b/ff-game/src/main/java/com/ff/base/utils/bean/BeanValidators.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/bean/BeanValidators.java rename to ff-game/src/main/java/com/ff/base/utils/bean/BeanValidators.java diff --git a/ff-base/src/main/java/com/ff/base/utils/domain/DomainInfo.java b/ff-game/src/main/java/com/ff/base/utils/domain/DomainInfo.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/domain/DomainInfo.java rename to ff-game/src/main/java/com/ff/base/utils/domain/DomainInfo.java diff --git a/ff-base/src/main/java/com/ff/base/utils/domain/DomainUtils.java b/ff-game/src/main/java/com/ff/base/utils/domain/DomainUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/domain/DomainUtils.java rename to ff-game/src/main/java/com/ff/base/utils/domain/DomainUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/file/FileTypeUtils.java b/ff-game/src/main/java/com/ff/base/utils/file/FileTypeUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/file/FileTypeUtils.java rename to ff-game/src/main/java/com/ff/base/utils/file/FileTypeUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/file/FileUploadUtils.java b/ff-game/src/main/java/com/ff/base/utils/file/FileUploadUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/file/FileUploadUtils.java rename to ff-game/src/main/java/com/ff/base/utils/file/FileUploadUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/file/FileUtils.java b/ff-game/src/main/java/com/ff/base/utils/file/FileUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/file/FileUtils.java rename to ff-game/src/main/java/com/ff/base/utils/file/FileUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/file/ImageUtils.java b/ff-game/src/main/java/com/ff/base/utils/file/ImageUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/file/ImageUtils.java rename to ff-game/src/main/java/com/ff/base/utils/file/ImageUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/file/MimeTypeUtils.java b/ff-game/src/main/java/com/ff/base/utils/file/MimeTypeUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/file/MimeTypeUtils.java rename to ff-game/src/main/java/com/ff/base/utils/file/MimeTypeUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/html/EscapeUtil.java b/ff-game/src/main/java/com/ff/base/utils/html/EscapeUtil.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/utils/html/EscapeUtil.java rename to ff-game/src/main/java/com/ff/base/utils/html/EscapeUtil.java index 6394a35..98c301e 100644 --- a/ff-base/src/main/java/com/ff/base/utils/html/EscapeUtil.java +++ b/ff-game/src/main/java/com/ff/base/utils/html/EscapeUtil.java @@ -1,7 +1,6 @@ package com.ff.base.utils.html; import com.ff.base.utils.StringUtils; -import com.ff.base.utils.html.HTMLFilter; /** * 转义和反转义工具类 diff --git a/ff-base/src/main/java/com/ff/base/utils/html/HTMLFilter.java b/ff-game/src/main/java/com/ff/base/utils/html/HTMLFilter.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/html/HTMLFilter.java rename to ff-game/src/main/java/com/ff/base/utils/html/HTMLFilter.java diff --git a/ff-base/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java b/ff-game/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java similarity index 97% rename from ff-base/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java rename to ff-game/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java index 47f73ad..3514f90 100644 --- a/ff-base/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/http/HttpClientSslUtils.java @@ -130,16 +130,16 @@ public class HttpClientSslUtils { private static class TrustAllX509TrustManager implements X509TrustManager { @Override - public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) { + public void checkClientTrusted(X509Certificate[] chain, String authType) { } @Override - public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType) { + public void checkServerTrusted(X509Certificate[] chain, String authType) { } @Override - public java.security.cert.X509Certificate[] getAcceptedIssuers() { - return new java.security.cert.X509Certificate[0]; + public X509Certificate[] getAcceptedIssuers() { + return new X509Certificate[0]; } } diff --git a/ff-base/src/main/java/com/ff/base/utils/http/HttpHelper.java b/ff-game/src/main/java/com/ff/base/utils/http/HttpHelper.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/http/HttpHelper.java rename to ff-game/src/main/java/com/ff/base/utils/http/HttpHelper.java diff --git a/ff-base/src/main/java/com/ff/base/utils/http/HttpUtils.java b/ff-game/src/main/java/com/ff/base/utils/http/HttpUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/http/HttpUtils.java rename to ff-game/src/main/java/com/ff/base/utils/http/HttpUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/ip/AddressUtils.java b/ff-game/src/main/java/com/ff/base/utils/ip/AddressUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/ip/AddressUtils.java rename to ff-game/src/main/java/com/ff/base/utils/ip/AddressUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/ip/IpUtils.java b/ff-game/src/main/java/com/ff/base/utils/ip/IpUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/ip/IpUtils.java rename to ff-game/src/main/java/com/ff/base/utils/ip/IpUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/nginx/NginxUtils.java b/ff-game/src/main/java/com/ff/base/utils/nginx/NginxUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/nginx/NginxUtils.java rename to ff-game/src/main/java/com/ff/base/utils/nginx/NginxUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/poi/ExcelHandlerAdapter.java b/ff-game/src/main/java/com/ff/base/utils/poi/ExcelHandlerAdapter.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/poi/ExcelHandlerAdapter.java rename to ff-game/src/main/java/com/ff/base/utils/poi/ExcelHandlerAdapter.java diff --git a/ff-base/src/main/java/com/ff/base/utils/poi/ExcelUtil.java b/ff-game/src/main/java/com/ff/base/utils/poi/ExcelUtil.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/poi/ExcelUtil.java rename to ff-game/src/main/java/com/ff/base/utils/poi/ExcelUtil.java diff --git a/ff-base/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java b/ff-game/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java rename to ff-game/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java index 4c6b18c..ca8ec35 100644 --- a/ff-base/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java +++ b/ff-game/src/main/java/com/ff/base/utils/qrcode/QRCodeGenerator.java @@ -5,6 +5,7 @@ import com.google.zxing.EncodeHintType; import com.google.zxing.MultiFormatWriter; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.common.BitMatrix; + import java.io.ByteArrayOutputStream; import java.util.Base64; import java.util.HashMap; diff --git a/ff-base/src/main/java/com/ff/base/utils/reflect/ReflectUtils.java b/ff-game/src/main/java/com/ff/base/utils/reflect/ReflectUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/reflect/ReflectUtils.java rename to ff-game/src/main/java/com/ff/base/utils/reflect/ReflectUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/sign/Base64.java b/ff-game/src/main/java/com/ff/base/utils/sign/Base64.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/sign/Base64.java rename to ff-game/src/main/java/com/ff/base/utils/sign/Base64.java diff --git a/ff-base/src/main/java/com/ff/base/utils/sign/Md5Utils.java b/ff-game/src/main/java/com/ff/base/utils/sign/Md5Utils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/sign/Md5Utils.java rename to ff-game/src/main/java/com/ff/base/utils/sign/Md5Utils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/spring/SpringUtils.java b/ff-game/src/main/java/com/ff/base/utils/spring/SpringUtils.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/spring/SpringUtils.java rename to ff-game/src/main/java/com/ff/base/utils/spring/SpringUtils.java diff --git a/ff-base/src/main/java/com/ff/base/utils/sql/SqlUtil.java b/ff-game/src/main/java/com/ff/base/utils/sql/SqlUtil.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/sql/SqlUtil.java rename to ff-game/src/main/java/com/ff/base/utils/sql/SqlUtil.java diff --git a/ff-base/src/main/java/com/ff/base/utils/uuid/IdUtils.java b/ff-game/src/main/java/com/ff/base/utils/uuid/IdUtils.java similarity index 96% rename from ff-base/src/main/java/com/ff/base/utils/uuid/IdUtils.java rename to ff-game/src/main/java/com/ff/base/utils/uuid/IdUtils.java index e170381..b5f3a36 100644 --- a/ff-base/src/main/java/com/ff/base/utils/uuid/IdUtils.java +++ b/ff-game/src/main/java/com/ff/base/utils/uuid/IdUtils.java @@ -1,7 +1,5 @@ package com.ff.base.utils.uuid; -import com.ff.base.utils.uuid.UUID; - /** * ID生成器工具类 * diff --git a/ff-base/src/main/java/com/ff/base/utils/uuid/Seq.java b/ff-game/src/main/java/com/ff/base/utils/uuid/Seq.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/uuid/Seq.java rename to ff-game/src/main/java/com/ff/base/utils/uuid/Seq.java diff --git a/ff-base/src/main/java/com/ff/base/utils/uuid/UUID.java b/ff-game/src/main/java/com/ff/base/utils/uuid/UUID.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/utils/uuid/UUID.java rename to ff-game/src/main/java/com/ff/base/utils/uuid/UUID.java diff --git a/ff-base/src/main/java/com/ff/base/web/domain/server/Cpu.java b/ff-game/src/main/java/com/ff/base/web/domain/server/Cpu.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/domain/server/Cpu.java rename to ff-game/src/main/java/com/ff/base/web/domain/server/Cpu.java diff --git a/ff-base/src/main/java/com/ff/base/web/domain/server/Jvm.java b/ff-game/src/main/java/com/ff/base/web/domain/server/Jvm.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/domain/server/Jvm.java rename to ff-game/src/main/java/com/ff/base/web/domain/server/Jvm.java diff --git a/ff-base/src/main/java/com/ff/base/web/domain/server/Mem.java b/ff-game/src/main/java/com/ff/base/web/domain/server/Mem.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/domain/server/Mem.java rename to ff-game/src/main/java/com/ff/base/web/domain/server/Mem.java diff --git a/ff-base/src/main/java/com/ff/base/web/domain/server/Sys.java b/ff-game/src/main/java/com/ff/base/web/domain/server/Sys.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/domain/server/Sys.java rename to ff-game/src/main/java/com/ff/base/web/domain/server/Sys.java diff --git a/ff-base/src/main/java/com/ff/base/web/domain/server/SysFile.java b/ff-game/src/main/java/com/ff/base/web/domain/server/SysFile.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/domain/server/SysFile.java rename to ff-game/src/main/java/com/ff/base/web/domain/server/SysFile.java diff --git a/ff-base/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java b/ff-game/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java similarity index 99% rename from ff-base/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java rename to ff-game/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java index 298e992..d334136 100644 --- a/ff-base/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java +++ b/ff-game/src/main/java/com/ff/base/web/exception/GlobalExceptionHandler.java @@ -6,7 +6,6 @@ import com.ff.base.core.text.Convert; import com.ff.base.exception.DemoModeException; import com.ff.base.exception.ServiceException; import com.ff.base.exception.base.ApiException; -import com.ff.base.exception.base.BaseException; import com.ff.base.utils.StringUtils; import com.ff.base.utils.html.EscapeUtil; import org.slf4j.Logger; diff --git a/ff-base/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java b/ff-game/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java similarity index 96% rename from ff-base/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java rename to ff-game/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java index 4141c64..7b780fe 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/web/service/AgentDetailsServiceImpl.java @@ -7,11 +7,9 @@ import com.ff.base.exception.ServiceException; import com.ff.base.system.domain.SysRole; import com.ff.base.system.domain.SysUser; import com.ff.base.system.domain.TenantAgent; -import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.service.ISysMenuService; import com.ff.base.system.service.ISysRoleService; import com.ff.base.system.service.ITenantAgentService; -import com.ff.base.system.service.ITenantSecretKeyService; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.StringUtils; import org.slf4j.Logger; diff --git a/ff-base/src/main/java/com/ff/base/web/service/PermissionService.java b/ff-game/src/main/java/com/ff/base/web/service/PermissionService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/service/PermissionService.java rename to ff-game/src/main/java/com/ff/base/web/service/PermissionService.java index 5ac8c15..348dac3 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/PermissionService.java +++ b/ff-game/src/main/java/com/ff/base/web/service/PermissionService.java @@ -1,11 +1,11 @@ package com.ff.base.web.service; import com.ff.base.constant.Constants; -import com.ff.base.system.domain.SysRole; import com.ff.base.core.domain.model.LoginUser; +import com.ff.base.security.context.PermissionContextHolder; +import com.ff.base.system.domain.SysRole; import com.ff.base.utils.SecurityUtils; import com.ff.base.utils.StringUtils; -import com.ff.base.security.context.PermissionContextHolder; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; diff --git a/ff-base/src/main/java/com/ff/base/web/service/SysLoginService.java b/ff-game/src/main/java/com/ff/base/web/service/SysLoginService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/service/SysLoginService.java rename to ff-game/src/main/java/com/ff/base/web/service/SysLoginService.java index e6abc57..48b4432 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/SysLoginService.java +++ b/ff-game/src/main/java/com/ff/base/web/service/SysLoginService.java @@ -4,21 +4,21 @@ import com.ff.base.constant.CacheConstants; import com.ff.base.constant.Constants; import com.ff.base.constant.UserConstants; import com.ff.base.core.domain.model.LoginForm; -import com.ff.base.enums.LoginType; -import com.ff.base.system.domain.SysUser; import com.ff.base.core.domain.model.LoginUser; import com.ff.base.core.redis.RedisCache; +import com.ff.base.enums.LoginType; import com.ff.base.exception.ServiceException; import com.ff.base.exception.user.*; +import com.ff.base.manager.AsyncManager; +import com.ff.base.manager.factory.AsyncFactory; +import com.ff.base.security.context.AuthenticationContextHolder; +import com.ff.base.system.domain.SysUser; +import com.ff.base.system.service.ISysConfigService; +import com.ff.base.system.service.ISysUserService; import com.ff.base.utils.DateUtils; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.StringUtils; import com.ff.base.utils.ip.IpUtils; -import com.ff.base.manager.AsyncManager; -import com.ff.base.manager.factory.AsyncFactory; -import com.ff.base.security.context.AuthenticationContextHolder; -import com.ff.base.system.service.ISysConfigService; -import com.ff.base.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.BadCredentialsException; diff --git a/ff-base/src/main/java/com/ff/base/web/service/SysPasswordService.java b/ff-game/src/main/java/com/ff/base/web/service/SysPasswordService.java similarity index 98% rename from ff-base/src/main/java/com/ff/base/web/service/SysPasswordService.java rename to ff-game/src/main/java/com/ff/base/web/service/SysPasswordService.java index a39b934..446b5e0 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/SysPasswordService.java +++ b/ff-game/src/main/java/com/ff/base/web/service/SysPasswordService.java @@ -2,12 +2,11 @@ package com.ff.base.web.service; import com.ff.base.constant.CacheConstants; import com.ff.base.core.domain.model.LoginForm; -import com.ff.base.system.domain.SysUser; import com.ff.base.core.redis.RedisCache; import com.ff.base.exception.user.UserPasswordNotMatchException; import com.ff.base.exception.user.UserPasswordRetryLimitExceedException; -import com.ff.base.utils.SecurityUtils; import com.ff.base.security.context.AuthenticationContextHolder; +import com.ff.base.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.security.core.Authentication; diff --git a/ff-base/src/main/java/com/ff/base/web/service/SysPermissionService.java b/ff-game/src/main/java/com/ff/base/web/service/SysPermissionService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/service/SysPermissionService.java rename to ff-game/src/main/java/com/ff/base/web/service/SysPermissionService.java diff --git a/ff-base/src/main/java/com/ff/base/web/service/SysRegisterService.java b/ff-game/src/main/java/com/ff/base/web/service/SysRegisterService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/service/SysRegisterService.java rename to ff-game/src/main/java/com/ff/base/web/service/SysRegisterService.java index ebb5b22..21c0ec8 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/SysRegisterService.java +++ b/ff-game/src/main/java/com/ff/base/web/service/SysRegisterService.java @@ -3,18 +3,18 @@ package com.ff.base.web.service; import com.ff.base.constant.CacheConstants; import com.ff.base.constant.Constants; import com.ff.base.constant.UserConstants; -import com.ff.base.system.domain.SysUser; import com.ff.base.core.domain.model.RegisterBody; import com.ff.base.core.redis.RedisCache; import com.ff.base.exception.user.CaptchaException; import com.ff.base.exception.user.CaptchaExpireException; +import com.ff.base.manager.AsyncManager; +import com.ff.base.manager.factory.AsyncFactory; +import com.ff.base.system.domain.SysUser; +import com.ff.base.system.service.ISysConfigService; +import com.ff.base.system.service.ISysUserService; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.SecurityUtils; import com.ff.base.utils.StringUtils; -import com.ff.base.manager.AsyncManager; -import com.ff.base.manager.factory.AsyncFactory; -import com.ff.base.system.service.ISysConfigService; -import com.ff.base.system.service.ISysUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; diff --git a/ff-base/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java b/ff-game/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java similarity index 94% rename from ff-base/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java rename to ff-game/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java index be58a7c..880db5c 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/web/service/TenantDetailsServiceImpl.java @@ -3,20 +3,17 @@ package com.ff.base.web.service; import com.ff.base.constant.Constants; import com.ff.base.core.domain.model.LoginUser; import com.ff.base.enums.LoginType; -import com.ff.base.enums.UserStatus; import com.ff.base.exception.ServiceException; import com.ff.base.system.domain.SysRole; import com.ff.base.system.domain.SysUser; import com.ff.base.system.domain.TenantSecretKey; import com.ff.base.system.service.ISysMenuService; import com.ff.base.system.service.ISysRoleService; -import com.ff.base.system.service.ISysUserService; import com.ff.base.system.service.ITenantSecretKeyService; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.core.userdetails.UsernameNotFoundException; @@ -24,7 +21,6 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; -import java.util.Set; /** * 用户验证处理 diff --git a/ff-base/src/main/java/com/ff/base/web/service/TokenService.java b/ff-game/src/main/java/com/ff/base/web/service/TokenService.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/service/TokenService.java rename to ff-game/src/main/java/com/ff/base/web/service/TokenService.java diff --git a/ff-base/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java b/ff-game/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java rename to ff-game/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java index 8462600..c57d59e 100644 --- a/ff-base/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java +++ b/ff-game/src/main/java/com/ff/base/web/service/UserDetailsServiceImpl.java @@ -1,13 +1,13 @@ package com.ff.base.web.service; -import com.ff.base.enums.LoginType; -import com.ff.base.system.domain.SysUser; import com.ff.base.core.domain.model.LoginUser; +import com.ff.base.enums.LoginType; import com.ff.base.enums.UserStatus; import com.ff.base.exception.ServiceException; +import com.ff.base.system.domain.SysUser; +import com.ff.base.system.service.ISysUserService; import com.ff.base.utils.MessageUtils; import com.ff.base.utils.StringUtils; -import com.ff.base.system.service.ISysUserService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; diff --git a/ff-base/src/main/java/com/ff/base/xss/Xss.java b/ff-game/src/main/java/com/ff/base/xss/Xss.java similarity index 94% rename from ff-base/src/main/java/com/ff/base/xss/Xss.java rename to ff-game/src/main/java/com/ff/base/xss/Xss.java index 5bbc1ff..0e3c970 100644 --- a/ff-base/src/main/java/com/ff/base/xss/Xss.java +++ b/ff-game/src/main/java/com/ff/base/xss/Xss.java @@ -1,7 +1,5 @@ package com.ff.base.xss; -import com.ff.base.xss.XssValidator; - import javax.validation.Constraint; import javax.validation.Payload; import java.lang.annotation.ElementType; diff --git a/ff-base/src/main/java/com/ff/base/xss/XssValidator.java b/ff-game/src/main/java/com/ff/base/xss/XssValidator.java similarity index 100% rename from ff-base/src/main/java/com/ff/base/xss/XssValidator.java rename to ff-game/src/main/java/com/ff/base/xss/XssValidator.java diff --git a/ff-game/src/main/java/com/ff/common/dto/GameBalanceExchange.java b/ff-game/src/main/java/com/ff/common/dto/GameBalanceExchange.java index 15c82ff..38253f3 100644 --- a/ff-game/src/main/java/com/ff/common/dto/GameBalanceExchange.java +++ b/ff-game/src/main/java/com/ff/common/dto/GameBalanceExchange.java @@ -1,14 +1,11 @@ package com.ff.common.dto; import com.ff.game.api.request.GamesBaseRequestDTO; -import io.swagger.models.auth.In; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; -import javax.validation.constraints.NotBlank; import java.io.Serializable; import java.math.BigDecimal; @@ -26,7 +23,6 @@ public class GameBalanceExchange extends GamesBaseRequestDTO implements Serializ private final static long serialVersionUID = 3452954102791311247L; - /** * 平台代码 */ @@ -56,10 +52,12 @@ public class GameBalanceExchange extends GamesBaseRequestDTO implements Serializ /** * 账户 */ - private String account; + private String account; - /** 租户key */ + /** + * 租户key + */ private String tenantKey; /** diff --git a/ff-game/src/main/java/com/ff/config/SwaggerConfig.java b/ff-game/src/main/java/com/ff/config/SwaggerConfig.java deleted file mode 100644 index 9a689b9..0000000 --- a/ff-game/src/main/java/com/ff/config/SwaggerConfig.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.ff.config; - -import com.ff.base.config.FFConfig; -import io.swagger.annotations.ApiOperation; -import io.swagger.models.auth.In; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import springfox.documentation.builders.ApiInfoBuilder; -import springfox.documentation.builders.PathSelectors; -import springfox.documentation.builders.RequestHandlerSelectors; -import springfox.documentation.service.*; -import springfox.documentation.spi.DocumentationType; -import springfox.documentation.spi.service.contexts.SecurityContext; -import springfox.documentation.spring.web.plugins.Docket; - -import java.util.ArrayList; -import java.util.List; - -/** - * Swagger2的接口配置 - * - * @author ff - */ -@Configuration -public class SwaggerConfig -{ - /** 系统基础配置 */ - @Autowired - private FFConfig ffConfig; - - /** 是否开启swagger */ - @Value("${swagger.enabled}") - private boolean enabled; - - /** 设置请求的统一前缀 */ - @Value("${swagger.pathMapping}") - private String pathMapping; - - /** - * 创建API - */ - @Bean - public Docket createRestApi() - { - return new Docket(DocumentationType.OAS_30) - // 是否启用Swagger - .enable(enabled) - // 用来创建该API的基本信息,展示在文档的页面中(自定义展示的信息) - .apiInfo(apiInfo()) - // 设置哪些接口暴露给Swagger展示 - .select() - // 扫描所有有注解的api,用这种方式更灵活 - .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) - // 扫描指定包中的swagger注解 - // .apis(RequestHandlerSelectors.basePackage("com.ff.project.tool.swagger")) - // 扫描所有 .apis(RequestHandlerSelectors.any()) - .paths(PathSelectors.any()) - .build() - /* 设置安全模式,swagger可以设置访问token */ - .securitySchemes(securitySchemes()) - .securityContexts(securityContexts()) - .pathMapping(pathMapping); - } - - /** - * 安全模式,这里指定token通过Authorization头请求头传递 - */ - private List securitySchemes() - { - List apiKeyList = new ArrayList(); - apiKeyList.add(new ApiKey("Authorization", "Authorization", In.HEADER.toValue())); - return apiKeyList; - } - - /** - * 安全上下文 - */ - private List securityContexts() - { - List securityContexts = new ArrayList<>(); - securityContexts.add( - SecurityContext.builder() - .securityReferences(defaultAuth()) - .operationSelector(o -> o.requestMappingPattern().matches("/.*")) - .build()); - return securityContexts; - } - - /** - * 默认的安全上引用 - */ - private List defaultAuth() - { - AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything"); - AuthorizationScope[] authorizationScopes = new AuthorizationScope[1]; - authorizationScopes[0] = authorizationScope; - List securityReferences = new ArrayList<>(); - securityReferences.add(new SecurityReference("Authorization", authorizationScopes)); - return securityReferences; - } - - /** - * 添加摘要信息 - */ - private ApiInfo apiInfo() - { - // 用ApiInfoBuilder进行定制 - return new ApiInfoBuilder() - // 设置标题 - .title("标题:FF管理系统_接口文档") - // 描述 - .description("描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...") - // 作者信息 - .contact(new Contact(ffConfig.getName(), null, null)) - // 版本 - .version("版本号:" + ffConfig.getVersion()) - .build(); - } -} diff --git a/ff-game/src/main/java/com/ff/game/api/sa/dto/SAGetAllBetDetailsResponse.java b/ff-game/src/main/java/com/ff/game/api/sa/dto/SAGetAllBetDetailsResponse.java index 4ab18b7..bd7b44e 100644 --- a/ff-game/src/main/java/com/ff/game/api/sa/dto/SAGetAllBetDetailsResponse.java +++ b/ff-game/src/main/java/com/ff/game/api/sa/dto/SAGetAllBetDetailsResponse.java @@ -2,7 +2,6 @@ package com.ff.game.api.sa.dto; import lombok.Data; -import javax.smartcardio.Card; import javax.xml.bind.annotation.*; import java.math.BigDecimal; import java.util.Date; diff --git a/ff-game/src/main/java/com/ff/game/domain/GameBettingDetails.java b/ff-game/src/main/java/com/ff/game/domain/GameBettingDetails.java deleted file mode 100644 index 3853137..0000000 --- a/ff-game/src/main/java/com/ff/game/domain/GameBettingDetails.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.ff.game.domain; - -import java.math.BigDecimal; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.core.domain.BaseEntity; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; -import lombok.experimental.SuperBuilder; - -/** - * 会员投注细目对象 ff_game_betting_details - * - * @author shi - * @date 2025-02-10 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -@SuperBuilder -public class GameBettingDetails extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键id */ - @JsonSerialize(using = ToStringSerializer.class) - private Long id; - - - /** - * 租户key - */ - private String tenantKey; - - - /** 币种编码 */ - @Excel(name = "币种编码") - private String currencyCode; - - /** 会员id */ - @Excel(name = "会员id") - @JsonSerialize(using = ToStringSerializer.class) - private Long memberId; - - /** 游戏id */ - @Excel(name = "游戏id ") - private String gameCode; - - /** 游戏id */ - @Excel(name = "游戏id") - @JsonSerialize(using = ToStringSerializer.class) - private String gameId; - - /** 游戏类型 ff_game_type 字典 */ - @Excel(name = "游戏类型 ff_game_type 字典") - private Integer gameType; - - /** 游戏平台 */ - @Excel(name = "游戏平台 ") - private String platformCode; - - /** 游戏名称 */ - @Excel(name = "游戏名称") - private String gameName; - - /** 注单状态 1: 赢 2: 输 3: 平局 4 未知 */ - @Excel(name = "注单状态 1: 赢 2: 输 3: 平局 4 未知") - private Integer gameStatus; - - /** 注单类型 - * 1 一般下注 - 9 舞龙争霸和梅杜莎的 - 11 道具卡 - 12 游戏内购 - 17 满额必开 (下注) - 18 满额必开 (开奖) - 19 免费游戏 - 28 旋转奖金 - DG - (1:注单,2:红包小费) - AE - 正常状况: - 预设:0 - 结果更改过状况: - Resettle / Unsettle / Voidsettle / Unvoidsettle: 1 - Voidbet: -1 - - */ - @Excel(name = "注单类型") - private Integer gameStatusType; - - /** 游戏币种类型 */ - @Excel(name = "游戏币种类型") - private String gameCurrencyCode; - - /** 游戏账号 */ - @Excel(name = "游戏账号") - private String account; - - - /** - * 局号 - */ - private String round; - - /** - * 桌号 - */ - private String table; - - /** - * 座号 - */ - private String seat; - - /** - * 投注内容,部分游戏字段内容较长,建议数据库字段类型为 text - */ - private String betContent; - - /** 游戏注单唯一值 */ - @Excel(name = "游戏注单唯一值") - private String wagersId; - - /** 投注时间 (Unix 时间戳) */ - @Excel(name = "投注时间 (Unix 时间戳)") - @JsonSerialize(using = ToStringSerializer.class) - private Long wagersTime; - - /** 投注金额 */ - @Excel(name = "投注金额") - private BigDecimal betAmount; - - /** 派彩时间 (Unix 时间戳) */ - @Excel(name = "派彩时间 (Unix 时间戳)") - @JsonSerialize(using = ToStringSerializer.class) - private Long payoffTime; - - /** 派彩金额 */ - @Excel(name = "派彩金额") - private BigDecimal payoffAmount; - - - /** 对帐时间 (Unix 时间戳) */ - @Excel(name = "对帐时间 (Unix 时间戳)") - @JsonSerialize(using = ToStringSerializer.class) - private Long settlementTime; - - /** 有效投注金额 ※注 1 */ - @Excel(name = "有效投注金额 ※注 1") - private BigDecimal turnover; - - /** 订单id */ - @Excel(name = "订单id") - private String orderNo; - - /** 结算状态 1 未结算 2已结算 3 已撤单 4 已取消 */ - @Excel(name = "结算状态 1 未结算 2已结算 3 已撤单") - private Integer settlementStatus; - - -} diff --git a/ff-game/src/main/java/com/ff/quartz/config/ScheduleConfig.java b/ff-game/src/main/java/com/ff/quartz/config/ScheduleConfig.java deleted file mode 100644 index c5b6fe3..0000000 --- a/ff-game/src/main/java/com/ff/quartz/config/ScheduleConfig.java +++ /dev/null @@ -1,57 +0,0 @@ -//package com.ff.quartz.config; -// -//import org.springframework.context.annotation.Bean; -//import org.springframework.context.annotation.Configuration; -//import org.springframework.scheduling.quartz.SchedulerFactoryBean; -//import javax.sql.DataSource; -//import java.util.Properties; -// -///** -// * 定时任务配置(单机部署建议删除此类和qrtz数据库表,默认走内存会最高效) -// * -// * @author ff -// */ -//@Configuration -//public class ScheduleConfig -//{ -// @Bean -// public SchedulerFactoryBean schedulerFactoryBean(DataSource dataSource) -// { -// SchedulerFactoryBean factory = new SchedulerFactoryBean(); -// factory.setDataSource(dataSource); -// -// // quartz参数 -// Properties prop = new Properties(); -// prop.put("org.quartz.scheduler.instanceName", "ffScheduler"); -// prop.put("org.quartz.scheduler.instanceId", "AUTO"); -// // 线程池配置 -// prop.put("org.quartz.threadPool.class", "org.quartz.simpl.SimpleThreadPool"); -// prop.put("org.quartz.threadPool.threadCount", "20"); -// prop.put("org.quartz.threadPool.threadPriority", "5"); -// // JobStore配置 -// prop.put("org.quartz.jobStore.class", "org.springframework.scheduling.quartz.LocalDataSourceJobStore"); -// // 集群配置 -// prop.put("org.quartz.jobStore.isClustered", "true"); -// prop.put("org.quartz.jobStore.clusterCheckinInterval", "15000"); -// prop.put("org.quartz.jobStore.maxMisfiresToHandleAtATime", "10"); -// prop.put("org.quartz.jobStore.txIsolationLevelSerializable", "true"); -// -// // sqlserver 启用 -// // prop.put("org.quartz.jobStore.selectWithLockSQL", "SELECT * FROM {0}LOCKS UPDLOCK WHERE LOCK_NAME = ?"); -// prop.put("org.quartz.jobStore.misfireThreshold", "12000"); -// prop.put("org.quartz.jobStore.tablePrefix", "QRTZ_"); -// factory.setQuartzProperties(prop); -// -// factory.setSchedulerName("ffScheduler"); -// // 延时启动 -// factory.setStartupDelay(1); -// factory.setApplicationContextSchedulerContextKey("applicationContextKey"); -// // 可选,QuartzScheduler -// // 启动时更新己存在的Job,这样就不用每次修改targetObject后删除qrtz_job_details表对应记录了 -// factory.setOverwriteExistingJobs(true); -// // 设置自动启动,默认为true -// factory.setAutoStartup(true); -// -// return factory; -// } -//} diff --git a/ff-game/src/main/java/com/ff/quartz/controller/SysJobController.java b/ff-game/src/main/java/com/ff/quartz/controller/SysJobController.java deleted file mode 100644 index fe850b4..0000000 --- a/ff-game/src/main/java/com/ff/quartz/controller/SysJobController.java +++ /dev/null @@ -1,179 +0,0 @@ -package com.ff.quartz.controller; - -import com.ff.base.annotation.Log; -import com.ff.base.constant.Constants; -import com.ff.base.core.controller.BaseController; -import com.ff.base.core.domain.AjaxResult; -import com.ff.base.core.page.TableDataInfo; -import com.ff.base.enums.BusinessType; -import com.ff.base.exception.job.TaskException; -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.poi.ExcelUtil; -import com.ff.quartz.domain.SysJob; -import com.ff.quartz.service.ISysJobService; -import com.ff.quartz.util.CronUtils; -import com.ff.quartz.util.ScheduleUtils; -import org.quartz.SchedulerException; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * 调度任务信息操作处理 - * - * @author ff - */ -@RestController -@RequestMapping("/monitor/job") -public class SysJobController extends BaseController -{ - @Autowired - private ISysJobService jobService; - - /** - * 查询定时任务列表 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:list')") - @GetMapping("/list") - public TableDataInfo list(SysJob sysJob) - { - startPage(); - List list = jobService.selectJobList(sysJob); - return getDataTable(list); - } - - /** - * 导出定时任务列表 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:export')") - @Log(title = "定时任务", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SysJob sysJob) - { - List list = jobService.selectJobList(sysJob); - ExcelUtil util = new ExcelUtil(SysJob.class); - util.exportExcel(response, list, "定时任务"); - } - - /** - * 获取定时任务详细信息 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:query')") - @GetMapping(value = "/{jobId}") - public AjaxResult getInfo(@PathVariable("jobId") Long jobId) - { - return success(jobService.selectJobById(jobId)); - } - - /** - * 新增定时任务 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:add')") - @Log(title = "定时任务", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody SysJob job) throws SchedulerException, TaskException - { - if (!CronUtils.isValid(job.getCronExpression())) - { - return error("新增任务'" + job.getJobName() + "'失败,Cron表达式不正确"); - } - else if (StringUtils.containsIgnoreCase(job.getInvokeTarget(), Constants.LOOKUP_RMI)) - { - return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'rmi'调用"); - } - else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), new String[] { Constants.LOOKUP_LDAP, Constants.LOOKUP_LDAPS })) - { - return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'ldap(s)'调用"); - } - else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), new String[] { Constants.HTTP, Constants.HTTPS })) - { - return error("新增任务'" + job.getJobName() + "'失败,目标字符串不允许'http(s)'调用"); - } - else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), Constants.JOB_ERROR_STR)) - { - return error("新增任务'" + job.getJobName() + "'失败,目标字符串存在违规"); - } - else if (!ScheduleUtils.whiteList(job.getInvokeTarget())) - { - return error("新增任务'" + job.getJobName() + "'失败,目标字符串不在白名单内"); - } - job.setCreateBy(getUsername()); - return toAjax(jobService.insertJob(job)); - } - - /** - * 修改定时任务 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:edit')") - @Log(title = "定时任务", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody SysJob job) throws SchedulerException, TaskException - { - if (!CronUtils.isValid(job.getCronExpression())) - { - return error("修改任务'" + job.getJobName() + "'失败,Cron表达式不正确"); - } - else if (StringUtils.containsIgnoreCase(job.getInvokeTarget(), Constants.LOOKUP_RMI)) - { - return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'rmi'调用"); - } - else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), new String[] { Constants.LOOKUP_LDAP, Constants.LOOKUP_LDAPS })) - { - return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'ldap(s)'调用"); - } - else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), new String[] { Constants.HTTP, Constants.HTTPS })) - { - return error("修改任务'" + job.getJobName() + "'失败,目标字符串不允许'http(s)'调用"); - } - else if (StringUtils.containsAnyIgnoreCase(job.getInvokeTarget(), Constants.JOB_ERROR_STR)) - { - return error("修改任务'" + job.getJobName() + "'失败,目标字符串存在违规"); - } - else if (!ScheduleUtils.whiteList(job.getInvokeTarget())) - { - return error("修改任务'" + job.getJobName() + "'失败,目标字符串不在白名单内"); - } - job.setUpdateBy(getUsername()); - return toAjax(jobService.updateJob(job)); - } - - /** - * 定时任务状态修改 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:changeStatus')") - @Log(title = "定时任务", businessType = BusinessType.UPDATE) - @PutMapping("/changeStatus") - public AjaxResult changeStatus(@RequestBody SysJob job) throws SchedulerException - { - SysJob newJob = jobService.selectJobById(job.getJobId()); - newJob.setStatus(job.getStatus()); - return toAjax(jobService.changeStatus(newJob)); - } - - /** - * 定时任务立即执行一次 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:changeStatus')") - @Log(title = "定时任务", businessType = BusinessType.UPDATE) - @PutMapping("/run") - public AjaxResult run(@RequestBody SysJob job) throws SchedulerException - { - boolean result = jobService.run(job); - return result ? success() : error("任务不存在或已过期!"); - } - - /** - * 删除定时任务 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:remove')") - @Log(title = "定时任务", businessType = BusinessType.DELETE) - @DeleteMapping("/{jobIds}") - public AjaxResult remove(@PathVariable Long[] jobIds) throws SchedulerException, TaskException - { - jobService.deleteJobByIds(jobIds); - return success(); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/controller/SysJobLogController.java b/ff-game/src/main/java/com/ff/quartz/controller/SysJobLogController.java deleted file mode 100644 index 2ea8a1e..0000000 --- a/ff-game/src/main/java/com/ff/quartz/controller/SysJobLogController.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.ff.quartz.controller; - -import com.ff.base.annotation.Log; -import com.ff.base.core.controller.BaseController; -import com.ff.base.core.domain.AjaxResult; -import com.ff.base.core.page.TableDataInfo; -import com.ff.base.enums.BusinessType; -import com.ff.base.utils.poi.ExcelUtil; -import com.ff.quartz.domain.SysJobLog; -import com.ff.quartz.service.ISysJobLogService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.List; - -/** - * 调度日志操作处理 - * - * @author ff - */ -@RestController -@RequestMapping("/monitor/jobLog") -public class SysJobLogController extends BaseController -{ - @Autowired - private ISysJobLogService jobLogService; - - /** - * 查询定时任务调度日志列表 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:list')") - @GetMapping("/list") - public TableDataInfo list(SysJobLog sysJobLog) - { - startPage(); - List list = jobLogService.selectJobLogList(sysJobLog); - return getDataTable(list); - } - - /** - * 导出定时任务调度日志列表 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:export')") - @Log(title = "任务调度日志", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, SysJobLog sysJobLog) - { - List list = jobLogService.selectJobLogList(sysJobLog); - ExcelUtil util = new ExcelUtil(SysJobLog.class); - util.exportExcel(response, list, "调度日志"); - } - - /** - * 根据调度编号获取详细信息 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:query')") - @GetMapping(value = "/{jobLogId}") - public AjaxResult getInfo(@PathVariable Long jobLogId) - { - return success(jobLogService.selectJobLogById(jobLogId)); - } - - - /** - * 删除定时任务调度日志 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:remove')") - @Log(title = "定时任务调度日志", businessType = BusinessType.DELETE) - @DeleteMapping("/{jobLogIds}") - public AjaxResult remove(@PathVariable Long[] jobLogIds) - { - return toAjax(jobLogService.deleteJobLogByIds(jobLogIds)); - } - - /** - * 清空定时任务调度日志 - */ - @PreAuthorize("@ss.hasPermi('monitor:job:remove')") - @Log(title = "调度日志", businessType = BusinessType.CLEAN) - @DeleteMapping("/clean") - public AjaxResult clean() - { - jobLogService.cleanJobLog(); - return success(); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/domain/SysJob.java b/ff-game/src/main/java/com/ff/quartz/domain/SysJob.java deleted file mode 100644 index 5c8498c..0000000 --- a/ff-game/src/main/java/com/ff/quartz/domain/SysJob.java +++ /dev/null @@ -1,175 +0,0 @@ -package com.ff.quartz.domain; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.annotation.Excel.ColumnType; -import com.ff.base.constant.ScheduleConstants; -import com.ff.base.core.domain.BaseEntity; -import com.ff.base.utils.StringUtils; -import com.ff.quartz.util.CronUtils; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.Size; -import java.util.Date; - -/** - * 定时任务调度表 sys_job - * - * @author ff - */ -public class SysJob extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 任务ID */ - @Excel(name = "任务序号", cellType = ColumnType.NUMERIC) - @JsonSerialize(using = ToStringSerializer.class) - private Long jobId; - - /** 任务名称 */ - @Excel(name = "任务名称") - private String jobName; - - /** 任务组名 */ - @Excel(name = "任务组名") - private String jobGroup; - - /** 调用目标字符串 */ - @Excel(name = "调用目标字符串") - private String invokeTarget; - - /** cron执行表达式 */ - @Excel(name = "执行表达式 ") - private String cronExpression; - - /** cron计划策略 */ - @Excel(name = "计划策略 ", readConverterExp = "0=默认,1=立即触发执行,2=触发一次执行,3=不触发立即执行") - private String misfirePolicy = ScheduleConstants.MISFIRE_DEFAULT; - - /** 是否并发执行(0允许 1禁止) */ - @Excel(name = "并发执行", readConverterExp = "0=允许,1=禁止") - private String concurrent; - - /** 任务状态(0正常 1暂停) */ - @Excel(name = "任务状态", readConverterExp = "0=正常,1=暂停") - private String status; - @JsonSerialize(using = ToStringSerializer.class) - public Long getJobId() - { - return jobId; - } - - public void setJobId(Long jobId) - { - this.jobId = jobId; - } - - @NotBlank(message = "任务名称不能为空") - @Size(min = 0, max = 64, message = "任务名称不能超过64个字符") - public String getJobName() - { - return jobName; - } - - public void setJobName(String jobName) - { - this.jobName = jobName; - } - - public String getJobGroup() - { - return jobGroup; - } - - public void setJobGroup(String jobGroup) - { - this.jobGroup = jobGroup; - } - - @NotBlank(message = "调用目标字符串不能为空") - @Size(min = 0, max = 500, message = "调用目标字符串长度不能超过500个字符") - public String getInvokeTarget() - { - return invokeTarget; - } - - public void setInvokeTarget(String invokeTarget) - { - this.invokeTarget = invokeTarget; - } - - @NotBlank(message = "Cron执行表达式不能为空") - @Size(min = 0, max = 255, message = "Cron执行表达式不能超过255个字符") - public String getCronExpression() - { - return cronExpression; - } - - public void setCronExpression(String cronExpression) - { - this.cronExpression = cronExpression; - } - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - public Date getNextValidTime() - { - if (StringUtils.isNotEmpty(cronExpression)) - { - return CronUtils.getNextExecution(cronExpression); - } - return null; - } - - public String getMisfirePolicy() - { - return misfirePolicy; - } - - public void setMisfirePolicy(String misfirePolicy) - { - this.misfirePolicy = misfirePolicy; - } - - public String getConcurrent() - { - return concurrent; - } - - public void setConcurrent(String concurrent) - { - this.concurrent = concurrent; - } - - public String getStatus() - { - return status; - } - - public void setStatus(String status) - { - this.status = status; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("jobId", getJobId()) - .append("jobName", getJobName()) - .append("jobGroup", getJobGroup()) - .append("cronExpression", getCronExpression()) - .append("nextValidTime", getNextValidTime()) - .append("misfirePolicy", getMisfirePolicy()) - .append("concurrent", getConcurrent()) - .append("status", getStatus()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("remark", getRemark()) - .toString(); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/domain/SysJobLog.java b/ff-game/src/main/java/com/ff/quartz/domain/SysJobLog.java deleted file mode 100644 index 862e809..0000000 --- a/ff-game/src/main/java/com/ff/quartz/domain/SysJobLog.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.ff.quartz.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.core.domain.BaseEntity; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import java.util.Date; - -/** - * 定时任务调度日志表 sys_job_log - * - * @author ff - */ -public class SysJobLog extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** ID */ - @Excel(name = "日志序号") - @JsonSerialize(using = ToStringSerializer.class) - private Long jobLogId; - - /** 任务名称 */ - @Excel(name = "任务名称") - private String jobName; - - /** 任务组名 */ - @Excel(name = "任务组名") - private String jobGroup; - - /** 调用目标字符串 */ - @Excel(name = "调用目标字符串") - private String invokeTarget; - - /** 日志信息 */ - @Excel(name = "日志信息") - private String jobMessage; - - /** 执行状态(0正常 1失败) */ - @Excel(name = "执行状态", readConverterExp = "0=正常,1=失败") - private String status; - - /** 异常信息 */ - @Excel(name = "异常信息") - private String exceptionInfo; - - /** 开始时间 */ - private Date startTime; - - /** 停止时间 */ - private Date stopTime; - @JsonSerialize(using = ToStringSerializer.class) - public Long getJobLogId() - { - return jobLogId; - } - - public void setJobLogId(Long jobLogId) - { - this.jobLogId = jobLogId; - } - - public String getJobName() - { - return jobName; - } - - public void setJobName(String jobName) - { - this.jobName = jobName; - } - - public String getJobGroup() - { - return jobGroup; - } - - public void setJobGroup(String jobGroup) - { - this.jobGroup = jobGroup; - } - - public String getInvokeTarget() - { - return invokeTarget; - } - - public void setInvokeTarget(String invokeTarget) - { - this.invokeTarget = invokeTarget; - } - - public String getJobMessage() - { - return jobMessage; - } - - public void setJobMessage(String jobMessage) - { - this.jobMessage = jobMessage; - } - - public String getStatus() - { - return status; - } - - public void setStatus(String status) - { - this.status = status; - } - - public String getExceptionInfo() - { - return exceptionInfo; - } - - public void setExceptionInfo(String exceptionInfo) - { - this.exceptionInfo = exceptionInfo; - } - - public Date getStartTime() - { - return startTime; - } - - public void setStartTime(Date startTime) - { - this.startTime = startTime; - } - - public Date getStopTime() - { - return stopTime; - } - - public void setStopTime(Date stopTime) - { - this.stopTime = stopTime; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("jobLogId", getJobLogId()) - .append("jobName", getJobName()) - .append("jobGroup", getJobGroup()) - .append("jobMessage", getJobMessage()) - .append("status", getStatus()) - .append("exceptionInfo", getExceptionInfo()) - .append("startTime", getStartTime()) - .append("stopTime", getStopTime()) - .toString(); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/mapper/SysJobLogMapper.java b/ff-game/src/main/java/com/ff/quartz/mapper/SysJobLogMapper.java deleted file mode 100644 index 86c9fb4..0000000 --- a/ff-game/src/main/java/com/ff/quartz/mapper/SysJobLogMapper.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.ff.quartz.mapper; - -import com.ff.quartz.domain.SysJobLog; - -import java.util.List; - -/** - * 调度任务日志信息 数据层 - * - * @author ff - */ -public interface SysJobLogMapper -{ - /** - * 获取quartz调度器日志的计划任务 - * - * @param jobLog 调度日志信息 - * @return 调度任务日志集合 - */ - public List selectJobLogList(SysJobLog jobLog); - - /** - * 查询所有调度任务日志 - * - * @return 调度任务日志列表 - */ - public List selectJobLogAll(); - - /** - * 通过调度任务日志ID查询调度信息 - * - * @param jobLogId 调度任务日志ID - * @return 调度任务日志对象信息 - */ - public SysJobLog selectJobLogById(Long jobLogId); - - /** - * 新增任务日志 - * - * @param jobLog 调度日志信息 - * @return 结果 - */ - public int insertJobLog(SysJobLog jobLog); - - /** - * 批量删除调度日志信息 - * - * @param logIds 需要删除的数据ID - * @return 结果 - */ - public int deleteJobLogByIds(Long[] logIds); - - /** - * 删除任务日志 - * - * @param jobId 调度日志ID - * @return 结果 - */ - public int deleteJobLogById(Long jobId); - - /** - * 清空任务日志 - */ - public void cleanJobLog(); -} diff --git a/ff-game/src/main/java/com/ff/quartz/mapper/SysJobMapper.java b/ff-game/src/main/java/com/ff/quartz/mapper/SysJobMapper.java deleted file mode 100644 index 3aac4d2..0000000 --- a/ff-game/src/main/java/com/ff/quartz/mapper/SysJobMapper.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.ff.quartz.mapper; - -import com.ff.quartz.domain.SysJob; - -import java.util.List; - -/** - * 调度任务信息 数据层 - * - * @author ff - */ -public interface SysJobMapper -{ - /** - * 查询调度任务日志集合 - * - * @param job 调度信息 - * @return 操作日志集合 - */ - public List selectJobList(SysJob job); - - /** - * 查询所有调度任务 - * - * @return 调度任务列表 - */ - public List selectJobAll(); - - /** - * 通过调度ID查询调度任务信息 - * - * @param jobId 调度ID - * @return 角色对象信息 - */ - public SysJob selectJobById(Long jobId); - - /** - * 通过调度ID删除调度任务信息 - * - * @param jobId 调度ID - * @return 结果 - */ - public int deleteJobById(Long jobId); - - /** - * 批量删除调度任务信息 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - public int deleteJobByIds(Long[] ids); - - /** - * 修改调度任务信息 - * - * @param job 调度任务信息 - * @return 结果 - */ - public int updateJob(SysJob job); - - /** - * 新增调度任务信息 - * - * @param job 调度任务信息 - * @return 结果 - */ - public int insertJob(SysJob job); -} diff --git a/ff-game/src/main/java/com/ff/quartz/service/ISysJobLogService.java b/ff-game/src/main/java/com/ff/quartz/service/ISysJobLogService.java deleted file mode 100644 index fc43da0..0000000 --- a/ff-game/src/main/java/com/ff/quartz/service/ISysJobLogService.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.ff.quartz.service; - -import com.ff.quartz.domain.SysJobLog; - -import java.util.List; - -/** - * 定时任务调度日志信息信息 服务层 - * - * @author ff - */ -public interface ISysJobLogService -{ - /** - * 获取quartz调度器日志的计划任务 - * - * @param jobLog 调度日志信息 - * @return 调度任务日志集合 - */ - public List selectJobLogList(SysJobLog jobLog); - - /** - * 通过调度任务日志ID查询调度信息 - * - * @param jobLogId 调度任务日志ID - * @return 调度任务日志对象信息 - */ - public SysJobLog selectJobLogById(Long jobLogId); - - /** - * 新增任务日志 - * - * @param jobLog 调度日志信息 - */ - public void addJobLog(SysJobLog jobLog); - - /** - * 批量删除调度日志信息 - * - * @param logIds 需要删除的日志ID - * @return 结果 - */ - public int deleteJobLogByIds(Long[] logIds); - - /** - * 删除任务日志 - * - * @param jobId 调度日志ID - * @return 结果 - */ - public int deleteJobLogById(Long jobId); - - /** - * 清空任务日志 - */ - public void cleanJobLog(); -} diff --git a/ff-game/src/main/java/com/ff/quartz/service/ISysJobService.java b/ff-game/src/main/java/com/ff/quartz/service/ISysJobService.java deleted file mode 100644 index 374d375..0000000 --- a/ff-game/src/main/java/com/ff/quartz/service/ISysJobService.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.ff.quartz.service; - -import com.ff.base.exception.job.TaskException; -import com.ff.quartz.domain.SysJob; -import org.quartz.SchedulerException; - -import java.util.List; - -/** - * 定时任务调度信息信息 服务层 - * - * @author ff - */ -public interface ISysJobService -{ - /** - * 获取quartz调度器的计划任务 - * - * @param job 调度信息 - * @return 调度任务集合 - */ - public List selectJobList(SysJob job); - - /** - * 通过调度任务ID查询调度信息 - * - * @param jobId 调度任务ID - * @return 调度任务对象信息 - */ - public SysJob selectJobById(Long jobId); - - /** - * 暂停任务 - * - * @param job 调度信息 - * @return 结果 - */ - public int pauseJob(SysJob job) throws SchedulerException; - - /** - * 恢复任务 - * - * @param job 调度信息 - * @return 结果 - */ - public int resumeJob(SysJob job) throws SchedulerException; - - /** - * 删除任务后,所对应的trigger也将被删除 - * - * @param job 调度信息 - * @return 结果 - */ - public int deleteJob(SysJob job) throws SchedulerException; - - /** - * 批量删除调度信息 - * - * @param jobIds 需要删除的任务ID - * @return 结果 - */ - public void deleteJobByIds(Long[] jobIds) throws SchedulerException; - - /** - * 任务调度状态修改 - * - * @param job 调度信息 - * @return 结果 - */ - public int changeStatus(SysJob job) throws SchedulerException; - - /** - * 立即运行任务 - * - * @param job 调度信息 - * @return 结果 - */ - public boolean run(SysJob job) throws SchedulerException; - - /** - * 新增任务 - * - * @param job 调度信息 - * @return 结果 - */ - public int insertJob(SysJob job) throws SchedulerException, TaskException; - - /** - * 更新任务 - * - * @param job 调度信息 - * @return 结果 - */ - public int updateJob(SysJob job) throws SchedulerException, TaskException; - - /** - * 校验cron表达式是否有效 - * - * @param cronExpression 表达式 - * @return 结果 - */ - public boolean checkCronExpressionIsValid(String cronExpression); -} diff --git a/ff-game/src/main/java/com/ff/quartz/service/impl/SysJobLogServiceImpl.java b/ff-game/src/main/java/com/ff/quartz/service/impl/SysJobLogServiceImpl.java deleted file mode 100644 index 6964375..0000000 --- a/ff-game/src/main/java/com/ff/quartz/service/impl/SysJobLogServiceImpl.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.ff.quartz.service.impl; - -import cn.hutool.core.util.IdUtil; -import com.ff.quartz.domain.SysJobLog; -import com.ff.quartz.mapper.SysJobLogMapper; -import com.ff.quartz.service.ISysJobLogService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 定时任务调度日志信息 服务层 - * - * @author ff - */ -@Service -public class SysJobLogServiceImpl implements ISysJobLogService -{ - @Autowired - private SysJobLogMapper jobLogMapper; - - /** - * 获取quartz调度器日志的计划任务 - * - * @param jobLog 调度日志信息 - * @return 调度任务日志集合 - */ - @Override - public List selectJobLogList(SysJobLog jobLog) - { - return jobLogMapper.selectJobLogList(jobLog); - } - - /** - * 通过调度任务日志ID查询调度信息 - * - * @param jobLogId 调度任务日志ID - * @return 调度任务日志对象信息 - */ - @Override - public SysJobLog selectJobLogById(Long jobLogId) - { - return jobLogMapper.selectJobLogById(jobLogId); - } - - /** - * 新增任务日志 - * - * @param jobLog 调度日志信息 - */ - @Override - public void addJobLog(SysJobLog jobLog) - { - jobLog.setJobLogId(IdUtil.getSnowflakeNextId()); - jobLogMapper.insertJobLog(jobLog); - } - - /** - * 批量删除调度日志信息 - * - * @param logIds 需要删除的数据ID - * @return 结果 - */ - @Override - public int deleteJobLogByIds(Long[] logIds) - { - return jobLogMapper.deleteJobLogByIds(logIds); - } - - /** - * 删除任务日志 - * - * @param jobId 调度日志ID - */ - @Override - public int deleteJobLogById(Long jobId) - { - return jobLogMapper.deleteJobLogById(jobId); - } - - /** - * 清空任务日志 - */ - @Override - public void cleanJobLog() - { - jobLogMapper.cleanJobLog(); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/service/impl/SysJobServiceImpl.java b/ff-game/src/main/java/com/ff/quartz/service/impl/SysJobServiceImpl.java deleted file mode 100644 index d03c360..0000000 --- a/ff-game/src/main/java/com/ff/quartz/service/impl/SysJobServiceImpl.java +++ /dev/null @@ -1,264 +0,0 @@ -package com.ff.quartz.service.impl; - -import cn.hutool.core.util.IdUtil; -import com.ff.base.constant.ScheduleConstants; -import com.ff.base.exception.job.TaskException; -import com.ff.quartz.domain.SysJob; -import com.ff.quartz.mapper.SysJobMapper; -import com.ff.quartz.service.ISysJobService; -import com.ff.quartz.util.CronUtils; -import com.ff.quartz.util.ScheduleUtils; -import org.quartz.JobDataMap; -import org.quartz.JobKey; -import org.quartz.Scheduler; -import org.quartz.SchedulerException; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import javax.annotation.PostConstruct; -import java.util.List; - -/** - * 定时任务调度信息 服务层 - * - * @author ff - */ -@Service -public class SysJobServiceImpl implements ISysJobService -{ - @Autowired - private Scheduler scheduler; - - @Autowired - private SysJobMapper jobMapper; - - /** - * 项目启动时,初始化定时器 主要是防止手动修改数据库导致未同步到定时任务处理(注:不能手动修改数据库ID和任务组名,否则会导致脏数据) - */ - @PostConstruct - public void init() throws SchedulerException, TaskException - { - scheduler.clear(); - List jobList = jobMapper.selectJobAll(); - for (SysJob job : jobList) - { - ScheduleUtils.createScheduleJob(scheduler, job); - } - } - - /** - * 获取quartz调度器的计划任务列表 - * - * @param job 调度信息 - * @return - */ - @Override - public List selectJobList(SysJob job) - { - return jobMapper.selectJobList(job); - } - - /** - * 通过调度任务ID查询调度信息 - * - * @param jobId 调度任务ID - * @return 调度任务对象信息 - */ - @Override - public SysJob selectJobById(Long jobId) - { - return jobMapper.selectJobById(jobId); - } - - /** - * 暂停任务 - * - * @param job 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int pauseJob(SysJob job) throws SchedulerException - { - Long jobId = job.getJobId(); - String jobGroup = job.getJobGroup(); - job.setStatus(ScheduleConstants.Status.PAUSE.getValue()); - int rows = jobMapper.updateJob(job); - if (rows > 0) - { - scheduler.pauseJob(ScheduleUtils.getJobKey(jobId, jobGroup)); - } - return rows; - } - - /** - * 恢复任务 - * - * @param job 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int resumeJob(SysJob job) throws SchedulerException - { - Long jobId = job.getJobId(); - String jobGroup = job.getJobGroup(); - job.setStatus(ScheduleConstants.Status.NORMAL.getValue()); - int rows = jobMapper.updateJob(job); - if (rows > 0) - { - scheduler.resumeJob(ScheduleUtils.getJobKey(jobId, jobGroup)); - } - return rows; - } - - /** - * 删除任务后,所对应的trigger也将被删除 - * - * @param job 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int deleteJob(SysJob job) throws SchedulerException - { - Long jobId = job.getJobId(); - String jobGroup = job.getJobGroup(); - int rows = jobMapper.deleteJobById(jobId); - if (rows > 0) - { - scheduler.deleteJob(ScheduleUtils.getJobKey(jobId, jobGroup)); - } - return rows; - } - - /** - * 批量删除调度信息 - * - * @param jobIds 需要删除的任务ID - * @return 结果 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteJobByIds(Long[] jobIds) throws SchedulerException - { - for (Long jobId : jobIds) - { - SysJob job = jobMapper.selectJobById(jobId); - deleteJob(job); - } - } - - /** - * 任务调度状态修改 - * - * @param job 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int changeStatus(SysJob job) throws SchedulerException - { - int rows = 0; - String status = job.getStatus(); - if (ScheduleConstants.Status.NORMAL.getValue().equals(status)) - { - rows = resumeJob(job); - } - else if (ScheduleConstants.Status.PAUSE.getValue().equals(status)) - { - rows = pauseJob(job); - } - return rows; - } - - /** - * 立即运行任务 - * - * @param job 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean run(SysJob job) throws SchedulerException - { - boolean result = false; - Long jobId = job.getJobId(); - String jobGroup = job.getJobGroup(); - SysJob properties = selectJobById(job.getJobId()); - // 参数 - JobDataMap dataMap = new JobDataMap(); - dataMap.put(ScheduleConstants.TASK_PROPERTIES, properties); - JobKey jobKey = ScheduleUtils.getJobKey(jobId, jobGroup); - if (scheduler.checkExists(jobKey)) - { - result = true; - scheduler.triggerJob(jobKey, dataMap); - } - return result; - } - - /** - * 新增任务 - * - * @param job 调度信息 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int insertJob(SysJob job) throws SchedulerException, TaskException - { - job.setJobId(IdUtil.getSnowflakeNextId()); - job.setStatus(ScheduleConstants.Status.PAUSE.getValue()); - int rows = jobMapper.insertJob(job); - if (rows > 0) - { - ScheduleUtils.createScheduleJob(scheduler, job); - } - return rows; - } - - /** - * 更新任务的时间表达式 - * - * @param job 调度信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public int updateJob(SysJob job) throws SchedulerException, TaskException - { - SysJob properties = selectJobById(job.getJobId()); - int rows = jobMapper.updateJob(job); - if (rows > 0) - { - updateSchedulerJob(job, properties.getJobGroup()); - } - return rows; - } - - /** - * 更新任务 - * - * @param job 任务对象 - * @param jobGroup 任务组名 - */ - public void updateSchedulerJob(SysJob job, String jobGroup) throws SchedulerException, TaskException - { - Long jobId = job.getJobId(); - // 判断是否存在 - JobKey jobKey = ScheduleUtils.getJobKey(jobId, jobGroup); - if (scheduler.checkExists(jobKey)) - { - // 防止创建时存在数据问题 先移除,然后在执行创建操作 - scheduler.deleteJob(jobKey); - } - ScheduleUtils.createScheduleJob(scheduler, job); - } - - /** - * 校验cron表达式是否有效 - * - * @param cronExpression 表达式 - * @return 结果 - */ - @Override - public boolean checkCronExpressionIsValid(String cronExpression) - { - return CronUtils.isValid(cronExpression); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/task/GameTask.java b/ff-game/src/main/java/com/ff/quartz/task/GameTask.java deleted file mode 100644 index 882bbf0..0000000 --- a/ff-game/src/main/java/com/ff/quartz/task/GameTask.java +++ /dev/null @@ -1,259 +0,0 @@ -package com.ff.quartz.task; - -import com.ff.base.constant.Constants; -import com.ff.base.enums.GamePlatforms; -import com.ff.base.enums.StatusType; -import com.ff.base.utils.DateUtils; -import com.ff.base.utils.StringUtils; -import com.ff.game.api.IGamesService; -import com.ff.game.api.ng.client.NGClient; -import com.ff.game.api.request.BetRecordByTimeDTO; -import com.ff.game.api.request.ExchangeTransferStatusRequestDTO; -import com.ff.game.api.request.GamesBaseRequestDTO; -import com.ff.game.api.request.GetFreeSpinDashflowRequestDTO; -import com.ff.game.domain.GameExchangeMoney; -import com.ff.game.domain.KeyInfo; -import com.ff.game.domain.Platform; -import com.ff.game.service.IGameExchangeMoneyService; -import com.ff.game.service.IPlatformService; -import com.ff.member.domain.Member; -import com.ff.member.service.IMemberService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.List; -import java.util.Map; - - -/** - * 游戏任务 - * - * @author shi - * @date 2024/10/22 - */ -@Slf4j -@Component("gameTask") -public class GameTask { - - @Autowired - private Map gamesService; - - @Resource - private NGClient ngClient; - - @Resource - private IGameExchangeMoneyService gameExchangeMoneyService; - - @Resource - private IMemberService memberService; - - @Resource - private IPlatformService platformService; - - /** - * 同步游戏列表 - */ - public void syncGameList() { - for (GamePlatforms gamePlatform : GamePlatforms.values()) { - String platformCode = gamePlatform.getCode(); - try { - syncGameList(platformCode); - } catch (Exception e) { - log.error("同步游戏列表失败platformCode:{}", platformCode, e); - } - } - } - - public void syncGameList(String platformCode) { - - Platform platform = platformService.get(platformCode); - if (null == platform) { - return; - } - List keyData = platform.getKeyInfo(); - for (KeyInfo keyInfo : keyData) { - gamesService.get(platformCode + Constants.SERVICE) - .getGameList(GamesBaseRequestDTO.builder() - .agentId(keyInfo.getCode()) - .agentKey(keyInfo.getKey()) - .keyInfo(keyInfo) - .vendor(platform) - .build()); - break; - } - } - - /** - * 同步实时投注记录 - * - * @param platformCode - * @param backTimeMin - */ - public void syncRealtimeBetRecord(String platformCode, Integer backTimeMin) { - this.syncGameList(platformCode); - //捞取指定分钟前的数据 - Long startTime = DateUtils.addOrSubtractMinutes(DateUtils.getNowDate(), backTimeMin); - Long endTime = DateUtils.getNowDate(); - - Platform platform = platformService.get(platformCode); - if (null == platform) { - return; - } - List keyData = platform.getKeyInfo(); - - for (KeyInfo keyInfo : keyData) { - try { - BetRecordByTimeDTO betRecordByTimeDTO = new BetRecordByTimeDTO(); - betRecordByTimeDTO.setStartTime(startTime); - betRecordByTimeDTO.setEndTime(endTime); - betRecordByTimeDTO.setPage(1); - betRecordByTimeDTO.setPageLimit(1000); - betRecordByTimeDTO.setAgentId(keyInfo.getCode()); - betRecordByTimeDTO.setAgentKey(keyInfo.getKey()); - betRecordByTimeDTO.setKeyInfo(keyInfo); - betRecordByTimeDTO.setVendor(platform); - - betRecordByTimeDTO.setSystemCurrency(keyInfo.getCurrency()); - betRecordByTimeDTO.setCurrency(platform.getCurrencyInfo().get(keyInfo.getCurrency())); - - gamesService.get(platformCode + Constants.SERVICE).getBetRecordByTime(betRecordByTimeDTO); - } catch (Exception e) { - log.error("同步平台投注记录失败platformCode:{}", platformCode, e); - } - if (platform.isMultiAgent()) { - break; - } - } - } - - /** - * 同步历史投注记录 - * - * @param platformCode - * @param backTimeMin - */ - public void syncHistoryBetRecord(String platformCode, Integer backTimeMin) { - this.syncGameList(platformCode); - //捞取指定分钟前的数据 - Long startTime = DateUtils.addOrSubtractMinutes(DateUtils.getNowDate(), backTimeMin); - Long endTime = DateUtils.getNowDate(); - - Platform platform = platformService.get(platformCode); - if (null == platform) { - return; - } - List keyData = platform.getKeyInfo(); - - for (KeyInfo keyInfo : keyData) { - try { - BetRecordByTimeDTO betRecordByTimeDTO = new BetRecordByTimeDTO(); - betRecordByTimeDTO.setStartTime(startTime); - betRecordByTimeDTO.setEndTime(endTime); - betRecordByTimeDTO.setPage(1); - betRecordByTimeDTO.setPageLimit(1000); - betRecordByTimeDTO.setAgentId(keyInfo.getCode()); - betRecordByTimeDTO.setAgentKey(keyInfo.getKey()); - betRecordByTimeDTO.setKeyInfo(keyInfo); - betRecordByTimeDTO.setVendor(platform); - - betRecordByTimeDTO.setSystemCurrency(keyInfo.getCurrency()); - betRecordByTimeDTO.setCurrency(platform.getCurrencyInfo().get(keyInfo.getCurrency())); - - gamesService.get(platformCode + Constants.SERVICE).getBetRecordByHistoryTime(betRecordByTimeDTO); - } catch (Exception e) { - log.error("同步平台投注记录失败platformCode:{}", platformCode, e); - } - if (platform.isMultiAgent()) { - break; - } - } - } - - /** - * 同步免费游玩记录 - */ - public void syncFreeBetRecord(String platformCode, Integer backTime) { - // 捞取指定分钟前的数据 - Long startTime = DateUtils.addOrSubtractMinutes(DateUtils.getNowDate(), backTime); - - Platform platform = platformService.get(platformCode); - if (null == platform) { - return; - } - List keyData = platform.getKeyInfo(); - - for (KeyInfo keyInfo : keyData) { - try { - GetFreeSpinDashflowRequestDTO getFreeSpinDashflowRequestDTO = new GetFreeSpinDashflowRequestDTO(); - getFreeSpinDashflowRequestDTO.setStartTime(startTime); - getFreeSpinDashflowRequestDTO.setAgentId(keyInfo.getCode()); - getFreeSpinDashflowRequestDTO.setAgentKey(keyInfo.getKey()); - getFreeSpinDashflowRequestDTO.setVendor(platform); - getFreeSpinDashflowRequestDTO.setKeyInfo(keyInfo); - gamesService.get(platformCode + Constants.SERVICE).getFreeSpinDashflow(getFreeSpinDashflowRequestDTO); - - } catch (Exception e) { - log.error("免费游戏投注记录失败platformCode:{}", platformCode, e); - } - if (platform.isMultiAgent()) { - break; - } - } - } - - public void updateGameExchangeMoney() { - List gameExchangeMoneyList = gameExchangeMoneyService.selectGameExchangeMoneyList(GameExchangeMoney.builder().status(StatusType.IN_PROGRESS.getValue()).build()); - for (GameExchangeMoney exchangeMoney : gameExchangeMoneyList) { - try { - Platform platform = platformService.get(exchangeMoney.getPlatformCode()); - if (null == platform) { - log.error("平台不存在platformCode:{}", exchangeMoney.getPlatformCode()); - continue; - } - - List keyInfos = platform.getKeyInfo(); - KeyInfo keyInfo = null; - for (KeyInfo keyData : keyInfos) { - if (keyData.getCurrency().equalsIgnoreCase(exchangeMoney.getCurrencyCode())) { - keyInfo = keyData; - break; - } - } - if (null == keyInfo) { - log.error("平台不存在currencyCode:{}", exchangeMoney.getCurrencyCode()); - continue; - } - String targetCurrency = platform.getCurrencyInfo().get(exchangeMoney.getCurrencyCode()); - if (StringUtils.isEmpty(targetCurrency)) { - log.error("平台不存在currencyCode:{}", exchangeMoney.getCurrencyCode()); - continue; - } - Member member = memberService.selectMemberById(exchangeMoney.getMemberId()); - - ExchangeTransferStatusRequestDTO exchangeTransferStatusRequestDTO = new ExchangeTransferStatusRequestDTO(); - exchangeTransferStatusRequestDTO.setAccount(member.getGameAccount()); - exchangeTransferStatusRequestDTO.setCurrency(targetCurrency); - exchangeTransferStatusRequestDTO.setOrderId(exchangeMoney.getTransactionId()); - exchangeTransferStatusRequestDTO.setAgentId(keyInfo.getCode()); - exchangeTransferStatusRequestDTO.setAgentKey(keyInfo.getKey()); - exchangeTransferStatusRequestDTO.setGameExchangeMoneyId(exchangeMoney.getId()); - exchangeTransferStatusRequestDTO.setVendor(platform); - exchangeTransferStatusRequestDTO.setKeyInfo(keyInfo); - exchangeTransferStatusRequestDTO.setSystemCurrency(exchangeMoney.getCurrencyCode()); - gamesService.get(exchangeMoney.getPlatformCode() + Constants.SERVICE).exchangeTransferStatus(exchangeTransferStatusRequestDTO); - } catch (Exception e) { - log.error("查询 更新交易记录失败,错误信息 {}", e); - } - } - - } - -} - - - - - - diff --git a/ff-game/src/main/java/com/ff/quartz/task/RyTask.java b/ff-game/src/main/java/com/ff/quartz/task/RyTask.java deleted file mode 100644 index 2253a81..0000000 --- a/ff-game/src/main/java/com/ff/quartz/task/RyTask.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.ff.quartz.task; - -import com.ff.base.datasource.DynamicDataSourceContextHolder; -import com.ff.base.utils.StringUtils; -import org.springframework.stereotype.Component; - -import javax.sql.DataSource; -import java.util.Map; - -/** - * 定时任务调度测试 - * - * @author ff - */ -@Component("ryTask") -public class RyTask { - public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) { - System.out.println(StringUtils.format("执行多参方法: 字符串类型{},布尔类型{},长整型{},浮点型{},整形{}", s, b, l, d, i)); - } - - public void ryParams(String params) { - System.out.println("执行有参方法:" + params); - } - - public void ryNoParams() { - Map resolvedDataSources = DynamicDataSourceContextHolder.getAllDataSource(); - for (Map.Entry entry : resolvedDataSources.entrySet()) { - Object key = entry.getKey(); - // 设置数据源类型 - DynamicDataSourceContextHolder.setDataSourceType(key.toString()); - System.out.println("执行无参方法"); - } - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/task/TenantQuotaTask.java b/ff-game/src/main/java/com/ff/quartz/task/TenantQuotaTask.java deleted file mode 100644 index a19d19e..0000000 --- a/ff-game/src/main/java/com/ff/quartz/task/TenantQuotaTask.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.ff.quartz.task; - - -import cn.hutool.core.util.NumberUtil; -import com.ff.base.constant.Constants; -import com.ff.base.enums.OperationType; -import com.ff.base.enums.QuotaType; -import com.ff.base.system.domain.TenantPlatform; -import com.ff.base.system.domain.TenantSecretKey; -import com.ff.base.system.service.ITenantPlatformService; -import com.ff.base.utils.DateUtils; -import com.ff.common.domain.TenantGameQuotaFlow; -import com.ff.common.domain.TenantQuotaExchange; -import com.ff.common.dto.BalanceRealChangesDTO; -import com.ff.common.service.ITenantGameQuotaFlowService; -import com.ff.common.service.ITenantGameQuotaService; -import com.ff.common.service.ITenantQuotaExchangeService; -import com.ff.base.system.service.ITenantSecretKeyService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.math.BigDecimal; -import java.util.List; -import java.util.Map; - -/** - * 租户配额任务 - * - * @author shi - * @date 2025/02/22 - */ -@Slf4j -@Component("tenantQuotaTask") -public class TenantQuotaTask { - - @Resource - private ITenantGameQuotaService tenantGameQuotaService; - - @Resource - private ITenantGameQuotaFlowService tenantGameQuotaFlowService; - - @Resource - private ITenantSecretKeyService tenantSecretKeyService; - - @Resource - private ITenantQuotaExchangeService tenantQuotaExchangeService; - - @Resource - private ITenantPlatformService tenantPlatformService; - - /** - * 更新租户实际配额 - */ - public void updateTenantRealQuota() { - Long yesterdayStart = DateUtils.getYesterdayStart(); - Long yesterdayEnd = DateUtils.getYesterdayEnd(); - TenantGameQuotaFlow gameQuotaFlow = TenantGameQuotaFlow.builder() - .quotaType(QuotaType.BALANCE.getCode()) - .operationType(OperationType.API_BALANCE.getCode()) - .build(); - Map params = gameQuotaFlow.getParams(); - params.put("beginTime", yesterdayStart); - params.put("endTime", yesterdayEnd); - List balanceByTenantKey = tenantGameQuotaFlowService.getBalanceByTenantKey(gameQuotaFlow); - for (TenantGameQuotaFlow tenantGameQuotaFlow : balanceByTenantKey) { - BigDecimal balance = tenantGameQuotaFlow.getExchangeMoney(); - Boolean isOut = Boolean.TRUE; - // 添加判断逻辑 - if (balance.compareTo(BigDecimal.ZERO) < 0) { - balance = balance.abs(); - isOut = Boolean.FALSE; - } - - TenantQuotaExchange tenantQuotaExchange = tenantQuotaExchangeService.getTenantQuotaExchange(Constants.USDT, tenantGameQuotaFlow.getCurrencyCode()); - //更新额度 - BalanceRealChangesDTO realChangesDTO = BalanceRealChangesDTO.builder() - .isOut(isOut) - .tenantKey(tenantGameQuotaFlow.getTenantKey()) - .balance(balance) - .remark(OperationType.REAL_BALANCE_SETTLEMENT.getDescription()) - .operationType(OperationType.REAL_BALANCE_SETTLEMENT.getCode()) - .currencyCode(tenantGameQuotaFlow.getCurrencyCode()) - .actualBalance(tenantQuotaExchange.getActualBalance()) - .build(); - Boolean result = tenantGameQuotaService.balanceRealChanges(realChangesDTO); - //如果没成功重新跑 - while (!result) { - result = tenantGameQuotaService.balanceRealChanges(realChangesDTO); - } - } - - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/util/AbstractQuartzJob.java b/ff-game/src/main/java/com/ff/quartz/util/AbstractQuartzJob.java deleted file mode 100644 index e53fcf7..0000000 --- a/ff-game/src/main/java/com/ff/quartz/util/AbstractQuartzJob.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.ff.quartz.util; - -import com.ff.base.constant.Constants; -import com.ff.base.constant.ScheduleConstants; -import com.ff.base.datasource.DynamicDataSourceContextHolder; -import com.ff.base.utils.ExceptionUtil; -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.bean.BeanUtils; -import com.ff.base.utils.spring.SpringUtils; -import com.ff.quartz.domain.SysJob; -import com.ff.quartz.domain.SysJobLog; -import com.ff.quartz.service.ISysJobLogService; -import org.quartz.*; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource; - -import javax.sql.DataSource; -import java.util.Date; -import java.util.Map; - -/** - * 抽象quartz调用 - * - * @author ff - */ -public abstract class AbstractQuartzJob implements Job { - private static final Logger log = LoggerFactory.getLogger(AbstractQuartzJob.class); - - /** - * 线程本地变量 - */ - private static ThreadLocal threadLocal = new ThreadLocal<>(); - - @Override - public void execute(JobExecutionContext context) throws JobExecutionException { - SysJob sysJob = new SysJob(); - BeanUtils.copyBeanProp(sysJob, context.getMergedJobDataMap().get(ScheduleConstants.TASK_PROPERTIES)); - try { - before(context, sysJob); - if (sysJob != null) { - doExecute(context, sysJob); - } - after(context, sysJob, null); - } catch (Exception e) { - log.error("任务执行异常 - :", e); - after(context, sysJob, e); - } - - } - - /** - * 执行前 - * - * @param context 工作执行上下文对象 - * @param sysJob 系统计划任务 - */ - protected void before(JobExecutionContext context, SysJob sysJob) { - threadLocal.set(new Date()); - } - - /** - * 执行后 - * - * @param context 工作执行上下文对象 - * @param sysJob 系统计划任务 - */ - protected void after(JobExecutionContext context, SysJob sysJob, Exception e) { - Date startTime = threadLocal.get(); - threadLocal.remove(); - - final SysJobLog sysJobLog = new SysJobLog(); - sysJobLog.setJobName(sysJob.getJobName()); - sysJobLog.setJobGroup(sysJob.getJobGroup()); - sysJobLog.setInvokeTarget(sysJob.getInvokeTarget()); - sysJobLog.setStartTime(startTime); - sysJobLog.setStopTime(new Date()); - long runMs = sysJobLog.getStopTime().getTime() - sysJobLog.getStartTime().getTime(); - sysJobLog.setJobMessage(sysJobLog.getJobName() + " 总共耗时:" + runMs + "毫秒"); - if (e != null) { - sysJobLog.setStatus(Constants.FAIL); - String errorMsg = StringUtils.substring(ExceptionUtil.getExceptionMessage(e), 0, 2000); - sysJobLog.setExceptionInfo(errorMsg); - } else { - sysJobLog.setStatus(Constants.SUCCESS); - } - - // 写入数据库当中 - SpringUtils.getBean(ISysJobLogService.class).addJobLog(sysJobLog); - } - - /** - * 执行方法,由子类重载 - * - * @param context 工作执行上下文对象 - * @param sysJob 系统计划任务 - * @throws Exception 执行过程中的异常 - */ - protected abstract void doExecute(JobExecutionContext context, SysJob sysJob) throws Exception; -} diff --git a/ff-game/src/main/java/com/ff/quartz/util/CronUtils.java b/ff-game/src/main/java/com/ff/quartz/util/CronUtils.java deleted file mode 100644 index d550083..0000000 --- a/ff-game/src/main/java/com/ff/quartz/util/CronUtils.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.ff.quartz.util; - -import org.quartz.CronExpression; - -import java.text.ParseException; -import java.util.Date; - -/** - * cron表达式工具类 - * - * @author ff - * - */ -public class CronUtils -{ - /** - * 返回一个布尔值代表一个给定的Cron表达式的有效性 - * - * @param cronExpression Cron表达式 - * @return boolean 表达式是否有效 - */ - public static boolean isValid(String cronExpression) - { - return CronExpression.isValidExpression(cronExpression); - } - - /** - * 返回一个字符串值,表示该消息无效Cron表达式给出有效性 - * - * @param cronExpression Cron表达式 - * @return String 无效时返回表达式错误描述,如果有效返回null - */ - public static String getInvalidMessage(String cronExpression) - { - try - { - new CronExpression(cronExpression); - return null; - } - catch (ParseException pe) - { - return pe.getMessage(); - } - } - - /** - * 返回下一个执行时间根据给定的Cron表达式 - * - * @param cronExpression Cron表达式 - * @return Long 下次Cron表达式执行时间 - */ - public static Date getNextExecution(String cronExpression) - { - try - { - CronExpression cron = new CronExpression(cronExpression); - return cron.getNextValidTimeAfter(new Date(System.currentTimeMillis())); - } - catch (ParseException e) - { - throw new IllegalArgumentException(e.getMessage()); - } - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/util/JobInvokeUtil.java b/ff-game/src/main/java/com/ff/quartz/util/JobInvokeUtil.java deleted file mode 100644 index 7403739..0000000 --- a/ff-game/src/main/java/com/ff/quartz/util/JobInvokeUtil.java +++ /dev/null @@ -1,183 +0,0 @@ -package com.ff.quartz.util; - -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.spring.SpringUtils; -import com.ff.quartz.domain.SysJob; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.LinkedList; -import java.util.List; - -/** - * 任务执行工具 - * - * @author ff - */ -public class JobInvokeUtil -{ - /** - * 执行方法 - * - * @param sysJob 系统任务 - */ - public static void invokeMethod(SysJob sysJob) throws Exception - { - String invokeTarget = sysJob.getInvokeTarget(); - String beanName = getBeanName(invokeTarget); - String methodName = getMethodName(invokeTarget); - List methodParams = getMethodParams(invokeTarget); - - if (!isValidClassName(beanName)) - { - Object bean = SpringUtils.getBean(beanName); - invokeMethod(bean, methodName, methodParams); - } - else - { - Object bean = Class.forName(beanName).getDeclaredConstructor().newInstance(); - invokeMethod(bean, methodName, methodParams); - } - } - - /** - * 调用任务方法 - * - * @param bean 目标对象 - * @param methodName 方法名称 - * @param methodParams 方法参数 - */ - private static void invokeMethod(Object bean, String methodName, List methodParams) - throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, - InvocationTargetException - { - if (StringUtils.isNotNull(methodParams) && methodParams.size() > 0) - { - Method method = bean.getClass().getMethod(methodName, getMethodParamsType(methodParams)); - method.invoke(bean, getMethodParamsValue(methodParams)); - } - else - { - Method method = bean.getClass().getMethod(methodName); - method.invoke(bean); - } - } - - /** - * 校验是否为为class包名 - * - * @param invokeTarget 名称 - * @return true是 false否 - */ - public static boolean isValidClassName(String invokeTarget) - { - return StringUtils.countMatches(invokeTarget, ".") > 1; - } - - /** - * 获取bean名称 - * - * @param invokeTarget 目标字符串 - * @return bean名称 - */ - public static String getBeanName(String invokeTarget) - { - String beanName = StringUtils.substringBefore(invokeTarget, "("); - return StringUtils.substringBeforeLast(beanName, "."); - } - - /** - * 获取bean方法 - * - * @param invokeTarget 目标字符串 - * @return method方法 - */ - public static String getMethodName(String invokeTarget) - { - String methodName = StringUtils.substringBefore(invokeTarget, "("); - return StringUtils.substringAfterLast(methodName, "."); - } - - /** - * 获取method方法参数相关列表 - * - * @param invokeTarget 目标字符串 - * @return method方法相关参数列表 - */ - public static List getMethodParams(String invokeTarget) - { - String methodStr = StringUtils.substringBetween(invokeTarget, "(", ")"); - if (StringUtils.isEmpty(methodStr)) - { - return null; - } - String[] methodParams = methodStr.split(",(?=([^\"']*[\"'][^\"']*[\"'])*[^\"']*$)"); - List classs = new LinkedList<>(); - for (int i = 0; i < methodParams.length; i++) - { - String str = StringUtils.trimToEmpty(methodParams[i]); - // String字符串类型,以'或"开头 - if (StringUtils.startsWithAny(str, "'", "\"")) - { - classs.add(new Object[] { StringUtils.substring(str, 1, str.length() - 1), String.class }); - } - // boolean布尔类型,等于true或者false - else if ("true".equalsIgnoreCase(str) || "false".equalsIgnoreCase(str)) - { - classs.add(new Object[] { Boolean.valueOf(str), Boolean.class }); - } - // long长整形,以L结尾 - else if (StringUtils.endsWith(str, "L")) - { - classs.add(new Object[] { Long.valueOf(StringUtils.substring(str, 0, str.length() - 1)), Long.class }); - } - // double浮点类型,以D结尾 - else if (StringUtils.endsWith(str, "D")) - { - classs.add(new Object[] { Double.valueOf(StringUtils.substring(str, 0, str.length() - 1)), Double.class }); - } - // 其他类型归类为整形 - else - { - classs.add(new Object[] { Integer.valueOf(str), Integer.class }); - } - } - return classs; - } - - /** - * 获取参数类型 - * - * @param methodParams 参数相关列表 - * @return 参数类型列表 - */ - public static Class[] getMethodParamsType(List methodParams) - { - Class[] classs = new Class[methodParams.size()]; - int index = 0; - for (Object[] os : methodParams) - { - classs[index] = (Class) os[1]; - index++; - } - return classs; - } - - /** - * 获取参数值 - * - * @param methodParams 参数相关列表 - * @return 参数值列表 - */ - public static Object[] getMethodParamsValue(List methodParams) - { - Object[] classs = new Object[methodParams.size()]; - int index = 0; - for (Object[] os : methodParams) - { - classs[index] = (Object) os[0]; - index++; - } - return classs; - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/util/QuartzDisallowConcurrentExecution.java b/ff-game/src/main/java/com/ff/quartz/util/QuartzDisallowConcurrentExecution.java deleted file mode 100644 index 5ec7ff5..0000000 --- a/ff-game/src/main/java/com/ff/quartz/util/QuartzDisallowConcurrentExecution.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.ff.quartz.util; - -import com.ff.quartz.domain.SysJob; -import com.ff.quartz.util.AbstractQuartzJob; -import com.ff.quartz.util.JobInvokeUtil; -import org.quartz.DisallowConcurrentExecution; -import org.quartz.JobExecutionContext; - -/** - * 定时任务处理(禁止并发执行) - * - * @author ff - * - */ -@DisallowConcurrentExecution -public class QuartzDisallowConcurrentExecution extends AbstractQuartzJob -{ - @Override - protected void doExecute(JobExecutionContext context, SysJob sysJob) throws Exception - { - JobInvokeUtil.invokeMethod(sysJob); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/util/QuartzJobExecution.java b/ff-game/src/main/java/com/ff/quartz/util/QuartzJobExecution.java deleted file mode 100644 index 18f99f8..0000000 --- a/ff-game/src/main/java/com/ff/quartz/util/QuartzJobExecution.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.ff.quartz.util; - -import com.ff.quartz.domain.SysJob; -import com.ff.quartz.util.AbstractQuartzJob; -import com.ff.quartz.util.JobInvokeUtil; -import org.quartz.JobExecutionContext; - -/** - * 定时任务处理(允许并发执行) - * - * @author ff - * - */ -public class QuartzJobExecution extends AbstractQuartzJob -{ - @Override - protected void doExecute(JobExecutionContext context, SysJob sysJob) throws Exception - { - JobInvokeUtil.invokeMethod(sysJob); - } -} diff --git a/ff-game/src/main/java/com/ff/quartz/util/ScheduleUtils.java b/ff-game/src/main/java/com/ff/quartz/util/ScheduleUtils.java deleted file mode 100644 index 6a966b8..0000000 --- a/ff-game/src/main/java/com/ff/quartz/util/ScheduleUtils.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.ff.quartz.util; - -import com.ff.base.constant.Constants; -import com.ff.base.constant.ScheduleConstants; -import com.ff.base.exception.job.TaskException; -import com.ff.base.exception.job.TaskException.Code; -import com.ff.base.utils.StringUtils; -import com.ff.base.utils.spring.SpringUtils; -import com.ff.quartz.domain.SysJob; -import org.quartz.*; - -/** - * 定时任务工具类 - * - * @author ff - * - */ -public class ScheduleUtils -{ - /** - * 得到quartz任务类 - * - * @param sysJob 执行计划 - * @return 具体执行任务类 - */ - private static Class getQuartzJobClass(SysJob sysJob) - { - boolean isConcurrent = "0".equals(sysJob.getConcurrent()); - return isConcurrent ? QuartzJobExecution.class : QuartzDisallowConcurrentExecution.class; - } - - /** - * 构建任务触发对象 - */ - public static TriggerKey getTriggerKey(Long jobId, String jobGroup) - { - return TriggerKey.triggerKey(ScheduleConstants.TASK_CLASS_NAME + jobId, jobGroup); - } - - /** - * 构建任务键对象 - */ - public static JobKey getJobKey(Long jobId, String jobGroup) - { - return JobKey.jobKey(ScheduleConstants.TASK_CLASS_NAME + jobId, jobGroup); - } - - /** - * 创建定时任务 - */ - public static void createScheduleJob(Scheduler scheduler, SysJob job) throws SchedulerException, TaskException - { - Class jobClass = getQuartzJobClass(job); - // 构建job信息 - Long jobId = job.getJobId(); - String jobGroup = job.getJobGroup(); - JobDetail jobDetail = JobBuilder.newJob(jobClass).withIdentity(getJobKey(jobId, jobGroup)).build(); - - // 表达式调度构建器 - CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule(job.getCronExpression()); - cronScheduleBuilder = handleCronScheduleMisfirePolicy(job, cronScheduleBuilder); - - // 按新的cronExpression表达式构建一个新的trigger - CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity(getTriggerKey(jobId, jobGroup)) - .withSchedule(cronScheduleBuilder).build(); - - // 放入参数,运行时的方法可以获取 - jobDetail.getJobDataMap().put(ScheduleConstants.TASK_PROPERTIES, job); - - // 判断是否存在 - if (scheduler.checkExists(getJobKey(jobId, jobGroup))) - { - // 防止创建时存在数据问题 先移除,然后在执行创建操作 - scheduler.deleteJob(getJobKey(jobId, jobGroup)); - } - - // 判断任务是否过期 - if (StringUtils.isNotNull(CronUtils.getNextExecution(job.getCronExpression()))) - { - // 执行调度任务 - scheduler.scheduleJob(jobDetail, trigger); - } - - // 暂停任务 - if (job.getStatus().equals(ScheduleConstants.Status.PAUSE.getValue())) - { - scheduler.pauseJob(ScheduleUtils.getJobKey(jobId, jobGroup)); - } - } - - /** - * 设置定时任务策略 - */ - public static CronScheduleBuilder handleCronScheduleMisfirePolicy(SysJob job, CronScheduleBuilder cb) - throws TaskException - { - switch (job.getMisfirePolicy()) - { - case ScheduleConstants.MISFIRE_DEFAULT: - return cb; - case ScheduleConstants.MISFIRE_IGNORE_MISFIRES: - return cb.withMisfireHandlingInstructionIgnoreMisfires(); - case ScheduleConstants.MISFIRE_FIRE_AND_PROCEED: - return cb.withMisfireHandlingInstructionFireAndProceed(); - case ScheduleConstants.MISFIRE_DO_NOTHING: - return cb.withMisfireHandlingInstructionDoNothing(); - default: - throw new TaskException("The task misfire policy '" + job.getMisfirePolicy() - + "' cannot be used in cron schedule tasks", Code.CONFIG_ERROR); - } - } - - /** - * 检查包名是否为白名单配置 - * - * @param invokeTarget 目标字符串 - * @return 结果 - */ - public static boolean whiteList(String invokeTarget) - { - String packageName = StringUtils.substringBefore(invokeTarget, "("); - int count = StringUtils.countMatches(packageName, "."); - if (count > 1) - { - return StringUtils.containsAnyIgnoreCase(invokeTarget, Constants.JOB_WHITELIST_STR); - } - Object obj = SpringUtils.getBean(StringUtils.split(invokeTarget, ".")[0]); - String beanPackageName = obj.getClass().getPackage().getName(); - return StringUtils.containsAnyIgnoreCase(beanPackageName, Constants.JOB_WHITELIST_STR) - && !StringUtils.containsAnyIgnoreCase(beanPackageName, Constants.JOB_ERROR_STR); - } -} diff --git a/ff-game/src/main/java/com/ff/sys/domain/SysFeedback.java b/ff-game/src/main/java/com/ff/sys/domain/SysFeedback.java deleted file mode 100644 index 118e849..0000000 --- a/ff-game/src/main/java/com/ff/sys/domain/SysFeedback.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.ff.sys.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import com.ff.base.annotation.Excel; -import com.ff.base.core.domain.BaseEntity; -import lombok.Data; -/** - * 系统反馈对象 ff_sys_feedback - * - * @author shi - * @date 2025-02-27 - */ -@Data -public class SysFeedback extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** $column.columnComment */ - private Long id; - - /** 用户类型 1 租户 2代理 */ - @Excel(name = "用户类型 1 租户 2代理 ") - private Integer userType; - - /** 用户id */ - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "用户id", width = 30, dateFormat = "yyyy-MM-dd") - private Long userId; - - /** 标题 */ - @Excel(name = "标题") - private String title; - - /** 手机号 */ - @Excel(name = "手机号") - private String phone; - - /** 反馈内容 */ - @Excel(name = "反馈内容") - private String content; - - /** 状态 1待处理 2已处理 */ - @Excel(name = "状态 1待处理 2已处理") - private Integer status; - - /** 回复内容 */ - @Excel(name = "回复内容") - private String replyContent; - - -} diff --git a/ff-game/src/main/java/com/ff/xxljob/config/XxlJobConfig.java b/ff-game/src/main/java/com/ff/xxljob/config/XxlJobConfig.java new file mode 100644 index 0000000..60c88da --- /dev/null +++ b/ff-game/src/main/java/com/ff/xxljob/config/XxlJobConfig.java @@ -0,0 +1,53 @@ +package com.ff.xxljob.config; + +import com.xxl.job.core.executor.impl.XxlJobSpringExecutor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +@Slf4j +public class XxlJobConfig { + + @Value("${xxl.job.admin.addresses}") + private String adminAddresses; + + @Value("${xxl.job.accessToken}") + private String accessToken; + + @Value("${xxl.job.executor.appname}") + private String appname; + + @Value("${xxl.job.executor.address}") + private String address; + + @Value("${xxl.job.executor.ip}") + private String ip; + + @Value("${xxl.job.executor.port}") + private int port; + + @Value("${xxl.job.executor.logpath}") + private String logPath; + + @Value("${xxl.job.executor.logretentiondays}") + private int logRetentionDays; + + + @Bean + public XxlJobSpringExecutor xxlJobExecutor() { + log.info(">>>>>>>>>>> xxl-job config init."); + XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor(); + xxlJobSpringExecutor.setAdminAddresses(adminAddresses); + xxlJobSpringExecutor.setAppname(appname); + xxlJobSpringExecutor.setAddress(address); + xxlJobSpringExecutor.setIp(ip); + xxlJobSpringExecutor.setPort(port); + xxlJobSpringExecutor.setAccessToken(accessToken); + xxlJobSpringExecutor.setLogPath(logPath); + xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays); + + return xxlJobSpringExecutor; + } +} diff --git a/ff-game/src/main/java/com/ff/xxljob/task/AbstractTask.java b/ff-game/src/main/java/com/ff/xxljob/task/AbstractTask.java new file mode 100644 index 0000000..b022a40 --- /dev/null +++ b/ff-game/src/main/java/com/ff/xxljob/task/AbstractTask.java @@ -0,0 +1,31 @@ +package com.ff.xxljob.task; + +import com.xxl.job.core.context.XxlJobHelper; +import com.xxl.job.core.handler.IJobHandler; +import lombok.extern.slf4j.Slf4j; + +/** + * 定时任务执行抽象类 + * + * @author cengy + */ +@Slf4j +public abstract class AbstractTask extends IJobHandler { + + /** + * 执行有参方法 + * + * @param params 参数 + */ + abstract void doExecute(String params); + + /** + * 无参执行方法 执行业务前切换数据源 + */ + @Override + public void execute() throws Exception { + String params = XxlJobHelper.getJobParam(); // 获取任务参数 + doExecute(params); + } + +} diff --git a/ff-game/src/main/resources/application-druid.yml b/ff-game/src/main/resources/application-druid.yml deleted file mode 100644 index dd61f2a..0000000 --- a/ff-game/src/main/resources/application-druid.yml +++ /dev/null @@ -1,95 +0,0 @@ -# 数据源配置 -spring: - # redis 配置 - redis: - # 地址 - host: 192.168.50.11 - # 端口,默认为6379 - port: 26379 - # 数据库索引 - database: 10 - # 密码 - password: reAa123456 - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池中的最小空闲连接 - min-idle: 0 - # 连接池中的最大空闲连接 - max-idle: 8 - # 连接池的最大数据库连接数 - max-active: 8 - # #连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms - - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: com.mysql.cj.jdbc.Driver - druid: - # 主库数据源 - master: - url: jdbc:mysql://192.168.50.11:3306/ff-game?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&allowMultiQueries=true - username: root - password: 123456 - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置连接超时时间 - connectTimeout: 30000 - # 配置网络超时时间 - socketTimeout: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: ff - login-password: 123456 - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true - -forest: - backend: okhttp3 # 后端HTTP框架(默认为 okhttp3) - max-connections: 1000 # 连接池最大连接数(默认为 500) - max-route-connections: 500 # 每个路由的最大连接数(默认为 500) - max-request-queue-size: 100 # [自v1.5.22版本起可用] 最大请求等待队列大小 - max-async-thread-size: 300 # [自v1.5.21版本起可用] 最大异步线程数 - max-async-queue-size: 16 # [自v1.5.22版本起可用] 最大异步线程池队列大小 - timeout: 3000 # [已不推荐使用] 请求超时时间,单位为毫秒(默认为 3000) - connect-timeout: 3000 # 连接超时时间,单位为毫秒(默认为 timeout) - read-timeout: 3000 # 数据读取超时时间,单位为毫秒(默认为 timeout) - max-retry-count: 0 # 请求失败后重试次数(默认为 0 次不重试) - ssl-protocol: TLS # 单向验证的HTTPS的默认TLS协议(默认为 TLS) - log-enabled: true # 打开或关闭日志(默认为 true) - log-request: true # 打开/关闭Forest请求日志(默认为 true) - log-response-status: true # 打开/关闭Forest响应状态日志(默认为 true) - log-response-content: true # 打开/关闭Forest响应内容日志(默认为 false) - async-mode: platform # [自v1.5.27版本起可用] 异步模式(默认为 platform) diff --git a/ff-game/src/main/resources/application-prod.properties b/ff-game/src/main/resources/application-prod.properties new file mode 100644 index 0000000..70731ce --- /dev/null +++ b/ff-game/src/main/resources/application-prod.properties @@ -0,0 +1,70 @@ + +# 引入子配置文件 +spring.config.import=\ + classpath:config/prod/mybatis.properties,\ + classpath:config/prod/redis.properties,\ + classpath:config/prod/forest.properties,\ + classpath:config/prod/xxljob.properties,\ + classpath:config/prod/datasource.properties + + +# 项目相关配置 +ff.name=FF +ff.version=0.0.1 +ff.copyrightYear=2024 +ff.profile=/opt/gameApi/dist/game-api/uploadPath +ff.addressEnabled=false +ff.captchaType=math + +# 开发环境配置 +server.port=38080 +server.servlet.context-path=/ff-api +server.tomcat.uri-encoding=UTF-8 +server.tomcat.accept-count=1000 +server.tomcat.threads.max=800 +server.tomcat.threads.min-spare=100 + +# 日志配置 +logging.level.com.ff=debug +logging.level.org.springframework=warn +logging.file.path=/opt/gameApi/dist/game-api/logs + +# 用户配置 +user.password.maxRetryCount=5 +user.password.lockTime=10 + +# 跑批处理配置 +batchProcessing.commissionBatchSize=20 +batchProcessing.agentLevelBatchSize=50 +batchProcessing.bettingDataBatchSize=1000 + +# Spring配置 +spring.mvc.pathmatch.matching-strategy=ant_path_matcher +spring.messages.basename=i18n/messages +spring.servlet.multipart.max-file-size=20MB +spring.servlet.multipart.max-request-size=20MB +spring.devtools.restart.enabled=false + +# token配置 +token.header=Authorization +token.secret=abcdefghijklmnopqrstuvwxyz +token.expireTime=10080 + +# MyBatis配置 +mybatis.typeAliasesPackage=com.ff.**.domain +mybatis.mapperLocations=classpath*:mapper/**/*Mapper.xml +mybatis.configLocation=classpath:mybatis/mybatis-config.xml + +# PageHelper分页插件 +pagehelper.helperDialect=mysql +pagehelper.supportMethodsArguments=true +pagehelper.params=count=countSql + +# Swagger配置 +swagger.enabled=true +swagger.pathMapping=/ + +# 防止XSS攻击 +xss.enabled=true +xss.excludes=/system/notice +xss.urlPatterns=/system/*,/monitor/*,/tool/* diff --git a/ff-game/src/main/resources/application-prod.yml b/ff-game/src/main/resources/application-prod.yml deleted file mode 100644 index f0f02ed..0000000 --- a/ff-game/src/main/resources/application-prod.yml +++ /dev/null @@ -1,115 +0,0 @@ -# 项目相关配置 -ff: - # 文件路径 示例( Windows配置D:/ff/uploadPath,Linux配置 /home/ff/uploadPath) - profile: /opt/gameApi/dist/game-api/uploadPath -# 开发环境配置 -server: - # 服务器的HTTP端口,默认为8080 - port: 38080 - servlet: - # 应用的访问路径 - context-path: /ff-api - -# 日志配置 -logging: - level: - com.ff: debug - org.springframework: warn - file: - path: /opt/gameApi/dist/game-api/logs - -# 数据源配置 -spring: - # redis 配置 - redis: - # 地址 - host: 127.0.0.1 - # 端口,默认为6379 - port: 26379 - # 数据库索引 - database: 1 - # 密码 - password: reAa123456 - # 连接超时时间 - timeout: 10s - lettuce: - pool: - # 连接池中的最小空闲连接 - min-idle: 0 - # 连接池中的最大空闲连接 - max-idle: 8 - # 连接池的最大数据库连接数 - max-active: 8 - # #连接池最大阻塞等待时间(使用负值表示没有限制) - max-wait: -1ms - - datasource: - type: com.alibaba.druid.pool.DruidDataSource - driverClassName: com.mysql.cj.jdbc.Driver - druid: - # 主库数据源 - master: - url: jdbc:mysql://127.0.0.1:23306/ff-game?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&allowMultiQueries=true - username: ff-game - password: bmGCJCyhfDXnPspe - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置连接超时时间 - connectTimeout: 30000 - # 配置网络超时时间 - socketTimeout: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 FROM DUAL - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: ff - login-password: ff_prod - filter: - stat: - enabled: true - # 慢SQL记录 - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - wall: - config: - multi-statement-allow: true - -forest: - backend: okhttp3 # 后端HTTP框架(默认为 okhttp3) - max-connections: 1000 # 连接池最大连接数(默认为 500) - max-route-connections: 500 # 每个路由的最大连接数(默认为 500) - max-request-queue-size: 100 # [自v1.5.22版本起可用] 最大请求等待队列大小 - max-async-thread-size: 300 # [自v1.5.21版本起可用] 最大异步线程数 - max-async-queue-size: 16 # [自v1.5.22版本起可用] 最大异步线程池队列大小 - timeout: 3000 # [已不推荐使用] 请求超时时间,单位为毫秒(默认为 3000) - connect-timeout: 3000 # 连接超时时间,单位为毫秒(默认为 timeout) - read-timeout: 3000 # 数据读取超时时间,单位为毫秒(默认为 timeout) - max-retry-count: 3 # 请求失败后重试次数(默认为 0 次不重试) - ssl-protocol: TLS # 单向验证的HTTPS的默认TLS协议(默认为 TLS) - log-enabled: true # 打开或关闭日志(默认为 true) - log-request: true # 打开/关闭Forest请求日志(默认为 true) - log-response-status: true # 打开/关闭Forest响应状态日志(默认为 true) - log-response-content: false # 打开/关闭Forest响应内容日志(默认为 false) - async-mode: platform # [自v1.5.27版本起可用] 异步模式(默认为 platform) \ No newline at end of file diff --git a/ff-game/src/main/resources/application-test.properties b/ff-game/src/main/resources/application-test.properties new file mode 100644 index 0000000..b948166 --- /dev/null +++ b/ff-game/src/main/resources/application-test.properties @@ -0,0 +1,69 @@ + +# 引入子配置文件 +spring.config.import=\ + classpath:config/test/mybatis.properties,\ + classpath:config/test/redis.properties,\ + classpath:config/test/forest.properties,\ + classpath:config/test/xxljob.properties,\ + classpath:config/test/datasource.properties + + +# 项目相关配置 +ff.name=FF +ff.version=0.0.1 +ff.copyrightYear=2024 +ff.profile=D:/ff/uploadPath +ff.addressEnabled=false +ff.captchaType=math + +# 开发环境配置 +server.port=9080 +server.servlet.context-path=/ +server.tomcat.uri-encoding=UTF-8 +server.tomcat.accept-count=1000 +server.tomcat.threads.max=800 +server.tomcat.threads.min-spare=100 + +# 日志配置 +logging.level.com.ff=debug +logging.level.org.springframework=warn + +# 用户配置 +user.password.maxRetryCount=5 +user.password.lockTime=10 + +# 跑批处理配置 +batchProcessing.commissionBatchSize=20 +batchProcessing.agentLevelBatchSize=50 +batchProcessing.bettingDataBatchSize=1000 + +# Spring配置 +spring.mvc.pathmatch.matching-strategy=ant_path_matcher +spring.messages.basename=i18n/messages +spring.servlet.multipart.max-file-size=20MB +spring.servlet.multipart.max-request-size=20MB +spring.devtools.restart.enabled=false + +# token配置 +token.header=Authorization +token.secret=abcdefghijklmnopqrstuvwxyz +token.expireTime=10080 + +# MyBatis配置 +mybatis.typeAliasesPackage=com.ff.**.domain +mybatis.mapperLocations=classpath*:mapper/**/*Mapper.xml +mybatis.configLocation=classpath:mybatis/mybatis-config.xml + +# PageHelper分页插件 +pagehelper.helperDialect=mysql +pagehelper.supportMethodsArguments=true +pagehelper.params=count=countSql + +# Swagger配置 +swagger.enabled=true +swagger.pathMapping=/ + +# 防止XSS攻击 +xss.enabled=true +xss.excludes=/system/notice +xss.urlPatterns=/system/*,/monitor/*,/tool/* diff --git a/ff-game/src/main/resources/application.properties b/ff-game/src/main/resources/application.properties new file mode 100644 index 0000000..f841722 --- /dev/null +++ b/ff-game/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.profiles.active=test diff --git a/ff-game/src/main/resources/application.yml b/ff-game/src/main/resources/application.yml deleted file mode 100644 index 359be07..0000000 --- a/ff-game/src/main/resources/application.yml +++ /dev/null @@ -1,123 +0,0 @@ -# 项目相关配置 -ff: - # 名称 - name: FF - # 版本 - version: 0.0.1 - # 版权年份 - copyrightYear: 2024 - # 文件路径 示例( Windows配置D:/ff/uploadPath,Linux配置 /home/ff/uploadPath) - profile: D:/ff/uploadPath - # 获取ip地址开关 - addressEnabled: false - # 验证码类型 math 数字计算 char 字符验证 - captchaType: math - -# 开发环境配置 -server: - # 服务器的HTTP端口,默认为8080 - port: 9080 - servlet: - # 应用的访问路径 - context-path: / - tomcat: - # tomcat的URI编码 - uri-encoding: UTF-8 - # 连接数满后的排队数,默认为100 - accept-count: 1000 - threads: - # tomcat最大线程数,默认为200 - max: 800 - # Tomcat启动初始化的线程数,默认值10 - min-spare: 100 - -# 日志配置 -logging: - level: - com.ff: debug - org.springframework: warn - -# 用户配置 -user: - password: - # 密码最大错误次数 - maxRetryCount: 5 - # 密码锁定时间(默认10分钟) - lockTime: 10 - -# 跑批处理配置 -batchProcessing: - # 批量数量 - commissionBatchSize: 20 - agentLevelBatchSize: 50 - bettingDataBatchSize: 1000 - -# Spring配置 -spring: - mvc: - pathmatch: - matching-strategy: ant_path_matcher - # 资源信息 - messages: - # 国际化资源文件路径 - basename: i18n/messages - profiles: - active: druid - # 文件上传 - servlet: - multipart: - # 单个文件大小 - max-file-size: 20MB - # 设置总上传的文件大小 - max-request-size: 20MB - # 服务模块 - devtools: - restart: - # 热部署开关 - enabled: false - -# token配置 -token: - # 令牌自定义标识 - header: Authorization - # 令牌密钥 - secret: abcdefghijklmnopqrstuvwxyz - # 令牌有效期(默认10080分钟 七天) - expireTime: 10080 - -# MyBatis配置 -mybatis: - # 搜索指定包别名 - typeAliasesPackage: com.ff.**.domain - # 配置mapper的扫描,找到所有的mapper.xml映射文件 - mapperLocations: classpath*:mapper/**/*Mapper.xml - # 加载全局的配置文件 - configLocation: classpath:mybatis/mybatis-config.xml - -# PageHelper分页插件 -pagehelper: - helperDialect: mysql - supportMethodsArguments: true - params: count=countSql - -# Swagger配置 -swagger: - # 是否开启swagger - enabled: true - # 请求前缀 - pathMapping: / - -# 防止XSS攻击 -xss: - # 过滤开关 - enabled: true - # 排除链接(多个用逗号分隔) - excludes: /system/notice - # 匹配链接 - urlPatterns: /system/*,/monitor/*,/tool/* - - - - - - diff --git a/ff-game/src/main/resources/config/prod/datasource.properties b/ff-game/src/main/resources/config/prod/datasource.properties new file mode 100644 index 0000000..f1a5b52 --- /dev/null +++ b/ff-game/src/main/resources/config/prod/datasource.properties @@ -0,0 +1,35 @@ +spring.datasource.type=com.alibaba.druid.pool.DruidDataSource +spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver + +# 主库 +spring.datasource.druid.master.url=jdbc:mysql://127.0.0.1:23306/ff-game?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&allowMultiQueries=true +spring.datasource.druid.master.username=ff-game +spring.datasource.druid.master.password=bmGCJCyhfDXnPspe + +spring.datasource.druid.initialSize=5 +spring.datasource.druid.minIdle=10 +spring.datasource.druid.maxActive=20 +spring.datasource.druid.maxWait=60000 +spring.datasource.druid.connectTimeout=30000 +spring.datasource.druid.socketTimeout=60000 +spring.datasource.druid.timeBetweenEvictionRunsMillis=60000 +spring.datasource.druid.minEvictableIdleTimeMillis=300000 +spring.datasource.druid.maxEvictableIdleTimeMillis=900000 +spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL +spring.datasource.druid.testWhileIdle=true +spring.datasource.druid.testOnBorrow=false +spring.datasource.druid.testOnReturn=false + +spring.datasource.druid.webStatFilter.enabled=true +spring.datasource.druid.statViewServlet.enabled=true +spring.datasource.druid.statViewServlet.allow= +spring.datasource.druid.statViewServlet.url-pattern=/druid/* +spring.datasource.druid.statViewServlet.login-username=ff +spring.datasource.druid.statViewServlet.login-password=123456 + +spring.datasource.druid.filter.stat.enabled=true +spring.datasource.druid.filter.stat.log-slow-sql=true +spring.datasource.druid.filter.stat.slow-sql-millis=1000 +spring.datasource.druid.filter.stat.merge-sql=true + +spring.datasource.druid.filter.wall.config.multi-statement-allow=true diff --git a/ff-game/src/main/resources/config/prod/forest.properties b/ff-game/src/main/resources/config/prod/forest.properties new file mode 100644 index 0000000..088f953 --- /dev/null +++ b/ff-game/src/main/resources/config/prod/forest.properties @@ -0,0 +1,16 @@ +forest.backend=okhttp3 +forest.max-connections=1000 +forest.max-route-connections=500 +forest.max-request-queue-size=100 +forest.max-async-thread-size=300 +forest.max-async-queue-size=16 +forest.timeout=3000 +forest.connect-timeout=3000 +forest.read-timeout=3000 +forest.max-retry-count=0 +forest.ssl-protocol=TLS +forest.log-enabled=true +forest.log-request=true +forest.log-response-status=true +forest.log-response-content=true +forest.async-mode=platform diff --git a/ff-game/src/main/resources/config/prod/mybatis.properties b/ff-game/src/main/resources/config/prod/mybatis.properties new file mode 100644 index 0000000..fbfd66b --- /dev/null +++ b/ff-game/src/main/resources/config/prod/mybatis.properties @@ -0,0 +1,3 @@ +mybatis.typeAliasesPackage=com.ff.**.domain +mybatis.mapperLocations=classpath*:mapper/**/*Mapper.xml +mybatis.configLocation=classpath:mybatis/mybatis-config.xml diff --git a/ff-game/src/main/resources/config/prod/redis.properties b/ff-game/src/main/resources/config/prod/redis.properties new file mode 100644 index 0000000..2541864 --- /dev/null +++ b/ff-game/src/main/resources/config/prod/redis.properties @@ -0,0 +1,9 @@ +spring.redis.host=192.168.50.11 +spring.redis.port=26379 +spring.redis.database=10 +spring.redis.password=reAa123456 +spring.redis.timeout=10s +spring.redis.lettuce.pool.min-idle=0 +spring.redis.lettuce.pool.max-idle=8 +spring.redis.lettuce.pool.max-active=8 +spring.redis.lettuce.pool.max-wait=-1ms diff --git a/ff-game/src/main/resources/config/prod/xxljob.properties b/ff-game/src/main/resources/config/prod/xxljob.properties new file mode 100644 index 0000000..d1ddbc6 --- /dev/null +++ b/ff-game/src/main/resources/config/prod/xxljob.properties @@ -0,0 +1,9 @@ +# XXL-Job配置 +xxl.job.admin.addresses=http://192.168.50.11:2980/xxl-job-admin/ +xxl.job.accessToken= +xxl.job.executor.appname=ff-admin-job-name +xxl.job.executor.address=http://192.168.50.28:13999 +xxl.job.executor.ip=192.168.50.28 +xxl.job.executor.port=13999 +xxl.job.executor.logpath=./logs/job +xxl.job.executor.logretentiondays=30 \ No newline at end of file diff --git a/ff-game/src/main/resources/config/test/datasource.properties b/ff-game/src/main/resources/config/test/datasource.properties new file mode 100644 index 0000000..9cc82d2 --- /dev/null +++ b/ff-game/src/main/resources/config/test/datasource.properties @@ -0,0 +1,35 @@ +spring.datasource.type=com.alibaba.druid.pool.DruidDataSource +spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver + +# 主库 +spring.datasource.druid.master.url=jdbc:mysql://192.168.50.11:3306/ff-game?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&allowMultiQueries=true +spring.datasource.druid.master.username=root +spring.datasource.druid.master.password=123456 + +spring.datasource.druid.initialSize=5 +spring.datasource.druid.minIdle=10 +spring.datasource.druid.maxActive=20 +spring.datasource.druid.maxWait=60000 +spring.datasource.druid.connectTimeout=30000 +spring.datasource.druid.socketTimeout=60000 +spring.datasource.druid.timeBetweenEvictionRunsMillis=60000 +spring.datasource.druid.minEvictableIdleTimeMillis=300000 +spring.datasource.druid.maxEvictableIdleTimeMillis=900000 +spring.datasource.druid.validationQuery=SELECT 1 FROM DUAL +spring.datasource.druid.testWhileIdle=true +spring.datasource.druid.testOnBorrow=false +spring.datasource.druid.testOnReturn=false + +spring.datasource.druid.webStatFilter.enabled=true +spring.datasource.druid.statViewServlet.enabled=true +spring.datasource.druid.statViewServlet.allow= +spring.datasource.druid.statViewServlet.url-pattern=/druid/* +spring.datasource.druid.statViewServlet.login-username=ff +spring.datasource.druid.statViewServlet.login-password=123456 + +spring.datasource.druid.filter.stat.enabled=true +spring.datasource.druid.filter.stat.log-slow-sql=true +spring.datasource.druid.filter.stat.slow-sql-millis=1000 +spring.datasource.druid.filter.stat.merge-sql=true + +spring.datasource.druid.filter.wall.config.multi-statement-allow=true diff --git a/ff-game/src/main/resources/config/test/forest.properties b/ff-game/src/main/resources/config/test/forest.properties new file mode 100644 index 0000000..088f953 --- /dev/null +++ b/ff-game/src/main/resources/config/test/forest.properties @@ -0,0 +1,16 @@ +forest.backend=okhttp3 +forest.max-connections=1000 +forest.max-route-connections=500 +forest.max-request-queue-size=100 +forest.max-async-thread-size=300 +forest.max-async-queue-size=16 +forest.timeout=3000 +forest.connect-timeout=3000 +forest.read-timeout=3000 +forest.max-retry-count=0 +forest.ssl-protocol=TLS +forest.log-enabled=true +forest.log-request=true +forest.log-response-status=true +forest.log-response-content=true +forest.async-mode=platform diff --git a/ff-game/src/main/resources/config/test/mybatis.properties b/ff-game/src/main/resources/config/test/mybatis.properties new file mode 100644 index 0000000..fbfd66b --- /dev/null +++ b/ff-game/src/main/resources/config/test/mybatis.properties @@ -0,0 +1,3 @@ +mybatis.typeAliasesPackage=com.ff.**.domain +mybatis.mapperLocations=classpath*:mapper/**/*Mapper.xml +mybatis.configLocation=classpath:mybatis/mybatis-config.xml diff --git a/ff-game/src/main/resources/config/test/redis.properties b/ff-game/src/main/resources/config/test/redis.properties new file mode 100644 index 0000000..2541864 --- /dev/null +++ b/ff-game/src/main/resources/config/test/redis.properties @@ -0,0 +1,9 @@ +spring.redis.host=192.168.50.11 +spring.redis.port=26379 +spring.redis.database=10 +spring.redis.password=reAa123456 +spring.redis.timeout=10s +spring.redis.lettuce.pool.min-idle=0 +spring.redis.lettuce.pool.max-idle=8 +spring.redis.lettuce.pool.max-active=8 +spring.redis.lettuce.pool.max-wait=-1ms diff --git a/ff-game/src/main/resources/config/test/xxljob.properties b/ff-game/src/main/resources/config/test/xxljob.properties new file mode 100644 index 0000000..d1ddbc6 --- /dev/null +++ b/ff-game/src/main/resources/config/test/xxljob.properties @@ -0,0 +1,9 @@ +# XXL-Job配置 +xxl.job.admin.addresses=http://192.168.50.11:2980/xxl-job-admin/ +xxl.job.accessToken= +xxl.job.executor.appname=ff-admin-job-name +xxl.job.executor.address=http://192.168.50.28:13999 +xxl.job.executor.ip=192.168.50.28 +xxl.job.executor.port=13999 +xxl.job.executor.logpath=./logs/job +xxl.job.executor.logretentiondays=30 \ No newline at end of file diff --git a/ff-game/src/main/resources/logback.xml b/ff-game/src/main/resources/logback.xml index e4f275d..67659a6 100644 --- a/ff-game/src/main/resources/logback.xml +++ b/ff-game/src/main/resources/logback.xml @@ -1,7 +1,7 @@ - + diff --git a/ff-game/src/main/resources/mapper/quartz/SysJobLogMapper.xml b/ff-game/src/main/resources/mapper/quartz/SysJobLogMapper.xml deleted file mode 100644 index 2a05f6c..0000000 --- a/ff-game/src/main/resources/mapper/quartz/SysJobLogMapper.xml +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - - - - - - select job_log_id, job_name, job_group, invoke_target, job_message, status, exception_info, create_time - from sys_job_log - - - - - - - - - - delete from sys_job_log where job_log_id = #{jobLogId} - - - - delete from sys_job_log where job_log_id in - - #{jobLogId} - - - - - truncate table sys_job_log - - - - insert into sys_job_log( - job_log_id, - job_name, - job_group, - invoke_target, - job_message, - status, - exception_info, - create_time - )values( - #{jobLogId}, - #{jobName}, - #{jobGroup}, - #{invokeTarget}, - #{jobMessage}, - #{status}, - #{exceptionInfo}, - UNIX_TIMESTAMP() * 1000 - ) - - - diff --git a/ff-game/src/main/resources/mapper/quartz/SysJobMapper.xml b/ff-game/src/main/resources/mapper/quartz/SysJobMapper.xml deleted file mode 100644 index 948b5aa..0000000 --- a/ff-game/src/main/resources/mapper/quartz/SysJobMapper.xml +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - select job_id, job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark - from sys_job - - - - - - - - - - delete from sys_job where job_id = #{jobId} - - - - delete from sys_job where job_id in - - #{jobId} - - - - - update sys_job - - job_name = #{jobName}, - job_group = #{jobGroup}, - invoke_target = #{invokeTarget}, - cron_expression = #{cronExpression}, - misfire_policy = #{misfirePolicy}, - concurrent = #{concurrent}, - status = #{status}, - remark = #{remark}, - update_by = #{updateBy}, - update_time = UNIX_TIMESTAMP() * 1000 - - where job_id = #{jobId} - - - - insert into sys_job( - job_id, - job_name, - job_group, - invoke_target, - cron_expression, - misfire_policy, - concurrent, - status, - remark, - create_by, - create_time - )values( - #{jobId}, - #{jobName}, - #{jobGroup}, - #{invokeTarget}, - #{cronExpression}, - #{misfirePolicy}, - #{concurrent}, - #{status}, - #{remark}, - #{createBy}, - UNIX_TIMESTAMP() * 1000 - ) - - - diff --git a/ff-base/src/main/resources/mapper/system/SysConfigMapper.xml b/ff-game/src/main/resources/mapper/system/SysConfigMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysConfigMapper.xml rename to ff-game/src/main/resources/mapper/system/SysConfigMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysDatasourceMapper.xml b/ff-game/src/main/resources/mapper/system/SysDatasourceMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysDatasourceMapper.xml rename to ff-game/src/main/resources/mapper/system/SysDatasourceMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysDeptMapper.xml b/ff-game/src/main/resources/mapper/system/SysDeptMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysDeptMapper.xml rename to ff-game/src/main/resources/mapper/system/SysDeptMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysDictDataMapper.xml b/ff-game/src/main/resources/mapper/system/SysDictDataMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysDictDataMapper.xml rename to ff-game/src/main/resources/mapper/system/SysDictDataMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysDictTypeMapper.xml b/ff-game/src/main/resources/mapper/system/SysDictTypeMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysDictTypeMapper.xml rename to ff-game/src/main/resources/mapper/system/SysDictTypeMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysLogininforMapper.xml b/ff-game/src/main/resources/mapper/system/SysLogininforMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysLogininforMapper.xml rename to ff-game/src/main/resources/mapper/system/SysLogininforMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysMenuMapper.xml b/ff-game/src/main/resources/mapper/system/SysMenuMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysMenuMapper.xml rename to ff-game/src/main/resources/mapper/system/SysMenuMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysOperLogMapper.xml b/ff-game/src/main/resources/mapper/system/SysOperLogMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysOperLogMapper.xml rename to ff-game/src/main/resources/mapper/system/SysOperLogMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysPostMapper.xml b/ff-game/src/main/resources/mapper/system/SysPostMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysPostMapper.xml rename to ff-game/src/main/resources/mapper/system/SysPostMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysRoleDeptMapper.xml b/ff-game/src/main/resources/mapper/system/SysRoleDeptMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysRoleDeptMapper.xml rename to ff-game/src/main/resources/mapper/system/SysRoleDeptMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysRoleMapper.xml b/ff-game/src/main/resources/mapper/system/SysRoleMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysRoleMapper.xml rename to ff-game/src/main/resources/mapper/system/SysRoleMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysRoleMenuMapper.xml b/ff-game/src/main/resources/mapper/system/SysRoleMenuMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysRoleMenuMapper.xml rename to ff-game/src/main/resources/mapper/system/SysRoleMenuMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysUserMapper.xml b/ff-game/src/main/resources/mapper/system/SysUserMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysUserMapper.xml rename to ff-game/src/main/resources/mapper/system/SysUserMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysUserPostMapper.xml b/ff-game/src/main/resources/mapper/system/SysUserPostMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysUserPostMapper.xml rename to ff-game/src/main/resources/mapper/system/SysUserPostMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/SysUserRoleMapper.xml b/ff-game/src/main/resources/mapper/system/SysUserRoleMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/SysUserRoleMapper.xml rename to ff-game/src/main/resources/mapper/system/SysUserRoleMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/TenantAgentMapper.xml b/ff-game/src/main/resources/mapper/system/TenantAgentMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/TenantAgentMapper.xml rename to ff-game/src/main/resources/mapper/system/TenantAgentMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/TenantPlatformMapper.xml b/ff-game/src/main/resources/mapper/system/TenantPlatformMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/TenantPlatformMapper.xml rename to ff-game/src/main/resources/mapper/system/TenantPlatformMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/TenantSecretKeyMapper.xml b/ff-game/src/main/resources/mapper/system/TenantSecretKeyMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/TenantSecretKeyMapper.xml rename to ff-game/src/main/resources/mapper/system/TenantSecretKeyMapper.xml diff --git a/ff-base/src/main/resources/mapper/system/TenantWhiteMapper.xml b/ff-game/src/main/resources/mapper/system/TenantWhiteMapper.xml similarity index 100% rename from ff-base/src/main/resources/mapper/system/TenantWhiteMapper.xml rename to ff-game/src/main/resources/mapper/system/TenantWhiteMapper.xml diff --git a/ff-gen/pom.xml b/ff-gen/pom.xml deleted file mode 100644 index a133957..0000000 --- a/ff-gen/pom.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - 4.0.0 - - ff - com.ff - 0.0.1 - - - com.ff - ff-gen - 0.0.1 - ff-gen - ff-gen - - - - - - - org.apache.velocity - velocity-engine-core - - - - - com.ff - ff-base - - - - - com.alibaba - druid-spring-boot-starter - - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - - - - diff --git a/ff-gen/src/main/java/com/ff/gen/config/GenConfig.java b/ff-gen/src/main/java/com/ff/gen/config/GenConfig.java deleted file mode 100644 index 66e803d..0000000 --- a/ff-gen/src/main/java/com/ff/gen/config/GenConfig.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.ff.gen.config; - -import org.springframework.beans.factory.annotation.Value; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.context.annotation.PropertySource; -import org.springframework.stereotype.Component; - -/** - * 读取代码生成相关配置 - * - * @author ff - */ -@Component -@ConfigurationProperties(prefix = "gen") -@PropertySource(value = { "classpath:generator.yml" }) -public class GenConfig -{ - /** 作者 */ - public static String author; - - /** 生成包路径 */ - public static String packageName; - - /** 自动去除表前缀,默认是false */ - public static boolean autoRemovePre; - - /** 表前缀(类名不会包含表前缀) */ - public static String tablePrefix; - - public static String getAuthor() - { - return author; - } - - @Value("${author}") - public void setAuthor(String author) - { - GenConfig.author = author; - } - - public static String getPackageName() - { - return packageName; - } - - @Value("${packageName}") - public void setPackageName(String packageName) - { - GenConfig.packageName = packageName; - } - - public static boolean getAutoRemovePre() - { - return autoRemovePre; - } - - @Value("${autoRemovePre}") - public void setAutoRemovePre(boolean autoRemovePre) - { - GenConfig.autoRemovePre = autoRemovePre; - } - - public static String getTablePrefix() - { - return tablePrefix; - } - - @Value("${tablePrefix}") - public void setTablePrefix(String tablePrefix) - { - GenConfig.tablePrefix = tablePrefix; - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/controller/GenController.java b/ff-gen/src/main/java/com/ff/gen/controller/GenController.java deleted file mode 100644 index 2890eff..0000000 --- a/ff-gen/src/main/java/com/ff/gen/controller/GenController.java +++ /dev/null @@ -1,252 +0,0 @@ -package com.ff.gen.controller; - -import com.alibaba.druid.DbType; -import com.alibaba.druid.sql.SQLUtils; -import com.alibaba.druid.sql.ast.SQLStatement; -import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlCreateTableStatement; -import com.ff.base.annotation.Log; -import com.ff.base.core.controller.BaseController; -import com.ff.base.core.domain.AjaxResult; -import com.ff.base.core.page.TableDataInfo; -import com.ff.base.core.text.Convert; -import com.ff.base.enums.BusinessType; -import com.ff.base.utils.SecurityUtils; -import com.ff.base.utils.sql.SqlUtil; -import com.ff.gen.domain.GenTable; -import com.ff.gen.domain.GenTableColumn; -import com.ff.gen.service.IGenTableColumnService; -import com.ff.gen.service.IGenTableService; -import org.apache.commons.io.IOUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * 代码生成 操作处理 - * - * @author ff - */ -@RestController -@RequestMapping("/tool/gen") -public class GenController extends BaseController -{ - @Autowired - private IGenTableService genTableService; - - @Autowired - private IGenTableColumnService genTableColumnService; - - /** - * 查询代码生成列表 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:list')") - @GetMapping("/list") - public TableDataInfo genList(GenTable genTable) - { - startPage(); - List list = genTableService.selectGenTableList(genTable); - return getDataTable(list); - } - - /** - * 修改代码生成业务 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:query')") - @GetMapping(value = "/{tableId}") - public AjaxResult getInfo(@PathVariable Long tableId) - { - GenTable table = genTableService.selectGenTableById(tableId); - List tables = genTableService.selectGenTableAll(); - List list = genTableColumnService.selectGenTableColumnListByTableId(tableId); - Map map = new HashMap(); - map.put("info", table); - map.put("rows", list); - map.put("tables", tables); - return success(map); - } - - /** - * 查询数据库列表 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:list')") - @GetMapping("/db/list") - public TableDataInfo dataList(GenTable genTable) - { - startPage(); - List list = genTableService.selectDbTableList(genTable); - return getDataTable(list); - } - - /** - * 查询数据表字段列表 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:list')") - @GetMapping(value = "/column/{tableId}") - public TableDataInfo columnList(Long tableId) - { - TableDataInfo dataInfo = new TableDataInfo(); - List list = genTableColumnService.selectGenTableColumnListByTableId(tableId); - dataInfo.setRows(list); - dataInfo.setTotal(list.size()); - return dataInfo; - } - - /** - * 导入表结构(保存) - */ - @PreAuthorize("@ss.hasPermi('tool:gen:import')") - @Log(title = "代码生成", businessType = BusinessType.IMPORT) - @PostMapping("/importTable") - public AjaxResult importTableSave(String tables) - { - String[] tableNames = Convert.toStrArray(tables); - // 查询表信息 - List tableList = genTableService.selectDbTableListByNames(tableNames); - genTableService.importGenTable(tableList, SecurityUtils.getUsername()); - return success(); - } - - /** - * 创建表结构(保存) - */ - @PreAuthorize("@ss.hasRole('admin')") - @Log(title = "创建表", businessType = BusinessType.OTHER) - @PostMapping("/createTable") - public AjaxResult createTableSave(String sql) - { - try - { - SqlUtil.filterKeyword(sql); - List sqlStatements = SQLUtils.parseStatements(sql, DbType.mysql); - List tableNames = new ArrayList<>(); - for (SQLStatement sqlStatement : sqlStatements) - { - if (sqlStatement instanceof MySqlCreateTableStatement) - { - MySqlCreateTableStatement createTableStatement = (MySqlCreateTableStatement) sqlStatement; - if (genTableService.createTable(createTableStatement.toString())) - { - String tableName = createTableStatement.getTableName().replaceAll("`", ""); - tableNames.add(tableName); - } - } - } - List tableList = genTableService.selectDbTableListByNames(tableNames.toArray(new String[tableNames.size()])); - String operName = SecurityUtils.getUsername(); - genTableService.importGenTable(tableList, operName); - return AjaxResult.success(); - } - catch (Exception e) - { - logger.error(e.getMessage(), e); - return AjaxResult.error("创建表结构异常"); - } - } - - /** - * 修改保存代码生成业务 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:edit')") - @Log(title = "代码生成", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult editSave(@Validated @RequestBody GenTable genTable) - { - genTableService.validateEdit(genTable); - genTableService.updateGenTable(genTable); - return success(); - } - - /** - * 删除代码生成 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:remove')") - @Log(title = "代码生成", businessType = BusinessType.DELETE) - @DeleteMapping("/{tableIds}") - public AjaxResult remove(@PathVariable Long[] tableIds) - { - genTableService.deleteGenTableByIds(tableIds); - return success(); - } - - /** - * 预览代码 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:preview')") - @GetMapping("/preview/{tableId}") - public AjaxResult preview(@PathVariable("tableId") Long tableId) throws IOException - { - Map dataMap = genTableService.previewCode(tableId); - return success(dataMap); - } - - /** - * 生成代码(下载方式) - */ - @PreAuthorize("@ss.hasPermi('tool:gen:code')") - @Log(title = "代码生成", businessType = BusinessType.GENCODE) - @GetMapping("/download/{tableName}") - public void download(HttpServletResponse response, @PathVariable("tableName") String tableName) throws IOException - { - byte[] data = genTableService.downloadCode(tableName); - genCode(response, data); - } - - /** - * 生成代码(自定义路径) - */ - @PreAuthorize("@ss.hasPermi('tool:gen:code')") - @Log(title = "代码生成", businessType = BusinessType.GENCODE) - @GetMapping("/genCode/{tableName}") - public AjaxResult genCode(@PathVariable("tableName") String tableName) - { - genTableService.generatorCode(tableName); - return success(); - } - - /** - * 同步数据库 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:edit')") - @Log(title = "代码生成", businessType = BusinessType.UPDATE) - @GetMapping("/synchDb/{tableName}") - public AjaxResult synchDb(@PathVariable("tableName") String tableName) - { - genTableService.synchDb(tableName); - return success(); - } - - /** - * 批量生成代码 - */ - @PreAuthorize("@ss.hasPermi('tool:gen:code')") - @Log(title = "代码生成", businessType = BusinessType.GENCODE) - @GetMapping("/batchGenCode") - public void batchGenCode(HttpServletResponse response, String tables) throws IOException - { - String[] tableNames = Convert.toStrArray(tables); - byte[] data = genTableService.downloadCode(tableNames); - genCode(response, data); - } - - /** - * 生成zip文件 - */ - private void genCode(HttpServletResponse response, byte[] data) throws IOException - { - response.reset(); - response.addHeader("Access-Control-Allow-Origin", "*"); - response.addHeader("Access-Control-Expose-Headers", "Content-Disposition"); - response.setHeader("Content-Disposition", "attachment; filename=\"ff.zip\""); - response.addHeader("Content-Length", "" + data.length); - response.setContentType("application/octet-stream; charset=UTF-8"); - IOUtils.write(data, response.getOutputStream()); - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/domain/GenTable.java b/ff-gen/src/main/java/com/ff/gen/domain/GenTable.java deleted file mode 100644 index b772826..0000000 --- a/ff-gen/src/main/java/com/ff/gen/domain/GenTable.java +++ /dev/null @@ -1,386 +0,0 @@ -package com.ff.gen.domain; - -import com.ff.base.constant.GenConstants; -import com.ff.base.core.domain.BaseEntity; -import com.ff.base.utils.StringUtils; -import org.apache.commons.lang3.ArrayUtils; - -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import java.util.List; - -/** - * 业务表 gen_table - * - * @author ff - */ -public class GenTable extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 编号 */ - private Long tableId; - - /** 表名称 */ - @NotBlank(message = "表名称不能为空") - private String tableName; - - /** 表描述 */ - @NotBlank(message = "表描述不能为空") - private String tableComment; - - /** 关联父表的表名 */ - private String subTableName; - - /** 本表关联父表的外键名 */ - private String subTableFkName; - - /** 实体类名称(首字母大写) */ - @NotBlank(message = "实体类名称不能为空") - private String className; - - /** 使用的模板(crud单表操作 tree树表操作 sub主子表操作) */ - private String tplCategory; - - /** 前端类型(element-ui模版 element-plus模版) */ - private String tplWebType; - - /** 生成包路径 */ - @NotBlank(message = "生成包路径不能为空") - private String packageName; - - /** 生成模块名 */ - @NotBlank(message = "生成模块名不能为空") - private String moduleName; - - /** 生成业务名 */ - @NotBlank(message = "生成业务名不能为空") - private String businessName; - - /** 生成功能名 */ - @NotBlank(message = "生成功能名不能为空") - private String functionName; - - /** 生成作者 */ - @NotBlank(message = "作者不能为空") - private String functionAuthor; - - /** 生成代码方式(0zip压缩包 1自定义路径) */ - private String genType; - - /** 生成路径(不填默认项目路径) */ - private String genPath; - - /** 主键信息 */ - private GenTableColumn pkColumn; - - /** 子表信息 */ - private GenTable subTable; - - /** 表列信息 */ - @Valid - private List columns; - - /** 其它生成选项 */ - private String options; - - /** 树编码字段 */ - private String treeCode; - - /** 树父编码字段 */ - private String treeParentCode; - - /** 树名称字段 */ - private String treeName; - - /** 上级菜单ID字段 */ - private String parentMenuId; - - /** 上级菜单名称字段 */ - private String parentMenuName; - - public Long getTableId() - { - return tableId; - } - - public void setTableId(Long tableId) - { - this.tableId = tableId; - } - - public String getTableName() - { - return tableName; - } - - public void setTableName(String tableName) - { - this.tableName = tableName; - } - - public String getTableComment() - { - return tableComment; - } - - public void setTableComment(String tableComment) - { - this.tableComment = tableComment; - } - - public String getSubTableName() - { - return subTableName; - } - - public void setSubTableName(String subTableName) - { - this.subTableName = subTableName; - } - - public String getSubTableFkName() - { - return subTableFkName; - } - - public void setSubTableFkName(String subTableFkName) - { - this.subTableFkName = subTableFkName; - } - - public String getClassName() - { - return className; - } - - public void setClassName(String className) - { - this.className = className; - } - - public String getTplCategory() - { - return tplCategory; - } - - public void setTplCategory(String tplCategory) - { - this.tplCategory = tplCategory; - } - - public String getTplWebType() - { - return tplWebType; - } - - public void setTplWebType(String tplWebType) - { - this.tplWebType = tplWebType; - } - - public String getPackageName() - { - return packageName; - } - - public void setPackageName(String packageName) - { - this.packageName = packageName; - } - - public String getModuleName() - { - return moduleName; - } - - public void setModuleName(String moduleName) - { - this.moduleName = moduleName; - } - - public String getBusinessName() - { - return businessName; - } - - public void setBusinessName(String businessName) - { - this.businessName = businessName; - } - - public String getFunctionName() - { - return functionName; - } - - public void setFunctionName(String functionName) - { - this.functionName = functionName; - } - - public String getFunctionAuthor() - { - return functionAuthor; - } - - public void setFunctionAuthor(String functionAuthor) - { - this.functionAuthor = functionAuthor; - } - - public String getGenType() - { - return genType; - } - - public void setGenType(String genType) - { - this.genType = genType; - } - - public String getGenPath() - { - return genPath; - } - - public void setGenPath(String genPath) - { - this.genPath = genPath; - } - - public GenTableColumn getPkColumn() - { - return pkColumn; - } - - public void setPkColumn(GenTableColumn pkColumn) - { - this.pkColumn = pkColumn; - } - - public GenTable getSubTable() - { - return subTable; - } - - public void setSubTable(GenTable subTable) - { - this.subTable = subTable; - } - - public List getColumns() - { - return columns; - } - - public void setColumns(List columns) - { - this.columns = columns; - } - - public String getOptions() - { - return options; - } - - public void setOptions(String options) - { - this.options = options; - } - - public String getTreeCode() - { - return treeCode; - } - - public void setTreeCode(String treeCode) - { - this.treeCode = treeCode; - } - - public String getTreeParentCode() - { - return treeParentCode; - } - - public void setTreeParentCode(String treeParentCode) - { - this.treeParentCode = treeParentCode; - } - - public String getTreeName() - { - return treeName; - } - - public void setTreeName(String treeName) - { - this.treeName = treeName; - } - - public String getParentMenuId() - { - return parentMenuId; - } - - public void setParentMenuId(String parentMenuId) - { - this.parentMenuId = parentMenuId; - } - - public String getParentMenuName() - { - return parentMenuName; - } - - public void setParentMenuName(String parentMenuName) - { - this.parentMenuName = parentMenuName; - } - - public boolean isSub() - { - return isSub(this.tplCategory); - } - - public static boolean isSub(String tplCategory) - { - return tplCategory != null && StringUtils.equals(GenConstants.TPL_SUB, tplCategory); - } - - public boolean isTree() - { - return isTree(this.tplCategory); - } - - public static boolean isTree(String tplCategory) - { - return tplCategory != null && StringUtils.equals(GenConstants.TPL_TREE, tplCategory); - } - - public boolean isCrud() - { - return isCrud(this.tplCategory); - } - - public static boolean isCrud(String tplCategory) - { - return tplCategory != null && StringUtils.equals(GenConstants.TPL_CRUD, tplCategory); - } - - public boolean isSuperColumn(String javaField) - { - return isSuperColumn(this.tplCategory, javaField); - } - - public static boolean isSuperColumn(String tplCategory, String javaField) - { - if (isTree(tplCategory)) - { - return StringUtils.equalsAnyIgnoreCase(javaField, - ArrayUtils.addAll(GenConstants.TREE_ENTITY, GenConstants.BASE_ENTITY)); - } - return StringUtils.equalsAnyIgnoreCase(javaField, GenConstants.BASE_ENTITY); - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/domain/GenTableColumn.java b/ff-gen/src/main/java/com/ff/gen/domain/GenTableColumn.java deleted file mode 100644 index 0f87eb9..0000000 --- a/ff-gen/src/main/java/com/ff/gen/domain/GenTableColumn.java +++ /dev/null @@ -1,374 +0,0 @@ -package com.ff.gen.domain; - -import com.ff.base.core.domain.BaseEntity; -import com.ff.base.utils.StringUtils; - -import javax.validation.constraints.NotBlank; - -/** - * 代码生成业务字段表 gen_table_column - * - * @author ff - */ -public class GenTableColumn extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 编号 */ - private Long columnId; - - /** 归属表编号 */ - private Long tableId; - - /** 列名称 */ - private String columnName; - - /** 列描述 */ - private String columnComment; - - /** 列类型 */ - private String columnType; - - /** JAVA类型 */ - private String javaType; - - /** JAVA字段名 */ - @NotBlank(message = "Java属性不能为空") - private String javaField; - - /** 是否主键(1是) */ - private String isPk; - - /** 是否自增(1是) */ - private String isIncrement; - - /** 是否必填(1是) */ - private String isRequired; - - /** 是否为插入字段(1是) */ - private String isInsert; - - /** 是否编辑字段(1是) */ - private String isEdit; - - /** 是否列表字段(1是) */ - private String isList; - - /** 是否查询字段(1是) */ - private String isQuery; - - /** 查询方式(EQ等于、NE不等于、GT大于、LT小于、LIKE模糊、BETWEEN范围) */ - private String queryType; - - /** 显示类型(input文本框、textarea文本域、select下拉框、checkbox复选框、radio单选框、datetime日期控件、image图片上传控件、upload文件上传控件、editor富文本控件) */ - private String htmlType; - - /** 字典类型 */ - private String dictType; - - /** 排序 */ - private Integer sort; - - public void setColumnId(Long columnId) - { - this.columnId = columnId; - } - - public Long getColumnId() - { - return columnId; - } - - public void setTableId(Long tableId) - { - this.tableId = tableId; - } - - public Long getTableId() - { - return tableId; - } - - public void setColumnName(String columnName) - { - this.columnName = columnName; - } - - public String getColumnName() - { - return columnName; - } - - public void setColumnComment(String columnComment) - { - this.columnComment = columnComment; - } - - public String getColumnComment() - { - return columnComment; - } - - public void setColumnType(String columnType) - { - this.columnType = columnType; - } - - public String getColumnType() - { - return columnType; - } - - public void setJavaType(String javaType) - { - this.javaType = javaType; - } - - public String getJavaType() - { - return javaType; - } - - public void setJavaField(String javaField) - { - this.javaField = javaField; - } - - public String getJavaField() - { - return javaField; - } - - public String getCapJavaField() - { - return StringUtils.capitalize(javaField); - } - - public void setIsPk(String isPk) - { - this.isPk = isPk; - } - - public String getIsPk() - { - return isPk; - } - - public boolean isPk() - { - return isPk(this.isPk); - } - - public boolean isPk(String isPk) - { - return isPk != null && StringUtils.equals("1", isPk); - } - - public String getIsIncrement() - { - return isIncrement; - } - - public void setIsIncrement(String isIncrement) - { - this.isIncrement = isIncrement; - } - - public boolean isIncrement() - { - return isIncrement(this.isIncrement); - } - - public boolean isIncrement(String isIncrement) - { - return isIncrement != null && StringUtils.equals("1", isIncrement); - } - - public void setIsRequired(String isRequired) - { - this.isRequired = isRequired; - } - - public String getIsRequired() - { - return isRequired; - } - - public boolean isRequired() - { - return isRequired(this.isRequired); - } - - public boolean isRequired(String isRequired) - { - return isRequired != null && StringUtils.equals("1", isRequired); - } - - public void setIsInsert(String isInsert) - { - this.isInsert = isInsert; - } - - public String getIsInsert() - { - return isInsert; - } - - public boolean isInsert() - { - return isInsert(this.isInsert); - } - - public boolean isInsert(String isInsert) - { - return isInsert != null && StringUtils.equals("1", isInsert); - } - - public void setIsEdit(String isEdit) - { - this.isEdit = isEdit; - } - - public String getIsEdit() - { - return isEdit; - } - - public boolean isEdit() - { - return isInsert(this.isEdit); - } - - public boolean isEdit(String isEdit) - { - return isEdit != null && StringUtils.equals("1", isEdit); - } - - public void setIsList(String isList) - { - this.isList = isList; - } - - public String getIsList() - { - return isList; - } - - public boolean isList() - { - return isList(this.isList); - } - - public boolean isList(String isList) - { - return isList != null && StringUtils.equals("1", isList); - } - - public void setIsQuery(String isQuery) - { - this.isQuery = isQuery; - } - - public String getIsQuery() - { - return isQuery; - } - - public boolean isQuery() - { - return isQuery(this.isQuery); - } - - public boolean isQuery(String isQuery) - { - return isQuery != null && StringUtils.equals("1", isQuery); - } - - public void setQueryType(String queryType) - { - this.queryType = queryType; - } - - public String getQueryType() - { - return queryType; - } - - public String getHtmlType() - { - return htmlType; - } - - public void setHtmlType(String htmlType) - { - this.htmlType = htmlType; - } - - public void setDictType(String dictType) - { - this.dictType = dictType; - } - - public String getDictType() - { - return dictType; - } - - public void setSort(Integer sort) - { - this.sort = sort; - } - - public Integer getSort() - { - return sort; - } - - public boolean isSuperColumn() - { - return isSuperColumn(this.javaField); - } - - public static boolean isSuperColumn(String javaField) - { - return StringUtils.equalsAnyIgnoreCase(javaField, - // BaseEntity - "createBy", "createTime", "updateBy", "updateTime", "remark", - // TreeEntity - "parentName", "parentId", "orderNum", "ancestors"); - } - - public boolean isUsableColumn() - { - return isUsableColumn(javaField); - } - - public static boolean isUsableColumn(String javaField) - { - // isSuperColumn()中的名单用于避免生成多余Domain属性,若某些属性在生成页面时需要用到不能忽略,则放在此处白名单 - return StringUtils.equalsAnyIgnoreCase(javaField, "parentId", "orderNum", "remark"); - } - - public String readConverterExp() - { - String remarks = StringUtils.substringBetween(this.columnComment, "(", ")"); - StringBuffer sb = new StringBuffer(); - if (StringUtils.isNotEmpty(remarks)) - { - for (String value : remarks.split(" ")) - { - if (StringUtils.isNotEmpty(value)) - { - Object startStr = value.subSequence(0, 1); - String endStr = value.substring(1); - sb.append("").append(startStr).append("=").append(endStr).append(","); - } - } - return sb.deleteCharAt(sb.length() - 1).toString(); - } - else - { - return this.columnComment; - } - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/mapper/GenTableColumnMapper.java b/ff-gen/src/main/java/com/ff/gen/mapper/GenTableColumnMapper.java deleted file mode 100644 index 0bab27a..0000000 --- a/ff-gen/src/main/java/com/ff/gen/mapper/GenTableColumnMapper.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.ff.gen.mapper; - -import com.ff.gen.domain.GenTableColumn; - -import java.util.List; - -/** - * 业务字段 数据层 - * - * @author ff - */ -public interface GenTableColumnMapper -{ - /** - * 根据表名称查询列信息 - * - * @param tableName 表名称 - * @return 列信息 - */ - public List selectDbTableColumnsByName(String tableName); - - /** - * 查询业务字段列表 - * - * @param tableId 业务字段编号 - * @return 业务字段集合 - */ - public List selectGenTableColumnListByTableId(Long tableId); - - /** - * 新增业务字段 - * - * @param genTableColumn 业务字段信息 - * @return 结果 - */ - public int insertGenTableColumn(GenTableColumn genTableColumn); - - /** - * 修改业务字段 - * - * @param genTableColumn 业务字段信息 - * @return 结果 - */ - public int updateGenTableColumn(GenTableColumn genTableColumn); - - /** - * 删除业务字段 - * - * @param genTableColumns 列数据 - * @return 结果 - */ - public int deleteGenTableColumns(List genTableColumns); - - /** - * 批量删除业务字段 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - public int deleteGenTableColumnByIds(Long[] ids); -} diff --git a/ff-gen/src/main/java/com/ff/gen/mapper/GenTableMapper.java b/ff-gen/src/main/java/com/ff/gen/mapper/GenTableMapper.java deleted file mode 100644 index 0f84664..0000000 --- a/ff-gen/src/main/java/com/ff/gen/mapper/GenTableMapper.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.ff.gen.mapper; - -import com.ff.gen.domain.GenTable; - -import java.util.List; - -/** - * 业务 数据层 - * - * @author ff - */ -public interface GenTableMapper -{ - /** - * 查询业务列表 - * - * @param genTable 业务信息 - * @return 业务集合 - */ - public List selectGenTableList(GenTable genTable); - - /** - * 查询据库列表 - * - * @param genTable 业务信息 - * @return 数据库表集合 - */ - public List selectDbTableList(GenTable genTable); - - /** - * 查询据库列表 - * - * @param tableNames 表名称组 - * @return 数据库表集合 - */ - public List selectDbTableListByNames(String[] tableNames); - - /** - * 查询所有表信息 - * - * @return 表信息集合 - */ - public List selectGenTableAll(); - - /** - * 查询表ID业务信息 - * - * @param id 业务ID - * @return 业务信息 - */ - public GenTable selectGenTableById(Long id); - - /** - * 查询表名称业务信息 - * - * @param tableName 表名称 - * @return 业务信息 - */ - public GenTable selectGenTableByName(String tableName); - - /** - * 新增业务 - * - * @param genTable 业务信息 - * @return 结果 - */ - public int insertGenTable(GenTable genTable); - - /** - * 修改业务 - * - * @param genTable 业务信息 - * @return 结果 - */ - public int updateGenTable(GenTable genTable); - - /** - * 批量删除业务 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - public int deleteGenTableByIds(Long[] ids); - - /** - * 创建表 - * - * @param sql 表结构 - * @return 结果 - */ - public int createTable(String sql); -} diff --git a/ff-gen/src/main/java/com/ff/gen/service/GenTableColumnServiceImpl.java b/ff-gen/src/main/java/com/ff/gen/service/GenTableColumnServiceImpl.java deleted file mode 100644 index d0f4961..0000000 --- a/ff-gen/src/main/java/com/ff/gen/service/GenTableColumnServiceImpl.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.ff.gen.service; - -import com.ff.base.core.text.Convert; -import com.ff.gen.domain.GenTableColumn; -import com.ff.gen.mapper.GenTableColumnMapper; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - * 业务字段 服务层实现 - * - * @author ff - */ -@Service -public class GenTableColumnServiceImpl implements IGenTableColumnService -{ - @Autowired - private GenTableColumnMapper genTableColumnMapper; - - /** - * 查询业务字段列表 - * - * @param tableId 业务字段编号 - * @return 业务字段集合 - */ - @Override - public List selectGenTableColumnListByTableId(Long tableId) - { - return genTableColumnMapper.selectGenTableColumnListByTableId(tableId); - } - - /** - * 新增业务字段 - * - * @param genTableColumn 业务字段信息 - * @return 结果 - */ - @Override - public int insertGenTableColumn(GenTableColumn genTableColumn) - { - return genTableColumnMapper.insertGenTableColumn(genTableColumn); - } - - /** - * 修改业务字段 - * - * @param genTableColumn 业务字段信息 - * @return 结果 - */ - @Override - public int updateGenTableColumn(GenTableColumn genTableColumn) - { - return genTableColumnMapper.updateGenTableColumn(genTableColumn); - } - - /** - * 删除业务字段对象 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - @Override - public int deleteGenTableColumnByIds(String ids) - { - return genTableColumnMapper.deleteGenTableColumnByIds(Convert.toLongArray(ids)); - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/service/GenTableServiceImpl.java b/ff-gen/src/main/java/com/ff/gen/service/GenTableServiceImpl.java deleted file mode 100644 index b96fa01..0000000 --- a/ff-gen/src/main/java/com/ff/gen/service/GenTableServiceImpl.java +++ /dev/null @@ -1,536 +0,0 @@ -package com.ff.gen.service; - -import cn.hutool.core.util.IdUtil; -import com.alibaba.fastjson2.JSON; -import com.alibaba.fastjson2.JSONObject; -import com.ff.base.constant.Constants; -import com.ff.base.constant.GenConstants; -import com.ff.base.core.text.CharsetKit; -import com.ff.base.exception.ServiceException; -import com.ff.base.utils.StringUtils; -import com.ff.gen.domain.GenTable; -import com.ff.gen.domain.GenTableColumn; -import com.ff.gen.mapper.GenTableColumnMapper; -import com.ff.gen.mapper.GenTableMapper; -import com.ff.gen.util.GenUtils; -import com.ff.gen.util.VelocityInitializer; -import com.ff.gen.util.VelocityUtils; -import org.apache.commons.io.FileUtils; -import org.apache.commons.io.IOUtils; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.io.ByteArrayOutputStream; -import java.io.File; -import java.io.IOException; -import java.io.StringWriter; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; -import java.util.function.Function; -import java.util.stream.Collectors; -import java.util.zip.ZipEntry; -import java.util.zip.ZipOutputStream; - -/** - * 业务 服务层实现 - * - * @author ff - */ -@Service -public class GenTableServiceImpl implements IGenTableService -{ - private static final Logger log = LoggerFactory.getLogger(GenTableServiceImpl.class); - - @Autowired - private GenTableMapper genTableMapper; - - @Autowired - private GenTableColumnMapper genTableColumnMapper; - - /** - * 查询业务信息 - * - * @param id 业务ID - * @return 业务信息 - */ - @Override - public GenTable selectGenTableById(Long id) - { - GenTable genTable = genTableMapper.selectGenTableById(id); - setTableFromOptions(genTable); - return genTable; - } - - /** - * 查询业务列表 - * - * @param genTable 业务信息 - * @return 业务集合 - */ - @Override - public List selectGenTableList(GenTable genTable) - { - return genTableMapper.selectGenTableList(genTable); - } - - /** - * 查询据库列表 - * - * @param genTable 业务信息 - * @return 数据库表集合 - */ - @Override - public List selectDbTableList(GenTable genTable) - { - return genTableMapper.selectDbTableList(genTable); - } - - /** - * 查询据库列表 - * - * @param tableNames 表名称组 - * @return 数据库表集合 - */ - @Override - public List selectDbTableListByNames(String[] tableNames) - { - return genTableMapper.selectDbTableListByNames(tableNames); - } - - /** - * 查询所有表信息 - * - * @return 表信息集合 - */ - @Override - public List selectGenTableAll() - { - return genTableMapper.selectGenTableAll(); - } - - /** - * 修改业务 - * - * @param genTable 业务信息 - * @return 结果 - */ - @Override - @Transactional - public void updateGenTable(GenTable genTable) - { - String options = JSON.toJSONString(genTable.getParams()); - genTable.setOptions(options); - int row = genTableMapper.updateGenTable(genTable); - if (row > 0) - { - for (GenTableColumn cenTableColumn : genTable.getColumns()) - { - genTableColumnMapper.updateGenTableColumn(cenTableColumn); - } - } - } - - /** - * 删除业务对象 - * - * @param tableIds 需要删除的数据ID - * @return 结果 - */ - @Override - @Transactional - public void deleteGenTableByIds(Long[] tableIds) - { - genTableMapper.deleteGenTableByIds(tableIds); - genTableColumnMapper.deleteGenTableColumnByIds(tableIds); - } - - /** - * 创建表 - * - * @param sql 创建表语句 - * @return 结果 - */ - @Override - public boolean createTable(String sql) - { - return genTableMapper.createTable(sql) == 0; - } - - /** - * 导入表结构 - * - * @param tableList 导入表列表 - */ - @Override - @Transactional - public void importGenTable(List tableList, String operName) - { - try - { - for (GenTable table : tableList) - { - String tableName = table.getTableName(); - GenUtils.initTable(table, operName); - table.setTableId(IdUtil.getSnowflakeNextId()); - int row = genTableMapper.insertGenTable(table); - if (row > 0) - { - // 保存列信息 - List genTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName); - for (GenTableColumn column : genTableColumns) - { - GenUtils.initColumnField(column, table); - column.setColumnId(IdUtil.getSnowflakeNextId()); - genTableColumnMapper.insertGenTableColumn(column); - } - } - } - } - catch (Exception e) - { - throw new ServiceException("导入失败:" + e.getMessage()); - } - } - - /** - * 预览代码 - * - * @param tableId 表编号 - * @return 预览数据列表 - */ - @Override - public Map previewCode(Long tableId) - { - Map dataMap = new LinkedHashMap<>(); - // 查询表信息 - GenTable table = genTableMapper.selectGenTableById(tableId); - // 设置主子表信息 - setSubTable(table); - // 设置主键列信息 - setPkColumn(table); - VelocityInitializer.initVelocity(); - - VelocityContext context = VelocityUtils.prepareContext(table); - - // 获取模板列表 - List templates = VelocityUtils.getTemplateList(table.getTplCategory(), table.getTplWebType()); - for (String template : templates) - { - // 渲染模板 - StringWriter sw = new StringWriter(); - Template tpl = Velocity.getTemplate(template, Constants.UTF8); - tpl.merge(context, sw); - dataMap.put(template, sw.toString()); - } - return dataMap; - } - - /** - * 生成代码(下载方式) - * - * @param tableName 表名称 - * @return 数据 - */ - @Override - public byte[] downloadCode(String tableName) - { - ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); - ZipOutputStream zip = new ZipOutputStream(outputStream); - generatorCode(tableName, zip); - IOUtils.closeQuietly(zip); - return outputStream.toByteArray(); - } - - /** - * 生成代码(自定义路径) - * - * @param tableName 表名称 - */ - @Override - public void generatorCode(String tableName) - { - // 查询表信息 - GenTable table = genTableMapper.selectGenTableByName(tableName); - // 设置主子表信息 - setSubTable(table); - // 设置主键列信息 - setPkColumn(table); - - VelocityInitializer.initVelocity(); - - VelocityContext context = VelocityUtils.prepareContext(table); - - // 获取模板列表 - List templates = VelocityUtils.getTemplateList(table.getTplCategory(), table.getTplWebType()); - for (String template : templates) - { - if (!StringUtils.containsAny(template, "sql.vm", "api.js.vm", "index.vue.vm", "index-tree.vue.vm")) - { - // 渲染模板 - StringWriter sw = new StringWriter(); - Template tpl = Velocity.getTemplate(template, Constants.UTF8); - tpl.merge(context, sw); - try - { - String path = getGenPath(table, template); - FileUtils.writeStringToFile(new File(path), sw.toString(), CharsetKit.UTF_8); - } - catch (IOException e) - { - throw new ServiceException("渲染模板失败,表名:" + table.getTableName()); - } - } - } - } - - /** - * 同步数据库 - * - * @param tableName 表名称 - */ - @Override - @Transactional - public void synchDb(String tableName) - { - GenTable table = genTableMapper.selectGenTableByName(tableName); - List tableColumns = table.getColumns(); - Map tableColumnMap = tableColumns.stream().collect(Collectors.toMap(GenTableColumn::getColumnName, Function.identity())); - - List dbTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName); - if (StringUtils.isEmpty(dbTableColumns)) - { - throw new ServiceException("同步数据失败,原表结构不存在"); - } - List dbTableColumnNames = dbTableColumns.stream().map(GenTableColumn::getColumnName).collect(Collectors.toList()); - - dbTableColumns.forEach(column -> { - GenUtils.initColumnField(column, table); - if (tableColumnMap.containsKey(column.getColumnName())) - { - GenTableColumn prevColumn = tableColumnMap.get(column.getColumnName()); - column.setColumnId(prevColumn.getColumnId()); - if (column.isList()) - { - // 如果是列表,继续保留查询方式/字典类型选项 - column.setDictType(prevColumn.getDictType()); - column.setQueryType(prevColumn.getQueryType()); - } - if (StringUtils.isNotEmpty(prevColumn.getIsRequired()) && !column.isPk() - && (column.isInsert() || column.isEdit()) - && ((column.isUsableColumn()) || (!column.isSuperColumn()))) - { - // 如果是(新增/修改&非主键/非忽略及父属性),继续保留必填/显示类型选项 - column.setIsRequired(prevColumn.getIsRequired()); - column.setHtmlType(prevColumn.getHtmlType()); - } - genTableColumnMapper.updateGenTableColumn(column); - } - else - { - column.setColumnId(IdUtil.getSnowflakeNextId()); - genTableColumnMapper.insertGenTableColumn(column); - } - }); - - List delColumns = tableColumns.stream().filter(column -> !dbTableColumnNames.contains(column.getColumnName())).collect(Collectors.toList()); - if (StringUtils.isNotEmpty(delColumns)) - { - genTableColumnMapper.deleteGenTableColumns(delColumns); - } - } - - /** - * 批量生成代码(下载方式) - * - * @param tableNames 表数组 - * @return 数据 - */ - @Override - public byte[] downloadCode(String[] tableNames) - { - ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); - ZipOutputStream zip = new ZipOutputStream(outputStream); - for (String tableName : tableNames) - { - generatorCode(tableName, zip); - } - IOUtils.closeQuietly(zip); - return outputStream.toByteArray(); - } - - /** - * 查询表信息并生成代码 - */ - private void generatorCode(String tableName, ZipOutputStream zip) - { - // 查询表信息 - GenTable table = genTableMapper.selectGenTableByName(tableName); - // 设置主子表信息 - setSubTable(table); - // 设置主键列信息 - setPkColumn(table); - - VelocityInitializer.initVelocity(); - - VelocityContext context = VelocityUtils.prepareContext(table); - - // 获取模板列表 - List templates = VelocityUtils.getTemplateList(table.getTplCategory(), table.getTplWebType()); - for (String template : templates) - { - // 渲染模板 - StringWriter sw = new StringWriter(); - Template tpl = Velocity.getTemplate(template, Constants.UTF8); - tpl.merge(context, sw); - try - { - // 添加到zip - zip.putNextEntry(new ZipEntry(VelocityUtils.getFileName(template, table))); - IOUtils.write(sw.toString(), zip, Constants.UTF8); - IOUtils.closeQuietly(sw); - zip.flush(); - zip.closeEntry(); - } - catch (IOException e) - { - log.error("渲染模板失败,表名:" + table.getTableName(), e); - } - } - } - - /** - * 修改保存参数校验 - * - * @param genTable 业务信息 - */ - @Override - public void validateEdit(GenTable genTable) - { - if (GenConstants.TPL_TREE.equals(genTable.getTplCategory())) - { - String options = JSON.toJSONString(genTable.getParams()); - JSONObject paramsObj = JSON.parseObject(options); - if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_CODE))) - { - throw new ServiceException("树编码字段不能为空"); - } - else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_PARENT_CODE))) - { - throw new ServiceException("树父编码字段不能为空"); - } - else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_NAME))) - { - throw new ServiceException("树名称字段不能为空"); - } - else if (GenConstants.TPL_SUB.equals(genTable.getTplCategory())) - { - if (StringUtils.isEmpty(genTable.getSubTableName())) - { - throw new ServiceException("关联子表的表名不能为空"); - } - else if (StringUtils.isEmpty(genTable.getSubTableFkName())) - { - throw new ServiceException("子表关联的外键名不能为空"); - } - } - } - } - - /** - * 设置主键列信息 - * - * @param table 业务表信息 - */ - public void setPkColumn(GenTable table) - { - for (GenTableColumn column : table.getColumns()) - { - if (column.isPk()) - { - table.setPkColumn(column); - break; - } - } - if (StringUtils.isNull(table.getPkColumn())) - { - table.setPkColumn(table.getColumns().get(0)); - } - if (GenConstants.TPL_SUB.equals(table.getTplCategory())) - { - for (GenTableColumn column : table.getSubTable().getColumns()) - { - if (column.isPk()) - { - table.getSubTable().setPkColumn(column); - break; - } - } - if (StringUtils.isNull(table.getSubTable().getPkColumn())) - { - table.getSubTable().setPkColumn(table.getSubTable().getColumns().get(0)); - } - } - } - - /** - * 设置主子表信息 - * - * @param table 业务表信息 - */ - public void setSubTable(GenTable table) - { - String subTableName = table.getSubTableName(); - if (StringUtils.isNotEmpty(subTableName)) - { - table.setSubTable(genTableMapper.selectGenTableByName(subTableName)); - } - } - - /** - * 设置代码生成其他选项值 - * - * @param genTable 设置后的生成对象 - */ - public void setTableFromOptions(GenTable genTable) - { - JSONObject paramsObj = JSON.parseObject(genTable.getOptions()); - if (StringUtils.isNotNull(paramsObj)) - { - String treeCode = paramsObj.getString(GenConstants.TREE_CODE); - String treeParentCode = paramsObj.getString(GenConstants.TREE_PARENT_CODE); - String treeName = paramsObj.getString(GenConstants.TREE_NAME); - String parentMenuId = paramsObj.getString(GenConstants.PARENT_MENU_ID); - String parentMenuName = paramsObj.getString(GenConstants.PARENT_MENU_NAME); - - genTable.setTreeCode(treeCode); - genTable.setTreeParentCode(treeParentCode); - genTable.setTreeName(treeName); - genTable.setParentMenuId(parentMenuId); - genTable.setParentMenuName(parentMenuName); - } - } - - /** - * 获取代码生成地址 - * - * @param table 业务表信息 - * @param template 模板文件路径 - * @return 生成地址 - */ - public static String getGenPath(GenTable table, String template) - { - String genPath = table.getGenPath(); - if (StringUtils.equals(genPath, "/")) - { - return System.getProperty("user.dir") + File.separator + "src" + File.separator + VelocityUtils.getFileName(template, table); - } - return genPath + File.separator + VelocityUtils.getFileName(template, table); - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/service/IGenTableColumnService.java b/ff-gen/src/main/java/com/ff/gen/service/IGenTableColumnService.java deleted file mode 100644 index a94df23..0000000 --- a/ff-gen/src/main/java/com/ff/gen/service/IGenTableColumnService.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.ff.gen.service; - -import com.ff.gen.domain.GenTableColumn; - -import java.util.List; - -/** - * 业务字段 服务层 - * - * @author ff - */ -public interface IGenTableColumnService -{ - /** - * 查询业务字段列表 - * - * @param tableId 业务字段编号 - * @return 业务字段集合 - */ - public List selectGenTableColumnListByTableId(Long tableId); - - /** - * 新增业务字段 - * - * @param genTableColumn 业务字段信息 - * @return 结果 - */ - public int insertGenTableColumn(GenTableColumn genTableColumn); - - /** - * 修改业务字段 - * - * @param genTableColumn 业务字段信息 - * @return 结果 - */ - public int updateGenTableColumn(GenTableColumn genTableColumn); - - /** - * 删除业务字段信息 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - public int deleteGenTableColumnByIds(String ids); -} diff --git a/ff-gen/src/main/java/com/ff/gen/service/IGenTableService.java b/ff-gen/src/main/java/com/ff/gen/service/IGenTableService.java deleted file mode 100644 index 5e078bb..0000000 --- a/ff-gen/src/main/java/com/ff/gen/service/IGenTableService.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.ff.gen.service; - -import com.ff.gen.domain.GenTable; - -import java.util.List; -import java.util.Map; - -/** - * 业务 服务层 - * - * @author ff - */ -public interface IGenTableService -{ - /** - * 查询业务列表 - * - * @param genTable 业务信息 - * @return 业务集合 - */ - public List selectGenTableList(GenTable genTable); - - /** - * 查询据库列表 - * - * @param genTable 业务信息 - * @return 数据库表集合 - */ - public List selectDbTableList(GenTable genTable); - - /** - * 查询据库列表 - * - * @param tableNames 表名称组 - * @return 数据库表集合 - */ - public List selectDbTableListByNames(String[] tableNames); - - /** - * 查询所有表信息 - * - * @return 表信息集合 - */ - public List selectGenTableAll(); - - /** - * 查询业务信息 - * - * @param id 业务ID - * @return 业务信息 - */ - public GenTable selectGenTableById(Long id); - - /** - * 修改业务 - * - * @param genTable 业务信息 - * @return 结果 - */ - public void updateGenTable(GenTable genTable); - - /** - * 删除业务信息 - * - * @param tableIds 需要删除的表数据ID - * @return 结果 - */ - public void deleteGenTableByIds(Long[] tableIds); - - /** - * 创建表 - * - * @param sql 创建表语句 - * @return 结果 - */ - public boolean createTable(String sql); - - /** - * 导入表结构 - * - * @param tableList 导入表列表 - * @param operName 操作人员 - */ - public void importGenTable(List tableList, String operName); - - /** - * 预览代码 - * - * @param tableId 表编号 - * @return 预览数据列表 - */ - public Map previewCode(Long tableId); - - /** - * 生成代码(下载方式) - * - * @param tableName 表名称 - * @return 数据 - */ - public byte[] downloadCode(String tableName); - - /** - * 生成代码(自定义路径) - * - * @param tableName 表名称 - * @return 数据 - */ - public void generatorCode(String tableName); - - /** - * 同步数据库 - * - * @param tableName 表名称 - */ - public void synchDb(String tableName); - - /** - * 批量生成代码(下载方式) - * - * @param tableNames 表数组 - * @return 数据 - */ - public byte[] downloadCode(String[] tableNames); - - /** - * 修改保存参数校验 - * - * @param genTable 业务信息 - */ - public void validateEdit(GenTable genTable); -} diff --git a/ff-gen/src/main/java/com/ff/gen/util/GenUtils.java b/ff-gen/src/main/java/com/ff/gen/util/GenUtils.java deleted file mode 100644 index ba543f5..0000000 --- a/ff-gen/src/main/java/com/ff/gen/util/GenUtils.java +++ /dev/null @@ -1,262 +0,0 @@ -package com.ff.gen.util; - -import com.ff.base.constant.GenConstants; -import com.ff.base.utils.StringUtils; -import com.ff.gen.config.GenConfig; -import com.ff.gen.domain.GenTable; -import com.ff.gen.domain.GenTableColumn; -import org.apache.commons.lang3.RegExUtils; - -import java.util.Arrays; - -/** - * 代码生成器 工具类 - * - * @author ff - */ -public class GenUtils -{ - /** - * 初始化表信息 - */ - public static void initTable(GenTable genTable, String operName) - { - genTable.setClassName(convertClassName(genTable.getTableName())); - genTable.setPackageName(GenConfig.getPackageName()); - genTable.setModuleName(getModuleName(GenConfig.getPackageName())); - genTable.setBusinessName(getBusinessName(genTable.getTableName())); - genTable.setFunctionName(replaceText(genTable.getTableComment())); - genTable.setFunctionAuthor(GenConfig.getAuthor()); - genTable.setCreateBy(operName); - } - - /** - * 初始化列属性字段 - */ - public static void initColumnField(GenTableColumn column, GenTable table) - { - String dataType = getDbType(column.getColumnType()); - String columnName = column.getColumnName(); - column.setTableId(table.getTableId()); - column.setCreateBy(table.getCreateBy()); - // 设置java字段名 - column.setJavaField(StringUtils.toCamelCase(columnName)); - // 设置默认类型 - column.setJavaType(GenConstants.TYPE_STRING); - column.setQueryType(GenConstants.QUERY_EQ); - - if (arraysContains(GenConstants.COLUMNTYPE_STR, dataType) || arraysContains(GenConstants.COLUMNTYPE_TEXT, dataType)) - { - // 字符串长度超过500设置为文本域 - Integer columnLength = getColumnLength(column.getColumnType()); - String htmlType = columnLength >= 500 || arraysContains(GenConstants.COLUMNTYPE_TEXT, dataType) ? GenConstants.HTML_TEXTAREA : GenConstants.HTML_INPUT; - column.setHtmlType(htmlType); - } - else if (arraysContains(GenConstants.COLUMNTYPE_TIME, dataType)) - { - column.setJavaType(GenConstants.TYPE_DATE); - column.setHtmlType(GenConstants.HTML_DATETIME); - } - else if (arraysContains(GenConstants.COLUMNTYPE_NUMBER, dataType)) - { - column.setHtmlType(GenConstants.HTML_INPUT); - - // 如果是浮点型 统一用BigDecimal - String[] str = StringUtils.split(StringUtils.substringBetween(column.getColumnType(), "(", ")"), ","); - if (str != null && str.length == 2 && Integer.parseInt(str[1]) > 0) - { - column.setJavaType(GenConstants.TYPE_BIGDECIMAL); - }else if ("bit".equalsIgnoreCase(dataType)){ - column.setJavaType(GenConstants.BOOL); - } - // 如果是整形 - else if (str != null && str.length == 1 && Integer.parseInt(str[0]) <= 10) - { - column.setJavaType(GenConstants.TYPE_INTEGER); - }else if ("tinyint".equalsIgnoreCase(dataType)||dataType.equals("int")){ - column.setJavaType(GenConstants.TYPE_INTEGER); - } - // 长整形 - else - { - column.setJavaType(GenConstants.TYPE_LONG); - } - } - - // 插入字段(默认所有字段都需要插入) - column.setIsInsert(GenConstants.REQUIRE); - - // 编辑字段 - if (!arraysContains(GenConstants.COLUMNNAME_NOT_EDIT, columnName) && !column.isPk()) - { - column.setIsEdit(GenConstants.REQUIRE); - } - // 列表字段 - if (!arraysContains(GenConstants.COLUMNNAME_NOT_LIST, columnName) && !column.isPk()) - { - column.setIsList(GenConstants.REQUIRE); - } - // 查询字段 - if (!arraysContains(GenConstants.COLUMNNAME_NOT_QUERY, columnName) && !column.isPk()) - { - column.setIsQuery(GenConstants.REQUIRE); - } - - // 查询字段类型 - if (StringUtils.endsWithIgnoreCase(columnName, "name")) - { - column.setQueryType(GenConstants.QUERY_LIKE); - } - // 状态字段设置单选框 - if (StringUtils.endsWithIgnoreCase(columnName, "status")) - { - column.setHtmlType(GenConstants.HTML_RADIO); - } - // 类型&性别字段设置下拉框 - else if (StringUtils.endsWithIgnoreCase(columnName, "type") - || StringUtils.endsWithIgnoreCase(columnName, "sex")) - { - column.setHtmlType(GenConstants.HTML_SELECT); - } - // 图片字段设置图片上传控件 - else if (StringUtils.endsWithIgnoreCase(columnName, "image")) - { - column.setHtmlType(GenConstants.HTML_IMAGE_UPLOAD); - } - // 文件字段设置文件上传控件 - else if (StringUtils.endsWithIgnoreCase(columnName, "file")) - { - column.setHtmlType(GenConstants.HTML_FILE_UPLOAD); - } - // 内容字段设置富文本控件 - else if (StringUtils.endsWithIgnoreCase(columnName, "content")) - { - column.setHtmlType(GenConstants.HTML_EDITOR); - } - } - - /** - * 校验数组是否包含指定值 - * - * @param arr 数组 - * @param targetValue 值 - * @return 是否包含 - */ - public static boolean arraysContains(String[] arr, String targetValue) - { - return Arrays.asList(arr).contains(targetValue); - } - - /** - * 获取模块名 - * - * @param packageName 包名 - * @return 模块名 - */ - public static String getModuleName(String packageName) - { - int lastIndex = packageName.lastIndexOf("."); - int nameLength = packageName.length(); - return StringUtils.substring(packageName, lastIndex + 1, nameLength); - } - - /** - * 获取业务名 - * - * @param tableName 表名 - * @return 业务名 - */ - public static String getBusinessName(String tableName) - { - int lastIndex = tableName.lastIndexOf("_"); - int nameLength = tableName.length(); - return StringUtils.substring(tableName, lastIndex + 1, nameLength); - } - - /** - * 表名转换成Java类名 - * - * @param tableName 表名称 - * @return 类名 - */ - public static String convertClassName(String tableName) - { - boolean autoRemovePre = GenConfig.getAutoRemovePre(); - String tablePrefix = GenConfig.getTablePrefix(); - if (autoRemovePre && StringUtils.isNotEmpty(tablePrefix)) - { - String[] searchList = StringUtils.split(tablePrefix, ","); - tableName = replaceFirst(tableName, searchList); - } - return StringUtils.convertToCamelCase(tableName); - } - - /** - * 批量替换前缀 - * - * @param replacementm 替换值 - * @param searchList 替换列表 - * @return - */ - public static String replaceFirst(String replacementm, String[] searchList) - { - String text = replacementm; - for (String searchString : searchList) - { - if (replacementm.startsWith(searchString)) - { - text = replacementm.replaceFirst(searchString, ""); - break; - } - } - return text; - } - - /** - * 关键字替换 - * - * @param text 需要被替换的名字 - * @return 替换后的名字 - */ - public static String replaceText(String text) - { - return RegExUtils.replaceAll(text, "(?:表|若依)", ""); - } - - /** - * 获取数据库类型字段 - * - * @param columnType 列类型 - * @return 截取后的列类型 - */ - public static String getDbType(String columnType) - { - if (StringUtils.indexOf(columnType, "(") > 0) - { - return StringUtils.substringBefore(columnType, "("); - } - else - { - return columnType; - } - } - - /** - * 获取字段长度 - * - * @param columnType 列类型 - * @return 截取后的列类型 - */ - public static Integer getColumnLength(String columnType) - { - if (StringUtils.indexOf(columnType, "(") > 0) - { - String length = StringUtils.substringBetween(columnType, "(", ")"); - return Integer.valueOf(length); - } - else - { - return 0; - } - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/util/VelocityInitializer.java b/ff-gen/src/main/java/com/ff/gen/util/VelocityInitializer.java deleted file mode 100644 index 227a463..0000000 --- a/ff-gen/src/main/java/com/ff/gen/util/VelocityInitializer.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.ff.gen.util; - -import com.ff.base.constant.Constants; -import org.apache.velocity.app.Velocity; - -import java.util.Properties; - -/** - * VelocityEngine工厂 - * - * @author ff - */ -public class VelocityInitializer -{ - /** - * 初始化vm方法 - */ - public static void initVelocity() - { - Properties p = new Properties(); - try - { - // 加载classpath目录下的vm文件 - p.setProperty("resource.loader.file.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); - // 定义字符集 - p.setProperty(Velocity.INPUT_ENCODING, Constants.UTF8); - // 初始化Velocity引擎,指定配置Properties - Velocity.init(p); - } - catch (Exception e) - { - throw new RuntimeException(e); - } - } -} diff --git a/ff-gen/src/main/java/com/ff/gen/util/VelocityUtils.java b/ff-gen/src/main/java/com/ff/gen/util/VelocityUtils.java deleted file mode 100644 index b94bcd0..0000000 --- a/ff-gen/src/main/java/com/ff/gen/util/VelocityUtils.java +++ /dev/null @@ -1,409 +0,0 @@ -package com.ff.gen.util; - -import com.alibaba.fastjson2.JSON; -import com.alibaba.fastjson2.JSONObject; -import com.ff.base.constant.GenConstants; -import com.ff.base.utils.DateUtils; -import com.ff.base.utils.StringUtils; -import com.ff.gen.domain.GenTable; -import com.ff.gen.domain.GenTableColumn; -import org.apache.velocity.VelocityContext; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -/** - * 模板处理工具类 - * - * @author ff - */ -public class VelocityUtils -{ - /** 项目空间路径 */ - private static final String PROJECT_PATH = "main/java"; - - /** mybatis空间路径 */ - private static final String MYBATIS_PATH = "main/resources/mapper"; - - /** 默认上级菜单,系统工具 */ - private static final String DEFAULT_PARENT_MENU_ID = "3"; - - /** - * 设置模板变量信息 - * - * @return 模板列表 - */ - public static VelocityContext prepareContext(GenTable genTable) - { - String moduleName = genTable.getModuleName(); - String businessName = genTable.getBusinessName(); - String packageName = genTable.getPackageName(); - String tplCategory = genTable.getTplCategory(); - String functionName = genTable.getFunctionName(); - - VelocityContext velocityContext = new VelocityContext(); - velocityContext.put("tplCategory", genTable.getTplCategory()); - velocityContext.put("tableName", genTable.getTableName()); - velocityContext.put("functionName", StringUtils.isNotEmpty(functionName) ? functionName : "【请填写功能名称】"); - velocityContext.put("ClassName", genTable.getClassName()); - velocityContext.put("className", StringUtils.uncapitalize(genTable.getClassName())); - velocityContext.put("moduleName", genTable.getModuleName()); - velocityContext.put("BusinessName", StringUtils.capitalize(genTable.getBusinessName())); - velocityContext.put("businessName", genTable.getBusinessName()); - velocityContext.put("basePackage", getPackagePrefix(packageName)); - velocityContext.put("packageName", packageName); - velocityContext.put("author", genTable.getFunctionAuthor()); - velocityContext.put("datetime", DateUtils.getDate()); - velocityContext.put("pkColumn", genTable.getPkColumn()); - velocityContext.put("importList", getImportList(genTable)); - velocityContext.put("permissionPrefix", getPermissionPrefix(moduleName, businessName)); - velocityContext.put("columns", genTable.getColumns()); - velocityContext.put("table", genTable); - velocityContext.put("dicts", getDicts(genTable)); - setMenuVelocityContext(velocityContext, genTable); - if (GenConstants.TPL_TREE.equals(tplCategory)) - { - setTreeVelocityContext(velocityContext, genTable); - } - if (GenConstants.TPL_SUB.equals(tplCategory)) - { - setSubVelocityContext(velocityContext, genTable); - } - return velocityContext; - } - - public static void setMenuVelocityContext(VelocityContext context, GenTable genTable) - { - String options = genTable.getOptions(); - JSONObject paramsObj = JSON.parseObject(options); - String parentMenuId = getParentMenuId(paramsObj); - context.put("parentMenuId", parentMenuId); - } - - public static void setTreeVelocityContext(VelocityContext context, GenTable genTable) - { - String options = genTable.getOptions(); - JSONObject paramsObj = JSON.parseObject(options); - String treeCode = getTreecode(paramsObj); - String treeParentCode = getTreeParentCode(paramsObj); - String treeName = getTreeName(paramsObj); - - context.put("treeCode", treeCode); - context.put("treeParentCode", treeParentCode); - context.put("treeName", treeName); - context.put("expandColumn", getExpandColumn(genTable)); - if (paramsObj.containsKey(GenConstants.TREE_PARENT_CODE)) - { - context.put("tree_parent_code", paramsObj.getString(GenConstants.TREE_PARENT_CODE)); - } - if (paramsObj.containsKey(GenConstants.TREE_NAME)) - { - context.put("tree_name", paramsObj.getString(GenConstants.TREE_NAME)); - } - } - - public static void setSubVelocityContext(VelocityContext context, GenTable genTable) - { - GenTable subTable = genTable.getSubTable(); - String subTableName = genTable.getSubTableName(); - String subTableFkName = genTable.getSubTableFkName(); - String subClassName = genTable.getSubTable().getClassName(); - String subTableFkClassName = StringUtils.convertToCamelCase(subTableFkName); - - context.put("subTable", subTable); - context.put("subTableName", subTableName); - context.put("subTableFkName", subTableFkName); - context.put("subTableFkClassName", subTableFkClassName); - context.put("subTableFkclassName", StringUtils.uncapitalize(subTableFkClassName)); - context.put("subClassName", subClassName); - context.put("subclassName", StringUtils.uncapitalize(subClassName)); - context.put("subImportList", getImportList(genTable.getSubTable())); - } - - /** - * 获取模板信息 - * @param tplCategory 生成的模板 - * @param tplWebType 前端类型 - * @return 模板列表 - */ - public static List getTemplateList(String tplCategory, String tplWebType) - { - String useWebType = "vm/vue"; - if ("element-plus".equals(tplWebType)) - { - useWebType = "vm/vue/v3"; - } - List templates = new ArrayList(); - templates.add("vm/java/domain.java.vm"); - templates.add("vm/java/mapper.java.vm"); - templates.add("vm/java/service.java.vm"); - templates.add("vm/java/serviceImpl.java.vm"); - templates.add("vm/java/controller.java.vm"); - templates.add("vm/xml/mapper.xml.vm"); - templates.add("vm/sql/sql.vm"); - templates.add("vm/js/api.js.vm"); - if (GenConstants.TPL_CRUD.equals(tplCategory)) - { - templates.add(useWebType + "/index.vue.vm"); - } - else if (GenConstants.TPL_TREE.equals(tplCategory)) - { - templates.add(useWebType + "/index-tree.vue.vm"); - } - else if (GenConstants.TPL_SUB.equals(tplCategory)) - { - templates.add(useWebType + "/index.vue.vm"); - templates.add("vm/java/sub-domain.java.vm"); - } - return templates; - } - - /** - * 获取文件名 - */ - public static String getFileName(String template, GenTable genTable) - { - // 文件名称 - String fileName = ""; - // 包路径 - String packageName = genTable.getPackageName(); - // 模块名 - String moduleName = genTable.getModuleName(); - // 大写类名 - String className = genTable.getClassName(); - // 业务名称 - String businessName = genTable.getBusinessName(); - - String javaPath = PROJECT_PATH + "/" + StringUtils.replace(packageName, ".", "/"); - String mybatisPath = MYBATIS_PATH + "/" + moduleName; - String vuePath = "vue"; - - if (template.contains("domain.java.vm")) - { - fileName = StringUtils.format("{}/domain/{}.java", javaPath, className); - } - if (template.contains("sub-domain.java.vm") && StringUtils.equals(GenConstants.TPL_SUB, genTable.getTplCategory())) - { - fileName = StringUtils.format("{}/domain/{}.java", javaPath, genTable.getSubTable().getClassName()); - } - else if (template.contains("mapper.java.vm")) - { - fileName = StringUtils.format("{}/mapper/{}Mapper.java", javaPath, className); - } - else if (template.contains("service.java.vm")) - { - fileName = StringUtils.format("{}/service/I{}Service.java", javaPath, className); - } - else if (template.contains("serviceImpl.java.vm")) - { - fileName = StringUtils.format("{}/service/impl/{}ServiceImpl.java", javaPath, className); - } - else if (template.contains("controller.java.vm")) - { - fileName = StringUtils.format("{}/controller/{}Controller.java", javaPath, className); - } - else if (template.contains("mapper.xml.vm")) - { - fileName = StringUtils.format("{}/{}Mapper.xml", mybatisPath, className); - } - else if (template.contains("sql.vm")) - { - fileName = businessName + "Menu.sql"; - } - else if (template.contains("api.js.vm")) - { - fileName = StringUtils.format("{}/api/{}/{}.js", vuePath, moduleName, businessName); - } - else if (template.contains("index.vue.vm")) - { - fileName = StringUtils.format("{}/views/{}/{}/index.vue", vuePath, moduleName, businessName); - } - else if (template.contains("index-tree.vue.vm")) - { - fileName = StringUtils.format("{}/views/{}/{}/index.vue", vuePath, moduleName, businessName); - } - return fileName; - } - - /** - * 获取包前缀 - * - * @param packageName 包名称 - * @return 包前缀名称 - */ - public static String getPackagePrefix(String packageName) - { - int lastIndex = packageName.lastIndexOf("."); - return StringUtils.substring(packageName, 0, lastIndex); - } - - /** - * 根据列类型获取导入包 - * - * @param genTable 业务表对象 - * @return 返回需要导入的包列表 - */ - public static HashSet getImportList(GenTable genTable) - { - List columns = genTable.getColumns(); - GenTable subGenTable = genTable.getSubTable(); - HashSet importList = new HashSet(); - if (StringUtils.isNotNull(subGenTable)) - { - importList.add("java.util.List"); - } - for (GenTableColumn column : columns) - { - if (!column.isSuperColumn() && GenConstants.TYPE_DATE.equals(column.getJavaType())) - { - importList.add("java.util.Date"); - importList.add("com.fasterxml.jackson.annotation.JsonFormat"); - } - else if (!column.isSuperColumn() && GenConstants.TYPE_BIGDECIMAL.equals(column.getJavaType())) - { - importList.add("java.math.BigDecimal"); - } - } - return importList; - } - - /** - * 根据列类型获取字典组 - * - * @param genTable 业务表对象 - * @return 返回字典组 - */ - public static String getDicts(GenTable genTable) - { - List columns = genTable.getColumns(); - Set dicts = new HashSet(); - addDicts(dicts, columns); - if (StringUtils.isNotNull(genTable.getSubTable())) - { - List subColumns = genTable.getSubTable().getColumns(); - addDicts(dicts, subColumns); - } - return StringUtils.join(dicts, ", "); - } - - /** - * 添加字典列表 - * - * @param dicts 字典列表 - * @param columns 列集合 - */ - public static void addDicts(Set dicts, List columns) - { - for (GenTableColumn column : columns) - { - if (!column.isSuperColumn() && StringUtils.isNotEmpty(column.getDictType()) && StringUtils.equalsAny( - column.getHtmlType(), - new String[] { GenConstants.HTML_SELECT, GenConstants.HTML_RADIO, GenConstants.HTML_CHECKBOX })) - { - dicts.add("'" + column.getDictType() + "'"); - } - } - } - - /** - * 获取权限前缀 - * - * @param moduleName 模块名称 - * @param businessName 业务名称 - * @return 返回权限前缀 - */ - public static String getPermissionPrefix(String moduleName, String businessName) - { - return StringUtils.format("{}:{}", moduleName, businessName); - } - - /** - * 获取上级菜单ID字段 - * - * @param paramsObj 生成其他选项 - * @return 上级菜单ID字段 - */ - public static String getParentMenuId(JSONObject paramsObj) - { - if (StringUtils.isNotEmpty(paramsObj) && paramsObj.containsKey(GenConstants.PARENT_MENU_ID) - && StringUtils.isNotEmpty(paramsObj.getString(GenConstants.PARENT_MENU_ID))) - { - return paramsObj.getString(GenConstants.PARENT_MENU_ID); - } - return DEFAULT_PARENT_MENU_ID; - } - - /** - * 获取树编码 - * - * @param paramsObj 生成其他选项 - * @return 树编码 - */ - public static String getTreecode(JSONObject paramsObj) - { - if (paramsObj.containsKey(GenConstants.TREE_CODE)) - { - return StringUtils.toCamelCase(paramsObj.getString(GenConstants.TREE_CODE)); - } - return StringUtils.EMPTY; - } - - /** - * 获取树父编码 - * - * @param paramsObj 生成其他选项 - * @return 树父编码 - */ - public static String getTreeParentCode(JSONObject paramsObj) - { - if (paramsObj.containsKey(GenConstants.TREE_PARENT_CODE)) - { - return StringUtils.toCamelCase(paramsObj.getString(GenConstants.TREE_PARENT_CODE)); - } - return StringUtils.EMPTY; - } - - /** - * 获取树名称 - * - * @param paramsObj 生成其他选项 - * @return 树名称 - */ - public static String getTreeName(JSONObject paramsObj) - { - if (paramsObj.containsKey(GenConstants.TREE_NAME)) - { - return StringUtils.toCamelCase(paramsObj.getString(GenConstants.TREE_NAME)); - } - return StringUtils.EMPTY; - } - - /** - * 获取需要在哪一列上面显示展开按钮 - * - * @param genTable 业务表对象 - * @return 展开按钮列序号 - */ - public static int getExpandColumn(GenTable genTable) - { - String options = genTable.getOptions(); - JSONObject paramsObj = JSON.parseObject(options); - String treeName = paramsObj.getString(GenConstants.TREE_NAME); - int num = 0; - for (GenTableColumn column : genTable.getColumns()) - { - if (column.isList()) - { - num++; - String columnName = column.getColumnName(); - if (columnName.equals(treeName)) - { - break; - } - } - } - return num; - } -} diff --git a/ff-gen/src/main/resources/generator.yml b/ff-gen/src/main/resources/generator.yml deleted file mode 100644 index 035c10b..0000000 --- a/ff-gen/src/main/resources/generator.yml +++ /dev/null @@ -1,10 +0,0 @@ -# 代码生成 -gen: - # 作者 - author: shi - # 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool - packageName: com.ff.common - # 自动去除表前缀,默认是false - autoRemovePre: true - # 表前缀(生成类名不会包含表前缀,多个用逗号分隔) - tablePrefix: ff_ diff --git a/ff-gen/src/main/resources/mapper/gen/GenTableColumnMapper.xml b/ff-gen/src/main/resources/mapper/gen/GenTableColumnMapper.xml deleted file mode 100644 index 96e9188..0000000 --- a/ff-gen/src/main/resources/mapper/gen/GenTableColumnMapper.xml +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select column_id, table_id, column_name, column_comment, column_type, java_type, java_field, is_pk, is_increment, is_required, is_insert, is_edit, is_list, is_query, query_type, html_type, dict_type, sort, create_by, create_time, update_by, update_time from gen_table_column - - - - - - - - insert into gen_table_column ( - column_id, - table_id, - column_name, - column_comment, - column_type, - java_type, - java_field, - is_pk, - is_increment, - is_required, - is_insert, - is_edit, - is_list, - is_query, - query_type, - html_type, - dict_type, - sort, - create_by, - create_time - )values( - #{columnId}, - #{tableId}, - #{columnName}, - #{columnComment}, - #{columnType}, - #{javaType}, - #{javaField}, - #{isPk}, - #{isIncrement}, - #{isRequired}, - #{isInsert}, - #{isEdit}, - #{isList}, - #{isQuery}, - #{queryType}, - #{htmlType}, - #{dictType}, - #{sort}, - #{createBy}, - UNIX_TIMESTAMP() * 1000 - ) - - - - update gen_table_column - - column_comment = #{columnComment}, - java_type = #{javaType}, - java_field = #{javaField}, - is_insert = #{isInsert}, - is_edit = #{isEdit}, - is_list = #{isList}, - is_query = #{isQuery}, - is_required = #{isRequired}, - query_type = #{queryType}, - html_type = #{htmlType}, - dict_type = #{dictType}, - sort = #{sort}, - update_by = #{updateBy}, - update_time = UNIX_TIMESTAMP() * 1000 - - where column_id = #{columnId} - - - - delete from gen_table_column where table_id in - - #{tableId} - - - - - delete from gen_table_column where column_id in - - #{item.columnId} - - - - diff --git a/ff-gen/src/main/resources/mapper/gen/GenTableMapper.xml b/ff-gen/src/main/resources/mapper/gen/GenTableMapper.xml deleted file mode 100644 index 18e7fed..0000000 --- a/ff-gen/src/main/resources/mapper/gen/GenTableMapper.xml +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select table_id, table_name, table_comment, sub_table_name, sub_table_fk_name, class_name, tpl_category, tpl_web_type, package_name, module_name, business_name, function_name, function_author, gen_type, gen_path, options, create_by, create_time, update_by, update_time, remark from gen_table - - - - - - - - - - - - - - - - - - insert into gen_table ( - table_id, - table_name, - table_comment, - class_name, - tpl_category, - tpl_web_type, - package_name, - module_name, - business_name, - function_name, - function_author, - gen_type, - gen_path, - remark, - create_by, - create_time - )values( - #{tableId}, - #{tableName}, - #{tableComment}, - #{className}, - #{tplCategory}, - #{tplWebType}, - #{packageName}, - #{moduleName}, - #{businessName}, - #{functionName}, - #{functionAuthor}, - #{genType}, - #{genPath}, - #{remark}, - #{createBy}, - UNIX_TIMESTAMP() * 1000 - ) - - - - ${sql} - - - - update gen_table - - table_name = #{tableName}, - table_comment = #{tableComment}, - sub_table_name = #{subTableName}, - sub_table_fk_name = #{subTableFkName}, - class_name = #{className}, - function_author = #{functionAuthor}, - gen_type = #{genType}, - gen_path = #{genPath}, - tpl_category = #{tplCategory}, - tpl_web_type = #{tplWebType}, - package_name = #{packageName}, - module_name = #{moduleName}, - business_name = #{businessName}, - function_name = #{functionName}, - options = #{options}, - update_by = #{updateBy}, - remark = #{remark}, - update_time =UNIX_TIMESTAMP() * 1000 - - where table_id = #{tableId} - - - - delete from gen_table where table_id in - - #{tableId} - - - - diff --git a/ff-gen/src/main/resources/vm/java/controller.java.vm b/ff-gen/src/main/resources/vm/java/controller.java.vm deleted file mode 100644 index 64ff426..0000000 --- a/ff-gen/src/main/resources/vm/java/controller.java.vm +++ /dev/null @@ -1,115 +0,0 @@ -package ${packageName}.controller; - -import java.util.List; -import javax.servlet.http.HttpServletResponse; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.ff.base.annotation.Log; -import com.ff.base.core.controller.BaseController; -import com.ff.base.core.domain.AjaxResult; -import com.ff.base.enums.BusinessType; -import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; -import com.ff.base.utils.poi.ExcelUtil; -#if($table.crud || $table.sub) -import com.ff.base.core.page.TableDataInfo; -#elseif($table.tree) -#end - -/** - * ${functionName}Controller - * - * @author ${author} - * @date ${datetime} - */ -@RestController -@RequestMapping("/${moduleName}/${businessName}") -public class ${ClassName}Controller extends BaseController -{ - @Autowired - private I${ClassName}Service ${className}Service; - - /** - * 查询${functionName}列表 - */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')") - @GetMapping("/list") -#if($table.crud || $table.sub) - public TableDataInfo list(${ClassName} ${className}) - { - startPage(); - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - return getDataTable(list); - } -#elseif($table.tree) - public AjaxResult list(${ClassName} ${className}) - { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - return success(list); - } -#end - - /** - * 导出${functionName}列表 - */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')") - @Log(title = "${functionName}", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, ${ClassName} ${className}) - { - List<${ClassName}> list = ${className}Service.select${ClassName}List(${className}); - ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class); - util.exportExcel(response, list, "${functionName}数据"); - } - - /** - * 获取${functionName}详细信息 - */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')") - @GetMapping(value = "/{${pkColumn.javaField}}") - public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) - { - return success(${className}Service.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField})); - } - - /** - * 新增${functionName} - */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')") - @Log(title = "${functionName}", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ${ClassName} ${className}) - { - return toAjax(${className}Service.insert${ClassName}(${className})); - } - - /** - * 修改${functionName} - */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')") - @Log(title = "${functionName}", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ${ClassName} ${className}) - { - return toAjax(${className}Service.update${ClassName}(${className})); - } - - /** - * 删除${functionName} - */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')") - @Log(title = "${functionName}", businessType = BusinessType.DELETE) - @DeleteMapping("/{${pkColumn.javaField}s}") - public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) - { - return toAjax(${className}Service.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s)); - } -} diff --git a/ff-gen/src/main/resources/vm/java/domain.java.vm b/ff-gen/src/main/resources/vm/java/domain.java.vm deleted file mode 100644 index 5fa9a07..0000000 --- a/ff-gen/src/main/resources/vm/java/domain.java.vm +++ /dev/null @@ -1,61 +0,0 @@ -package ${packageName}.domain; - -#foreach ($import in $importList) -import ${import}; -#end -import com.ff.base.annotation.Excel; -#if($table.crud || $table.sub) -import com.ff.base.core.domain.BaseEntity; -#elseif($table.tree) -import com.ff.base.core.domain.TreeEntity; -#end -import lombok.Data; -/** - * ${functionName}对象 ${tableName} - * - * @author ${author} - * @date ${datetime} - */ -#if($table.crud || $table.sub) -#set($Entity="BaseEntity") -#elseif($table.tree) -#set($Entity="TreeEntity") -#end -@Data -public class ${ClassName} extends ${Entity} -{ - private static final long serialVersionUID = 1L; - -#foreach ($column in $columns) -#if(!$table.isSuperColumn($column.javaField)) - /** $column.columnComment */ -#if($column.list) -#set($parentheseIndex=$column.columnComment.indexOf("(")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") -#elseif($column.javaType == 'Date') - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") -#elseif($column.javaType == 'Long') - @JsonSerialize(using = ToStringSerializer.class) - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") -#else - @Excel(name = "${comment}") -#end -#end - private $column.javaType $column.javaField; - -#end -#end -#if($table.sub) - /** $table.subTable.functionName信息 */ - private List<${subClassName}> ${subclassName}List; - -#end - -} diff --git a/ff-gen/src/main/resources/vm/java/mapper.java.vm b/ff-gen/src/main/resources/vm/java/mapper.java.vm deleted file mode 100644 index 7f0a5b1..0000000 --- a/ff-gen/src/main/resources/vm/java/mapper.java.vm +++ /dev/null @@ -1,91 +0,0 @@ -package ${packageName}.mapper; - -import java.util.List; -import ${packageName}.domain.${ClassName}; -#if($table.sub) -import ${packageName}.domain.${subClassName}; -#end - -/** - * ${functionName}Mapper接口 - * - * @author ${author} - * @date ${datetime} - */ -public interface ${ClassName}Mapper -{ - /** - * 查询${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return ${functionName} - */ - ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 查询${functionName}列表 - * - * @param ${className} ${functionName} - * @return ${functionName}集合 - */ - List<${ClassName}> select${ClassName}List(${ClassName} ${className}); - - /** - * 新增${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - int insert${ClassName}(${ClassName} ${className}); - - /** - * 修改${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - int update${ClassName}(${ClassName} ${className}); - - /** - * 删除${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return 结果 - */ - int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 批量删除${functionName} - * - * @param ${pkColumn.javaField}s 需要删除的数据主键集合 - * @return 结果 - */ - int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); -#if($table.sub) - - /** - * 批量删除${subTable.functionName} - * - * @param ${pkColumn.javaField}s 需要删除的数据主键集合 - * @return 结果 - */ - int delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); - - /** - * 批量新增${subTable.functionName} - * - * @param ${subclassName}List ${subTable.functionName}列表 - * @return 结果 - */ - int batch${subClassName}(List<${subClassName}> ${subclassName}List); - - - /** - * 通过${functionName}主键删除${subTable.functionName}信息 - * - * @param ${pkColumn.javaField} ${functionName}ID - * @return 结果 - */ - int delete${subClassName}By${subTableFkClassName}(${pkColumn.javaType} ${pkColumn.javaField}); -#end -} diff --git a/ff-gen/src/main/resources/vm/java/service.java.vm b/ff-gen/src/main/resources/vm/java/service.java.vm deleted file mode 100644 index eba6fbf..0000000 --- a/ff-gen/src/main/resources/vm/java/service.java.vm +++ /dev/null @@ -1,61 +0,0 @@ -package ${packageName}.service; - -import java.util.List; -import ${packageName}.domain.${ClassName}; - -/** - * ${functionName}Service接口 - * - * @author ${author} - * @date ${datetime} - */ -public interface I${ClassName}Service -{ - /** - * 查询${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return ${functionName} - */ - ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); - - /** - * 查询${functionName}列表 - * - * @param ${className} ${functionName} - * @return ${functionName}集合 - */ - List<${ClassName}> select${ClassName}List(${ClassName} ${className}); - - /** - * 新增${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - int insert${ClassName}(${ClassName} ${className}); - - /** - * 修改${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ - int update${ClassName}(${ClassName} ${className}); - - /** - * 批量删除${functionName} - * - * @param ${pkColumn.javaField}s 需要删除的${functionName}主键集合 - * @return 结果 - */ - int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s); - - /** - * 删除${functionName}信息 - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return 结果 - */ - int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}); -} diff --git a/ff-gen/src/main/resources/vm/java/serviceImpl.java.vm b/ff-gen/src/main/resources/vm/java/serviceImpl.java.vm deleted file mode 100644 index 79ca062..0000000 --- a/ff-gen/src/main/resources/vm/java/serviceImpl.java.vm +++ /dev/null @@ -1,172 +0,0 @@ -package ${packageName}.service.impl; - -import java.util.List; -#foreach ($column in $columns) -#if($column.javaField == 'createTime' || $column.javaField == 'updateTime') -import com.ff.base.utils.DateUtils; -#break -#end -#end -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -#if($table.sub) -import java.util.ArrayList; -import com.ff.base.utils.StringUtils; -import org.springframework.transaction.annotation.Transactional; -import ${packageName}.domain.${subClassName}; -#end -import ${packageName}.mapper.${ClassName}Mapper; -import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; -import cn.hutool.core.util.IdUtil; - - -/** - * ${functionName}Service业务层处理 - * - * @author ${author} - * @date ${datetime} - */ -@Service -public class ${ClassName}ServiceImpl implements I${ClassName}Service -{ - @Autowired - private ${ClassName}Mapper ${className}Mapper; - - /** - * 查询${functionName} - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return ${functionName} - */ - @Override - public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) - { - return ${className}Mapper.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}); - } - - /** - * 查询${functionName}列表 - * - * @param ${className} ${functionName} - * @return ${functionName} - */ - @Override - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}) - { - return ${className}Mapper.select${ClassName}List(${className}); - } - - /** - * 新增${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int insert${ClassName}(${ClassName} ${className}) - { - ${className}.setId(IdUtil.getSnowflakeNextId()); -#foreach ($column in $columns) -#if($column.javaField == 'createTime') - ${className}.setCreateTime(DateUtils.getNowDate()); -#end -#end -#if($table.sub) - int rows = ${className}Mapper.insert${ClassName}(${className}); - insert${subClassName}(${className}); - return rows; -#else - return ${className}Mapper.insert${ClassName}(${className}); -#end - } - - /** - * 修改${functionName} - * - * @param ${className} ${functionName} - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int update${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'updateTime') - ${className}.setUpdateTime(DateUtils.getNowDate()); -#end -#end -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${className}.get${pkColumn.capJavaField}()); - insert${subClassName}(${className}); -#end - return ${className}Mapper.update${ClassName}(${className}); - } - - /** - * 批量删除${functionName} - * - * @param ${pkColumn.javaField}s 需要删除的${functionName}主键 - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s) - { -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaField}s); -#end - return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s); - } - - /** - * 删除${functionName}信息 - * - * @param ${pkColumn.javaField} ${functionName}主键 - * @return 结果 - */ -#if($table.sub) - @Transactional -#end - @Override - public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField}) - { -#if($table.sub) - ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${pkColumn.javaField}); -#end - return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}); - } -#if($table.sub) - - /** - * 新增${subTable.functionName}信息 - * - * @param ${className} ${functionName}对象 - */ - public void insert${subClassName}(${ClassName} ${className}) - { - List<${subClassName}> ${subclassName}List = ${className}.get${subClassName}List(); - ${pkColumn.javaType} ${pkColumn.javaField} = ${className}.get${pkColumn.capJavaField}(); - if (StringUtils.isNotNull(${subclassName}List)) - { - List<${subClassName}> list = new ArrayList<${subClassName}>(); - for (${subClassName} ${subclassName} : ${subclassName}List) - { - ${subclassName}.set${subTableFkClassName}(${pkColumn.javaField}); - list.add(${subclassName}); - } - if (list.size() > 0) - { - ${className}Mapper.batch${subClassName}(list); - } - } - } -#end -} diff --git a/ff-gen/src/main/resources/vm/java/sub-domain.java.vm b/ff-gen/src/main/resources/vm/java/sub-domain.java.vm deleted file mode 100644 index 9840cbf..0000000 --- a/ff-gen/src/main/resources/vm/java/sub-domain.java.vm +++ /dev/null @@ -1,76 +0,0 @@ -package ${packageName}.domain; - -#foreach ($import in $subImportList) -import ${import}; -#end -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; -import com.ff.base.annotation.Excel; -import com.ff.base.core.domain.BaseEntity; - -/** - * ${subTable.functionName}对象 ${subTableName} - * - * @author ${author} - * @date ${datetime} - */ -public class ${subClassName} extends BaseEntity -{ - private static final long serialVersionUID = 1L; - -#foreach ($column in $subTable.columns) -#if(!$table.isSuperColumn($column.javaField)) - /** $column.columnComment */ -#if($column.list) -#set($parentheseIndex=$column.columnComment.indexOf("(")) -#if($parentheseIndex != -1) -#set($comment=$column.columnComment.substring(0, $parentheseIndex)) -#else -#set($comment=$column.columnComment) -#end -#if($parentheseIndex != -1) - @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") -#elseif($column.javaType == 'Date') - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd") -#else - @Excel(name = "${comment}") -#end -#end - private $column.javaType $column.javaField; - -#end -#end -#foreach ($column in $subTable.columns) -#if(!$table.isSuperColumn($column.javaField)) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - public void set${AttrName}($column.javaType $column.javaField) - { - this.$column.javaField = $column.javaField; - } - - public $column.javaType get${AttrName}() - { - return $column.javaField; - } -#end -#end - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) -#foreach ($column in $subTable.columns) -#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]")) -#set($AttrName=$column.javaField) -#else -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) -#end - .append("${column.javaField}", get${AttrName}()) -#end - .toString(); - } -} diff --git a/ff-gen/src/main/resources/vm/js/api.js.vm b/ff-gen/src/main/resources/vm/js/api.js.vm deleted file mode 100644 index 9295524..0000000 --- a/ff-gen/src/main/resources/vm/js/api.js.vm +++ /dev/null @@ -1,44 +0,0 @@ -import request from '@/utils/request' - -// 查询${functionName}列表 -export function list${BusinessName}(query) { - return request({ - url: '/${moduleName}/${businessName}/list', - method: 'get', - params: query - }) -} - -// 查询${functionName}详细 -export function get${BusinessName}(${pkColumn.javaField}) { - return request({ - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField}, - method: 'get' - }) -} - -// 新增${functionName} -export function add${BusinessName}(data) { - return request({ - url: '/${moduleName}/${businessName}', - method: 'post', - data: data - }) -} - -// 修改${functionName} -export function update${BusinessName}(data) { - return request({ - url: '/${moduleName}/${businessName}', - method: 'put', - data: data - }) -} - -// 删除${functionName} -export function del${BusinessName}(${pkColumn.javaField}) { - return request({ - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField}, - method: 'delete' - }) -} diff --git a/ff-gen/src/main/resources/vm/sql/sql.vm b/ff-gen/src/main/resources/vm/sql/sql.vm deleted file mode 100644 index 2ad2f0b..0000000 --- a/ff-gen/src/main/resources/vm/sql/sql.vm +++ /dev/null @@ -1,22 +0,0 @@ --- 菜单 SQL -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', UNIX_TIMESTAMP() * 1000, '', null, '${functionName}菜单'); - --- 按钮父菜单ID -SELECT @parentId := LAST_INSERT_ID(); - --- 按钮 SQL -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', UNIX_TIMESTAMP() * 1000, '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', UNIX_TIMESTAMP() * 1000, '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', UNIX_TIMESTAMP() * 1000, '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', UNIX_TIMESTAMP() * 1000, '', null, ''); - -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('${functionName}导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', UNIX_TIMESTAMP() * 1000, '', null, ''); \ No newline at end of file diff --git a/ff-gen/src/main/resources/vm/vue/index-tree.vue.vm b/ff-gen/src/main/resources/vm/vue/index-tree.vue.vm deleted file mode 100644 index 4819c2a..0000000 --- a/ff-gen/src/main/resources/vm/vue/index-tree.vue.vm +++ /dev/null @@ -1,505 +0,0 @@ - - - diff --git a/ff-gen/src/main/resources/vm/vue/index.vue.vm b/ff-gen/src/main/resources/vm/vue/index.vue.vm deleted file mode 100644 index 6296014..0000000 --- a/ff-gen/src/main/resources/vm/vue/index.vue.vm +++ /dev/null @@ -1,602 +0,0 @@ - - - diff --git a/ff-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm b/ff-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm deleted file mode 100644 index c54d62b..0000000 --- a/ff-gen/src/main/resources/vm/vue/v3/index-tree.vue.vm +++ /dev/null @@ -1,474 +0,0 @@ - - - diff --git a/ff-gen/src/main/resources/vm/vue/v3/index.vue.vm b/ff-gen/src/main/resources/vm/vue/v3/index.vue.vm deleted file mode 100644 index 8b25665..0000000 --- a/ff-gen/src/main/resources/vm/vue/v3/index.vue.vm +++ /dev/null @@ -1,590 +0,0 @@ - - - diff --git a/ff-gen/src/main/resources/vm/xml/mapper.xml.vm b/ff-gen/src/main/resources/vm/xml/mapper.xml.vm deleted file mode 100644 index 1f68d09..0000000 --- a/ff-gen/src/main/resources/vm/xml/mapper.xml.vm +++ /dev/null @@ -1,140 +0,0 @@ - - - - - -#foreach ($column in $columns) - -#end - -#if($table.sub) - - - - - - -#foreach ($column in $subTable.columns) - -#end - -#end - - - select#foreach($column in $columns) $column.columnName#if($foreach.count != $columns.size()),#end#end from ${tableName} - - - - - -#if($table.sub) - - -#end - - - insert into ${tableName} - -#foreach($column in $columns) -#if($column.columnName != $pkColumn.columnName || !$pkColumn.increment) - $column.columnName, -#end -#end - - -#foreach($column in $columns) -#if($column.columnName != $pkColumn.columnName || !$pkColumn.increment) - #{$column.javaField}, -#end -#end - - - - - update ${tableName} - -#foreach($column in $columns) -#if($column.columnName != $pkColumn.columnName) - $column.columnName = #{$column.javaField}, -#end -#end - - where ${pkColumn.columnName} = #{${pkColumn.javaField}} - - - - delete from ${tableName} where ${pkColumn.columnName} = #{${pkColumn.javaField}} - - - - delete from ${tableName} where ${pkColumn.columnName} in - - #{${pkColumn.javaField}} - - -#if($table.sub) - - - delete from ${subTableName} where ${subTableFkName} in - - #{${subTableFkclassName}} - - - - - delete from ${subTableName} where ${subTableFkName} = #{${subTableFkclassName}} - - - - insert into ${subTableName}(#foreach($column in $subTable.columns) $column.columnName#if($foreach.count != $subTable.columns.size()),#end#end) values - - (#foreach($column in $subTable.columns) #{item.$column.javaField}#if($foreach.count != $subTable.columns.size()),#end#end) - - -#end - \ No newline at end of file diff --git a/pom.xml b/pom.xml index 1df341d..9b00045 100644 --- a/pom.xml +++ b/pom.xml @@ -2,13 +2,13 @@ - 4.0.0 + 4.0.0 com.ff ff 0.0.1 - ff + xk-platform FF管理系统 @@ -33,12 +33,25 @@ 4.5.10 3.4.1 3.4.1 + 1.2.3 + 2.3.0 + 1.6.3 + - + + com.dtflys.forest + forest-spring-boot-starter + ${forest.version} + + + com.xuxueli + xxl-job-core + ${xxl-job.version} + org.springframework @@ -174,18 +187,10 @@ ${zxing.version} - - com.ff - ff-gen - ${ff.version} - - - - - com.ff - ff-base - ${ff.version} + cn.licoy + encrypt-body-spring-boot-starter + ${encrypt.version} @@ -196,18 +201,23 @@ - cn.licoy - encrypt-body-spring-boot-starter - ${encrypt.version} + com.ff + ff-fetcher + ${ff.version} + + com.ff + ff-mysql-entity + ${ff.version} + ff-game - ff-gen - ff-base + ff-fetcher + ff-bean/ff-mysql pom diff --git a/sh/linux/build.sh b/sh/linux/build.sh new file mode 100644 index 0000000..f3cabf4 --- /dev/null +++ b/sh/linux/build.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +targetName=xk-admin +basePath=/opt/server/dist/${targetName} + +# 1. 切换项目根目录 +cd "$(dirname "$0")/../.." + +# 2. 切换分支(可选参数) +if [ $# -gt 0 ]; then + echo "切换分支: $1" + git fetch + git checkout $1 +fi + +# 3. 拉取最新代码 +echo "拉取最新代码..." +git pull + +# 4. Maven 构建 +echo "开始打包..." +mvn -Dmaven.test.skip=true clean package + +if [ $? -eq 0 ]; then + echo "打包成功,开始拷贝文件..." + + # 5. 创建目标目录 + mkdir -p ${basePath}/config + mkdir -p ${basePath}/dumps + + # 6. 拷贝构建产物 + cp ff-game/target/xk-*.jar ${basePath}/ + + # 7. 拷贝配置文件 + cp ff-game/src/main/resources/application-prod.yml ${basePath}/config + + # 8. 拷贝启动脚本 + cp ./start.sh ${basePath}/ + + echo "构建并部署完成,路径:${basePath}" + +else + echo "构建失败,请检查构建日志。" + exit 1 +fi diff --git a/sh/linux/create.sh b/sh/linux/create.sh deleted file mode 100644 index 2d0a9c6..0000000 --- a/sh/linux/create.sh +++ /dev/null @@ -1,6 +0,0 @@ -mkdir -p /opt/sever/dist/ff-admin/config -mkdir -p /opt/sever/dist/ff-admin/dumps -cp start.bat /opt/sever/dist/ff-admin/ -cd .. -cd .. -cp ff-admin/src/main/resources/application-prod.yml /opt/sever/dist/ff-admin/config diff --git a/sh/linux/publish.sh b/sh/linux/publish.sh deleted file mode 100644 index 5a1f2e1..0000000 --- a/sh/linux/publish.sh +++ /dev/null @@ -1,15 +0,0 @@ -cd .. -cd .. -if [ $# -gt 0 ]; then - git pull - echo "切换分支$1" - git checkout $1 -fi -git pull -mvn -Dmaven.test.skip=true clean package -if [ $? -eq 0 ]; then - cp ff-game/target/ff-*.jar /opt/gameApi/dist/game-api/ - -else - echo "fail" -fi diff --git a/sh/linux/start-manager-api.sh b/sh/linux/start-manager-api.sh deleted file mode 100644 index 4258a45..0000000 --- a/sh/linux/start-manager-api.sh +++ /dev/null @@ -1,20 +0,0 @@ -export JAVA_HOME=/usr/local/jdk1.8.0_171 -export PATH=$JAVA_HOME/bin:$PATH - -pids=$(jps| grep ff-admin.jar|awk '{print $1}') -for pid in $pids -do - kill -9 $pid -done - - -nohup java -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/opt/sever/dist/ff-admin/gc.log \ --XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/sever/dist/ff-admin/dumps \ --XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -Xms1g -Xmx2g -Xmn1g -Xss256k \ --XX:SurvivorRatio=8 -XX:+UseG1GC -XX:MaxGCPauseMillis=200 \ --agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 \ --jar /opt/sever/dist/ff-admin/ff-admin.jar --spring.profiles.active=prod & - - - - diff --git a/sh/linux/start.sh b/sh/linux/start.sh new file mode 100644 index 0000000..16af22b --- /dev/null +++ b/sh/linux/start.sh @@ -0,0 +1,39 @@ +#!/bin/bash +export JAVA_HOME=/usr/local/jdk1.8.0_171 +export PATH=$JAVA_HOME/bin:$PATH + +targetName=xk-admin + +pids=$(jps| grep ${targetName}.jar|awk '{print $1}') +for pid in $pids +do + kill -9 $pid +done +nohup java \ + -XX:+PrintGCDetails \ + -XX:+PrintGCDateStamps \ + -Xloggc:gc.log \ + -XX:+HeapDumpOnOutOfMemoryError \ + -XX:HeapDumpPath=./dumps \ + -XX:MetaspaceSize=256m \ + -XX:MaxMetaspaceSize=256m \ + -Xms1g \ + -Xmx2g \ + -Xmn1g \ + -Xss256k \ + -XX:SurvivorRatio=8 \ + -XX:+UseG1GC \ + -XX:MaxGCPauseMillis=200 \ + -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=7004 \ + -jar ${targetName}.jar \ + --spring.profiles.active=prod & + + + + + + + + + + diff --git a/sh/win/build.bat b/sh/win/build.bat new file mode 100644 index 0000000..f6305a2 --- /dev/null +++ b/sh/win/build.bat @@ -0,0 +1,54 @@ +@echo off +setlocal + +set targetName=xk-admin +set basePath=\opt\server\dist\%targetName% + +:: 1. 切换到项目根目录(当前脚本所在目录的上两级) +cd /d %~dp0 +cd .. +cd .. + +:: 2. 可选分支切换(如果提供了参数) +if not "%1"=="" ( + echo 切换分支: %1 + git fetch + git checkout %1 +) + +:: 3. 拉取最新代码 +echo 拉取最新代码... +git pull + +:: 4. Maven 构建 +echo 开始打包... +mvn -Dmaven.test.skip=true clean package + +if errorlevel 1 ( + echo 构建失败,请检查构建日志。 + exit /b 1 +) + +:: 5. 创建目标目录 +echo 创建目标目录... +mkdir "%basePath%\config" +mkdir "%basePath%\dumps" + +:: 6. 拷贝构建产物 +echo 拷贝 JAR 包... +for /f %%f in ('dir /b ff-game\target\xk-*.jar') do ( + copy "ff-game\target\%%f" "%basePath%\" +) + +:: 7. 拷贝配置文件 +echo 拷贝配置文件... +copy "ff-game\src\main\resources\application-prod.yml" "%basePath%\config\" + +:: 8. 拷贝启动脚本 +echo 拷贝启动脚本... +copy ".\start.bat" "%basePath%\" + +echo 构建并部署完成,路径:%basePath% + +endlocal +pause diff --git a/sh/win/create.bat b/sh/win/create.bat deleted file mode 100644 index 4ea2829..0000000 --- a/sh/win/create.bat +++ /dev/null @@ -1,6 +0,0 @@ -mkdir \opt\sever\dist\ff-admin\config -mkdir \opt\sever\dist\ff-admin\dumps -copy start.bat \opt\sever\dist\ff-admin\ -cd .. -cd .. -copy ff-admin\src\main\resources\application-prod.yml \opt\sever\dist\ff-admin\config \ No newline at end of file diff --git a/sh/win/publish.bat b/sh/win/publish.bat deleted file mode 100644 index 4d532c7..0000000 --- a/sh/win/publish.bat +++ /dev/null @@ -1,23 +0,0 @@ -@echo off - -REM 退回到上级目录 -cd .. -cd .. - -set DRIVE=%~d0 - -REM 切换到发布分支 -git checkout prod - -REM 更新代码 -git pull - -REM 执行 Maven 打包命令,跳过测试 -mvn -Dmaven.test.skip=true clean package - - -REM 复制目标文件到 /app/ 目录 - copy ff-admin\target\ff-*.jar D:\opt\sever\dist\ff-admin\ - -REM 防止窗口关闭 -pause diff --git a/sh/win/start.bat b/sh/win/start.bat index c7a9659..1afcb5b 100644 --- a/sh/win/start.bat +++ b/sh/win/start.bat @@ -1,23 +1,31 @@ @echo off +chcp 65001 > nul +set targetName=xk-admin +title %targetName% +echo 当前目录:%CD% - -REM 查找并终止运行中的 ff-admin.jar 进程 -for /f "tokens=1" %%i in ('jps ^| findstr ff-admin.jar') do ( +for /f "tokens=1" %%i in ('jps ^| findstr %targetName%.jar') do ( echo 正在终止进程 ID %%i taskkill /PID %%i /F ) REM 启动新进程 -echo 启动 ff-admin.jar... +echo 启动%targetName%.jar... start /b java ^ - -XX:+PrintGCDetails -XX:+PrintGCDateStamps ^ - -Xloggc:/opt/sever/dist/ff-admin/gc.log ^ - -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/sever/dist/ff-admin/dumps ^ - -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m ^ + -Dfile.encoding=UTF-8 ^ + -XX:+PrintGCDetails ^ + -XX:+PrintGCDateStamps ^ + -Xloggc:gc.log ^ + -XX:+HeapDumpOnOutOfMemoryError ^ + -XX:HeapDumpPath=./dumps ^ + -XX:MetaspaceSize=256m ^ + -XX:MaxMetaspaceSize=256m ^ -Xms1g -Xmx2g -Xmn1g -Xss256k ^ - -XX:SurvivorRatio=8 -XX:+UseG1GC -XX:MaxGCPauseMillis=200 ^ - -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 ^ - -jar /opt/sever/dist/ff-admin/ff-admin.jar ^ - --spring.profiles.active=prod ^ + -XX:SurvivorRatio=8 ^ + -XX:+UseG1GC ^ + -XX:MaxGCPauseMillis=200 ^ + -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5006 ^ + -jar %targetName%.jar --spring.profiles.active=prod +@pause \ No newline at end of file diff --git a/sql/update_liukang.sql b/sql/update_liukang.sql deleted file mode 100644 index e504ccc..0000000 --- a/sql/update_liukang.sql +++ /dev/null @@ -1,903 +0,0 @@ -drop table if exists ff_member; -CREATE TABLE `ff_member` -( - `id` bigint NOT NULL COMMENT '主键id', - `currency_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '币种(字典ff_currency)', - `account_type` tinyint DEFAULT NULL COMMENT '账号类型(0.会员 1.代理)', - `agent_level_id` bigint DEFAULT NULL COMMENT '代理等级id', - `agent_model_id` bigint DEFAULT NULL COMMENT '代理模式id', - `direct_bind_level_id` bigint DEFAULT NULL COMMENT '强制绑定层级id', - `commission_way` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提佣方式', - `promote_link` varchar(500) DEFAULT NULL COMMENT '推广链接', - `promote_link_visits` int DEFAULT NULL COMMENT '推广链接访问次数', - `promote_status` tinyint DEFAULT NULL COMMENT '推广状态(0.关闭 1.开启)', - `join_time` datetime DEFAULT NULL COMMENT '加入代理时间', - `member_account` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '会员账号', - `real_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '会员姓名', - `password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '账号密码', - `avatar` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '头像地址', - `withdraw_password` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提现密码', - `status` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '0' COMMENT '账号状态(0正常 1手动冻结 2异常冻结 3禁止领取优惠 4禁止提现 5黑名单 6停用 7禁止进入游戏 8自我禁止-限制游戏 9自我禁止-限制参与优惠 10自我禁止-限制登录)', - `vip_id` bigint DEFAULT NULL COMMENT 'vip id', - `level_id` bigint DEFAULT NULL COMMENT '会员层级id', - `label_id` bigint DEFAULT NULL COMMENT '会员标签id', - `agent_id` bigint DEFAULT NULL COMMENT '上级代理id', - `agent_account` varchar(255) DEFAULT NULL COMMENT '上级代理账号', - `channel_id` bigint DEFAULT NULL COMMENT '渠道id', - `registe_way` varchar(10) DEFAULT NULL COMMENT '注册方式(字典ff_registe_way)', - `registe_time` datetime DEFAULT NULL COMMENT '注册时间', - `registe_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '注册IP', - `registe_ip_city` varchar(100) DEFAULT NULL COMMENT '注册ip的城市', - `registe_domain` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '注册域名', - `registe_device_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '注册设备类型(字典ff_device_type)', - `registe_device_num` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '注册设备号', - `registe_browser` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '注册浏览器信息', - `registe_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '注册链接url', - `registe_fingerprint` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '注册浏览器指纹', - `sex` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '男:1 女:2', - `birthday` date DEFAULT NULL COMMENT '生日', - `area_code` varchar(10) DEFAULT NULL COMMENT '手机号区号', - `phone_number` varchar(20) DEFAULT NULL COMMENT '手机号', - `first_charge_amount` decimal(10, 2) DEFAULT NULL COMMENT '首充金额', - `first_charge_time` datetime DEFAULT NULL COMMENT '首充时间', - `last_login_date` datetime DEFAULT NULL COMMENT '上次登录时间', - `last_login_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '上次登录IP', - `login_date` datetime DEFAULT NULL COMMENT '最后登录时间', - `login_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '最后登录IP', - `login_ip_city` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后登录ip的城市', - `login_domain` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '最后登录域名', - `login_device_type` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后登录设备类型(字典ff_device_type)', - `login_device_num` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后登录设备号', - `login_browser` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后登录浏览器信息', - `login_fingerprint` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后登录浏览器指纹', - `verify_way` varchar(10) DEFAULT NULL COMMENT '验证方式(字典ff_verify_way)', - `email` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '会员邮箱', - `face_book_account` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'facebook账号', - `telegram_account` varchar(50) DEFAULT NULL COMMENT 'telegram账号', - `whatsapp_account` varchar(50) DEFAULT NULL COMMENT 'whatsapp账号', - `zalo_account` varchar(50) DEFAULT NULL COMMENT 'zalo账号', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '会员备注', - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='会员表'; - -ALTER TABLE `ff-admin`.`ff_member_log` - MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - -ALTER TABLE `ff-admin`.`ff_member` - MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - - -DROP TABLE IF EXISTS `ff_payment_channel`; -CREATE TABLE `ff_payment_channel` -( - `id` bigint NOT NULL COMMENT '主键id', - `parent_id` bigint DEFAULT NULL COMMENT '子渠道id 顶级分类该id为0', - `currency_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '币种(字典ff_currency)', - `channel_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '渠道名称', - `channel_icon` varchar(500) DEFAULT NULL COMMENT '大类图标', - `blacklist_status` tinyint DEFAULT NULL COMMENT '充值黑名单状态 0.关闭 1.开启', - `switch_status` tinyint DEFAULT NULL COMMENT '开启状态 0.关闭 1.开启', - `custom_tag` varchar(50) DEFAULT NULL COMMENT '大类角标', - `order_num` int DEFAULT '0' COMMENT '显示顺序', - `level_ids` varchar(500) DEFAULT NULL COMMENT '会员层级ids', - `terminals` varchar(255) DEFAULT NULL COMMENT '终端', - `money_max` decimal(10, 2) DEFAULT NULL COMMENT '最大限额', - `money_min` decimal(10, 2) DEFAULT NULL COMMENT '最小限额', - `commission` decimal(10, 2) DEFAULT NULL COMMENT '手续费率', - `third_channel_product_id` bigint DEFAULT NULL COMMENT '第三方通道产品id', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通道表'; -INSERT INTO `ff-admin`.`ff_payment_channel` (`id`, `parent_id`, `currency_type`, `channel_name`, `channel_icon`, - `blacklist_status`, `switch_status`, `custom_tag`, `order_num`, - `level_ids`, `terminals`, `money_max`, `money_min`, `commission`, - `third_channel_product_id`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (1, 0, NULL, 'Deposit Online', - 'https://zmidh4-1129-ppp.oss-accelerate.aliyuncs.com/siteadmin/pay-icon/icon_cz_zdy.png', 0, 1, '在线存款', 0, - NULL, NULL, NULL, NULL, NULL, NULL, '', NULL, '', NULL, NULL); -INSERT INTO `ff-admin`.`ff_payment_channel` (`id`, `parent_id`, `currency_type`, `channel_name`, `channel_icon`, - `blacklist_status`, `switch_status`, `custom_tag`, `order_num`, - `level_ids`, `terminals`, `money_max`, `money_min`, `commission`, - `third_channel_product_id`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (2, 1, 'INR', 'LSDragon', NULL, NULL, 1, 'LSDragon', 0, '3,4,5', '0,1,2', 50000.00, 100.00, 0.00, 1, 'admin', - '2024-10-25 15:33:14', '', NULL, NULL); - -DROP TABLE IF EXISTS `ff_payment_third_channel`; -CREATE TABLE `ff_payment_third_channel` -( - `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id', - `currency_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', - `channel_name` varchar(50) DEFAULT NULL COMMENT '渠道名称', - `merch_name` varchar(50) DEFAULT NULL COMMENT '商户名称', - `merch_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '商户code', - `merch_id` varchar(50) DEFAULT NULL COMMENT '商户id', - `merch_key` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '商户密钥', - `merch_privateKey` varchar(500) DEFAULT NULL COMMENT '商户私钥', - `merch_publicKey` varchar(500) DEFAULT NULL COMMENT '商户公钥', - `notify_url` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '三方回调地址(多个用逗号隔开)', - `pay_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '支付下单地址', - `pay_query_url` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '支付查询地址', - `behalf_pay_url` varchar(500) DEFAULT NULL COMMENT '代付下单地址', - `behalf_query_pay_url` varchar(500) DEFAULT NULL COMMENT '代付查询地址', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='第三方支付渠道表'; -INSERT INTO `ff-admin`.`ff_payment_third_channel` (`id`, `currency_type`, `channel_name`, `merch_name`, `merch_code`, - `merch_id`, `merch_key`, `merch_privateKey`, `merch_publicKey`, - `notify_url`, `pay_url`, `pay_query_url`, `behalf_pay_url`, - `behalf_query_pay_url`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (1, 'INR', 'fypay', 'fypay', 'fypay', '1024', 'kys9s8GvsI727ISML4kZ6Rp', NULL, NULL, NULL, - 'https://fyapi.fypay.online/api/v1/payment/init', 'http://fyapi.fypay.online/api/v1/payment/query', - 'http://fyapi.fypay.online/api/v1/transfer/init', 'http://fyapi.fypay.online/api/v1/transfer/query', 'admin', - '2024-10-25 14:59:35', '', NULL, NULL); - -DROP TABLE IF EXISTS `ff_payment_third_channel_product`; -CREATE TABLE `ff_payment_third_channel_product` -( - `id` bigint NOT NULL COMMENT '主键id', - `third_channel_id` bigint DEFAULT NULL COMMENT '第三方通道id', - `channel_product_code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '第三方通道方式code', - `channel_product_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '第三方通道方式名称', - `channel_product_type` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '第三方通道类型(0.普通 1.刮刮卡 2.网银转账 3.三方充值客服 4.钱包余额快速充值通道 5.银行卡号)', - `money_max` decimal(10, 2) DEFAULT NULL COMMENT '最大限额', - `money_min` decimal(10, 2) DEFAULT NULL COMMENT '最小限额', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='第三方通道产品表'; -INSERT INTO `ff-admin`.`ff_payment_third_channel_product` (`id`, `third_channel_id`, `channel_product_code`, - `channel_product_name`, `channel_product_type`, `money_max`, - `money_min`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (1, 1, '101', 'LSDragon-一类', '0', 50000.00, 100.00, 'admin', '2024-10-25 15:13:11', '', NULL, NULL); - -DELETE -from sys_dict_data -where dict_code BETWEEN 1 and 193; -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (1, 1, '男', '0', 'sys_user_sex', '', '', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, '性别男'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (2, 2, '女', '1', 'sys_user_sex', '', '', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, '性别女'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (3, 3, '未知', '2', 'sys_user_sex', '', '', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, '性别未知'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (4, 1, '显示', '0', 'sys_show_hide', '', 'primary', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '显示菜单'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (5, 2, '隐藏', '1', 'sys_show_hide', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '隐藏菜单'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (6, 1, '正常', '0', 'sys_normal_disable', '', 'primary', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '正常状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (7, 2, '停用', '1', 'sys_normal_disable', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '停用状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (8, 1, '正常', '0', 'sys_job_status', '', 'primary', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '正常状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (9, 2, '暂停', '1', 'sys_job_status', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '停用状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (10, 1, '默认', 'DEFAULT', 'sys_job_group', '', '', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '默认分组'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (11, 2, '系统', 'SYSTEM', 'sys_job_group', '', '', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '系统分组'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (12, 1, '是', 'Y', 'sys_yes_no', '', 'primary', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '系统默认是'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (13, 2, '否', 'N', 'sys_yes_no', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, '系统默认否'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (14, 1, '通知', '1', 'sys_notice_type', '', 'warning', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '通知'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (15, 2, '公告', '2', 'sys_notice_type', '', 'success', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '公告'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (16, 1, '正常', '0', 'sys_notice_status', '', 'primary', 'Y', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '正常状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (17, 2, '关闭', '1', 'sys_notice_status', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '关闭状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (18, 99, '其他', '0', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '其他操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (19, 1, '新增', '1', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '新增操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (20, 2, '修改', '2', 'sys_oper_type', '', 'info', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '修改操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (21, 3, '删除', '3', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '删除操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (22, 4, '授权', '4', 'sys_oper_type', '', 'primary', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '授权操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (23, 5, '导出', '5', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '导出操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (24, 6, '导入', '6', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '导入操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (25, 7, '强退', '7', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '强退操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (26, 8, '生成代码', '8', 'sys_oper_type', '', 'warning', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '生成操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (27, 9, '清空数据', '9', 'sys_oper_type', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '清空操作'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (28, 1, '成功', '0', 'sys_common_status', '', 'primary', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '正常状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (29, 2, '失败', '1', 'sys_common_status', '', 'danger', 'N', '0', 'admin', '2024-10-09 15:44:02', '', NULL, - '停用状态'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (100, 13, '#2bfa38', '#2bfa38', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', - '2024-10-12 09:34:10', 'admin', '2024-10-14 11:02:16', '绿色'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (101, 11, '#f59a23', '#f59a23', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', - '2024-10-12 09:35:59', 'admin', '2024-10-14 11:03:15', '橙色'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (102, 10, '#db301a', '#db301a', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', - '2024-10-12 09:36:29', 'admin', '2024-10-14 11:03:18', '红色'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (103, 9, '#4d42cf', '#4d42cf', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:37:18', - 'admin', '2024-10-14 11:03:22', '深蓝'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (104, 8, '#1677fd', '#1677fd', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:38:28', - 'admin', '2024-10-14 11:03:27', '淡蓝'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (105, 7, '#000000', '#000000', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:39:11', - 'admin', '2024-10-14 11:03:31', '黑色'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (106, 6, '#4cb5ff', '#4cb5ff', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:40:23', - 'admin', '2024-10-14 11:03:35', '浅蓝'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (107, 5, '#874ce8', '#874ce8', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:41:18', - 'admin', '2024-10-14 11:03:39', '深紫'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (108, 4, '#cd55ff', '#cd55ff', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:41:52', - 'admin', '2024-10-14 11:03:43', '淡紫'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (109, 3, '#26a17b', '#26a17b', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:42:29', - 'admin', '2024-10-14 11:03:47', '墨绿'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (110, 2, '#ea4e3d', '#ea4e3d', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-12 09:43:13', - 'admin', '2024-10-14 11:03:51', '浅红'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (111, 12, '#ff7097', '#ff7097', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', - '2024-10-12 09:44:13', 'admin', '2024-10-14 11:03:08', '粉色 '); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (112, 0, 'USDT', '1', 'ff_currency', NULL, 'default', 'N', '0', 'admin', '2024-10-12 10:55:47', 'admin', - '2024-10-17 16:55:09', 'USDT(USDT)'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (113, 1, 'VND', '2', 'ff_currency', NULL, 'default', 'N', '0', 'admin', '2024-10-12 10:56:28', 'admin', - '2024-10-24 16:10:04', '越南盾(VND1000:1)'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (118, 0, '账号注册', '1', 'ff_registe_way', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:07:55', '', NULL, - '账号注册'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (119, 0, 'FaceBook注册', '2', 'ff_registe_way', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:08:21', '', - NULL, 'FaceBook注册'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (120, 0, 'APP-iOS', 'APP-iOS', 'ff_device_type', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:24:29', - 'admin', '2024-10-15 09:35:10', 'APP-iOS'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (121, 0, 'H5-iOS', 'H5-iOS', 'ff_device_type', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:25:18', - 'admin', '2024-10-15 09:35:17', 'H5-iOS'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (122, 0, 'APP-Android', 'APP-Android', 'ff_device_type', NULL, 'default', 'N', '0', 'admin', - '2024-10-12 16:25:43', 'admin', '2024-10-15 09:35:22', 'APP-Android'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (123, 0, 'H5-Android', 'H5-Android', 'ff_device_type', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:26:09', - 'admin', '2024-10-15 09:35:27', 'H5-Android'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (124, 0, 'PC-Windows', 'PC-Windows', 'ff_device_type', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:26:41', - 'admin', '2024-10-15 09:35:33', 'PC-Windows'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (125, 0, 'PC-Mac', 'PC-Mac', 'ff_device_type', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:27:06', - 'admin', '2024-10-15 09:35:38', 'PC-Mac'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (126, 0, '无验证', '1', 'ff_verify_way', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:42:17', '', NULL, - NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (127, 0, '短信验证', '2', 'ff_verify_way', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:42:31', '', NULL, - NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (128, 0, '谷歌验证', '3', 'ff_verify_way', NULL, 'default', 'N', '0', 'admin', '2024-10-12 16:42:43', '', NULL, - NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (130, 1, '无图标', 'NO_ICON', 'ff_member_label_icon', NULL, 'default', 'N', '0', 'admin', '2024-10-14 11:04:21', - 'admin', '2024-10-14 11:04:26', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (131, 1, 'color1', '1', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:25:07', 'admin', - '2024-10-14 15:51:18', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (132, 2, 'color2', '2', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:26:03', 'admin', - '2024-10-14 15:51:30', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (133, 3, 'color3', '3', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:26:37', 'admin', - '2024-10-14 15:51:40', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (134, 4, 'color4', '4', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:27:26', 'admin', - '2024-10-14 15:51:49', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (135, 5, 'color5', '5', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:28:09', 'admin', - '2024-10-14 15:51:58', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (136, 6, 'color6', '6', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:29:18', 'admin', - '2024-10-14 15:52:06', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (137, 7, 'color7', '7', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:39:22', 'admin', - '2024-10-14 15:52:13', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (138, 8, 'color8', '8', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:39:50', 'admin', - '2024-10-14 15:52:33', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (139, 9, 'color9', '9', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:40:45', 'admin', - '2024-10-14 15:52:42', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (140, 10, 'color10', '10', 'ff_vip_icon_color', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:41:05', - 'admin', '2024-10-14 15:52:53', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (141, 0, 'style_0', '0', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:42:52', 'admin', - '2024-10-14 15:49:54', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (142, 1, 'style_1', '1', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:43:25', 'admin', - '2024-10-14 15:49:59', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (143, 2, 'style_2', '2', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:44:15', 'admin', - '2024-10-14 15:50:04', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (144, 3, 'style_3', '3', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:44:32', 'admin', - '2024-10-14 15:50:08', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (145, 4, 'style_4', '4', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:45:13', 'admin', - '2024-10-14 15:50:12', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (146, 5, 'style_5', '5', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:45:33', 'admin', - '2024-10-14 15:50:16', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (147, 6, 'style_6', '6', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:46:39', 'admin', - '2024-10-14 15:50:20', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (148, 7, 'style_7', '7', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:46:59', 'admin', - '2024-10-14 15:50:25', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (149, 8, 'style_8', '8', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:48:13', 'admin', - '2024-10-14 15:50:30', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (150, 9, 'style_9', '9', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:48:30', 'admin', - '2024-10-14 15:50:35', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (151, 10, 'style_10', '10', 'ff_vip_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 13:48:48', - 'admin', '2024-10-19 09:55:39', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (152, 1, 'style1', '1', 'ff_vip_icon_parent_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 15:48:20', - '', NULL, NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (153, 2, 'style2', '2', 'ff_vip_icon_parent_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 15:48:38', - '', NULL, NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (154, 3, 'style3', '3', 'ff_vip_icon_parent_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 15:48:50', - '', NULL, NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (155, 4, 'style4', '4', 'ff_vip_icon_parent_style', NULL, 'default', 'N', '0', 'admin', '2024-10-14 15:49:01', - '', NULL, NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (156, 0, '姓名', '0', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:42:38', 'admin', - '2024-10-23 13:19:01', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (157, 1, '手机号', '1', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:43:10', 'admin', - '2024-10-23 13:19:05', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (158, 2, '账号状态', '2', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:44:34', - 'admin', '2024-10-23 13:19:12', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (159, 3, '银行卡', '3', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:45:08', 'admin', - '2024-10-23 13:19:19', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (160, 4, '账号密码', '4', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:46:13', - 'admin', '2024-10-23 13:19:25', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (161, 5, '忘记密码', '5', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:48:37', - 'admin', '2024-10-23 13:19:30', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (162, 6, '提现密码', '6', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:49:06', - 'admin', '2024-10-23 13:19:36', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (163, 7, 'WhatsApp', '7', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:50:30', - 'admin', '2024-10-23 13:19:40', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (164, 8, 'Facebook', '8', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:50:57', - 'admin', '2024-10-23 13:19:44', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (165, 9, 'Telegram', '9', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:51:20', - 'admin', '2024-10-23 13:19:48', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (166, 10, 'Zalo', '10', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:51:40', 'admin', - '2024-10-23 13:19:56', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (167, 11, '邮箱地址', '11', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:52:30', - 'admin', '2024-10-23 13:19:59', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (168, 12, '手势密码', '12', 'ff_log_operproject', '', 'default', 'N', '0', 'admin', '2024-10-15 09:52:54', - 'admin', '2024-10-23 13:20:07', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (169, 13, '谷歌验证', '13', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:53:19', - 'admin', '2024-10-23 13:20:14', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (170, 14, '密保问题', '14', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:53:55', - 'admin', '2024-10-23 13:20:19', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (171, 15, '会员层级', '15', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:54:29', - 'admin', '2024-10-23 13:20:25', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (172, 16, '上级代理', '16', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:55:06', - 'admin', '2024-10-23 13:20:30', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (173, 17, '登录', '17', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:55:25', 'admin', - '2024-10-23 13:20:41', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (174, 18, '登出', '18', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:55:37', 'admin', - '2024-10-23 13:20:46', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (175, 19, 'VIP等级', '19', 'ff_log_operproject', NULL, 'default', 'N', '0', 'admin', '2024-10-15 09:56:18', - 'admin', '2024-10-23 13:20:51', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (176, 0, '无', '0', 'ff_oper_type', NULL, 'default', 'N', '0', 'admin', '2024-10-15 10:11:57', 'admin', - '2024-10-23 14:54:38', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (177, 1, '新增', '1', 'ff_oper_type', NULL, 'default', 'N', '0', 'admin', '2024-10-15 10:12:11', 'admin', - '2024-10-23 14:54:42', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (178, 2, '修改', '2', 'ff_oper_type', NULL, 'default', 'N', '0', 'admin', '2024-10-15 10:12:19', 'admin', - '2024-10-23 14:54:46', NULL); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (179, 0, '资金切换', '0', 'ff_account_change_type', NULL, 'primary', 'N', '0', 'admin', '2024-10-18 13:06:45', - 'admin', '2024-10-18 13:07:14', '资金切换'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (180, 1, '会员充值', '1', 'ff_account_change_type', NULL, 'success', 'N', '0', 'admin', '2024-10-18 13:07:08', - 'admin', '2024-10-18 13:07:18', '会员充值'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (181, 2, '会员提现', '2', 'ff_account_change_type', NULL, 'info', 'N', '0', 'admin', '2024-10-18 13:07:39', '', - NULL, '会员提现'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (182, 3, '银商结算', '3', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:08:22', - '', NULL, '银商结算'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (183, 4, '资金修正', '4', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:08:38', - 'admin', '2024-10-18 13:17:05', '资金修正'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (184, 5, '活动', '5', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:09:03', '', - NULL, '活动'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (185, 6, '返水', '6', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:09:30', - 'admin', '2024-10-18 13:09:43', '返水'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (186, 7, '返佣', '7', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:10:02', '', - NULL, '返佣'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (187, 8, '任务', '8', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:10:31', - 'admin', '2024-10-18 13:10:37', '任务'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (188, 9, 'VIP奖励', '9', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:11:12', '', - NULL, 'VIP奖励'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (189, 10, '充值优惠', '10', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:11:31', - '', NULL, '充值优惠'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (190, 11, '俱乐部', '11', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:11:48', - 'admin', '2024-10-18 13:11:52', '俱乐部'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (191, 12, '奖励', '12', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:12:07', '', - NULL, '奖励'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (192, 13, '公积金', '13', 'ff_account_change_type', NULL, 'default', 'N', '0', 'admin', '2024-10-18 13:12:21', - '', NULL, '公积金'); -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (193, 2, 'INR', '3', 'ff_currency', NULL, 'default', 'N', '0', 'admin', '2024-10-24 16:09:59', '', NULL, NULL); - - -DROP TABLE IF EXISTS `ff_member_vip_setup`; -CREATE TABLE `ff_member_vip_setup` -( - `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id', - `keep_grade` tinyint DEFAULT NULL COMMENT '保级开关(0.关闭 1.开启)', - `reward_switch` tinyint DEFAULT NULL COMMENT '奖励开关(0.关闭 1.开启)', - `day_draw_time` tinyint DEFAULT NULL COMMENT '每日领取时间(0.次日 1.实时 2.每日)', - `day_draw_start_time` time DEFAULT NULL COMMENT '每日领取开始时间', - `day_draw_end_time` time DEFAULT NULL COMMENT '每日领取结束时间', - `day_repeat_draw` tinyint DEFAULT NULL COMMENT '每日晋级时是否重复领取(0.可重复领取(含跨级部分) 1.只能领取最高一档)', - `week_draw_time` tinyint DEFAULT NULL COMMENT '每周领取时间(0.次日 1.下周 2.实时 3.每周)', - `week_day` tinyint DEFAULT NULL COMMENT '每周第几日', - `week_draw_start_time` time DEFAULT NULL COMMENT '每周领取开始时间', - `week_draw_end_time` time DEFAULT NULL COMMENT '每周领取结束时间', - `week_repeat_draw` tinyint DEFAULT NULL COMMENT '每周晋级时是否重复领取(0.可重复领取(含跨级部分) 1.只能领取最高一档)', - `month_draw_time` tinyint DEFAULT NULL COMMENT '每月领取时间(0.次日 1.下月 2.实时 3.每月)', - `month_day` tinyint DEFAULT NULL COMMENT '每月第几日', - `month_draw_start_time` time DEFAULT NULL COMMENT '每月领取开始时间', - `month_draw_end_time` time DEFAULT NULL COMMENT '每月领取结束时间', - `month_repeat_draw` tinyint DEFAULT NULL COMMENT '每月晋级时是否重复领取(0.可重复领取(含跨级部分) 1.只能领取最高一档)', - `expire_reward_day` int DEFAULT NULL COMMENT '奖励领取过期天数', - `distribute_way` tinyint DEFAULT NULL COMMENT '派发方式(0.玩家自领(过期自动到账) 1.玩家自领(过期自动作废))', - `common_draw_time` tinyint DEFAULT NULL COMMENT '公共领取时间(0.次日 1.实时 2.每日)', - `common_draw_start_time` time DEFAULT NULL COMMENT '公共领取开始时间', - `common_draw_end_time` time DEFAULT NULL COMMENT '公共领取结束时间', - `common_repeat_draw` tinyint DEFAULT NULL COMMENT '公共晋级时是否重复领取(0.可重复领取(含跨级部分) 1.只能领取最高一档)', - `prohibit_level` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_bin DEFAULT NULL COMMENT '禁止参与层级(黑名单)', - `audit_multiple` decimal(10, 2) DEFAULT NULL COMMENT '稽核倍数(玩家需要达到稽核倍数的流水,才能提现)', - `appoint_platform` tinyint DEFAULT NULL COMMENT '奖金稽核指定平台(0.不限制 1.仅限以下勾选平台)', - `audit_platfrom_ids` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '稽核指定平台ids', - `vip_icon` varchar(10) DEFAULT NULL COMMENT '图标样式', - `rule_type` tinyint DEFAULT NULL COMMENT '规则类型 0.自定义 1.系统翻译', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '规则说明', - PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='会员vip等级公共设置表'; - -INSERT INTO `ff-admin`.`ff_member_vip_setup` (`id`, `keep_grade`, `reward_switch`, `day_draw_time`, - `day_draw_start_time`, `day_draw_end_time`, `day_repeat_draw`, - `week_draw_time`, `week_day`, `week_draw_start_time`, - `week_draw_end_time`, `week_repeat_draw`, `month_draw_time`, `month_day`, - `month_draw_start_time`, `month_draw_end_time`, `month_repeat_draw`, - `expire_reward_day`, `distribute_way`, `common_draw_time`, - `common_draw_start_time`, `common_draw_end_time`, `common_repeat_draw`, - `prohibit_level`, `audit_multiple`, `appoint_platform`, - `audit_platfrom_ids`, `vip_icon`, `rule_type`, `create_by`, `create_time`, - `update_by`, `update_time`, `remark`) -VALUES (1, 0, 1, 1, '00:00:00', NULL, 0, 3, 3, '00:00:00', NULL, 0, 5, 16, '00:00:00', NULL, 0, 30, 1, 1, '00:00:00', - NULL, 0, '4,5,3', 1.00, 0, NULL, '3', 1, 'admin', '2024-10-16 10:03:20', 'admin', '2024-10-25 10:22:25', - '1.晋级标准:满足VIP晋级要求(即充值或有效投注都满足条件),即可晋级相应VIP等级,获得相应晋级奖金,如连续晋级多级,可获得全部等级晋级奖金,奖金实时可领取;\n2.日俸禄:每日充值及有效投注满足当前等级日俸禄要求,可获得对应日俸禄奖金,如连续晋级多级,可获得全部等级日俸禄奖金,奖金实时可领取;\n3.周俸禄:每周充值及有效投注满足当前等级周俸禄要求,可获得对应周俸禄奖金,如连续晋级多级,可获得全部等级周俸禄奖金,奖金实时可领取;\n4.月俸禄:每月充值及有效投注满足当前等级月俸禄要求,可获得对应月俸禄奖金,如连续晋级多级,可获得全部等级月俸禄奖金,奖金实时可领取;\n5.奖励过期时间:获得的奖金仅保留30天,期间内未主动领取,则过期作废,例如:1月1日获得奖励,保留30天,则1月32日 00:00:00过期作废;\n6.稽核说明:VIP所赠送的奖金需1倍流水(即稽核、打码或有效投注)才能提现,打码不限游戏平台;\n7.活动声明:本功能仅限账号本人进行正常游戏投注,禁止租借账号、无风险投注(对赌、对刷、低赔刷水)、恶意套利、使用外挂程式、机器人、利用协议、漏洞、接口、群控或其他技术手段参与,一经查核属实,本平台有权终止会员登录、暂停会员使用网站、及没收奖金和不当盈利的权利,无需特别通知;\n8.解释说明:会员领取VIP奖励时,本平台将默认会员同意且遵守对应条件等相关规定,为避免文字理解歧义,本平台保有本活动最终解释权。'); - -INSERT INTO `ff-admin`.`sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, - `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, - `update_time`, `remark`) -VALUES (10024, 3, '后台添加', '3', 'ff_registe_way', NULL, 'default', 'N', '0', 'admin', '2024-10-30 09:18:13', 'admin', - '2024-10-30 09:18:35', '后台添加'); - -ALTER TABLE `ff-admin`.`ff_member` - ADD COLUMN `status_remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '会员状态备注' AFTER `remark`; - -ALTER TABLE `ff-admin`.`ff_member_account` - MODIFY COLUMN `balance` decimal (16, 2) NULL DEFAULT 0.00 COMMENT '余额' AFTER `currency_type`, - MODIFY COLUMN `block_balance` decimal (16, 2) NULL DEFAULT 0.00 COMMENT '冻结余额' AFTER `balance`; - -ALTER TABLE `ff-admin`.`ff_member_account_detail` - MODIFY COLUMN `change_amount` decimal (16, 2) NULL DEFAULT NULL COMMENT '变动金额' AFTER `change_small_type`, - MODIFY COLUMN `before_amount` decimal (16, 2) NULL DEFAULT NULL COMMENT '变动前余额' AFTER `change_amount`, - MODIFY COLUMN `after_amount` decimal (16, 2) NULL DEFAULT NULL COMMENT '变动后余额' AFTER `before_amount`; - -DROP TABLE IF EXISTS `ff_payment_channel`; -CREATE TABLE `ff_payment_channel` -( - `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id', - `parent_id` bigint DEFAULT NULL COMMENT '子渠道id 顶级分类该id为0', - `currency_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '币种(字典ff_currency)', - `channel_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '渠道名称', - `channel_icon` varchar(500) DEFAULT NULL COMMENT '大类图标', - `blacklist_status` tinyint DEFAULT NULL COMMENT '充值黑名单状态 0.关闭 1.开启', - `switch_status` tinyint DEFAULT NULL COMMENT '开启状态 0.关闭 1.开启', - `custom_tag` varchar(50) DEFAULT NULL COMMENT '大类角标', - `order_num` int DEFAULT '0' COMMENT '显示顺序', - `level_ids` varchar(500) DEFAULT NULL COMMENT '会员层级ids', - `terminals` varchar(255) DEFAULT NULL COMMENT '终端', - `money_max` decimal(16, 2) DEFAULT NULL COMMENT '最大限额', - `money_min` decimal(16, 2) DEFAULT NULL COMMENT '最小限额', - `commission` decimal(16, 2) DEFAULT NULL COMMENT '手续费率', - `third_channel_product_id` bigint DEFAULT NULL COMMENT '第三方通道产品id', - `deduce_rate_type` tinyint DEFAULT NULL COMMENT '赠送比例类型 0.不区分层级 1.区分会员层级', - `deduce_limit` decimal(16, 2) DEFAULT NULL COMMENT '赠送金额上限', - `deduce_count_type` tinyint DEFAULT NULL COMMENT '赠送次数类型 0.每日赠送上限次数 1.总共赠送上限次数', - `deduce_count` int DEFAULT NULL COMMENT '赠送次数', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通道表'; - -CREATE TABLE `ff_payment_channel_charge_rate` -( - `id` bigint NOT NULL COMMENT '主键id', - `channel_id` bigint DEFAULT NULL COMMENT '通道id', - `level_id` bigint DEFAULT NULL COMMENT '会员层级id', - `deduce_limit` decimal(16, 2) DEFAULT NULL COMMENT '赠送金额上限', - `deduce_count_type` tinyint DEFAULT NULL COMMENT '赠送次数类型 0.每日赠送上限次数 1.总共赠送上限次数', - `deduce_count` int DEFAULT NULL COMMENT '赠送次数', - `min_amount` decimal(16, 2) DEFAULT NULL COMMENT '最小金额', - `max_amount` decimal(16, 2) DEFAULT NULL COMMENT '最大金额', - `charge_rate` decimal(16, 2) DEFAULT NULL COMMENT '赠送比例', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通道充值赠送配置表'; - -CREATE TABLE `ff_payment_channel_reduce` -( - `id` bigint NOT NULL COMMENT '主键id', - `channel_id` bigint DEFAULT NULL COMMENT '通道id', - `pay_count` int DEFAULT NULL COMMENT '限前充值多少次', - `pay_amount` decimal(16, 2) DEFAULT NULL COMMENT '单笔金额小于此金额,才减免手续费', - `reduce_rate` decimal(16, 2) DEFAULT NULL COMMENT '减免百分比', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '创建者', - `create_time` datetime DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '' COMMENT '更新者', - `update_time` datetime DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通道手续费减免配置'; - -ALTER TABLE `ff-admin`.`ff_payment_channel` - ADD COLUMN `recommend_amount` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '推荐金额,逗号分割' AFTER `deduce_count`; - -ALTER TABLE `ff-admin`.`ff_payment_channel` - ADD COLUMN `merch_name` varchar(50) NULL COMMENT '所属商户名称' AFTER `currency_type`; - diff --git a/sql/update_shi.sql b/sql/update_shi.sql deleted file mode 100644 index 5e17178..0000000 --- a/sql/update_shi.sql +++ /dev/null @@ -1,422 +0,0 @@ -DROP TABLE IF EXISTS ff_game; -DROP TABLE IF EXISTS ff_game_betting_details; -DROP TABLE IF EXISTS ff_game_category; -DROP TABLE IF EXISTS ff_game_category_rows; -DROP TABLE IF EXISTS ff_game_exchange_money; -DROP TABLE IF EXISTS ff_game_kill_rate; -DROP TABLE IF EXISTS ff_game_platform; -DROP TABLE IF EXISTS ff_game_platform_currency; -DROP TABLE IF EXISTS ff_game_pool; - --- auto-generated definition -create table ff_game -( - id bigint auto_increment comment '主键id' - primary key, - sort_no int default 0 null comment '排序', - platform_id bigint null comment '游戏平台id', - game_code int null comment '游戏第三方id', - game_type bigint null comment '游戏类型 ff_game_type 字典', - game_name varchar(50) not null comment '游戏名称', - popular_one tinyint default 2 null comment '热门1 热门 1 开启 2关闭 ', - popular_two tinyint default 2 null comment '热门2 热门 1 开启 2关闭', - recommended_status tinyint default 2 null comment '推荐角标 1 开启 2关闭', - stop_status tinyint default 2 null comment '维护开关 维护状态 1 开启 2关闭', - game_status tinyint default 2 null comment '游戏开关 平台开关状态 1 开启 2关闭', - game_icon varchar(500) null comment '子游戏icon', - icon_style tinyint default 1 null comment '宣传图样式 1 默认 2 自定义 ', - game_logo varchar(500) null comment '品牌logo', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '平台子游戏管理' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_betting_details -( - id bigint auto_increment comment '主键id' - primary key, - currency_code varchar(50) null comment '币种编码', - member_id bigint not null comment '会员id', - game_code int null comment '游戏id ', - game_id bigint null comment '游戏id', - game_type bigint null comment '游戏类型 ff_game_type 字典', - platform_code varchar(50) null comment '游戏平台 ', - game_name varchar(50) null comment '游戏名称', - game_status tinyint null comment '注单状态 1: 赢 2: 输 3: 平局', - game_status_type tinyint null comment '注单类型', - game_currency_code varchar(50) null comment '游戏币种类型', - account varchar(100) null comment '游戏账号', - wagers_id bigint null comment '游戏注单唯一值', - wagers_time datetime null comment '投注时间', - bet_amount decimal(16, 2) default 0.0000 null comment '投注金额', - payoff_time datetime null comment '派彩时间', - payoff_amount decimal(16, 2) default 0.0000 null comment '派彩金额', - settlement_time datetime null comment '对帐时间', - turnover decimal(16, 2) default 0.0000 null comment '有效投注金额 ※注 1', - order_no varchar(64) null comment '订单id', - settlement_status tinyint default 2 null comment '结算状态 1 未结算 2已结算 3 已撤单', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '会员投注细目表' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_category -( - id bigint auto_increment comment '主键id' - primary key, - sort_no int default 0 null comment '排序', - category_name varchar(50) null comment '类型名称', - category_switch tinyint default 2 null comment '类型开关 1开启 2关闭', - open_type tinyint default 1 null comment '打开方式 1 内嵌 2 外链', - open_url varchar(250) null comment '链接访问地址', - open_url_type tinyint default 1 null comment '链接类型 ff_open_url_type字典', - icon_url varchar(500) null comment 'icon访问路径', - remark varchar(250) null comment '备注', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '游戏类型管理' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_category_rows -( - id bigint auto_increment comment '主键id' - primary key, - game_category_id bigint default 0 null comment '游戏类型管理id', - currency_code varchar(50) null comment '币种编码', - h5_index_rows int null comment '首页显示行数', - h5_level_rows int null comment '首页二级页面显示行数', - remark varchar(250) null comment '备注', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '游戏类型币种行数管理' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_exchange_money -( - id bigint auto_increment comment '主键id' - primary key, - currency_code varchar(50) null comment '币种编码', - transactionId varchar(64) null comment '交易id', - member_id bigint not null comment '会员id', - platform_code varchar(50) null comment '游戏平台 ', - platform_id bigint null comment '平台id', - balance decimal(16, 2) null comment '操作金额', - coin_before decimal(16, 2) null comment ' 转账前金额(游戏币)', - coin_after decimal(16, 2) null comment '转账后金额(游戏币)', - currency_before decimal(16, 2) null comment '转账前金额(指定货币)', - currency_after decimal(16, 2) null comment '转账后金额(指定货币)', - exchange_type tinyint null comment '转出类型 1游戏商转入到用户全部转出 2 用户转移到游戏商 3 游戏商转移额度到平台商', - status tinyint null comment '状态 1 成功 2失败', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '会员金额转移记录' row_format = DYNAMIC; - - - --- auto-generated definition -create table ff_game_kill_rate -( - id bigint auto_increment comment '主键id' - primary key, - currency_code varchar(50) null comment '币种编码', - line_name varchar(256) null comment '线路名称', - line_id varchar(256) null comment '线路id', - sub_line_id varchar(256) null comment '子线路id', - game_id bigint null comment '游戏id', - kill_rate decimal(16, 2) null comment '游戏杀率 ff_kill_rate', - remark varchar(256) null comment '备注', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '原生游戏杀率' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_platform -( - id bigint auto_increment comment '主键id' - primary key, - sort_no int default 0 null comment '排序', - platform_code varchar(50) null comment '平台编码', - platform_type bigint default 1 null comment '平台类型 ff_game_type 字典', - platform_name varchar(50) null comment '平台名称', - popular_one tinyint default 2 null comment '热门1 热门 1 开启 2关闭 ', - popular_two tinyint default 2 null comment '热门2 热门 1 开启 2关闭', - stop_status tinyint default 2 null comment '维护开关 维护状态 1 开启 2关闭', - platform_status tinyint default 2 null comment '平台开关 平台开关状态 1 开启 2关闭', - game_count int null comment '游戏数量', - ios_jump tinyint default 1 null comment 'ios跳转方式 1 内嵌 2 外链', - android_jump tinyint default 1 null comment 'android跳转方式 1 内嵌 2 外链 jump_type字典', - h5_jump tinyint default 1 null comment 'H5跳转方式 1 内嵌 2 外链', - platform_logo varchar(500) null comment '品牌logo', - promotional_style tinyint default 1 null comment '宣传图样式 1 默认 2 自定义 ', - promotional_image varchar(500) null comment '宣传图', - popular_style varchar(500) null comment '热门图预览', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '平台管理' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_platform_currency -( - id bigint auto_increment comment '主键id' - primary key, - game_platform_id bigint null comment '平台管理id', - currency_code varchar(50) null comment '币种编码', - min_amount decimal(16, 2) default 0.0000 null comment '最低入场金额', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '平台币种管理' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_pool -( - id bigint auto_increment comment '主键id' - primary key, - currency_code varchar(50) null comment '币种编码', - display_format tinyint null comment '展示形式 1独立模块 2多个轮播 ff_display_format', - turn_pool tinyint null comment '彩金池轮播 1新轮播 ff_turn_pool', - turn_name varchar(50) null comment '轮播名称', - display_location tinyint null comment '展示位置 ff_display_location', - click_location tinyint null comment '点击跳转位置 ff_click_location', - click_url varchar(500) null comment '点击跳转位置外部链接地址', - max_display_amount decimal(16, 2) null comment '最大展示金额', - min_display_amount decimal(16, 2) null comment '最小展示金额', - number_places tinyint null comment '小数点位数 0-2', - amount_state tinyint null comment '金额数字选择 1 默认 2自定义 ff_amount_state ', - amount_style tinyint null comment '金额数字样式 ff_amount_style', - amount_typeface tinyint null comment '金额数字字体 ff_amount_typeface ', - amount_typeface_size int null comment '金额数字大小 ', - amount_typeface_colour varchar(50) null comment '金额数字颜色 ', - amount_frame_size varchar(50) null comment '金额数字边框样式 ', - background_state tinyint null comment '背景风格 ff_background_state ', - background_style_url varchar(500) null comment '背景风格地址 ', - state tinyint null comment '状态', - remark varchar(256) null comment '备注', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '虚拟彩金池' row_format = DYNAMIC; --- auto-generated definition -create table ff_game_collection -( - id bigint auto_increment comment '主键id' - primary key, - member_id bigint not null comment '用户id', - game_id bigint not null comment '游戏id', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '平台游戏收藏' row_format = DYNAMIC; - --- auto-generated definition -create table ff_game_play_history -( - id bigint auto_increment comment '主键id' - primary key, - member_id bigint not null comment '用户id', - game_id bigint not null comment '游戏id', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '游戏访问历史管理' row_format = DYNAMIC; - - - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5000, 0, '电子', '1', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:39:09', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5001, 1, '棋牌', '2', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:39:16', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5002, 2, '真人', '3', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:39:28', 'admin', '2024-10-23 06:18:07', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5003, 3, '捕鱼', '4', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:39:34', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5004, 4, '彩票', '5', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:39:42', 'admin', '2024-10-23 06:17:56', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5005, 5, '体育', '6', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 06:18:33', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5006, 6, '斗鸡', '7', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 06:18:50', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5007, 7, '电竞', '8', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 06:19:03', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5008, 8, '彩票', '9', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 06:19:15', 'admin', '2024-10-23 06:19:21', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5009, 9, '区块链', '10', 'ff_game_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 06:19:30', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5010, 0, '未结算', '1', 'ff_settlement_status', NULL, 'default', 'N', '0', 'admin', '2024-10-23 07:18:14', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5011, 1, '已结算', '2', 'ff_settlement_status', NULL, 'default', 'N', '0', 'admin', '2024-10-23 07:18:23', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5012, 2, '已撤单', '3', 'ff_settlement_status', NULL, 'default', 'N', '0', 'admin', '2024-10-23 07:18:33', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5013, 0, 'JILI', 'JILI', 'ff_game_platform', NULL, 'default', 'N', '0', 'admin', '2024-10-23 07:22:49', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5014, 0, '开启', '1', 'ff_popular_one', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:22:40', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5015, 1, '关闭', '2', 'ff_popular_one', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:22:48', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5016, 0, '开启', '1', 'ff_recommended_status', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:23:52', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5017, 1, '关闭', '2', 'ff_recommended_status', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:24:03', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5018, 0, '开启', '1', 'ff_stop_status', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:25:01', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5019, 1, '关闭', '2', 'ff_stop_status', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:25:11', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5020, 0, '开启', '1', 'ff_platform_status', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:25:48', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5021, 1, '关闭', '2', 'ff_platform_status', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:25:56', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5022, 0, '默认', '1', 'ff_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:26:52', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5023, 1, '自定义', '2', 'ff_icon_style', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:27:00', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5024, 0, '内嵌', '1', 'jump_type', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:30:51', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5025, 1, '外链', '2', 'jump_type', NULL, 'default', 'N', '0', 'admin', '2024-10-24 07:30:57', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5026, 0, '外部链接', '1', 'ff_open_url_type', NULL, 'default', 'N', '0', 'admin', '2024-10-25 08:46:49', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5027, 1, '分享再赠送', '2', 'ff_open_url_type', NULL, 'default', 'N', '0', 'admin', '2024-10-25 08:47:02', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5028, 0, '独立模块', '1', 'ff_display_format', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:28:28', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5029, 1, '多个轮播', '2', 'ff_display_format', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:28:38', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5031, 0, '新轮播', '1', 'ff_turn_pool', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:31:42', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5032, 2, '电子', '1', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:34:04', 'admin', '2024-10-28 05:34:22', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5033, 3, '棋牌', '2', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:34:37', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5034, 5, '真人', '3', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:34:49', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5035, 4, '捕鱼', '4', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:35:02', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5036, 6, '彩票', '5', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:35:14', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5037, 7, '体育', '6', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:35:24', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5038, 8, '斗鸡', '7', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:35:38', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5039, 9, '电竞', '8', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:35:50', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5040, 10, '彩票', '9', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:36:01', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5041, 11, '区块链', '10', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:36:10', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5042, 1, '热门', '11', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:36:20', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5043, 12, '试玩', '12', 'ff_display_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:36:29', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5044, 0, '每周任务', '-1', 'ff_click_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:47:28', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5045, 1, '新人福利', '-2', 'ff_click_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:47:37', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5046, 2, '神秘任务', '-3', 'ff_click_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:47:51', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5047, 3, '每日任务', '-4', 'ff_click_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:48:04', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5048, 4, '任务活跃度', '-5', 'ff_click_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:48:19', 'admin', '2024-10-28 05:48:22', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5049, 5, '外部链接', '-6', 'ff_click_location', NULL, 'default', 'N', '0', 'admin', '2024-10-28 05:48:36', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5050, 0, '默认', '1', 'ff_amount_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:03:03', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5051, 1, '自定义', '2', 'ff_amount_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:03:16', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5052, 0, '样式一', '1', 'ff_amount_style', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:05:15', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5053, 1, '样式二', '2', 'ff_amount_style', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:05:24', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5054, 2, '样式三', '3', 'ff_amount_style', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:05:31', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5055, 3, '样式四', '4', 'ff_amount_style', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:05:37', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5056, 4, '样式五', '5', 'ff_amount_style', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:05:43', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5057, 5, '样式六', '6', 'ff_amount_style', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:05:53', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5058, 0, 'Avenir', '1', 'ff_amount_typeface', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:07:23', 'admin', '2024-10-28 06:07:33', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5059, 1, 'EncodeBold', '2', 'ff_amount_typeface', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:07:47', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5060, 2, 'Irr3v', '3', 'ff_amount_typeface', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:07:58', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5061, 3, 'Motel', '4', 'ff_amount_typeface', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:08:07', 'admin', '2024-10-28 06:08:16', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5062, 4, 'Ravenna', '5', 'ff_amount_typeface', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:11:34', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5063, 0, '样式一', '1', 'ff_background_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:15:09', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5064, 1, '样式二', '2', 'ff_background_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:15:19', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5065, 2, '样式三', '3', 'ff_background_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:15:29', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5066, 3, '自定义', '4', 'ff_background_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:15:38', 'admin', '2024-10-28 06:16:59', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5067, 0, '开启', '1', 'ff_game_pool_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:29:55', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5068, 1, '关闭', '2', 'ff_game_pool_state', NULL, 'default', 'N', '0', 'admin', '2024-10-28 06:30:05', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5069, 0, '2.5%', '2.5', 'ff_kill_rate', NULL, 'default', 'N', '0', 'admin', '2024-10-28 07:08:25', 'admin', '2024-10-28 07:10:08', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5070, 1, '3.50%(默认)', '3.5', 'ff_kill_rate', NULL, 'default', 'N', '0', 'admin', '2024-10-28 07:08:47', 'admin', '2024-10-28 07:10:03', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5071, 2, '4.00%', '4', 'ff_kill_rate', NULL, 'default', 'N', '0', 'admin', '2024-10-28 07:09:06', 'admin', '2024-10-28 07:09:57', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5072, 3, '4.50%', '4.5', 'ff_kill_rate', NULL, 'default', 'N', '0', 'admin', '2024-10-28 07:09:19', 'admin', '2024-10-28 07:09:53', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5073, 4, '5.50%', '5.5', 'ff_kill_rate', NULL, 'default', 'N', '0', 'admin', '2024-10-28 07:09:46', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5000, '游戏类型', 'ff_game_type', '0', 'admin', '2024-10-23 05:38:52', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5001, '游戏投注结算状态', 'ff_settlement_status', '0', 'admin', '2024-10-23 07:17:11', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5002, '游戏平台', 'ff_game_platform', '0', 'admin', '2024-10-23 07:22:41', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5003, '热门状态', 'ff_popular_one', '0', 'admin', '2024-10-24 07:22:29', 'admin', '2024-10-24 07:23:05', NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5004, '推荐角标状态', 'ff_recommended_status', '0', 'admin', '2024-10-24 07:23:40', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5005, '维护开关', 'ff_stop_status', '0', 'admin', '2024-10-24 07:24:37', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5006, '平台开关', 'ff_platform_status', '0', 'admin', '2024-10-24 07:25:36', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5007, '宣传图样式选择', 'ff_icon_style', '0', 'admin', '2024-10-24 07:26:43', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5008, '游戏跳转方式', 'jump_type', '0', 'admin', '2024-10-24 07:30:31', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5009, '链接地址类型', 'ff_open_url_type', '0', 'admin', '2024-10-25 08:45:33', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5010, '展示形式', 'ff_display_format', '0', 'admin', '2024-10-28 05:26:23', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5011, '彩金池轮播', 'ff_turn_pool', '0', 'admin', '2024-10-28 05:31:29', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5012, '展示位置', 'ff_display_location', '0', 'admin', '2024-10-28 05:32:00', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5013, '点击跳转位置', 'ff_click_location', '0', 'admin', '2024-10-28 05:36:53', 'admin', '2024-10-28 06:16:47', NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5014, '金额数字选择', 'ff_amount_state', '0', 'admin', '2024-10-28 06:02:52', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5015, '金额数字样式', 'ff_amount_style', '0', 'admin', '2024-10-28 06:03:51', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5016, '金额数字字体', 'ff_amount_typeface', '0', 'admin', '2024-10-28 06:07:05', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5017, '背景风格', 'ff_background_state', '0', 'admin', '2024-10-28 06:14:54', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5018, '彩金池状态', 'ff_game_pool_state', '0', 'admin', '2024-10-28 06:29:45', '', NULL, NULL); -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5019, '游戏杀率', 'ff_kill_rate', '0', 'admin', '2024-10-28 07:07:43', '', NULL, NULL); -INSERT INTO `sys_job` (`job_id`, `job_name`, `job_group`, `invoke_target`, `cron_expression`, `misfire_policy`, `concurrent`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5001, '游戏投注信息同步', 'DEFAULT', 'gameTask.insertGameBettingDetails', '0 0/50 * * * ?', '1', '1', '0', 'admin', '2024-10-22 10:49:07', '', '2024-10-22 10:49:13', ''); -INSERT INTO `sys_job` (`job_id`, `job_name`, `job_group`, `invoke_target`, `cron_expression`, `misfire_policy`, `concurrent`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5002, '更新游戏信息', 'SYSTEM', 'gameTask.updateGameInfo', '* 0/1 * 1 * ?', '1', '1', '1', 'admin', '2024-10-24 05:34:16', '', NULL, ''); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5001, 'JILI游戏请求接口URl', 'jili.api.base.url', 'https://uat-wb-api-2.jiscc77s.com/api1', 'Y', 'admin', '2024-10-22 02:15:04', 'admin', '2024-10-24 09:13:58', NULL); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5002, '游戏限制-首充', 'game.recharge', '1', 'Y', 'admin', '2024-10-24 09:12:09', '', '2024-10-29 06:34:21', '已首充才能进入游戏(未充值无法进入) 1 不限制 2 限制'); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5003, '游戏限制-下载App', 'game.download.app', '1', 'Y', 'admin', '2024-10-24 09:15:01', '', '2024-10-29 06:34:21', '强制要求下载APP 1 不限制 2 限制只能app玩'); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5001, '游戏管理', 0, 2, 'game', NULL, NULL, '', 1, 0, 'M', '0', '0', '', 'dict', 'admin', '2024-10-21 09:53:17', 'admin', '2024-10-31 08:19:06', ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5002, '游戏管理', 5001, 1, 'index', 'game/index', NULL, '', 1, 0, 'C', '0', '0', '', 'list', 'admin', '2024-10-28 01:30:57', 'admin', '2024-10-31 08:19:16', ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5003, '代理模式', 3051, 1, 'agentMode', 'agent/agentMode/index', NULL, '', 1, 0, 'C', '0', '0', 'agent:agentMode:list', '#', 'admin', '2024-10-29 07:25:03', '', NULL, '代理模式菜单'); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5004, '投注记录', 5001, 2, '/details', NULL, NULL, '', 1, 0, 'C', '0', '0', NULL, 'list', 'admin', '2024-10-29 08:59:44', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5005, '会员投注细目', 5001, 3, '/summary', NULL, NULL, '', 1, 0, 'C', '0', '0', NULL, 'list', 'admin', '2024-10-29 09:00:48', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5006, '虚拟彩金池', 5001, 4, '/pool', NULL, NULL, '', 1, 0, 'C', '0', '0', NULL, 'list', 'admin', '2024-10-29 09:01:23', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5007, '游戏统计', 5001, 5, '/statistics', NULL, NULL, '', 1, 0, 'C', '0', '0', NULL, 'list', 'admin', '2024-10-29 09:02:07', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5008, '原生游戏杀率调控', 5001, 6, '/rate', NULL, NULL, '', 1, 0, 'C', '0', '0', NULL, 'list', 'admin', '2024-10-29 09:02:48', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5009, '组队瓜分彩金池', 5001, 7, '/ranks', NULL, NULL, '', 1, 0, 'C', '0', '0', NULL, 'list', 'admin', '2024-10-29 09:05:52', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5010, '列表', 5002, 1, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:game:list', '#', 'admin', '2024-10-31 08:17:57', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5011, '导出', 5002, 2, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:game:export', '#', 'admin', '2024-10-31 08:18:12', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5012, '详情', 5002, 3, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:game:query', '#', 'admin', '2024-10-31 08:18:27', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5013, '新增', 5002, 4, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:game:add', '#', 'admin', '2024-10-31 08:19:34', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5014, '修改', 5002, 5, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:game:edit', '#', 'admin', '2024-10-31 08:19:52', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5015, '列表', 5004, 1, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:list', '#', 'admin', '2024-10-31 08:20:29', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5016, '查询会员投注统计列表', 5004, 2, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:statistics', '#', 'admin', '2024-10-31 08:21:30', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5017, '详情', 5007, 3, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:query', '#', 'admin', '2024-10-31 08:21:51', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5019, '排名', 5002, 6, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:rank:list', '#', 'admin', '2024-10-31 08:22:58', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5020, '查询游戏类型管理列表', 5002, 7, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:category:list', '#', 'admin', '2024-10-31 08:23:44', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5021, '获取游戏类型管理详细信息', 5002, 8, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:category:query', '#', 'admin', '2024-10-31 08:24:08', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5022, '新增游戏类型管理', 5002, 9, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:category:add', '#', 'admin', '2024-10-31 08:24:25', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5023, '游戏类型管理修改', 5002, 10, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:category:edit', '#', 'admin', '2024-10-31 08:24:45', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5024, '删除游戏类型管理', 5002, 11, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:category:remove', '#', 'admin', '2024-10-31 08:25:08', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5025, '查询原生游戏杀率列表', 5008, 1, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:rate:list', '#', 'admin', '2024-10-31 08:25:54', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5026, '修改原生游戏杀率', 5008, 3, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:rate:edit', '#', 'admin', '2024-10-31 08:26:31', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5027, '详情', 5008, 2, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:rate:query', '#', 'admin', '2024-10-31 08:26:52', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5028, '查询平台管理列表', 5002, 12, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:platform:list', '#', 'admin', '2024-10-31 08:27:27', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5029, '修改平台管理', 5002, 13, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:platform:edit', '#', 'admin', '2024-10-31 08:27:42', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5030, '获取平台管理详细信息', 5002, 14, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:platform:query', '#', 'admin', '2024-10-31 08:28:03', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5031, '查询虚拟彩金池列表', 5006, 1, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:pool:list', '#', 'admin', '2024-10-31 08:29:15', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5032, '获取虚拟彩金池详细信息', 5006, 2, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:pool:query', '#', 'admin', '2024-10-31 08:29:32', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5033, '新增虚拟彩金池', 5006, 3, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:pool:add', '#', 'admin', '2024-10-31 08:29:55', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5034, '修改虚拟彩金池', 5006, 4, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:pool:edit', '#', 'admin', '2024-10-31 08:30:09', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5035, '删除虚拟彩金池', 5006, 5, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:pool:remove', '#', 'admin', '2024-10-31 08:30:19', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5036, '查询会员投注细目列表', 5005, 1, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:list', '#', 'admin', '2024-10-31 08:30:55', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5037, '查询会员投注统计', 5005, 2, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:statistics', '#', 'admin', '2024-10-31 08:31:24', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5038, '查询会员投注细目列表', 5007, 1, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:list', '#', 'admin', '2024-10-31 08:43:39', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5039, '汇总统计', 5007, 2, '', NULL, NULL, '', 1, 0, 'F', '0', '0', 'game:details:statistics', '#', 'admin', '2024-10-31 08:44:09', '', NULL, ''); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (1, 2, '电子', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (2, 3, '棋牌', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (3, 5, '真人', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (4, 4, '捕鱼', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (5, 6, '彩票', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (6, 7, '体育', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (7, 8, '斗鸡', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (8, 9, '电竞', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (9, 10, '彩票', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (10, 11, '区块链', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (11, 1, '热门', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `ff_game_category` (`id`, `sort_no`, `category_name`, `category_switch`, `open_type`, `open_url`, `open_url_type`, `icon_url`, `remark`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES (12, 12, '试玩', 2, -1, NULL, 1, NULL, NULL, 'system', '2024-10-25 15:11:47', '', NULL); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5004, '游戏限制-首充下载App', 'game.recharge.download.app', '1', 'Y', 'admin', '2024-10-24 09:15:01', '', '2024-10-29 06:34:21', '首充强制要求下载APP 1 关闭(全部限制) 2 开启(仅限已首充会员)'); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5005, '游戏限制-仅限Android设备强制下载APP', 'game.android.download.app', '1', 'Y', 'admin', '2024-10-24 09:15:01', '', '2024-10-29 06:34:21', '仅限Android设备强制下载AP 1 关闭(全部限制) 2 开启 '); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5006, '热门一', 'hot.one', '1', 'Y', 'admin', '2024-10-24 09:15:01', '', '2024-10-29 06:34:21', '热门一 1 开启 2 关闭(全部限制)'); -INSERT INTO `sys_config` (`config_id`, `config_name`, `config_key`, `config_value`, `config_type`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (5007, '热门二', 'hot.two', '1', 'Y', 'admin', '2024-10-24 09:15:01', '', '2024-10-29 06:34:21', '热门二 1 开启 2 关闭(全部限制)'); - -create table ff_game_popular -( - id bigint auto_increment comment '主键id' - primary key, - sort_no int default 0 null comment '排序', - platform_id bigint null comment '游戏平台id', - game_id bigint null comment '游戏id', - popular_category int null comment '热门 类别 1 平台 2游戏', - popular_type int null comment '热门归属 1 热门一 2 热门二', - create_by varchar(64) default '' null comment '创建者', - create_time datetime null comment '创建时间', - update_by varchar(64) default '' null comment '更新者', - update_time datetime null comment '更新时间' -) - comment '平台热门管理' row_format = DYNAMIC; - diff --git a/sql/update_xiongshang.sql b/sql/update_xiongshang.sql deleted file mode 100644 index b5e5aac..0000000 --- a/sql/update_xiongshang.sql +++ /dev/null @@ -1,359 +0,0 @@ -/* - Navicat Premium Data Transfer - - Source Server : dev - Source Server Type : MySQL - Source Server Version : 80040 - Source Host : localhost:3306 - Source Schema : ff-admin - - Target Server Type : MySQL - Target Server Version : 80040 - File Encoding : 65001 - - Date: 22/10/2024 14:03:00 -*/ - -SET NAMES utf8mb4; -SET FOREIGN_KEY_CHECKS = 0; - --- ---------------------------- --- Table structure for ff_agent_level --- ---------------------------- -DROP TABLE IF EXISTS `ff_agent_level`; -CREATE TABLE `ff_agent_level` ( - `id` bigint NOT NULL COMMENT '主键id', - `level_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '代理等级名称', - `level` tinyint NULL DEFAULT NULL COMMENT '等级', - `total_commission` decimal(10, 0) NULL DEFAULT NULL COMMENT '晋升等级佣金标准', - `icon_url` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '图片地址', - `default_status` tinyint NULL DEFAULT NULL COMMENT '默认状态', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '代理等级表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_agent_level` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - - --- ---------------------------- --- Records of ff_agent_level --- ---------------------------- -INSERT INTO `ff_agent_level` VALUES (1, 'LV1', 1, 0, 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKoAAACWCAMAAAB5EONmAAADAFBMVEUAAAABAAAIBQQAAAABAAAAAADWQB0HAgEBAAC7Oxi2OhnMRSFVHxH/hSj/2DvLRCCgNxvPQh30kCu7Px+oQSfNTCuuPR7Xk1V/LBfnkm/rZyPCdE7No3vqrI3jsYnHNxzbZ0zpXBf+9W60VTj8x6mhNx377afnezT779/4xab1xaaHOCD90D71xFf99rb/1ab//tL/0qP/+dH/2qj/+cz/3az/57n/7Lz/9sr/4LH/7sD/8MP/3KjMUSH/9MX/367/47L/9cj/ZQL/5bb//9X4qouXOy+4TTz/z6D/tpD6r5D/sY388tb//9r75cr/y57/xJ//zDX8rY3/y6n/1bX/2br/u5P/r4n0p4fdgGTXfWP/XwD63sb/vprunX387M3/0rD/x6XXdlz5kWv95sL/+Kbto4X/yJn/WQL//9/528DmnYH/Zxf//+zci3C1SjXENwj87NPPb1b/3b7zsJT4o3+7STj/zq3/YVb+/uT/rlPaRyT/iQH/9J72u5T/1Wj/Zwz/ZET/YE7/ZTGeOSn/aCT/ogL1s4relXnERzP/qBH/xJe0Oi3+7I3/hkXGTjv/UwP54br//a7/cwP///PVazzdUC7/kgP/fwHfWjjHQRH/jFX/wj6JIxn/mwXmp4z+qIS6QDL/8Zb/uUi7U0D/xC7/5oX/3HOrNST899zSY0zsr5L/43vcb1T/mC7/bAH/z17mc1P/XzrNc1z/xlfJU0D/jjX/XyX/XRD///z/68bps4nhkHPujWrEYEy/W0j/VEj/dx/+uYz/okvTNRH9RwP//Lv/r4LrlXf2mnj/eTD/oCLghmrHZ1H+pXf+ulWuTTn/UzT/+lz/lkOgQzLyxaf/ck/MXUbqtoziZ0bVjXL+mlv/bzX5163bpYv/ojn/tTH/hAz33LLvy67/5q3qg1+nPyz/kR7/tR39gmT/zUL/SyKcLx7rvZ3//Znselrz1bv8ymvLfmL/4UrfuJ7Qgmv/f1PKSRn/3Z3/9H7/5GHlRBjrTze4a07brV/qXUs2ld+4AAAAL3RSTlMACRAZLib+NSChir9Q/v7PguXRtV6tmXxqo7poNKxn/Kj45nfgR9L30b2hK9Og35Ed5c0AABouSURBVHjatNQxa9tAFAfwOp2roUspDRk6hAxtyZBPoD2DZo3hQAF1d4WFZAdrEEjDUUhARoONrEUII4Tt0cagwRpEIsjigF0oOFEhYAwFZ+o76Vya0qGDdcMhnp99P/3vfC/+f1Qq+/v7Bwdfvh4/ovPPXx+fbsjY3Nxk6dls7s9nZ5P5PJ3NYJ7MZvk0gXFG5tkKWt/n49Ph4dHR0eHhQQXGi1JGZf8DE4bc03m0eTw+P8UeoT6RKXmw+v2+9WCSmTyavwt++lAUQtoM74ZPv5yjzfH3jx/fvn1Thrayx3DzyUJfoM0mOokMb7Ner8NwDWNWn07Ht9W78Xh6ezsdj+9u6SOd4bOLxc26lzeHxgl8+wmddvVOh2M+7FV2Lq28u0+tWLdj18NRtHmSDS5LkoxhsjAdiM169UIUm416UxQvqoEIhUYT5iopBNWLob8umpOWfAIb0o5OlGka63r8tlLZeahv5rNY15YpSHG3Z0RdBxbPmJYU+kOxXm2quVRVLwCtiiBVVZDCI0jVoR+CFJo7mRx5ShtjlEx1TfPN13slUPMQzFSOkNfrIux1pBbHweLMchiAlBUbdZFlQaqyKpGyRMoCvcmywzTM8maOM+A9EWq7Ug2k1hKolR3v/8s3RGq90hEGKUbtlZRl+eLM8ppoxDqVskQqQqFaFAZQGFkMlWaKQqSKt6qB1Ndev9zbPZVIU1tHXcgUyW7Yoosz5ohm+kwKmao0U7E+8pmimev0cqmCV7UYpPbuqXtABalu655CMlVcj0q58OeAVUGaw+juEynNVAVpYxgzVCq5GBmK0o5630BaAvUFUIlUt/1VkYrsbWNK+kIhpZkGf0qbrApSUYgzKm11cbtH/lfJHUi1fimppiDVl2aeKazlbWPKlgKVPjuneQGuAbVeFVnBT6iUM2T4NkLGbAzS1CwlVSL1Tb+NZaXXRtid0MXhBmg0/i0dbAsDK6RSznMVGcldRaqB1CrprILUWmoyTSXcxsT4I9AUUjYopMFzenOUMlTagt2XZbiwwprWt2KtlFSJ1L/UDEgFwzXQK6Qw/xzRS2krbdRZWqDS6nXMUKm0ItLQw8kVkdrlXFYg1WybZup5Tr6400rMIewwzXTI80OQ8s+lgRAzVCp1EUhdhJMxSEu6AYhUs/srhEGqIM/JpY6ULAV2ADCep9KA5/m8wNKDG7BCHJJmkDpdDJnKMpLubFuzzTJSfZf6tm2bZjfCIJWxR6UStxQAxv8t5XMpD8chYFnBTFoOaXYcwwhdWZa9yRX8nPWqjFTf+RpIp5cGLtZSJtvFv/0opCMqFfg/6ETKs9dW0Qyz0oNM267bqdmXpnlZSqo2+enaZbsNJw1SCReOs5Ami/v76YjArolUGAWCQEIWnoUcjF5xVLoIiVTpyeEVkZZD/UV7/b4mEcdxACcq6kE+iR7Vg4iIHvQgCox6EJFkUW1tzLsSbKWsLaVi1DL7cWK2jLCUL17hgbjWKl04uDXCaRDM6tua0TYpfNBkJpVu3LA2xiBcq8/nzvUXdPfAB+fXu9e9/Xy/38/dQikXjLii2AK4XF+efHmN0i9ZyWS1ZgbAqEilAUoInJClGTleUpAHP4HPaNnpjPb6AiM8Sjl1UkWpUHje0+yENrCrZwJuPjExkR/zkH/SjNVK6eVs2pOQMsoJpRCI8ER5rLE8/ByksAJ44HJcYa0a1Lh86dx0AO8VeRv1gtTrzY/lRYwQuASklOaGBgcPDw43tRMCUiwHiJcIV+GxUDoRaUZpc3nMA5fTpFWhylJ3KvIWpbCxfsReGxs5kSxKKe1vajx61MBaABvqlySUyt+5X3th8FjeOxGBdhfnVZ7nuFRWUIUaBGnWI/jeyqk4p+P4woFrrQ7+fULIgEStoaP1R+uP266ct+iNncNzVkoklFozbhj8PpT33vL2Qmvt9LkiI6KQyqZUoa4JgjQtCBEfttZd0ZEOlOJa2z5A4MhIxH8MoAx7pObpSUNDzGgfnvRIGYJTLCPeulUKyV0fbqw+aK1HTCjlVaF2yFK+NwpbI7xw9AY7SqF4RzAYd6NUktLD9fWNDpZlT223nXc06PUx41DTZD+lJJOhuo7SXBweK+7vCTh9vdBaPzKBVFAn1fcoFRIfy9iw9jZHg6WQJghSv4kQKl0GaJ2ZYdm2NqDWmA8fOqS/GLM3TeYSkCzVleaUwcGeZh/WQDkupXieT6lCDaE01UemA9Ba+wKugnxzjZ8zUdo3dKeubisjS9uO1Nq2MwcbwKqPxYYmszcIpQll8FwhGOmSpQvXroM0999XAGxYt2hQmk2ZKguRqM8ZmE5XpRylTY11pwHKILSNPXXuXC1zrAFyRWxLU7YvQfs0sH6AlOOiUZevXF5Yb+VF3pMT1aCuXIdSSEJX2VyGehtJcSgtCIL/sKHOYgboojSZvHePPdbZoFhjJyZvDPQHFanAPY+CdGY94UXRkzOJm1SgLl2+MZXj4cgl6OYyrAAYk1/gPr4ybNtmNpuZf9Ca8ZmZ2Z215s5O2WqMxd796PMU5EyF9HRXc9fvN0QEabtJt27l0iVA/c/FunLZRlma40W6YbrsEmCvEUqDFsc2LUJZhLY9TT79XAyHp6ZGx2tqLYht0BuNsQcv/8y7UZpLRwOR+29MitS0Zrkc6v+PFawiSHm0+n4JqXTpar1j61azA6UIrUmeGy+G93/69Gm0OPV41ra9sVMPuSK25fv8Bp5Lp4Vfkd20KtWtWbZSDapiTbVjsu1nyYb3vH+s0aHVmg0OhkEoezJ5b3Y0HAYoUEdHi92/v9peHLQj1tgCJftsfj4nBBd20+v/pEqoKll1Is+7PTyP096g/aY1GDBSgB65l/z5Oxzev39/lXpgtLt75qeN7bRjroh9+adylq9UpbrrihSoKlnXaHTus6JOB9N+q3aXwaJAcTadmpkCKB5IReuB1u67n0/aHHa7bG3BKqhI1Uw3rFJNumhdtRne8TWDDvMercEiR8oybVeSNbeLYcV5Ewq1CNJWsAK2dXz7vnq7EYug5QFWQSUBUuvqVVini1KVrCvW8sMWZtcOBqEMQp8mbS2t4XAVWrx76cKHhw9b4QDr44fdj2dr9x4ELFjPwML1p1Lp161doaq0av3Lm/2ENBmHcQCHDgZ1Kagg6B9Uh+rg6/a2TZvTscU2dTrcnH9o1VSSJa9bphsvgiehiS9I8CbURQc7zKJDjA5DU+ggDlp0SLJBO+gQAiWRhqeg53nf97d3ui2CvfVV5/XD83u+v71jR89O3VebNE6vUHxXx6MEMx4FKGZiYiuWmt2kWnZyAtaCWC6W2rT3t492oRVWFrbgX56+TL2w1vG4tuO+ePYu1z2eX1sqgAZn5xM8wySYn0tcJOgPWjBcbO+p3TWXROvg7MiDNzNVZ4rKrzT1whWvS9MQEkYK0Faedw1vy9BIuDXB2DGwvZklLhgEKwb6ZTB7k3fBCtjZxa8zJy//s6ki9Nw1b0hjqnF44S6FPIba9wBUksa4+GaC99mlMIANEiz0y5KhaXfygYT98Hzs+FViVR563ems1agdDmcI+oS1Vw3F8mcfiw2vMQLULAWwuzkZy8WWdyhtO2Axs4Pdz8dO31Aei1t63RlqMN10eLyitCXBzm4VLOkSLCkrQikZy+9Cv8jKYr/MrlHYAuzXbPj1zNgxWFjll9R535S1eqSR3kswO58IFEYaDLcIS1rgpCjE8szPFBchk41xuadmZxKxuAVDX8dOnoLBKg1tzNZ4cEvhga+f5zeXC6FDu7zQpjyUkmKm7Py8gPVLKxsJG3SefL+6ycoq1yZnbbba4xGgIWjTwzipvdgmnvcRKGHKWB8/f6Bf0QWqrmkVrIgdhC1QamVhSb3wXKJ2iCMNudjEvZxc+y0uvsNKUIpAi7F30tNc0O8nK7tGdXQR7OLXMVxZJUZ6xaHO6gcQ6gyF7rck5sMTACUj/SK3CZ3lwjAP0xGu4C1hg3LeXQWpeHFVKbCyKG3QW6cG2mCkzhC0KYO1l6GtPPMHp0r4wZgZZjOOWIuI5dL9hvHVsIh90D1TBdYKr6hrDvWAzdNmtTqdzn6oc2Htp4ceIrQMM69UqVQi1rcTJ/2KWrhoRts4cndQyKvFmSpoV2XH725zzzV72mpqnI8ZvgC6jbXHK7+8U/qHEbV23peJSthoNMil1lc0t4UtCL96MnP8SEXUIxc8t5NznWitU/38JUMn/D1r2CaUlnPKTBnLtIajXBCwYF0G7M6Kd3UwvNplXflxET67VkI9b+tKjs7NdXrUBArS7W2ud83Hs+WdJaA0REVTPqYf+oU3VxTi59LagXd3p/TZlWTVKRhrBZ+oz8/ZbHOjo3NTGXhozp/98KsWgNpLQQmzyKkTQ9M+FvoVtIhbEI3E9daabFavfT92ohLqEaC63e7m0aQtF41+QitAvyzcE9tUeqD4UuwUrUYj/NGsLxOMRHELlpdS02mtHrLypOpE5VN1u22dXbnhJbB+ntiODPYzDLap3IIWHTw4CdRoMBghFLsbj0z7/VGgplKzWYkKy1rJVD/aMFPjQz1o3dqetPIMtumvFxScohSdJDqWzcASIHU4ntZnFaS6xxe7e4eXLVucI4FLWopZdO5y0ClJbwkxGMxMJgpUkMbTaqBqkXqkImoSoO/fI7Vn+Esw1i3UqciJr0RoZoSYDWSgkAPQOswtih+ftCyn4vG9dLVIPVYhtc9ma262SdTpiyM8XFBlnShl7esL6+vrCxtm4iwB1WrrDKzmK1L39tJWvRLUs31NzRD3+BBSJye/MSAt58Qw868DQgYZnThQzCEopo6iv09HBWpbtfqm4tTppyxQC52HwvQ/C9RjAguMEaWloBiN1kj1TSI1lx6oqVaC+h2pnUDt6UVqPytCqZL3EsVs1IOUUI0EWkKq0RiAaknFe3LpqZpqvRLUkXak4lTzVFWpedI0SHdegFSmylICJU7ILaov4l+K9/SEp6zVapMSU21qam635am+cm+ctM7MLARe1B+iFkGJ1FRHvYtYRCo8uHXcHlNgqk3NnYXUUvNEqd23GNgH5P6+SGUN8kjrhMhOkJq09Dsy1Tav11U59cdIE2xAeSpNQqm6BekLeJGo8tnLEyVQpPZNilR3G3xDoyi19yXcAD6qBBPj2xCQgf213hcF1DLQxsZGrS5PHXAoQL30Y6Rdonb3vpzGqZZwYuwb9UAN1D/knxEq6T2Byk6MxpinTjkcilCbwEqoZKr04eh0SAVpK08TKjJRehBKpA0mmerxKE99i1S6BFSkBp7Ns7SOUNEJ0JIjra1tMBmAujyMVLfHEfoH1OKR6gg10MuyBjo/1cP3kwkjQQ9QbQpS2/9E1YnxfQsMMXaDkTYSqpbc+FoJSiba0AC/Nxvz1Pc2RahvRmwHp1pKiqG+LbCUwWgooEqRJypDkXpLoPYC1f0/qDoSo/F3M/cT0sgVxwGctrtZt1vYLbbSW089Z8eYf2pNRMOOSUwGYybZksmfZmpQqTQbxyABr3FRKB42kF5U2EsqHkLZy9S0EMImgust2BTcw7oeZaVQutBLf+/NTMbZcQplRuoP9v7h+77vzRvJ7MDsAEiHHCMidbYLHRNGhiKpksrop35aXfRpUh0yFA8+RmWqrZuoDIWSClDrsLNLhbcMI6iqVGWmSgpQJRU5bV0nHsGppNYNoyq21aTKCVBsBSia0SGJOnbhfHIqoWpqyAiqN6KgqpzvXJ6VVCx1SgPO7lgUBbhaqhqKj/wRiTrpBihOVA2FUC2uQYnqM4yqLIDsFNddAQXqoJSqWwl1XXAOWyxKKm0MFWKVqeOqQDFUvuoN2aVUnd3N5FI6QQpjlanQgJR+6i6kqqKqnfLdWaa6VLtehiKqXUktGU8dlZwSVPk6MniBip0wMhNLNah9+qlQAJ9MlZ3qRGFsEvW3SSuGygepUmruUvciQKU8pdtGUCMKqsqpuOrZbSJ13KqSylCgDhtMvaOmakKFE/8CVRsKUrNFpvrqE1dAvT+q6cTSC1QLkmpBgWpDbwGYCmVljKFOXaQqnOq3EXjmy1QxUbXzCqmRlYUDkarhlJ72Tpu7S+1KLSonmjGRurDl83mZqGHUPUR99uzV/S5UZCqhTueYU6TeN6ugOEw1temLeFeMoUJZi5j6PaLKTjUUUd0XqJgpQ5Xj7qYamfIsGkyFVAe0nBiqTFWCDgtOpZVA1Aci1eNZnDGYegTUy5wSFN5G3K4uVXACtOuzKKnfi9QpT9QQ6pRHoB4IVMRUOpU3fLdTQUVQpVFN5SKIWjaEOoWpD4F6PGBXO2UojDJVOVE11XmRWjSK2sTUR0dHx6N2LSdI1VSz5hCETEUFMI66iqk/Ho9gJjjVUGGcVpkq9FObutSlegyh+jwe70WqthNf711dKqG99gQaF1BfSFRv1CDqFlAXDr4+enQ8ZFNAXcJ0oRaZ2k9oScVxIupPV0Dd24MjAKjyGaqCghRTv/vhrx+++/k+qe2EIQl3benpVVDn99DJursy8i7T9c57iGv4yZdPnjz58myA1HRiqhmoqKpXQAXrwm50xOVCTmWeypsTcYxmzEoomUpokHQOVx/AH4INo94VqdH5vdbq6urBQ7vbKjtVUDz4hd8FNiVVKQ2Sg83HL37//c+HiBqNemYMoE4JqbbQj7fau7URq8WCKBpOi9aOV0ozGXfw8dPNl6urC0D1cJwnbgQVZqu4Ob+5c9Y+b5tO7W4ziIYvhWrveGWkaxnXyvaDs/bO5vzq7y0uagi16oVUJ7gWQE/O5+YS7U6naHPB4lq0AlXGqYZCpGsk0dr+5YQ9OTnbebm6tw/UqCHUKS9djO+0T85jgUDMH2iV32RsFoT9b4HK0CBRPIIf2rFzc+cn7Z2Xe/scN2MI1TtBm/18G6DZbDYRCFTm3pROzTa8bSSmVp5qKLTUXH+0/qLNh+dgzs9PNoPTPi5uBHWCDrKV5Vl+DkkxNlFpV0tpl5sgQKt5x7tkBGjmYPvBPMuCFE87xfIW2oAC3OkwTsdkP/y1l49l/RK23z9TLnNOK8KCU52oJpTI7C09WJ3mRWgsls+g3WmmozW9f7P6sETNOkb5wSE+wedi2YpfwCYmE/FSuT5mIQGrilMbao4/Xf9jms+J0Lk88VbYnGTm1PSJPuoXhf1vR1i7jWVZng1Px/wVPwzCzr46LVUzY2aSUOapDSXNxR/Xf2oDNBbDiU6HMiDF89rSMd3U8zur9z64eadUnB0aywkTDiVjFcDCJBL9s8edv98QYwSJMFiqDYVtb155tP7rGc8CEqixwBy1ljGL0uf2qqmvB0LV853ljbsFzuHIhcUJUflEFzs+/lu5kLZaSRK0WkwBinfTr5s5DIUJxFL1epAQqK+fu6qNXvRRi84Pge4WqisOfhomDP+SFJXMLvtF7OR4vFDinBZ4pF/GxAPQNSKzsLS9muNFaDabjzRpkOIXxeev4yXT7Rv420t91ht9hcJpKJEDJ6ImUzSTqyyLVscsWyuU624zYDWhJBF/uv3niQQNZKcnmvUgKRzMdnuxY/r4nu7PBMHaAx+u9ZpKtelEOAnQZD6fp2gqtyxh4ecVHVN1zUkCllQ6JejMEewmXFIMja0cNhkkhXEPZaomU98t/Z9fQVvxh2uf3TWVuRwPVLCGQiGmHkosi5Xl+yfPOqZT0hqEIQWnDM0QxRfrv+ywOWntYwx3SFNBDHWOmGsFU+9HhnzS9h7qQA9g731s6izyrGRN0XTI38WO988UCmmzBWOlwbuJoB+u/7pjYyVoIsSlt5g1LLUMjnFl093PIFK9UrmvEOyNW30mU5VK5ERqivLRYamygOVbphJnNmcyIjaI137tYHtpNcxvSLspyaU5L81QIZDahJIKUElqULBQ2UItmQhjKgwTocOzGIsuBpOvdk3lOjx2kBZDg8HW0vbC8dCGtJvmvOl9j3cCpKGQc5B6U0AlhZbKkRoRLGBxZRul/RyfTAlYaqJJsdACHCzr6G/vNqq0OQgFXUPQ+NH2T+2hDUEa8AeYdJrzTIE0FbLa87USlFRceyw1GAuVbXQ8PBtKYSpFRZoU7C8hWNbh2HxmOs2YCXiIksUftx+d2VkEDQQC2USKAyjOlArZwnG5pIb/73vKyvJhkGIr3Wwm/ct+fIdh2QF2/stCjaNpbnf72ebg4MaGAPWHufR+FEsZKhn2GlxS7co2TKd5Pk9hKsNMHDaTFQEbAOzxw8efP378+bP5DYCyAQydK6bT0SgsPs0woTDzryU1vrKtMRakQKVpunlY36hUUK6JwAY72l74+qvNV0MiFEpKpWtxkHpBSk2naqWCZkmvprLloi2MqRMwW4f0RsUPVBQs7xgdGmUlqD+1D1AsZZh8aP/qSqp9yjaqK2ySQVQfzOFhKoCxwGOxUlj76WitNYOkEGkoH+0UdJRUV2VJG+MDKZrIYZMKVKCv8mQrbLFWiyMp1JRKet8UCjpKqreyFosvIlB9TdhfWX/XmvCzK7D2caCixU8yek9S/ZW1UlsR0KKByk4nIFgMzUJJWyBFNaVDqZaOkuqtLMb2fQ6VtTKABW4EtYA+DmTR4ysfBaiYaSof1X+S6q/sbVRZiw9jUbrNZoaAkwGVVJQyeW+1YLqtv6T6K3unUahlghEh2Xp97e3bzCGcpKLUm2JOdZTUaCxUNk4yW02BOjxy/+1hXJjoCqOnpMZXFt9iikG6iaiZ4cEBoIrSOCrp/w59t7LVIklHIFWJ2oovzqCSorX/QMfaG96Cj6Cyp2sEThUVoNVaLEJJ7+CSXgOo6pFQI99i6n6ruLZ/LUqqXdkyN/x8YPybDIFenPow9INrA1VcvG83Gp04MTrMnZoavdelpNq3mEahXGo0rlVJtfbXvd67vfc+umYlvRQLNbh168a1K+llle3puXnzZk/P9SupGgtamPevNxRjkRac1x6KBoxXAv0HIb/znYYmR9cAAAAASUVORK5CYII=', 1, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得0佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (2, 'LV2', 2, 100, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得100佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (3, 'LV3', 3, 300, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得300佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (4, 'LV4', 4, 500, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得500佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (5, 'LV5', 5, 800, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得800佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (6, 'LV6', 6, 1000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得1000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (7, 'LV7', 7, 10000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得10000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (8, 'LV8', 8, 30000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得30000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (9, 'LV9', 9, 50000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得50000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (10, 'LV10', 10, 80000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得80000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (11, 'LV11', 11, 100000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得100000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (12, 'LV12', 12, 1000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得1000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (13, 'LV13', 13, 3000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得3000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (14, 'LV14', 14, 5000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得5000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (15, 'LV15', 15, 8000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得8000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (16, 'LV16', 16, 10000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得10000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (17, 'LV17', 17, 100000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得100000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (18, 'LV18', 18, 300000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得300000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (19, 'LV19', 19, 500000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得500000000佣金的代理'); -INSERT INTO `ff_agent_level` VALUES (20, 'LV20', 20, 800000000, '', 0, '', '2024-10-24 17:24:35', '', '2024-10-24 17:29:18', '晋级需再获得800000000佣金的代理'); - -SET FOREIGN_KEY_CHECKS = 1; - -DROP TABLE IF EXISTS `ff_agent_mode`; -CREATE TABLE `ff_agent_mode` ( - `id` bigint NOT NULL COMMENT '主键id', - `mode_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '代理模式名称', - `pattern_source` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '模式来源', - `settle_duration` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '结算周期', - `calc_performance` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '佣金计算依据', - `apply_mode` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '申请方式', - `calc_level_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '代理佣金计算层级', - `calc_mode` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '计算方式', - `calc_range` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '业绩计算范围', - `calc_ext_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '越级额外佣金类型', - `calc_ext_rate` decimal(10, 2) NULL DEFAULT NULL COMMENT '赠送比例', - `tutorial_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '推广教程配置类型', - `tutorial_contents` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '推广教程配置自定义模式下内容', - `default_status` tinyint NULL DEFAULT 0 COMMENT '是否默认(0非默认,1默认)', - `enable_status` tinyint NULL DEFAULT 0 COMMENT '启用(0未启用,1启用)', - `last_settle_day` datetime NULL DEFAULT NULL COMMENT '上周期结算时间', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '代理模式表' ROW_FORMAT = DYNAMIC; - -ALTER TABLE `ff_agent_mode` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - -INSERT INTO `ff_agent_mode` VALUES (1, '一级净盈利', '1', '3', '2', '0', '1', '0', '1', '0', 0.00, '0', NULL, 0, 0, NULL, '', '2024-10-23 10:24:35', '', '2024-10-23 15:54:19', NULL); -INSERT INTO `ff_agent_mode` VALUES (2, '三级净盈利', '1', '3', '2', '0', '3', '0', '1', '2', 0.00, '0', NULL, 1, 0, NULL, '', '2024-10-23 10:24:35', '', '2024-10-23 11:36:01', NULL); -INSERT INTO `ff_agent_mode` VALUES (3, '全民代理', '1', '1', '2', '0', '999', '0', '1', '2', 30.00, '0', NULL, 0, 0, NULL, '', '2024-10-23 10:24:35', '', '2024-10-23 11:36:01', NULL); -INSERT INTO `ff_agent_mode` VALUES (4, '无限极差', '1', '1', '2', '0', '999', '0', '1', '4', 0.00, '0', NULL, 0, 0, NULL, '', '2024-10-23 10:24:35', '', '2024-10-23 11:36:01', NULL); -INSERT INTO `ff_agent_mode` VALUES (5, '一级代理', '1', '1', '2', '0', '1', '0', '1', '0', 0.00, '0', NULL, 0, 0, NULL, '', '2024-10-23 10:24:35', '', '2024-10-23 11:36:01', NULL); - --- 菜单 SQL -insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) -values('代理模式', '3051', '1', 'agentMode', 'agent/agentMode/index', 1, 0, 'C', '0', '0', 'agent:agentMode:list', '#', 'admin', sysdate(), '', null, '代理模式菜单'); - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10000, '模式来源', 'ff_pattern_source', '0', 'admin', '2024-10-22 06:26:19', 'admin', '2024-10-22 06:26:40', '模式来源'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10000, 1, '系统自带', '1', 'ff_pattern_source', NULL, 'default', 'N', '0', 'admin', '2024-10-22 06:32:33', 'admin', '2024-10-22 06:32:41', ''); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10001, 2, '自定义', '2', 'ff_pattern_source', NULL, 'default', 'N', '0', 'admin', '2024-10-22 06:33:05', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10001, '代理佣金计算层级', 'ff_calc_level_type', '0', 'admin', '2024-10-22 06:42:11', '', NULL, '代理佣金计算层级'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10002, 1, '只算一级', '1', 'ff_calc_level_type', NULL, 'default', 'N', '0', 'admin', '2024-10-22 06:43:00', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10003, 2, '最多三级', '3', 'ff_calc_level_type', NULL, 'default', 'N', '0', 'admin', '2024-10-22 06:43:14', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10004, 3, '无数级', '999', 'ff_calc_level_type', NULL, 'default', 'N', '0', 'admin', '2024-10-22 06:43:40', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10002, '申请方式', 'ff_apply_mode', '0', 'admin', '2024-10-22 06:54:08', 'admin', '2024-10-22 06:54:13', '申请方式'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10005, 0, '直接生效', '0', 'ff_apply_mode', NULL, 'default', 'N', '0', 'admin', '2024-10-22 06:54:46', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10003, '结算周期', 'ff_settle_duration', '0', 'admin', '2024-10-22 06:59:57', '', NULL, '结算周期'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10006, 0, '日结', '1', 'ff_settle_duration', NULL, 'default', 'N', '0', 'admin', '2024-10-22 07:02:37', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10007, 1, '周结', '2', 'ff_settle_duration', NULL, 'default', 'N', '0', 'admin', '2024-10-22 07:02:53', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10008, 2, '月结', '3', 'ff_settle_duration', NULL, 'default', 'N', '0', 'admin', '2024-10-22 07:03:08', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10004, '佣金计算依据', 'ff_calc_performance', '0', 'admin', '2024-10-22 07:25:17', '', NULL, NULL); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10009, 0, '有效投注', '0', 'ff_calc_performance', NULL, 'default', 'N', '0', 'admin', '2024-10-22 07:26:14', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10010, 1, '亏损金额', '1', 'ff_calc_performance', NULL, 'default', 'N', '0', 'admin', '2024-10-22 07:26:37', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10011, 2, '净盈利', '2', 'ff_calc_performance', NULL, 'default', 'N', '0', 'admin', '2024-10-22 07:27:09', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10005, '计算方式', 'ff_calc_mode', '0', 'admin', '2024-10-22 08:23:21', '', NULL, '计算方式'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10012, 0, '所有会员(综合盈利会员)', '0', 'ff_calc_mode', NULL, 'default', 'N', '0', 'admin', '2024-10-22 08:24:18', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10013, 1, '仅计算亏损会员', '1', 'ff_calc_mode', NULL, 'default', 'N', '0', 'admin', '2024-10-22 08:24:37', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10006, '业绩计算范围', 'ff_calc_range', '0', 'admin', '2024-10-22 08:26:04', '', NULL, '业绩计算范围'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10014, 0, '计算全部(含无效)', '0', 'ff_calc_range', NULL, 'default', 'N', '0', 'admin', '2024-10-22 08:51:44', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10015, 1, '只计算有效会员业绩', '1', 'ff_calc_range', NULL, 'default', 'N', '0', 'admin', '2024-10-22 08:52:27', '', NULL, NULL); - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10007, '推广教程配置', 'ff_tutorial_type', '0', 'admin', '2024-10-22 08:56:58', '', NULL, '推广教程配置'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10016, 0, '系统自带', '0', 'ff_tutorial_type', NULL, 'default', 'N', '0', 'admin', '2024-10-22 08:57:35', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10017, 1, '自定义', '1', 'ff_tutorial_type', NULL, 'default', 'N', '0', 'admin', '2024-10-22 08:58:16', '', NULL, NULL); - - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10008, '越级额外佣金类型', 'ff_calc_ext_type', '0', 'admin', '2024-10-23 05:13:35', '', NULL, '越级额外佣金类型'); - -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10018, 0, '-', '0', 'ff_calc_ext_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:14:46', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10019, 1, '比例中的比例(跨级部分会员承担)', '1', 'ff_calc_ext_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:15:40', 'admin', '2024-10-23 05:16:20', NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10020, 2, '比例中的比例(跨级部分站长承担)', '2', 'ff_calc_ext_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:16:16', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10021, 3, '站长额外固定赠送', '3', 'ff_calc_ext_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:16:44', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10022, 4, '比例中的比例(跨级部分站长承担)', '4', 'ff_calc_ext_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 05:18:59', '', NULL, NULL); - -DROP TABLE IF EXISTS `ff_settlement_setting`; -CREATE TABLE `ff_settlement_setting` ( - `id` bigint NOT NULL COMMENT '主键id', - `commission_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '佣金领取时间类型', - `receive_way` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '领取方式', - `commission_start_time` time NULL DEFAULT NULL COMMENT '佣金领取开始时间', - `commission_end_time` time NULL DEFAULT NULL COMMENT '佣金领取结束时间', - `agent_audit_rate` decimal(10, 2) NULL DEFAULT NULL COMMENT '佣金稽核倍数', - `min_valid_bet` decimal(10, 2) NULL DEFAULT NULL COMMENT '有效投注金额', - `min_valid_recharge` decimal(10, 2) NULL DEFAULT NULL COMMENT '结算周期内充值金额', - `day_commission_limit` decimal(10, 2) NULL DEFAULT NULL COMMENT '日结模式上限', - `week_commission_limit` decimal(10, 2) NULL DEFAULT NULL COMMENT '周结模式上限', - `month_commission_limit` decimal(10, 2) NULL DEFAULT NULL COMMENT '月结模式上限', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '结算设置表' ROW_FORMAT = DYNAMIC; - -ALTER TABLE `ff_settlement_setting` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - --- ---------------------------- --- Records of ff_settlement_setting --- ---------------------------- -INSERT INTO `ff_settlement_setting` VALUES (1, '1', '08:00:00', '23:59:59', 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, '', '2024-10-24 09:14:00', '', '2024-10-24 10:00:00', NULL); - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10009, '佣金领取时间类型', 'ff_commission_type', '0', 'admin', '2024-10-23 09:36:14', '', NULL, '佣金领取时间类型'); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10023, 0, '每天', '1', 'ff_commission_type', NULL, 'default', 'N', '0', 'admin', '2024-10-23 09:36:31', '', NULL, NULL); - -DROP TABLE IF EXISTS `ff_agent_info`; -CREATE TABLE `ff_agent_info` ( - `id` bigint NOT NULL COMMENT '主键id', - `agent_id` bigint NOT NULL COMMENT '代理id', - `root_id` bigint NULL COMMENT '顶级代理id', - `level` int COMMENT '所属层级', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '代理信息表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_agent_info` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - -DROP TABLE IF EXISTS `ff_agent_relation`; -CREATE TABLE `ff_agent_relation` ( - `id` bigint NOT NULL COMMENT '主键id', - `root_id` bigint NULL COMMENT '顶级代理id', - `node_relation` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '节点关系', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '代理关系表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_agent_relation` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - --- 按钮 SQL -INSERT INTO `ff-admin`.`sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10007, '代理模式查询', 10006, 1, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:agentMode:query', '#', 'admin', '2024-10-24 01:09:11', '', NULL, ''); -INSERT INTO `ff-admin`.`sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10008, '代理模式新增', 10006, 2, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:agentMode:add', '#', 'admin', '2024-10-24 01:09:11', '', NULL, ''); -INSERT INTO `ff-admin`.`sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10009, '代理模式修改', 10006, 3, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:agentMode:edit', '#', 'admin', '2024-10-24 01:09:11', '', NULL, ''); -INSERT INTO `ff-admin`.`sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10010, '代理模式删除', 10006, 4, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:agentMode:remove', '#', 'admin', '2024-10-24 01:09:11', '', NULL, ''); -INSERT INTO `ff-admin`.`sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10011, '代理模式导出', 10006, 5, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:agentMode:export', '#', 'admin', '2024-10-24 01:09:11', '', NULL, ''); - - -DROP TABLE IF EXISTS `ff_commission_info`; -CREATE TABLE `ff_commission_info` ( - `id` bigint NOT NULL COMMENT '主键id', - `member_id` bigint NOT NULL COMMENT '会员id', - `currency_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', - `total_amount` decimal(10, 2) DEFAULT NULL COMMENT '累计佣金', - `total_withdrawn` decimal(10, 2) DEFAULT NULL COMMENT '累计提现', - `total_no_withdrawn` decimal(10, 2) DEFAULT NULL COMMENT '累计未提现', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '佣金信息表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_commission_info` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - - -DROP TABLE IF EXISTS `ff_commission_flow_detail`; -CREATE TABLE `ff_commission_flow_detail` ( - `id` bigint NOT NULL COMMENT '主键id', - `member_id` bigint NOT NULL COMMENT '会员id', - `currency_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', - `amount` decimal(10, 2) DEFAULT NULL COMMENT '佣金', - `withdrawn` decimal(10, 2) DEFAULT NULL COMMENT '提现金额', - `settle_status` tinyint DEFAULT 0 COMMENT '结算状态(0未提现,1已提现)', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '佣金流水明细表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_commission_flow_detail` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10010, '领取方式', 'ff_receive_way', '0', 'admin', '2024-11-01 05:23:51', '', NULL, '领取方式'); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10024, 0, '自动派发', '1', 'ff_receive_way', NULL, 'default', 'N', '0', 'admin', '2024-11-01 05:24:20', '', NULL, NULL); - - -ALTER TABLE `ff_agent_level` - MODIFY COLUMN `total_commission` decimal(16, 2) NULL DEFAULT NULL COMMENT '晋升等级佣金标准' AFTER `level`; -ALTER TABLE `ff_settlement_setting` - MODIFY COLUMN `min_valid_bet` decimal(16, 2) NULL DEFAULT NULL COMMENT '有效投注金额' AFTER `agent_audit_rate`; -ALTER TABLE `ff_settlement_setting` - MODIFY COLUMN `min_valid_recharge` decimal(16, 2) NULL DEFAULT NULL COMMENT '结算周期内充值金额' AFTER `min_valid_bet`; -ALTER TABLE `ff_settlement_setting` - MODIFY COLUMN `day_commission_limit` decimal(16, 2) NULL DEFAULT NULL COMMENT '日结模式上限' AFTER `min_valid_recharge`; -ALTER TABLE `ff_settlement_setting` - MODIFY COLUMN `week_commission_limit` decimal(16, 2) NULL DEFAULT NULL COMMENT '周结模式上限' AFTER `day_commission_limit`; -ALTER TABLE `ff_settlement_setting` - MODIFY COLUMN `month_commission_limit` decimal(16, 2) NULL DEFAULT NULL COMMENT '月结模式上限' AFTER `week_commission_limit`; -ALTER TABLE `ff_commission_info` - MODIFY COLUMN `total_amount` decimal(16, 2) NULL DEFAULT NULL COMMENT '累计佣金' AFTER `currency_type`; -ALTER TABLE `ff_commission_info` - MODIFY COLUMN `total_withdrawn` decimal(16, 2) NULL DEFAULT NULL COMMENT '累计提现' AFTER `total_amount`; -ALTER TABLE `ff_commission_info` - MODIFY COLUMN `total_no_withdrawn` decimal(16, 2) NULL DEFAULT NULL COMMENT '累计未提现' AFTER `total_withdrawn`; -ALTER TABLE `ff_commission_flow_detail` - MODIFY COLUMN `amount` decimal(16, 2) NULL DEFAULT NULL COMMENT '佣金' AFTER `currency_type`; -ALTER TABLE `ff_commission_flow_detail` - MODIFY COLUMN `withdrawn` decimal(16, 2) NULL DEFAULT NULL COMMENT '提现金额' AFTER `amount`; - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10011, '代理提佣方式', 'ff_commission_way', '0', 'admin', '2024-11-05 06:31:53', '', NULL, '代理提佣方式'); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10025, 0, '不限制(自由领取)', '0', 'ff_commission_way', NULL, 'default', 'N', '0', 'admin', '2024-11-05 06:32:13', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10026, 1, '禁止所有提佣(含下级,私下结算)', '1', 'ff_commission_way', NULL, 'default', 'N', '0', 'admin', '2024-11-05 06:32:23', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10027, 2, '禁止本人提佣(私下结算)', '2', 'ff_commission_way', NULL, 'default', 'N', '0', 'admin', '2024-11-05 06:32:34', '', NULL, NULL); - -INSERT INTO `sys_dict_type` (`dict_id`, `dict_name`, `dict_type`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10012, '佣金返利类型', 'ff_rebate_type', '0', 'admin', '2024-11-05 09:16:42', '', NULL, '佣金返利类型'); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10028, 1, '有效投注', '1', 'ff_rebate_type', NULL, 'default', 'N', '0', 'admin', '2024-11-05 09:17:34', '', NULL, NULL); -INSERT INTO `sys_dict_data` (`dict_code`, `dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10029, 2, '净盈利', '2', 'ff_rebate_type', NULL, 'default', 'N', '0', 'admin', '2024-11-05 09:18:02', '', NULL, NULL); - - -DROP TABLE IF EXISTS `ff_rebate_setting`; -CREATE TABLE `ff_rebate_setting` ( - `id` bigint NOT NULL COMMENT '主键id', - `game_type` bigint DEFAULT NULL COMMENT '游戏类型', - `calc_performance` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '佣金计算依据', - `valid_num` int DEFAULT NULL COMMENT '有效人数', - `commission` decimal(16, 2) DEFAULT NULL COMMENT '佣金金额', - `commission_rate` decimal(10, 2) DEFAULT NULL COMMENT '佣金比例', - `min_amount` decimal(16, 2) DEFAULT NULL COMMENT '最小金额', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '返佣设置表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_rebate_setting` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; - -delete from sys_menu where menu_name like '返佣设置%'; - -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10018, '返佣设置', 3051, 1, 'rebateSetting', 'agent/rebateSetting/index', NULL, '', 1, 0, 'C', '0', '0', 'agent:rebateSetting:list', '#', 'admin', '2024-11-06 03:28:17', '', NULL, '返佣设置菜单'); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10019, '返佣设置查询', 10018, 1, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:rebateSetting:query', '#', 'admin', '2024-11-06 03:28:17', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10020, '返佣设置新增', 10018, 2, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:rebateSetting:add', '#', 'admin', '2024-11-06 03:28:17', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10021, '返佣设置修改', 10018, 3, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:rebateSetting:edit', '#', 'admin', '2024-11-06 03:28:17', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10022, '返佣设置删除', 10018, 4, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:rebateSetting:remove', '#', 'admin', '2024-11-06 03:28:17', '', NULL, ''); -INSERT INTO `sys_menu` (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `route_name`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES (10023, '返佣设置导出', 10018, 5, '#', '', NULL, '', 1, 0, 'F', '0', '0', 'agent:rebateSetting:export', '#', 'admin', '2024-11-06 03:28:17', '', NULL, ''); - -ALTER TABLE ff_agent_mode ADD COLUMN agent_model_type tinyint DEFAULT NULL COMMENT '代理模式类型' AFTER `pattern_source`; - -ALTER TABLE ff_agent_info ADD COLUMN depth int COMMENT '深度(下级层数)' AFTER `level`; -ALTER TABLE ff_agent_info ADD COLUMN direct_num int COMMENT '直属数' AFTER `depth`; -ALTER TABLE ff_agent_info ADD COLUMN agent_num int COMMENT '代理总数' AFTER `direct_num`; -ALTER TABLE ff_agent_info ADD COLUMN member_num int COMMENT '所有下级的会员数量(下级总数)' AFTER `agent_num`; - - -ALTER TABLE ff_agent_level ADD COLUMN currency_type varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '币种' AFTER `level`; - -DROP TABLE IF EXISTS `ff_agent_level_relation`; -CREATE TABLE `ff_agent_level_relation` ( - `id` bigint NOT NULL COMMENT '主键id', - `member_id` bigint NOT NULL COMMENT '会员id', - `agent_level_id` bigint NOT NULL COMMENT '代理等级id', - `currency_type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', - `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '创建者', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '更新者', - `update_time` datetime NULL DEFAULT NULL COMMENT '更新时间', - `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '代理等级关系表' ROW_FORMAT = Dynamic; - -ALTER TABLE `ff_agent_level_relation` MODIFY COLUMN `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键id' FIRST; \ No newline at end of file