From e6bf5ff995808269059719269cf788aaa94a4670 Mon Sep 17 00:00:00 2001
From: "12691282@qq.com" <12691282@qq.com>
Date: Wed, 16 Oct 2024 11:15:07 +0800
Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitignore | 8 +
Dockerfile | 10 +
LICENSE | 191 ++
eladmin-common/pom.xml | 26 +
.../zhengjie/annotation/AnonymousAccess.java | 30 +
.../java/me/zhengjie/annotation/Limit.java | 49 +
.../rest/AnonymousDeleteMapping.java | 91 +
.../annotation/rest/AnonymousGetMapping.java | 90 +
.../rest/AnonymousPatchMapping.java | 91 +
.../annotation/rest/AnonymousPostMapping.java | 91 +
.../annotation/rest/AnonymousPutMapping.java | 91 +
.../java/me/zhengjie/aspect/LimitAspect.java | 99 +
.../java/me/zhengjie/aspect/LimitType.java | 27 +
.../java/me/zhengjie/base/BaseEntity.java | 79 +
.../me/zhengjie/config/AuditorConfig.java | 45 +
.../me/zhengjie/config/AuthorityConfig.java | 37 +
.../me/zhengjie/config/FileProperties.java | 60 +
.../me/zhengjie/config/MultipartConfig.java | 47 +
.../java/me/zhengjie/config/RedisConfig.java | 222 +++
.../me/zhengjie/config/RsaProperties.java | 38 +
.../me/zhengjie/config/SwaggerConfig.java | 105 +
.../config/mybatis/MyMetaObjectHandler.java | 55 +
.../config/mybatis/MybatisPlusConfig.java | 42 +
.../exception/BadConfigurationException.java | 98 +
.../exception/BadRequestException.java | 40 +
.../exception/EntityExistException.java | 34 +
.../exception/EntityNotFoundException.java | 34 +
.../zhengjie/exception/handler/ApiError.java | 49 +
.../handler/GlobalExceptionHandler.java | 113 ++
.../main/java/me/zhengjie/utils/CacheKey.java | 58 +
.../main/java/me/zhengjie/utils/CallBack.java | 43 +
.../java/me/zhengjie/utils/CloseUtil.java | 47 +
.../main/java/me/zhengjie/utils/DateUtil.java | 169 ++
.../java/me/zhengjie/utils/ElConstant.java | 34 +
.../java/me/zhengjie/utils/EncryptUtils.java | 100 +
.../main/java/me/zhengjie/utils/FileUtil.java | 395 ++++
.../java/me/zhengjie/utils/HttpSendUtil.java | 130 ++
.../java/me/zhengjie/utils/PageResult.java | 16 +
.../main/java/me/zhengjie/utils/PageUtil.java | 70 +
.../java/me/zhengjie/utils/RedisUtils.java | 725 +++++++
.../java/me/zhengjie/utils/RequestHolder.java | 33 +
.../main/java/me/zhengjie/utils/RsaUtils.java | 198 ++
.../java/me/zhengjie/utils/SecurityUtils.java | 99 +
.../zhengjie/utils/SpringContextHolder.java | 156 ++
.../java/me/zhengjie/utils/StringUtils.java | 240 +++
.../java/me/zhengjie/utils/ThrowableUtil.java | 37 +
.../me/zhengjie/utils/enums/CodeBiEnum.java | 50 +
.../me/zhengjie/utils/enums/CodeEnum.java | 46 +
.../zhengjie/utils/enums/DataScopeEnum.java | 53 +
.../utils/enums/RequestMethodEnum.java | 74 +
.../java/me/zhengjie/utils/DateUtilsTest.java | 26 +
.../me/zhengjie/utils/EncryptUtilsTest.java | 33 +
.../java/me/zhengjie/utils/FileUtilTest.java | 36 +
.../me/zhengjie/utils/StringUtilsTest.java | 48 +
eladmin-generator/pom.xml | 39 +
.../java/me/zhengjie/domain/ColumnInfo.java | 77 +
.../java/me/zhengjie/domain/GenConfig.java | 78 +
.../java/me/zhengjie/domain/vo/TableInfo.java | 48 +
.../me/zhengjie/mapper/ColumnInfoMapper.java | 39 +
.../me/zhengjie/mapper/GenConfigMapper.java | 31 +
.../me/zhengjie/rest/GenConfigController.java | 51 +
.../me/zhengjie/rest/GeneratorController.java | 101 +
.../me/zhengjie/service/GenConfigService.java | 41 +
.../me/zhengjie/service/GeneratorService.java | 94 +
.../service/impl/GenConfigServiceImpl.java | 69 +
.../service/impl/GeneratorServiceImpl.java | 161 ++
.../main/java/me/zhengjie/utils/ColUtil.java | 54 +
.../main/java/me/zhengjie/utils/GenUtil.java | 417 ++++
.../src/main/resources/generator.properties | 27 +
.../resources/mapper/ColumnInfoMapper.xml | 49 +
.../main/resources/mapper/GenConfigMapper.xml | 27 +
.../resources/template/admin/Controller.ftl | 89 +
.../main/resources/template/admin/Entity.ftl | 68 +
.../resources/template/admin/Mapper-xml.ftl | 62 +
.../main/resources/template/admin/Mapper.ftl | 37 +
.../template/admin/QueryCriteria.ftl | 45 +
.../main/resources/template/admin/Service.ftl | 75 +
.../resources/template/admin/ServiceImpl.ftl | 105 +
.../src/main/resources/template/front/api.ftl | 27 +
.../main/resources/template/front/index.ftl | 169 ++
eladmin-logging/pom.xml | 22 +
.../main/java/me/zhengjie/annotation/Log.java | 31 +
.../java/me/zhengjie/aspect/LogAspect.java | 98 +
.../main/java/me/zhengjie/domain/SysLog.java | 78 +
.../domain/vo/SysLogQueryCriteria.java | 37 +
.../java/me/zhengjie/mapper/SysLogMapper.java | 42 +
.../me/zhengjie/rest/SysLogController.java | 111 ++
.../me/zhengjie/service/SysLogService.java | 95 +
.../service/impl/SysLogServiceImpl.java | 169 ++
.../main/resources/mapper/SysLogMapper.xml | 69 +
eladmin-system/pom.xml | 108 +
.../src/main/java/me/zhengjie/AppRun.java | 65 +
.../me/zhengjie/config/ConfigurerAdapter.java | 88 +
.../RelaxedQueryCharsConnectorCustomizer.java | 31 +
.../me/zhengjie/config/WebSocketConfig.java | 33 +
.../config/thread/AsyncTaskProperties.java | 59 +
.../config/thread/CustomExecutorConfig.java | 52 +
.../me/zhengjie/modules/mnt/domain/App.java | 67 +
.../zhengjie/modules/mnt/domain/Database.java | 57 +
.../zhengjie/modules/mnt/domain/Deploy.java | 67 +
.../modules/mnt/domain/DeployHistory.java | 60 +
.../zhengjie/modules/mnt/domain/Server.java | 79 +
.../mnt/domain/vo/AppQueryCriteria.java | 32 +
.../mnt/domain/vo/DatabaseQueryCriteria.java | 34 +
.../domain/vo/DeployHistoryQueryCriteria.java | 34 +
.../mnt/domain/vo/DeployQueryCriteria.java | 36 +
.../mnt/domain/vo/ServerQueryCriteria.java | 32 +
.../modules/mnt/mapper/AppMapper.java | 39 +
.../modules/mnt/mapper/DatabaseMapper.java | 39 +
.../mnt/mapper/DeployHistoryMapper.java | 38 +
.../modules/mnt/mapper/DeployMapper.java | 41 +
.../mnt/mapper/DeployServerMapper.java | 38 +
.../modules/mnt/mapper/ServerMapper.java | 39 +
.../modules/mnt/rest/AppController.java | 88 +
.../modules/mnt/rest/DatabaseController.java | 123 ++
.../modules/mnt/rest/DeployController.java | 157 ++
.../mnt/rest/DeployHistoryController.java | 69 +
.../modules/mnt/rest/ServerController.java | 96 +
.../modules/mnt/service/AppService.java | 77 +
.../modules/mnt/service/DatabaseService.java | 83 +
.../mnt/service/DeployHistoryService.java | 70 +
.../modules/mnt/service/DeployService.java | 111 ++
.../modules/mnt/service/ServerService.java | 91 +
.../mnt/service/impl/AppServiceImpl.java | 119 ++
.../mnt/service/impl/DatabaseServiceImpl.java | 102 +
.../impl/DeployHistoryServiceImpl.java | 84 +
.../mnt/service/impl/DeployServiceImpl.java | 425 ++++
.../mnt/service/impl/ServerServiceImpl.java | 113 ++
.../modules/mnt/util/DataTypeEnum.java | 140 ++
.../modules/mnt/util/ExecuteShellUtil.java | 101 +
.../modules/mnt/util/ScpClientUtil.java | 105 +
.../zhengjie/modules/mnt/util/SqlUtils.java | 201 ++
.../modules/mnt/websocket/MsgType.java | 31 +
.../modules/mnt/websocket/SocketMsg.java | 33 +
.../mnt/websocket/WebSocketServer.java | 134 ++
.../modules/quartz/config/JobRunner.java | 51 +
.../modules/quartz/config/QuartzConfig.java | 66 +
.../modules/quartz/domain/QuartzJob.java | 85 +
.../modules/quartz/domain/QuartzLog.java | 63 +
.../domain/vo/QuartzJobQueryCriteria.java | 34 +
.../quartz/mapper/QuartzJobMapper.java | 41 +
.../quartz/mapper/QuartzLogMapper.java | 38 +
.../quartz/rest/QuartzJobController.java | 141 ++
.../quartz/service/QuartzJobService.java | 120 ++
.../service/impl/QuartzJobServiceImpl.java | 192 ++
.../modules/quartz/task/TestTask.java | 41 +
.../modules/quartz/utils/ExecutionJob.java | 133 ++
.../modules/quartz/utils/QuartzManage.java | 177 ++
.../modules/quartz/utils/QuartzRunnable.java | 58 +
.../config/ConfigBeanConfiguration.java | 43 +
.../security/config/SpringSecurityConfig.java | 188 ++
.../security/config/bean/LoginCode.java | 61 +
.../security/config/bean/LoginCodeEnum.java | 43 +
.../security/config/bean/LoginProperties.java | 125 ++
.../config/bean/SecurityProperties.java | 72 +
.../modules/security/dto/TokenDTO.java | 8 +
.../rest/AuthorizationController.java | 158 ++
.../security/rest/OnlineController.java | 70 +
.../security/JwtAccessDeniedHandler.java | 37 +
.../security/JwtAuthenticationEntryPoint.java | 39 +
.../security/security/TokenConfigurer.java | 43 +
.../security/security/TokenFilter.java | 109 ++
.../security/security/TokenProvider.java | 136 ++
.../security/service/OnlineUserService.java | 149 ++
.../security/service/UserCacheManager.java | 82 +
.../service/UserDetailsServiceImpl.java | 72 +
.../security/service/dto/AuthUserDto.java | 39 +
.../security/service/dto/AuthorityDto.java | 34 +
.../security/service/dto/JwtUserDto.java | 80 +
.../security/service/dto/OnlineUserDto.java | 73 +
.../zhengjie/modules/system/domain/Dept.java | 102 +
.../zhengjie/modules/system/domain/Dict.java | 54 +
.../modules/system/domain/DictDetail.java | 58 +
.../zhengjie/modules/system/domain/Job.java | 72 +
.../zhengjie/modules/system/domain/Menu.java | 123 ++
.../zhengjie/modules/system/domain/Role.java | 89 +
.../zhengjie/modules/system/domain/User.java | 119 ++
.../system/domain/bo/TransactionBO.java | 32 +
.../system/domain/dto/AssetConfigDTO.java | 23 +
.../system/domain/dto/AssetCountDTO.java | 40 +
.../system/domain/dto/AssetUpdateDTO.java | 24 +
.../domain/dto/AssetUpdateStatusDTO.java | 12 +
.../modules/system/domain/dto/AstlistDTO.java | 23 +
.../system/domain/dto/DepartmentDTO.java | 16 +
.../system/domain/dto/LevelConfigDTO.java | 20 +
.../modules/system/domain/dto/MemberDTO.java | 29 +
.../modules/system/domain/dto/PageDTO.java | 11 +
.../system/domain/dto/ProMemberDTO.java | 12 +
.../modules/system/domain/dto/TeamDTO.java | 26 +
.../system/domain/dto/UpDownTeamDTO.java | 12 +
.../modules/system/domain/vo/AccountVO.java | 34 +
.../modules/system/domain/vo/AssetVO.java | 33 +
.../modules/system/domain/vo/CountVO.java | 31 +
.../system/domain/vo/DeptQueryCriteria.java | 40 +
.../domain/vo/DictDetailQueryCriteria.java | 30 +
.../system/domain/vo/DictQueryCriteria.java | 32 +
.../system/domain/vo/JobQueryCriteria.java | 36 +
.../modules/system/domain/vo/MemberVO.java | 44 +
.../modules/system/domain/vo/MenuMetaVo.java | 35 +
.../system/domain/vo/MenuQueryCriteria.java | 36 +
.../modules/system/domain/vo/MenuVo.java | 45 +
.../system/domain/vo/RoleQueryCriteria.java | 36 +
.../modules/system/domain/vo/UserPassVo.java | 31 +
.../system/domain/vo/UserQueryCriteria.java | 47 +
.../modules/system/mapper/AssetMapper.java | 62 +
.../modules/system/mapper/CountMapper.java | 34 +
.../modules/system/mapper/DeptMapper.java | 47 +
.../system/mapper/DictDetailMapper.java | 40 +
.../modules/system/mapper/DictMapper.java | 35 +
.../modules/system/mapper/JobMapper.java | 41 +
.../system/mapper/MemParameterMapper.java | 7 +
.../modules/system/mapper/MemberMapper.java | 25 +
.../modules/system/mapper/MenuMapper.java | 54 +
.../modules/system/mapper/RoleDeptMapper.java | 34 +
.../modules/system/mapper/RoleMapper.java | 50 +
.../modules/system/mapper/RoleMenuMapper.java | 36 +
.../modules/system/mapper/TeamMapper.java | 26 +
.../modules/system/mapper/UserJobMapper.java | 34 +
.../modules/system/mapper/UserMapper.java | 64 +
.../modules/system/mapper/UserRoleMapper.java | 34 +
.../modules/system/rest/AssetController.java | 122 ++
.../modules/system/rest/CountController.java | 34 +
.../modules/system/rest/DeptController.java | 128 ++
.../modules/system/rest/DictController.java | 101 +
.../system/rest/DictDetailController.java | 96 +
.../modules/system/rest/JobController.java | 95 +
.../modules/system/rest/LimitController.java | 47 +
.../system/rest/MemParameterController.java | 15 +
.../modules/system/rest/MemberController.java | 60 +
.../modules/system/rest/MenuController.java | 154 ++
.../system/rest/MonitorController.java | 45 +
.../modules/system/rest/RoleController.java | 153 ++
.../modules/system/rest/TeamController.java | 53 +
.../modules/system/rest/UserController.java | 210 ++
.../modules/system/rest/VerifyController.java | 76 +
.../modules/system/service/AssetService.java | 29 +
.../modules/system/service/CountService.java | 8 +
.../modules/system/service/DataService.java | 34 +
.../modules/system/service/DeptService.java | 124 ++
.../system/service/DictDetailService.java | 65 +
.../modules/system/service/DictService.java | 76 +
.../modules/system/service/JobService.java | 89 +
.../system/service/MemParameterService.java | 4 +
.../modules/system/service/MemberService.java | 18 +
.../modules/system/service/MenuService.java | 119 ++
.../system/service/MonitorService.java | 31 +
.../modules/system/service/RoleService.java | 131 ++
.../modules/system/service/TeamService.java | 13 +
.../modules/system/service/UserService.java | 136 ++
.../modules/system/service/VerifyService.java | 41 +
.../system/service/impl/AssetServiceImpl.java | 266 +++
.../system/service/impl/CountServiceImpl.java | 97 +
.../system/service/impl/DataServiceImpl.java | 90 +
.../system/service/impl/DeptServiceImpl.java | 276 +++
.../service/impl/DictDetailServiceImpl.java | 91 +
.../system/service/impl/DictServiceImpl.java | 123 ++
.../system/service/impl/JobServiceImpl.java | 117 ++
.../service/impl/MemParameterServiceImpl.java | 12 +
.../service/impl/MemberServiceImpl.java | 66 +
.../system/service/impl/MenuServiceImpl.java | 344 ++++
.../service/impl/MonitorServiceImpl.java | 192 ++
.../system/service/impl/RoleServiceImpl.java | 226 +++
.../system/service/impl/TeamServiceImpl.java | 68 +
.../system/service/impl/UserServiceImpl.java | 290 +++
.../service/impl/VerifyServiceImpl.java | 81 +
eladmin-system/src/main/resources/banner.txt | 8 +
.../main/resources/config/application-dev.yml | 123 ++
.../resources/config/application-prod.yml | 125 ++
.../resources/config/application-quartz.yml | 29 +
.../src/main/resources/config/application.yml | 61 +
.../src/main/resources/generator.properties | 27 +
.../main/resources/log4jdbc.log4j2.properties | 4 +
eladmin-system/src/main/resources/logback.xml | 45 +
.../main/resources/mapper/mnt/AppMapper.xml | 37 +
.../resources/mapper/mnt/DatabaseMapper.xml | 36 +
.../mapper/mnt/DeployHistoryMapper.xml | 39 +
.../resources/mapper/mnt/DeployMapper.xml | 94 +
.../mapper/mnt/DeployServerMapper.xml | 33 +
.../resources/mapper/mnt/ServerMapper.xml | 47 +
.../mapper/quartz/QuartzJobMapper.xml | 49 +
.../mapper/quartz/QuartzLogMapper.xml | 40 +
.../resources/mapper/system/AssetMapper.xml | 249 +++
.../resources/mapper/system/CountMapper.xml | 46 +
.../resources/mapper/system/DeptMapper.xml | 70 +
.../mapper/system/DictDetailMapper.xml | 53 +
.../resources/mapper/system/DictMapper.xml | 59 +
.../resources/mapper/system/JobMapper.xml | 36 +
.../resources/mapper/system/MemberMapper.xml | 109 ++
.../resources/mapper/system/MenuMapper.xml | 79 +
.../mapper/system/RoleDeptMapper.xml | 25 +
.../resources/mapper/system/RoleMapper.xml | 125 ++
.../mapper/system/RoleMenuMapper.xml | 30 +
.../resources/mapper/system/TeamMapper.xml | 77 +
.../resources/mapper/system/UserJobMapper.xml | 25 +
.../resources/mapper/system/UserMapper.xml | 178 ++
.../mapper/system/UserRoleMapper.xml | 25 +
.../src/main/resources/template/email.ftl | 48 +
.../src/main/resources/template/taskAlarm.ftl | 69 +
.../EladminSystemApplicationTests.java | 16 +
eladmin-tools/pom.xml | 50 +
.../java/me/zhengjie/domain/AlipayConfig.java | 74 +
.../java/me/zhengjie/domain/EmailConfig.java | 57 +
.../java/me/zhengjie/domain/LocalStorage.java | 72 +
.../java/me/zhengjie/domain/QiniuConfig.java | 68 +
.../java/me/zhengjie/domain/QiniuContent.java | 59 +
.../java/me/zhengjie/domain/vo/EmailVo.java | 44 +
.../domain/vo/LocalStorageQueryCriteria.java | 32 +
.../domain/vo/QiniuQueryCriteria.java | 32 +
.../java/me/zhengjie/domain/vo/TradeVo.java | 63 +
.../zhengjie/mapper/AliPayConfigMapper.java | 30 +
.../me/zhengjie/mapper/EmailConfigMapper.java | 30 +
.../zhengjie/mapper/LocalStorageMapper.java | 38 +
.../me/zhengjie/mapper/QiniuConfigMapper.java | 31 +
.../zhengjie/mapper/QiniuContentMapper.java | 41 +
.../me/zhengjie/rest/AliPayController.java | 135 ++
.../me/zhengjie/rest/EmailController.java | 63 +
.../zhengjie/rest/LocalStorageController.java | 99 +
.../me/zhengjie/rest/QiniuController.java | 124 ++
.../me/zhengjie/service/AliPayService.java | 58 +
.../me/zhengjie/service/EmailService.java | 49 +
.../zhengjie/service/LocalStorageService.java | 77 +
.../zhengjie/service/QiNiuConfigService.java | 44 +
.../zhengjie/service/QiniuContentService.java | 94 +
.../service/impl/AliPayServiceImpl.java | 118 ++
.../service/impl/EmailServiceImpl.java | 106 +
.../service/impl/LocalStorageServiceImpl.java | 122 ++
.../service/impl/QiNiuConfigServiceImpl.java | 66 +
.../service/impl/QiniuContentServiceImpl.java | 202 ++
.../me/zhengjie/utils/AliPayStatusEnum.java | 46 +
.../java/me/zhengjie/utils/AlipayUtils.java | 85 +
.../java/me/zhengjie/utils/QiNiuUtil.java | 71 +
.../resources/mapper/LocalStorageMapper.xml | 41 +
.../resources/mapper/QiniuContentMapper.xml | 41 +
pom.xml | 229 +++
sql/code_column_config.sql | 63 +
sql/code_gen_config.sql | 43 +
sql/crm.sql | 1741 +++++++++++++++++
sql/mnt_app.sql | 44 +
sql/mnt_database.sql | 41 +
sql/mnt_deploy.sql | 39 +
sql/mnt_deploy_history.sql | 38 +
sql/mnt_deploy_server.sql | 35 +
sql/mnt_server.sql | 43 +
sql/sys_dept.sql | 51 +
sql/sys_dict.sql | 42 +
sql/sys_dict_detail.sql | 48 +
sql/sys_job.sql | 46 +
sql/sys_menu.sql | 116 ++
sql/sys_quartz_job.sql | 53 +
sql/sys_quartz_log.sql | 42 +
sql/sys_role.sql | 46 +
sql/sys_roles_depts.sql | 39 +
sql/sys_roles_menus.sql | 166 ++
sql/sys_user.sql | 60 +
sql/sys_users_jobs.sql | 38 +
sql/sys_users_roles.sql | 39 +
sql/tool_alipay_config.sql | 44 +
sql/tool_email_config.sql | 38 +
sql/tool_local_storage.sql | 43 +
sql/tool_picture.sql | 44 +
sql/tool_qiniu_config.sql | 39 +
sql/tool_qiniu_content.sql | 41 +
362 files changed, 28867 insertions(+)
create mode 100644 .gitignore
create mode 100644 Dockerfile
create mode 100644 LICENSE
create mode 100644 eladmin-common/pom.xml
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/AnonymousAccess.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/Limit.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousDeleteMapping.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousGetMapping.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPatchMapping.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPostMapping.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPutMapping.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/aspect/LimitAspect.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/aspect/LimitType.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/base/BaseEntity.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/AuditorConfig.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/AuthorityConfig.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/FileProperties.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/MultipartConfig.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/RedisConfig.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/RsaProperties.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/SwaggerConfig.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/mybatis/MyMetaObjectHandler.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/config/mybatis/MybatisPlusConfig.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/exception/BadConfigurationException.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/exception/BadRequestException.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/exception/EntityExistException.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/exception/EntityNotFoundException.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/exception/handler/ApiError.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/exception/handler/GlobalExceptionHandler.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/CacheKey.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/CallBack.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/CloseUtil.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/DateUtil.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/ElConstant.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/EncryptUtils.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/FileUtil.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/HttpSendUtil.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/PageResult.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/PageUtil.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/RedisUtils.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/RequestHolder.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/RsaUtils.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/SecurityUtils.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/SpringContextHolder.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/StringUtils.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/ThrowableUtil.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/enums/CodeBiEnum.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/enums/CodeEnum.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/enums/DataScopeEnum.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/utils/enums/RequestMethodEnum.java
create mode 100644 eladmin-common/src/test/java/me/zhengjie/utils/DateUtilsTest.java
create mode 100644 eladmin-common/src/test/java/me/zhengjie/utils/EncryptUtilsTest.java
create mode 100644 eladmin-common/src/test/java/me/zhengjie/utils/FileUtilTest.java
create mode 100644 eladmin-common/src/test/java/me/zhengjie/utils/StringUtilsTest.java
create mode 100644 eladmin-generator/pom.xml
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/domain/ColumnInfo.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/domain/GenConfig.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/domain/vo/TableInfo.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/mapper/ColumnInfoMapper.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/mapper/GenConfigMapper.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/rest/GenConfigController.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/rest/GeneratorController.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/service/GenConfigService.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/service/GeneratorService.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/service/impl/GenConfigServiceImpl.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/service/impl/GeneratorServiceImpl.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/utils/ColUtil.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/utils/GenUtil.java
create mode 100644 eladmin-generator/src/main/resources/generator.properties
create mode 100644 eladmin-generator/src/main/resources/mapper/ColumnInfoMapper.xml
create mode 100644 eladmin-generator/src/main/resources/mapper/GenConfigMapper.xml
create mode 100644 eladmin-generator/src/main/resources/template/admin/Controller.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/Entity.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/Mapper-xml.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/Mapper.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/QueryCriteria.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/Service.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/ServiceImpl.ftl
create mode 100644 eladmin-generator/src/main/resources/template/front/api.ftl
create mode 100644 eladmin-generator/src/main/resources/template/front/index.ftl
create mode 100644 eladmin-logging/pom.xml
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/annotation/Log.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/aspect/LogAspect.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/domain/SysLog.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/domain/vo/SysLogQueryCriteria.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/mapper/SysLogMapper.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/rest/SysLogController.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/SysLogService.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/impl/SysLogServiceImpl.java
create mode 100644 eladmin-logging/src/main/resources/mapper/SysLogMapper.xml
create mode 100644 eladmin-system/pom.xml
create mode 100644 eladmin-system/src/main/java/me/zhengjie/AppRun.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/config/ConfigurerAdapter.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/config/RelaxedQueryCharsConnectorCustomizer.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/config/WebSocketConfig.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/config/thread/AsyncTaskProperties.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/config/thread/CustomExecutorConfig.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/App.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/Database.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/Deploy.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/DeployHistory.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/Server.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/vo/AppQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/vo/DatabaseQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/vo/DeployHistoryQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/vo/DeployQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/domain/vo/ServerQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/mapper/AppMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/mapper/DatabaseMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/mapper/DeployHistoryMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/mapper/DeployMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/mapper/DeployServerMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/mapper/ServerMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/rest/AppController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/rest/DatabaseController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/rest/DeployController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/rest/DeployHistoryController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/rest/ServerController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/AppService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/DatabaseService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/DeployHistoryService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/DeployService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/ServerService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/impl/AppServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/impl/DatabaseServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/impl/DeployHistoryServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/impl/DeployServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/impl/ServerServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/util/DataTypeEnum.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/util/ExecuteShellUtil.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/util/ScpClientUtil.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/util/SqlUtils.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/websocket/MsgType.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/websocket/SocketMsg.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/websocket/WebSocketServer.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/config/JobRunner.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/config/QuartzConfig.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/domain/QuartzJob.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/domain/QuartzLog.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/domain/vo/QuartzJobQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/mapper/QuartzJobMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/mapper/QuartzLogMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/rest/QuartzJobController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/service/QuartzJobService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/service/impl/QuartzJobServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/task/TestTask.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/utils/ExecutionJob.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/utils/QuartzManage.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/utils/QuartzRunnable.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/config/ConfigBeanConfiguration.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/config/SpringSecurityConfig.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/config/bean/LoginCode.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/config/bean/LoginCodeEnum.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/config/bean/LoginProperties.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/config/bean/SecurityProperties.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/dto/TokenDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/rest/AuthorizationController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/rest/OnlineController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/security/JwtAccessDeniedHandler.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/security/JwtAuthenticationEntryPoint.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/security/TokenConfigurer.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/security/TokenFilter.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/security/TokenProvider.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/OnlineUserService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserCacheManager.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserDetailsServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/AuthUserDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/AuthorityDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/JwtUserDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/OnlineUserDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Dept.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Dict.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/DictDetail.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Job.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Menu.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Role.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/User.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/bo/TransactionBO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/AssetConfigDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/AssetCountDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/AssetUpdateDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/AssetUpdateStatusDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/AstlistDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/DepartmentDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/LevelConfigDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/MemberDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/PageDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/ProMemberDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/TeamDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/dto/UpDownTeamDTO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/AccountVO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/AssetVO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/CountVO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/DeptQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/DictDetailQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/DictQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/JobQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/MemberVO.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/MenuMetaVo.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/MenuQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/MenuVo.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/RoleQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/UserPassVo.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/vo/UserQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/AssetMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/CountMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/DeptMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/DictDetailMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/DictMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/JobMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/MemParameterMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/MemberMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/MenuMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/RoleDeptMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/RoleMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/RoleMenuMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/TeamMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/UserJobMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/UserMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/mapper/UserRoleMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/AssetController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/CountController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/DeptController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/DictController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/DictDetailController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/JobController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/LimitController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MemParameterController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MemberController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MenuController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/MonitorController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/RoleController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/TeamController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/UserController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/VerifyController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/AssetService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/CountService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/DataService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/DeptService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/DictDetailService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/DictService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/JobService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/MemParameterService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/MemberService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/MenuService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/MonitorService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/RoleService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/TeamService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/UserService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/VerifyService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/AssetServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/CountServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/DataServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/DeptServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/DictDetailServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/DictServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/JobServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MemParameterServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MemberServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MenuServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MonitorServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/RoleServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/TeamServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/UserServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/VerifyServiceImpl.java
create mode 100644 eladmin-system/src/main/resources/banner.txt
create mode 100644 eladmin-system/src/main/resources/config/application-dev.yml
create mode 100644 eladmin-system/src/main/resources/config/application-prod.yml
create mode 100644 eladmin-system/src/main/resources/config/application-quartz.yml
create mode 100644 eladmin-system/src/main/resources/config/application.yml
create mode 100644 eladmin-system/src/main/resources/generator.properties
create mode 100644 eladmin-system/src/main/resources/log4jdbc.log4j2.properties
create mode 100644 eladmin-system/src/main/resources/logback.xml
create mode 100644 eladmin-system/src/main/resources/mapper/mnt/AppMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/mnt/DatabaseMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/mnt/DeployHistoryMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/mnt/DeployMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/mnt/DeployServerMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/mnt/ServerMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/quartz/QuartzJobMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/quartz/QuartzLogMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/AssetMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/CountMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/DeptMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/DictDetailMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/DictMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/JobMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/MemberMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/MenuMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/RoleDeptMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/RoleMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/RoleMenuMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/TeamMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/UserJobMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/UserMapper.xml
create mode 100644 eladmin-system/src/main/resources/mapper/system/UserRoleMapper.xml
create mode 100644 eladmin-system/src/main/resources/template/email.ftl
create mode 100644 eladmin-system/src/main/resources/template/taskAlarm.ftl
create mode 100644 eladmin-system/src/test/java/me/zhengjie/EladminSystemApplicationTests.java
create mode 100644 eladmin-tools/pom.xml
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/AlipayConfig.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/EmailConfig.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/LocalStorage.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/QiniuConfig.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/QiniuContent.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/vo/EmailVo.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/vo/LocalStorageQueryCriteria.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/vo/QiniuQueryCriteria.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/domain/vo/TradeVo.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/mapper/AliPayConfigMapper.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/mapper/EmailConfigMapper.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/mapper/LocalStorageMapper.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/mapper/QiniuConfigMapper.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/mapper/QiniuContentMapper.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/rest/AliPayController.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/rest/EmailController.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/rest/LocalStorageController.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/rest/QiniuController.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/AliPayService.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/EmailService.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/LocalStorageService.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/QiNiuConfigService.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/QiniuContentService.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/impl/AliPayServiceImpl.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/impl/EmailServiceImpl.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/impl/LocalStorageServiceImpl.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/impl/QiNiuConfigServiceImpl.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/impl/QiniuContentServiceImpl.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/utils/AliPayStatusEnum.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/utils/AlipayUtils.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/utils/QiNiuUtil.java
create mode 100644 eladmin-tools/src/main/resources/mapper/LocalStorageMapper.xml
create mode 100644 eladmin-tools/src/main/resources/mapper/QiniuContentMapper.xml
create mode 100644 pom.xml
create mode 100644 sql/code_column_config.sql
create mode 100644 sql/code_gen_config.sql
create mode 100644 sql/crm.sql
create mode 100644 sql/mnt_app.sql
create mode 100644 sql/mnt_database.sql
create mode 100644 sql/mnt_deploy.sql
create mode 100644 sql/mnt_deploy_history.sql
create mode 100644 sql/mnt_deploy_server.sql
create mode 100644 sql/mnt_server.sql
create mode 100644 sql/sys_dept.sql
create mode 100644 sql/sys_dict.sql
create mode 100644 sql/sys_dict_detail.sql
create mode 100644 sql/sys_job.sql
create mode 100644 sql/sys_menu.sql
create mode 100644 sql/sys_quartz_job.sql
create mode 100644 sql/sys_quartz_log.sql
create mode 100644 sql/sys_role.sql
create mode 100644 sql/sys_roles_depts.sql
create mode 100644 sql/sys_roles_menus.sql
create mode 100644 sql/sys_user.sql
create mode 100644 sql/sys_users_jobs.sql
create mode 100644 sql/sys_users_roles.sql
create mode 100644 sql/tool_alipay_config.sql
create mode 100644 sql/tool_email_config.sql
create mode 100644 sql/tool_local_storage.sql
create mode 100644 sql/tool_picture.sql
create mode 100644 sql/tool_qiniu_config.sql
create mode 100644 sql/tool_qiniu_content.sql
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..d52737e
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+### IDEA ###
+~/*
+.idea/*
+*.iml
+*/target/*
+*/*.iml
+/.gradle/
+/application.pid
\ No newline at end of file
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..34f7e21
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,10 @@
+FROM harbor.enterx.cc/base/jdk11
+
+WORKDIR /bitcloud/
+COPY ./eladmin-system/target/eladmin-system-1.1.jar /bitcloud/app.jar
+
+ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el7_8.x86_64
+ENV JAVA_OPTS=""
+
+EXPOSE 8000
+ENTRYPOINT exec java ${JAVA_OPTS} -jar app.jar
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..ca38718
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,191 @@
+Apache License
+Version 2.0, January 2004
+http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+"License" shall mean the terms and conditions for use, reproduction, and
+distribution as defined by Sections 1 through 9 of this document.
+
+"Licensor" shall mean the copyright owner or entity authorized by the copyright
+owner that is granting the License.
+
+"Legal Entity" shall mean the union of the acting entity and all other entities
+that control, are controlled by, or are under common control with that entity.
+For the purposes of this definition, "control" means (i) the power, direct or
+indirect, to cause the direction or management of such entity, whether by
+contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
+outstanding shares, or (iii) beneficial ownership of such entity.
+
+"You" (or "Your") shall mean an individual or Legal Entity exercising
+permissions granted by this License.
+
+"Source" form shall mean the preferred form for making modifications, including
+but not limited to software source code, documentation source, and configuration
+files.
+
+"Object" form shall mean any form resulting from mechanical transformation or
+translation of a Source form, including but not limited to compiled object code,
+generated documentation, and conversions to other media types.
+
+"Work" shall mean the work of authorship, whether in Source or Object form, made
+available under the License, as indicated by a copyright notice that is included
+in or attached to the work (an example is provided in the Appendix below).
+
+"Derivative Works" shall mean any work, whether in Source or Object form, that
+is based on (or derived from) the Work and for which the editorial revisions,
+annotations, elaborations, or other modifications represent, as a whole, an
+original work of authorship. For the purposes of this License, Derivative Works
+shall not include works that remain separable from, or merely link (or bind by
+name) to the interfaces of, the Work and Derivative Works thereof.
+
+"Contribution" shall mean any work of authorship, including the original version
+of the Work and any modifications or additions to that Work or Derivative Works
+thereof, that is intentionally submitted to Licensor for inclusion in the Work
+by the copyright owner or by an individual or Legal Entity authorized to submit
+on behalf of the copyright owner. For the purposes of this definition,
+"submitted" means any form of electronic, verbal, or written communication sent
+to the Licensor or its representatives, including but not limited to
+communication on electronic mailing lists, source code control systems, and
+issue tracking systems that are managed by, or on behalf of, the Licensor for
+the purpose of discussing and improving the Work, but excluding communication
+that is conspicuously marked or otherwise designated in writing by the copyright
+owner as "Not a Contribution."
+
+"Contributor" shall mean Licensor and any individual or Legal Entity on behalf
+of whom a Contribution has been received by Licensor and subsequently
+incorporated within the Work.
+
+2. Grant of Copyright License.
+
+Subject to the terms and conditions of this License, each Contributor hereby
+grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
+irrevocable copyright license to reproduce, prepare Derivative Works of,
+publicly display, publicly perform, sublicense, and distribute the Work and such
+Derivative Works in Source or Object form.
+
+3. Grant of Patent License.
+
+Subject to the terms and conditions of this License, each Contributor hereby
+grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
+irrevocable (except as stated in this section) patent license to make, have
+made, use, offer to sell, sell, import, and otherwise transfer the Work, where
+such license applies only to those patent claims licensable by such Contributor
+that are necessarily infringed by their Contribution(s) alone or by combination
+of their Contribution(s) with the Work to which such Contribution(s) was
+submitted. If You institute patent litigation against any entity (including a
+cross-claim or counterclaim in a lawsuit) alleging that the Work or a
+Contribution incorporated within the Work constitutes direct or contributory
+patent infringement, then any patent licenses granted to You under this License
+for that Work shall terminate as of the date such litigation is filed.
+
+4. Redistribution.
+
+You may reproduce and distribute copies of the Work or Derivative Works thereof
+in any medium, with or without modifications, and in Source or Object form,
+provided that You meet the following conditions:
+
+You must give any other recipients of the Work or Derivative Works a copy of
+this License; and
+You must cause any modified files to carry prominent notices stating that You
+changed the files; and
+You must retain, in the Source form of any Derivative Works that You distribute,
+all copyright, patent, trademark, and attribution notices from the Source form
+of the Work, excluding those notices that do not pertain to any part of the
+Derivative Works; and
+If the Work includes a "NOTICE" text file as part of its distribution, then any
+Derivative Works that You distribute must include a readable copy of the
+attribution notices contained within such NOTICE file, excluding those notices
+that do not pertain to any part of the Derivative Works, in at least one of the
+following places: within a NOTICE text file distributed as part of the
+Derivative Works; within the Source form or documentation, if provided along
+with the Derivative Works; or, within a display generated by the Derivative
+Works, if and wherever such third-party notices normally appear. The contents of
+the NOTICE file are for informational purposes only and do not modify the
+License. You may add Your own attribution notices within Derivative Works that
+You distribute, alongside or as an addendum to the NOTICE text from the Work,
+provided that such additional attribution notices cannot be construed as
+modifying the License.
+You may add Your own copyright statement to Your modifications and may provide
+additional or different license terms and conditions for use, reproduction, or
+distribution of Your modifications, or for any such Derivative Works as a whole,
+provided Your use, reproduction, and distribution of the Work otherwise complies
+with the conditions stated in this License.
+
+5. Submission of Contributions.
+
+Unless You explicitly state otherwise, any Contribution intentionally submitted
+for inclusion in the Work by You to the Licensor shall be under the terms and
+conditions of this License, without any additional terms or conditions.
+Notwithstanding the above, nothing herein shall supersede or modify the terms of
+any separate license agreement you may have executed with Licensor regarding
+such Contributions.
+
+6. Trademarks.
+
+This License does not grant permission to use the trade names, trademarks,
+service marks, or product names of the Licensor, except as required for
+reasonable and customary use in describing the origin of the Work and
+reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty.
+
+Unless required by applicable law or agreed to in writing, Licensor provides the
+Work (and each Contributor provides its Contributions) on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied,
+including, without limitation, any warranties or conditions of TITLE,
+NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are
+solely responsible for determining the appropriateness of using or
+redistributing the Work and assume any risks associated with Your exercise of
+permissions under this License.
+
+8. Limitation of Liability.
+
+In no event and under no legal theory, whether in tort (including negligence),
+contract, or otherwise, unless required by applicable law (such as deliberate
+and grossly negligent acts) or agreed to in writing, shall any Contributor be
+liable to You for damages, including any direct, indirect, special, incidental,
+or consequential damages of any character arising as a result of this License or
+out of the use or inability to use the Work (including but not limited to
+damages for loss of goodwill, work stoppage, computer failure or malfunction, or
+any and all other commercial damages or losses), even if such Contributor has
+been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability.
+
+While redistributing the Work or Derivative Works thereof, You may choose to
+offer, and charge a fee for, acceptance of support, warranty, indemnity, or
+other liability obligations and/or rights consistent with this License. However,
+in accepting such obligations, You may act only on Your own behalf and on Your
+sole responsibility, not on behalf of any other Contributor, and only if You
+agree to indemnify, defend, and hold each Contributor harmless for any liability
+incurred by, or claims asserted against, such Contributor by reason of your
+accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
+
+APPENDIX: How to apply the Apache License to your work
+
+To apply the Apache License to your work, attach the following boilerplate
+notice, with the fields enclosed by brackets "{}" replaced with your own
+identifying information. (Don't include the brackets!) The text should be
+enclosed in the appropriate comment syntax for the file format. We also
+recommend that a file or class name and description of purpose be included on
+the same "printed page" as the copyright notice for easier identification within
+third-party archives.
+
+ Copyright 2019-2020 Zheng Jie
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
\ No newline at end of file
diff --git a/eladmin-common/pom.xml b/eladmin-common/pom.xml
new file mode 100644
index 0000000..a8a3fe7
--- /dev/null
+++ b/eladmin-common/pom.xml
@@ -0,0 +1,26 @@
+
+
+
+ eladmin
+ me.zhengjie
+ 1.1
+
+ 4.0.0
+
+ 5.8.21
+
+
+ eladmin-common
+ 公共模块
+
+
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
+
+
+
\ No newline at end of file
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/AnonymousAccess.java b/eladmin-common/src/main/java/me/zhengjie/annotation/AnonymousAccess.java
new file mode 100644
index 0000000..b2c168f
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/AnonymousAccess.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2019-2020 Zheng Jie
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package me.zhengjie.annotation;
+
+import java.lang.annotation.*;
+
+/**
+ * @author jacky
+ * 用于标记匿名访问方法
+ */
+@Inherited
+@Documented
+@Target({ElementType.METHOD,ElementType.ANNOTATION_TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+public @interface AnonymousAccess {
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/Limit.java b/eladmin-common/src/main/java/me/zhengjie/annotation/Limit.java
new file mode 100644
index 0000000..58b41cf
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/Limit.java
@@ -0,0 +1,49 @@
+/*
+ * Copyright 2019-2020 Zheng Jie
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package me.zhengjie.annotation;
+
+import me.zhengjie.aspect.LimitType;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @author jacky
+ */
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Limit {
+
+ // 资源名称,用于描述接口功能
+ String name() default "";
+
+ // 资源 key
+ String key() default "";
+
+ // key prefix
+ String prefix() default "";
+
+ // 时间的,单位秒
+ int period();
+
+ // 限制访问次数
+ int count();
+
+ // 限制类型
+ LimitType limitType() default LimitType.CUSTOMER;
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousDeleteMapping.java b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousDeleteMapping.java
new file mode 100644
index 0000000..6a81c2e
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousDeleteMapping.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2002-2016 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package me.zhengjie.annotation.rest;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import me.zhengjie.annotation.AnonymousAccess;
+import org.springframework.core.annotation.AliasFor;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+/**
+ * Annotation for mapping HTTP {@code DELETE} requests onto specific handler
+ * methods.
+ * 支持匿名访问 DeleteMapping
+ *
+ * @author liaojinlong
+ * @see AnonymousGetMapping
+ * @see AnonymousPostMapping
+ * @see AnonymousPutMapping
+ * @see AnonymousPatchMapping
+ * @see RequestMapping
+ */
+@AnonymousAccess
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+@RequestMapping(method = RequestMethod.DELETE)
+public @interface AnonymousDeleteMapping {
+
+ /**
+ * Alias for {@link RequestMapping#name}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String name() default "";
+
+ /**
+ * Alias for {@link RequestMapping#value}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] value() default {};
+
+ /**
+ * Alias for {@link RequestMapping#path}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] path() default {};
+
+ /**
+ * Alias for {@link RequestMapping#params}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] params() default {};
+
+ /**
+ * Alias for {@link RequestMapping#headers}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] headers() default {};
+
+ /**
+ * Alias for {@link RequestMapping#consumes}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] consumes() default {};
+
+ /**
+ * Alias for {@link RequestMapping#produces}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] produces() default {};
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousGetMapping.java b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousGetMapping.java
new file mode 100644
index 0000000..c260a71
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousGetMapping.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright 2002-2016 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package me.zhengjie.annotation.rest;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import me.zhengjie.annotation.AnonymousAccess;
+import org.springframework.core.annotation.AliasFor;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+/**
+ * Annotation for mapping HTTP {@code GET} requests onto specific handler
+ * methods.
+ *
+ * 支持匿名访问 GetMapping
+ *
+ * @author liaojinlong
+ * @see RequestMapping
+ */
+@AnonymousAccess
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+@RequestMapping(method = RequestMethod.GET)
+public @interface AnonymousGetMapping {
+
+ /**
+ * Alias for {@link RequestMapping#name}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String name() default "";
+
+ /**
+ * Alias for {@link RequestMapping#value}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] value() default {};
+
+ /**
+ * Alias for {@link RequestMapping#path}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] path() default {};
+
+ /**
+ * Alias for {@link RequestMapping#params}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] params() default {};
+
+ /**
+ * Alias for {@link RequestMapping#headers}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] headers() default {};
+
+ /**
+ * Alias for {@link RequestMapping#consumes}.
+ *
+ * @since 4.3.5
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] consumes() default {};
+
+ /**
+ * Alias for {@link RequestMapping#produces}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] produces() default {};
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPatchMapping.java b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPatchMapping.java
new file mode 100644
index 0000000..6686617
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPatchMapping.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2002-2016 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package me.zhengjie.annotation.rest;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import me.zhengjie.annotation.AnonymousAccess;
+import org.springframework.core.annotation.AliasFor;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+/**
+ * Annotation for mapping HTTP {@code PATCH} requests onto specific handler
+ * methods.
+ * * 支持匿名访问 PatchMapping
+ *
+ * @author liaojinlong
+ * @see AnonymousGetMapping
+ * @see AnonymousPostMapping
+ * @see AnonymousPutMapping
+ * @see AnonymousDeleteMapping
+ * @see RequestMapping
+ */
+@AnonymousAccess
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+@RequestMapping(method = RequestMethod.PATCH)
+public @interface AnonymousPatchMapping {
+
+ /**
+ * Alias for {@link RequestMapping#name}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String name() default "";
+
+ /**
+ * Alias for {@link RequestMapping#value}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] value() default {};
+
+ /**
+ * Alias for {@link RequestMapping#path}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] path() default {};
+
+ /**
+ * Alias for {@link RequestMapping#params}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] params() default {};
+
+ /**
+ * Alias for {@link RequestMapping#headers}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] headers() default {};
+
+ /**
+ * Alias for {@link RequestMapping#consumes}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] consumes() default {};
+
+ /**
+ * Alias for {@link RequestMapping#produces}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] produces() default {};
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPostMapping.java b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPostMapping.java
new file mode 100644
index 0000000..8f1cdcd
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPostMapping.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2002-2016 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package me.zhengjie.annotation.rest;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import me.zhengjie.annotation.AnonymousAccess;
+import org.springframework.core.annotation.AliasFor;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+/**
+ * Annotation for mapping HTTP {@code POST} requests onto specific handler
+ * methods.
+ * 支持匿名访问 PostMapping
+ *
+ * @author liaojinlong
+ * @see AnonymousGetMapping
+ * @see AnonymousPostMapping
+ * @see AnonymousPutMapping
+ * @see AnonymousDeleteMapping
+ * @see RequestMapping
+ */
+@AnonymousAccess
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+@RequestMapping(method = RequestMethod.POST)
+public @interface AnonymousPostMapping {
+
+ /**
+ * Alias for {@link RequestMapping#name}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String name() default "";
+
+ /**
+ * Alias for {@link RequestMapping#value}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] value() default {};
+
+ /**
+ * Alias for {@link RequestMapping#path}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] path() default {};
+
+ /**
+ * Alias for {@link RequestMapping#params}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] params() default {};
+
+ /**
+ * Alias for {@link RequestMapping#headers}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] headers() default {};
+
+ /**
+ * Alias for {@link RequestMapping#consumes}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] consumes() default {};
+
+ /**
+ * Alias for {@link RequestMapping#produces}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] produces() default {};
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPutMapping.java b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPutMapping.java
new file mode 100644
index 0000000..7c417da
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/rest/AnonymousPutMapping.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2002-2016 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package me.zhengjie.annotation.rest;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import me.zhengjie.annotation.AnonymousAccess;
+import org.springframework.core.annotation.AliasFor;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+
+/**
+ * Annotation for mapping HTTP {@code PUT} requests onto specific handler
+ * methods.
+ * * 支持匿名访问 PutMapping
+ *
+ * @author liaojinlong
+ * @see AnonymousGetMapping
+ * @see AnonymousPostMapping
+ * @see AnonymousPutMapping
+ * @see AnonymousDeleteMapping
+ * @see RequestMapping
+ */
+@AnonymousAccess
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+@RequestMapping(method = RequestMethod.PUT)
+public @interface AnonymousPutMapping {
+
+ /**
+ * Alias for {@link RequestMapping#name}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String name() default "";
+
+ /**
+ * Alias for {@link RequestMapping#value}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] value() default {};
+
+ /**
+ * Alias for {@link RequestMapping#path}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] path() default {};
+
+ /**
+ * Alias for {@link RequestMapping#params}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] params() default {};
+
+ /**
+ * Alias for {@link RequestMapping#headers}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] headers() default {};
+
+ /**
+ * Alias for {@link RequestMapping#consumes}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] consumes() default {};
+
+ /**
+ * Alias for {@link RequestMapping#produces}.
+ */
+ @AliasFor(annotation = RequestMapping.class)
+ String[] produces() default {};
+
+}
diff --git a/eladmin-common/src/main/java/me/zhengjie/aspect/LimitAspect.java b/eladmin-common/src/main/java/me/zhengjie/aspect/LimitAspect.java
new file mode 100644
index 0000000..31f4040
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/aspect/LimitAspect.java
@@ -0,0 +1,99 @@
+/*
+ * Copyright 2019-2020 Zheng Jie
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package me.zhengjie.aspect;
+
+import com.google.common.collect.ImmutableList;
+import me.zhengjie.annotation.Limit;
+import me.zhengjie.exception.BadRequestException;
+import me.zhengjie.utils.RequestHolder;
+import me.zhengjie.utils.StringUtils;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Pointcut;
+import org.aspectj.lang.reflect.MethodSignature;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.core.script.DefaultRedisScript;
+import org.springframework.data.redis.core.script.RedisScript;
+import org.springframework.stereotype.Component;
+import javax.servlet.http.HttpServletRequest;
+import java.lang.reflect.Method;
+
+/**
+ * @author /
+ */
+@Aspect
+@Component
+public class LimitAspect {
+
+ private final RedisTemplate