From 2b8d36284aaf9dd36f9c194a3e9dcec4998dccf1 Mon Sep 17 00:00:00 2001
From: hhb <839062268@qq.com>
Date: Tue, 31 Oct 2023 23:40:08 +0800
Subject: [PATCH] init
---
.gitignore | 8 +
LICENSE | 191 +++
README.md | 1 +
eladmin-common/pom.xml | 26 +
.../zhengjie/annotation/AnonymousAccess.java | 30 +
.../zhengjie/annotation/DataPermission.java | 47 +
.../java/me/zhengjie/annotation/Limit.java | 49 +
.../java/me/zhengjie/annotation/Query.java | 92 ++
.../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 +
.../main/java/me/zhengjie/base/BaseDTO.java | 40 +
.../java/me/zhengjie/base/BaseEntity.java | 85 ++
.../java/me/zhengjie/base/BaseMapper.java | 53 +
.../me/zhengjie/config/AuditorConfig.java | 45 +
.../me/zhengjie/config/AuthorityConfig.java | 37 +
.../me/zhengjie/config/FileProperties.java | 60 +
.../java/me/zhengjie/config/RedisConfig.java | 225 +++
.../me/zhengjie/config/RsaProperties.java | 38 +
.../me/zhengjie/config/SwaggerConfig.java | 151 ++
.../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 | 160 +++
.../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/PageResult.java | 16 +
.../main/java/me/zhengjie/utils/PageUtil.java | 63 +
.../java/me/zhengjie/utils/QueryHelp.java | 218 +++
.../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 | 232 ++++
.../java/me/zhengjie/utils/ThrowableUtil.java | 37 +
.../me/zhengjie/utils/ValidationUtil.java | 46 +
.../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 | 97 ++
.../java/me/zhengjie/domain/GenConfig.java | 78 ++
.../java/me/zhengjie/domain/vo/TableInfo.java | 48 +
.../repository/ColumnInfoRepository.java | 34 +
.../repository/GenConfigRepository.java | 33 +
.../me/zhengjie/rest/GenConfigController.java | 51 +
.../me/zhengjie/rest/GeneratorController.java | 109 ++
.../me/zhengjie/service/GenConfigService.java | 40 +
.../me/zhengjie/service/GeneratorService.java | 98 ++
.../service/impl/GenConfigServiceImpl.java | 67 +
.../service/impl/GeneratorServiceImpl.java | 204 +++
.../main/java/me/zhengjie/utils/ColUtil.java | 54 +
.../main/java/me/zhengjie/utils/GenUtil.java | 422 ++++++
.../src/main/resources/generator.properties | 27 +
.../resources/template/admin/Controller.ftl | 89 ++
.../src/main/resources/template/admin/Dto.ftl | 53 +
.../main/resources/template/admin/Entity.ftl | 84 ++
.../main/resources/template/admin/Mapper.ftl | 31 +
.../template/admin/QueryCriteria.ftl | 80 ++
.../resources/template/admin/Repository.ftl | 39 +
.../main/resources/template/admin/Service.ftl | 82 ++
.../resources/template/admin/ServiceImpl.ftl | 157 +++
.../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 | 80 ++
.../me/zhengjie/repository/LogRepository.java | 39 +
.../me/zhengjie/rest/SysLogController.java | 111 ++
.../me/zhengjie/service/SysLogService.java | 94 ++
.../zhengjie/service/dto/SysLogErrorDto.java | 46 +
.../service/dto/SysLogQueryCriteria.java | 42 +
.../zhengjie/service/dto/SysLogSmallDto.java | 40 +
.../service/impl/SysLogServiceImpl.java | 180 +++
.../service/mapstruct/LogErrorMapper.java | 31 +
.../service/mapstruct/LogSmallMapper.java | 31 +
eladmin-system/pom.xml | 108 ++
.../src/main/java/me/zhengjie/AppRun.java | 66 +
.../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 | 59 +
.../modules/mnt/domain/DeployHistory.java | 62 +
.../modules/mnt/domain/ServerDeploy.java | 80 ++
.../modules/mnt/repository/AppRepository.java | 27 +
.../mnt/repository/DatabaseRepository.java | 27 +
.../repository/DeployHistoryRepository.java | 27 +
.../mnt/repository/DeployRepository.java | 27 +
.../repository/ServerDeployRepository.java | 34 +
.../modules/mnt/rest/AppController.java | 89 ++
.../modules/mnt/rest/DatabaseController.java | 124 ++
.../modules/mnt/rest/DeployController.java | 155 +++
.../mnt/rest/DeployHistoryController.java | 69 +
.../mnt/rest/ServerDeployController.java | 97 ++
.../modules/mnt/service/AppService.java | 82 ++
.../modules/mnt/service/DatabaseService.java | 89 ++
.../mnt/service/DeployHistoryService.java | 75 +
.../modules/mnt/service/DeployService.java | 117 ++
.../mnt/service/ServerDeployService.java | 96 ++
.../modules/mnt/service/dto/AppDto.java | 71 +
.../mnt/service/dto/AppQueryCriteria.java | 38 +
.../modules/mnt/service/dto/DatabaseDto.java | 55 +
.../service/dto/DatabaseQueryCriteria.java | 44 +
.../modules/mnt/service/dto/DeployDto.java | 78 ++
.../mnt/service/dto/DeployHistoryDto.java | 58 +
.../dto/DeployHistoryQueryCriteria.java | 41 +
.../mnt/service/dto/DeployQueryCriteria.java | 39 +
.../mnt/service/dto/ServerDeployDto.java | 61 +
.../dto/ServerDeployQueryCriteria.java | 38 +
.../mnt/service/impl/AppServiceImpl.java | 120 ++
.../mnt/service/impl/DatabaseServiceImpl.java | 114 ++
.../impl/DeployHistoryServiceImpl.java | 93 ++
.../mnt/service/impl/DeployServiceImpl.java | 430 ++++++
.../service/impl/ServerDeployServiceImpl.java | 122 ++
.../mnt/service/mapstruct/AppMapper.java | 31 +
.../mnt/service/mapstruct/DatabaseMapper.java | 31 +
.../mapstruct/DeployHistoryMapper.java | 31 +
.../mnt/service/mapstruct/DeployMapper.java | 31 +
.../service/mapstruct/ServerDeployMapper.java | 31 +
.../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 | 52 +
.../modules/quartz/domain/QuartzJob.java | 85 ++
.../modules/quartz/domain/QuartzLog.java | 67 +
.../repository/QuartzJobRepository.java | 34 +
.../repository/QuartzLogRepository.java | 28 +
.../quartz/rest/QuartzJobController.java | 141 ++
.../quartz/service/QuartzJobService.java | 123 ++
.../quartz/service/dto/JobQueryCriteria.java | 38 +
.../service/impl/QuartzJobServiceImpl.java | 197 +++
.../modules/quartz/task/TestTask.java | 41 +
.../modules/quartz/utils/ExecutionJob.java | 133 ++
.../modules/quartz/utils/QuartzManage.java | 174 +++
.../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 +
.../rest/AuthorizationController.java | 149 ++
.../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 | 135 ++
.../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 | 86 ++
.../zhengjie/modules/system/domain/Dict.java | 54 +
.../modules/system/domain/DictDetail.java | 56 +
.../zhengjie/modules/system/domain/Job.java | 73 +
.../zhengjie/modules/system/domain/Menu.java | 110 ++
.../modules/system/domain/Purchase.java | 115 ++
.../modules/system/domain/Reimburse.java | 105 ++
.../zhengjie/modules/system/domain/Role.java | 99 ++
.../zhengjie/modules/system/domain/User.java | 129 ++
.../modules/system/domain/UserBank.java | 73 +
.../modules/system/domain/vo/MenuMetaVo.java | 35 +
.../modules/system/domain/vo/MenuVo.java | 45 +
.../modules/system/domain/vo/UserPassVo.java | 31 +
.../system/repository/DeptRepository.java | 69 +
.../repository/DictDetailRepository.java | 36 +
.../system/repository/DictRepository.java | 43 +
.../system/repository/JobRepository.java | 42 +
.../system/repository/MenuRepository.java | 85 ++
.../system/repository/PurchaseRepository.java | 28 +
.../repository/ReimburseRepository.java | 28 +
.../system/repository/RoleRepository.java | 80 ++
.../system/repository/UserBankRepository.java | 33 +
.../system/repository/UserRepository.java | 139 ++
.../modules/system/rest/DeptController.java | 129 ++
.../modules/system/rest/DictController.java | 103 ++
.../system/rest/DictDetailController.java | 100 ++
.../modules/system/rest/JobController.java | 96 ++
.../modules/system/rest/LimitController.java | 47 +
.../modules/system/rest/MenuController.java | 157 +++
.../system/rest/MonitorController.java | 45 +
.../system/rest/PurchaseController.java | 90 ++
.../system/rest/ReimburseController.java | 90 ++
.../modules/system/rest/RoleController.java | 155 +++
.../system/rest/UserBankController.java | 90 ++
.../modules/system/rest/UserController.java | 210 +++
.../modules/system/rest/VerifyController.java | 76 ++
.../modules/system/service/DataService.java | 34 +
.../modules/system/service/DeptService.java | 124 ++
.../system/service/DictDetailService.java | 63 +
.../modules/system/service/DictService.java | 75 +
.../modules/system/service/JobService.java | 88 ++
.../modules/system/service/MenuService.java | 126 ++
.../system/service/MonitorService.java | 31 +
.../system/service/PurchaseService.java | 83 ++
.../system/service/ReimburseService.java | 83 ++
.../modules/system/service/RoleService.java | 137 ++
.../system/service/UserBankService.java | 83 ++
.../modules/system/service/UserService.java | 133 ++
.../modules/system/service/VerifyService.java | 41 +
.../modules/system/service/dto/DeptDto.java | 76 ++
.../system/service/dto/DeptQueryCriteria.java | 46 +
.../system/service/dto/DeptSmallDto.java | 31 +
.../system/service/dto/DictDetailDto.java | 40 +
.../service/dto/DictDetailQueryCriteria.java | 33 +
.../modules/system/service/dto/DictDto.java | 39 +
.../system/service/dto/DictQueryCriteria.java | 30 +
.../system/service/dto/DictSmallDto.java | 31 +
.../modules/system/service/dto/JobDto.java | 46 +
.../system/service/dto/JobQueryCriteria.java | 40 +
.../system/service/dto/JobSmallDto.java | 33 +
.../modules/system/service/dto/MenuDto.java | 91 ++
.../system/service/dto/MenuQueryCriteria.java | 41 +
.../system/service/dto/PurchaseDto.java | 93 ++
.../service/dto/PurchaseQueryCriteria.java | 33 +
.../system/service/dto/ReimburseDto.java | 81 ++
.../service/dto/ReimburseQueryCriteria.java | 33 +
.../modules/system/service/dto/RoleDto.java | 63 +
.../system/service/dto/RoleQueryCriteria.java | 36 +
.../system/service/dto/RoleSmallDto.java | 35 +
.../system/service/dto/UserBankDto.java | 61 +
.../service/dto/UserBankQueryCriteria.java | 29 +
.../modules/system/service/dto/UserDto.java | 68 +
.../system/service/dto/UserLoginDto.java | 28 +
.../system/service/dto/UserQueryCriteria.java | 49 +
.../system/service/impl/DataServiceImpl.java | 91 ++
.../system/service/impl/DeptServiceImpl.java | 283 ++++
.../service/impl/DictDetailServiceImpl.java | 95 ++
.../system/service/impl/DictServiceImpl.java | 122 ++
.../system/service/impl/JobServiceImpl.java | 126 ++
.../system/service/impl/MenuServiceImpl.java | 359 +++++
.../service/impl/MonitorServiceImpl.java | 192 +++
.../service/impl/PurchaseServiceImpl.java | 127 ++
.../service/impl/ReimburseServiceImpl.java | 124 ++
.../system/service/impl/RoleServiceImpl.java | 224 +++
.../service/impl/UserBankServiceImpl.java | 127 ++
.../system/service/impl/UserServiceImpl.java | 277 ++++
.../service/impl/VerifyServiceImpl.java | 81 ++
.../system/service/mapstruct/DeptMapper.java | 30 +
.../service/mapstruct/DeptSmallMapper.java | 31 +
.../service/mapstruct/DictDetailMapper.java | 31 +
.../system/service/mapstruct/DictMapper.java | 31 +
.../service/mapstruct/DictSmallMapper.java | 31 +
.../system/service/mapstruct/JobMapper.java | 30 +
.../service/mapstruct/JobSmallMapper.java | 31 +
.../system/service/mapstruct/MenuMapper.java | 30 +
.../service/mapstruct/PurchaseMapper.java | 32 +
.../service/mapstruct/ReimburseMapper.java | 32 +
.../system/service/mapstruct/RoleMapper.java | 31 +
.../service/mapstruct/RoleSmallMapper.java | 31 +
.../service/mapstruct/UserBankMapper.java | 32 +
.../service/mapstruct/UserLoginMapper.java | 30 +
.../system/service/mapstruct/UserMapper.java | 30 +
eladmin-system/src/main/resources/banner.txt | 8 +
.../main/resources/config/application-dev.yml | 116 ++
.../resources/config/application-prod.yml | 125 ++
.../src/main/resources/config/application.yml | 60 +
.../main/resources/log4jdbc.log4j2.properties | 4 +
eladmin-system/src/main/resources/logback.xml | 45 +
.../src/main/resources/template/email.ftl | 48 +
.../src/main/resources/template/taskAlarm.ftl | 69 +
.../EladminSystemApplicationTests.java | 16 +
eladmin-tools/pom.xml | 50 +
.../me/zhengjie/config/MultipartConfig.java | 47 +
.../java/me/zhengjie/domain/AlipayConfig.java | 76 ++
.../java/me/zhengjie/domain/EmailConfig.java | 58 +
.../java/me/zhengjie/domain/LocalStorage.java | 73 +
.../java/me/zhengjie/domain/QiniuConfig.java | 69 +
.../java/me/zhengjie/domain/QiniuContent.java | 64 +
.../java/me/zhengjie/domain/vo/EmailVo.java | 44 +
.../java/me/zhengjie/domain/vo/TradeVo.java | 63 +
.../zhengjie/repository/AliPayRepository.java | 26 +
.../zhengjie/repository/EmailRepository.java | 26 +
.../repository/LocalStorageRepository.java | 27 +
.../repository/QiNiuConfigRepository.java | 36 +
.../repository/QiniuContentRepository.java | 34 +
.../me/zhengjie/rest/AliPayController.java | 135 ++
.../me/zhengjie/rest/EmailController.java | 63 +
.../zhengjie/rest/LocalStorageController.java | 100 ++
.../me/zhengjie/rest/QiniuController.java | 122 ++
.../me/zhengjie/service/AliPayService.java | 57 +
.../me/zhengjie/service/EmailService.java | 48 +
.../zhengjie/service/LocalStorageService.java | 83 ++
.../me/zhengjie/service/QiNiuService.java | 119 ++
.../zhengjie/service/dto/LocalStorageDto.java | 42 +
.../dto/LocalStorageQueryCriteria.java | 36 +
.../service/dto/PictureQueryCriteria.java | 40 +
.../service/dto/QiniuQueryCriteria.java | 36 +
.../service/impl/AliPayServiceImpl.java | 119 ++
.../service/impl/EmailServiceImpl.java | 107 ++
.../service/impl/LocalStorageServiceImpl.java | 133 ++
.../service/impl/QiNiuServiceImpl.java | 234 ++++
.../service/mapstruct/LocalStorageMapper.java | 31 +
.../me/zhengjie/utils/AliPayStatusEnum.java | 46 +
.../java/me/zhengjie/utils/AlipayUtils.java | 85 ++
.../java/me/zhengjie/utils/QiNiuUtil.java | 71 +
eladmin-web/.editorconfig | 14 +
eladmin-web/.env.development | 8 +
eladmin-web/.env.production | 7 +
eladmin-web/.eslintignore | 4 +
eladmin-web/.eslintrc.js | 198 +++
eladmin-web/.gitignore | 24 +
eladmin-web/.travis.yml | 5 +
eladmin-web/LICENSE | 191 +++
eladmin-web/README.md | 77 ++
eladmin-web/babel.config.js | 11 +
eladmin-web/jest.config.js | 24 +
eladmin-web/package.json | 115 ++
eladmin-web/plopfile.js | 7 +
eladmin-web/postcss.config.js | 5 +
eladmin-web/public/favicon.ico | Bin 0 -> 67646 bytes
eladmin-web/public/index.html | 15 +
eladmin-web/public/robots.txt | 2 +
eladmin-web/src/App.vue | 11 +
eladmin-web/src/api/data.js | 17 +
eladmin-web/src/api/generator/genConfig.js | 16 +
eladmin-web/src/api/generator/generator.js | 33 +
eladmin-web/src/api/login.js | 35 +
eladmin-web/src/api/mnt/app.js | 27 +
eladmin-web/src/api/mnt/connect.js | 17 +
eladmin-web/src/api/mnt/database.js | 35 +
eladmin-web/src/api/mnt/deploy.js | 77 ++
eladmin-web/src/api/mnt/deployHistory.js | 21 +
eladmin-web/src/api/mnt/serverDeploy.js | 27 +
eladmin-web/src/api/monitor/log.js | 22 +
eladmin-web/src/api/monitor/online.js | 9 +
eladmin-web/src/api/system/code.js | 15 +
eladmin-web/src/api/system/dept.js | 45 +
eladmin-web/src/api/system/dict.js | 34 +
eladmin-web/src/api/system/dictDetail.js | 52 +
eladmin-web/src/api/system/job.js | 40 +
eladmin-web/src/api/system/menu.js | 65 +
eladmin-web/src/api/system/purchase.js | 27 +
eladmin-web/src/api/system/reimburse.js | 27 +
eladmin-web/src/api/system/role.js | 57 +
eladmin-web/src/api/system/timing.js | 41 +
eladmin-web/src/api/system/user.js | 69 +
eladmin-web/src/api/tools/alipay.js | 25 +
eladmin-web/src/api/tools/email.js | 24 +
eladmin-web/src/api/tools/localStorage.js | 27 +
eladmin-web/src/api/tools/qiniu.js | 40 +
eladmin-web/src/api/userBank.js | 27 +
eladmin-web/src/assets/401_images/401.gif | Bin 0 -> 164227 bytes
eladmin-web/src/assets/404_images/404.png | Bin 0 -> 98071 bytes
.../src/assets/404_images/404_cloud.png | Bin 0 -> 4766 bytes
eladmin-web/src/assets/icons/index.js | 9 +
.../src/assets/icons/svg/Steve-Jobs.svg | 1 +
eladmin-web/src/assets/icons/svg/alipay.svg | 1 +
eladmin-web/src/assets/icons/svg/anq.svg | 1 +
eladmin-web/src/assets/icons/svg/app.svg | 1 +
eladmin-web/src/assets/icons/svg/backup.svg | 1 +
eladmin-web/src/assets/icons/svg/blog.svg | 1 +
eladmin-web/src/assets/icons/svg/chain.svg | 1 +
eladmin-web/src/assets/icons/svg/chart.svg | 1 +
.../src/assets/icons/svg/codeConsole.svg | 1 +
.../src/assets/icons/svg/dashboard.svg | 1 +
eladmin-web/src/assets/icons/svg/database.svg | 1 +
eladmin-web/src/assets/icons/svg/date.svg | 1 +
eladmin-web/src/assets/icons/svg/deploy.svg | 1 +
eladmin-web/src/assets/icons/svg/dept.svg | 1 +
eladmin-web/src/assets/icons/svg/dev.svg | 1 +
eladmin-web/src/assets/icons/svg/develop.svg | 1 +
.../src/assets/icons/svg/dictionary.svg | 1 +
eladmin-web/src/assets/icons/svg/doc.svg | 1 +
eladmin-web/src/assets/icons/svg/download.svg | 1 +
eladmin-web/src/assets/icons/svg/edit.svg | 1 +
.../src/assets/icons/svg/education.svg | 1 +
eladmin-web/src/assets/icons/svg/email.svg | 1 +
eladmin-web/src/assets/icons/svg/error.svg | 1 +
.../src/assets/icons/svg/exit-fullscreen.svg | 1 +
.../src/assets/icons/svg/fullscreen.svg | 1 +
eladmin-web/src/assets/icons/svg/fwb.svg | 1 +
eladmin-web/src/assets/icons/svg/github.svg | 1 +
eladmin-web/src/assets/icons/svg/gonggao.svg | 1 +
eladmin-web/src/assets/icons/svg/icon.svg | 1 +
eladmin-web/src/assets/icons/svg/image.svg | 1 +
eladmin-web/src/assets/icons/svg/index.svg | 1 +
.../src/assets/icons/svg/international.svg | 1 +
eladmin-web/src/assets/icons/svg/ipvisits.svg | 1 +
eladmin-web/src/assets/icons/svg/java.svg | 1 +
eladmin-web/src/assets/icons/svg/link.svg | 1 +
eladmin-web/src/assets/icons/svg/list.svg | 1 +
eladmin-web/src/assets/icons/svg/lock.svg | 1 +
eladmin-web/src/assets/icons/svg/log.svg | 1 +
eladmin-web/src/assets/icons/svg/login.svg | 1 +
eladmin-web/src/assets/icons/svg/markdown.svg | 1 +
eladmin-web/src/assets/icons/svg/menu.svg | 1 +
eladmin-web/src/assets/icons/svg/message.svg | 1 +
eladmin-web/src/assets/icons/svg/mnt.svg | 1 +
eladmin-web/src/assets/icons/svg/money.svg | 1 +
eladmin-web/src/assets/icons/svg/monitor.svg | 1 +
eladmin-web/src/assets/icons/svg/nested.svg | 1 +
eladmin-web/src/assets/icons/svg/password.svg | 1 +
eladmin-web/src/assets/icons/svg/people.svg | 1 +
eladmin-web/src/assets/icons/svg/peoples.svg | 1 +
.../src/assets/icons/svg/permission.svg | 1 +
eladmin-web/src/assets/icons/svg/phone.svg | 1 +
eladmin-web/src/assets/icons/svg/qiniu.svg | 1 +
eladmin-web/src/assets/icons/svg/redis.svg | 1 +
eladmin-web/src/assets/icons/svg/role.svg | 1 +
eladmin-web/src/assets/icons/svg/search.svg | 1 +
eladmin-web/src/assets/icons/svg/server.svg | 1 +
eladmin-web/src/assets/icons/svg/shopping.svg | 1 +
eladmin-web/src/assets/icons/svg/size.svg | 1 +
eladmin-web/src/assets/icons/svg/skill.svg | 1 +
eladmin-web/src/assets/icons/svg/source.svg | 1 +
.../src/assets/icons/svg/sqlMonitor.svg | 1 +
eladmin-web/src/assets/icons/svg/swagger.svg | 1 +
.../src/assets/icons/svg/sys-tools.svg | 1 +
eladmin-web/src/assets/icons/svg/system.svg | 1 +
eladmin-web/src/assets/icons/svg/system1.svg | 1 +
eladmin-web/src/assets/icons/svg/tab.svg | 1 +
eladmin-web/src/assets/icons/svg/theme.svg | 1 +
eladmin-web/src/assets/icons/svg/timing.svg | 1 +
eladmin-web/src/assets/icons/svg/tools.svg | 1 +
.../src/assets/icons/svg/tree-table.svg | 1 +
eladmin-web/src/assets/icons/svg/tree.svg | 1 +
eladmin-web/src/assets/icons/svg/unlock.svg | 1 +
eladmin-web/src/assets/icons/svg/user.svg | 1 +
eladmin-web/src/assets/icons/svg/user1.svg | 1 +
.../src/assets/icons/svg/validCode.svg | 1 +
eladmin-web/src/assets/icons/svg/visits.svg | 1 +
eladmin-web/src/assets/icons/svg/web.svg | 1 +
eladmin-web/src/assets/icons/svg/wechat.svg | 1 +
eladmin-web/src/assets/icons/svg/weixin.svg | 1 +
eladmin-web/src/assets/icons/svg/zujian.svg | 1 +
eladmin-web/src/assets/icons/svgo.yml | 22 +
eladmin-web/src/assets/images/avatar.png | Bin 0 -> 1865 bytes
eladmin-web/src/assets/images/background.webp | Bin 0 -> 156066 bytes
eladmin-web/src/assets/images/logo.png | Bin 0 -> 8852 bytes
eladmin-web/src/assets/styles/btn.scss | 99 ++
eladmin-web/src/assets/styles/eladmin.scss | 117 ++
eladmin-web/src/assets/styles/element-ui.scss | 79 ++
.../src/assets/styles/element-variables.scss | 31 +
eladmin-web/src/assets/styles/index.scss | 182 +++
eladmin-web/src/assets/styles/mixin.scss | 66 +
eladmin-web/src/assets/styles/sidebar.scss | 209 +++
eladmin-web/src/assets/styles/transition.scss | 48 +
eladmin-web/src/assets/styles/variables.scss | 35 +
.../src/components/Breadcrumb/index.vue | 81 ++
.../src/components/Crud/CRUD.operation.vue | 268 ++++
.../src/components/Crud/Pagination.vue | 18 +
.../src/components/Crud/RR.operation.vue | 20 +
.../src/components/Crud/UD.operation.vue | 71 +
eladmin-web/src/components/Crud/crud.js | 864 ++++++++++++
.../src/components/DateRangePicker/index.vue | 45 +
eladmin-web/src/components/Dict/Dict.js | 29 +
eladmin-web/src/components/Dict/index.js | 29 +
eladmin-web/src/components/Doc/index.vue | 16 +
.../src/components/Echarts/BarChart.vue | 106 ++
.../src/components/Echarts/Category.vue | 438 ++++++
eladmin-web/src/components/Echarts/Funnel.vue | 120 ++
eladmin-web/src/components/Echarts/Gauge.vue | 74 +
eladmin-web/src/components/Echarts/Graph.vue | 101 ++
.../src/components/Echarts/HeatMap.vue | 105 ++
.../src/components/Echarts/PieChart.vue | 84 ++
eladmin-web/src/components/Echarts/Point.vue | 149 ++
.../src/components/Echarts/RadarChart.vue | 120 ++
eladmin-web/src/components/Echarts/Rich.vue | 149 ++
eladmin-web/src/components/Echarts/Sankey.vue | 100 ++
.../src/components/Echarts/Scatter.vue | 143 ++
.../src/components/Echarts/Sunburst.vue | 107 ++
.../src/components/Echarts/ThemeRiver.vue | 148 ++
.../src/components/GithubCorner/index.vue | 54 +
.../src/components/Hamburger/index.vue | 44 +
.../src/components/HeaderSearch/index.vue | 188 +++
.../src/components/IconSelect/index.vue | 68 +
.../src/components/IconSelect/requireIcons.js | 11 +
eladmin-web/src/components/Iframe/index.vue | 30 +
eladmin-web/src/components/JavaEdit/index.vue | 77 ++
.../src/components/Pagination/index.vue | 101 ++
eladmin-web/src/components/PanThumb/index.vue | 140 ++
.../src/components/ParentView/index.vue | 3 +
.../src/components/Permission/index.js | 13 +
.../src/components/Permission/permission.js | 21 +
.../src/components/RightPanel/index.vue | 149 ++
.../src/components/Screenfull/index.vue | 60 +
.../src/components/SizeSelect/index.vue | 57 +
eladmin-web/src/components/SvgIcon/index.vue | 62 +
.../src/components/ThemePicker/index.vue | 165 +++
.../src/components/WangEditor/index.vue | 93 ++
eladmin-web/src/components/YamlEdit/index.vue | 81 ++
eladmin-web/src/layout/components/AppMain.vue | 63 +
eladmin-web/src/layout/components/Navbar.vue | 200 +++
.../src/layout/components/Settings/index.vue | 108 ++
.../layout/components/Sidebar/FixiOSBug.js | 26 +
.../src/layout/components/Sidebar/Item.vue | 29 +
.../src/layout/components/Sidebar/Link.vue | 36 +
.../src/layout/components/Sidebar/Logo.vue | 82 ++
.../layout/components/Sidebar/SidebarItem.vue | 95 ++
.../src/layout/components/Sidebar/index.vue | 54 +
.../layout/components/TagsView/ScrollPane.vue | 85 ++
.../src/layout/components/TagsView/index.vue | 286 ++++
eladmin-web/src/layout/components/index.js | 5 +
eladmin-web/src/layout/index.vue | 116 ++
eladmin-web/src/layout/mixin/ResizeHandler.js | 45 +
eladmin-web/src/main.js | 41 +
eladmin-web/src/mixins/crud.js | 342 +++++
eladmin-web/src/router/index.js | 72 +
eladmin-web/src/router/routers.js | 68 +
eladmin-web/src/settings.js | 46 +
eladmin-web/src/store/getters.js | 24 +
eladmin-web/src/store/index.js | 25 +
eladmin-web/src/store/modules/api.js | 26 +
eladmin-web/src/store/modules/app.js | 56 +
eladmin-web/src/store/modules/permission.js | 83 ++
eladmin-web/src/store/modules/settings.js | 36 +
eladmin-web/src/store/modules/tagsView.js | 165 +++
eladmin-web/src/store/modules/user.js | 94 ++
eladmin-web/src/utils/auth.js | 18 +
eladmin-web/src/utils/clipboard.js | 36 +
eladmin-web/src/utils/datetime.js | 216 +++
eladmin-web/src/utils/index.js | 388 ++++++
eladmin-web/src/utils/permission.js | 23 +
eladmin-web/src/utils/request.js | 88 ++
eladmin-web/src/utils/rsaEncrypt.js | 14 +
eladmin-web/src/utils/shortcuts.js | 76 ++
eladmin-web/src/utils/upload.js | 11 +
eladmin-web/src/utils/validate.js | 167 +++
eladmin-web/src/views/components/Echarts.vue | 110 ++
eladmin-web/src/views/components/Editor.vue | 35 +
eladmin-web/src/views/components/MarkDown.vue | 55 +
eladmin-web/src/views/components/YamlEdit.vue | 207 +++
.../views/components/icons/element-icons.js | 74 +
.../src/views/components/icons/index.vue | 97 ++
.../src/views/components/icons/svg-icons.js | 10 +
eladmin-web/src/views/dashboard/LineChart.vue | 135 ++
.../src/views/dashboard/PanelGroup.vue | 181 +++
.../src/views/dashboard/mixins/resize.js | 55 +
eladmin-web/src/views/features/401.vue | 89 ++
eladmin-web/src/views/features/404.vue | 225 +++
eladmin-web/src/views/features/redirect.vue | 12 +
eladmin-web/src/views/generator/config.vue | 326 +++++
eladmin-web/src/views/generator/index.vue | 114 ++
eladmin-web/src/views/generator/preview.vue | 30 +
eladmin-web/src/views/home.vue | 107 ++
eladmin-web/src/views/login.vue | 214 +++
eladmin-web/src/views/mnt/app/index.vue | 144 ++
.../src/views/mnt/database/execute.vue | 86 ++
eladmin-web/src/views/mnt/database/index.vue | 148 ++
eladmin-web/src/views/mnt/deploy/deploy.vue | 190 +++
eladmin-web/src/views/mnt/deploy/index.vue | 229 ++++
.../src/views/mnt/deploy/sysRestore.vue | 108 ++
.../src/views/mnt/deployHistory/index.vue | 93 ++
eladmin-web/src/views/mnt/server/index.vue | 136 ++
.../src/views/monitor/log/errorLog.vue | 135 ++
eladmin-web/src/views/monitor/log/index.vue | 114 ++
eladmin-web/src/views/monitor/log/search.vue | 24 +
.../src/views/monitor/online/index.vue | 121 ++
.../src/views/monitor/server/index.vue | 291 ++++
eladmin-web/src/views/monitor/sql/index.vue | 16 +
.../src/views/nested/menu1/menu1-1/index.vue | 36 +
.../src/views/nested/menu1/menu1-2/index.vue | 5 +
eladmin-web/src/views/nested/menu2/index.vue | 5 +
eladmin-web/src/views/system/dept/index.vue | 254 ++++
.../src/views/system/dict/dictDetail.vue | 115 ++
eladmin-web/src/views/system/dict/index.vue | 135 ++
eladmin-web/src/views/system/job/index.vue | 110 ++
.../src/views/system/job/module/form.vue | 110 ++
.../src/views/system/job/module/header.vue | 32 +
eladmin-web/src/views/system/menu/index.vue | 252 ++++
.../src/views/system/purchase/index.vue | 179 +++
.../src/views/system/reimburse/index.vue | 194 +++
eladmin-web/src/views/system/role/index.vue | 364 +++++
eladmin-web/src/views/system/timing/index.vue | 210 +++
eladmin-web/src/views/system/timing/log.vue | 104 ++
eladmin-web/src/views/system/user/center.vue | 225 +++
.../views/system/user/center/updateEmail.vue | 137 ++
.../views/system/user/center/updatePass.vue | 95 ++
eladmin-web/src/views/system/user/index.vue | 513 +++++++
.../src/views/system/userbank/index.vue | 116 ++
eladmin-web/src/views/tools/aliPay/config.vue | 98 ++
eladmin-web/src/views/tools/aliPay/index.vue | 48 +
eladmin-web/src/views/tools/aliPay/toPay.vue | 86 ++
eladmin-web/src/views/tools/email/config.vue | 91 ++
eladmin-web/src/views/tools/email/index.vue | 41 +
eladmin-web/src/views/tools/email/send.vue | 98 ++
eladmin-web/src/views/tools/storage/index.vue | 36 +
.../src/views/tools/storage/local/index.vue | 184 +++
.../src/views/tools/storage/qiniu/form.vue | 98 ++
.../src/views/tools/storage/qiniu/index.vue | 189 +++
eladmin-web/src/views/tools/swagger/index.vue | 16 +
eladmin-web/vue.config.js | 147 ++
pom.xml | 230 ++++
sql/eladmin.sql | 824 +++++++++++
sql/finance.sql | 1216 +++++++++++++++++
sql/脚本如何选择.md | 2 +
618 files changed, 47423 insertions(+)
create mode 100644 .gitignore
create mode 100644 LICENSE
create mode 100644 README.md
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/DataPermission.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/Query.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/BaseDTO.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/base/BaseEntity.java
create mode 100644 eladmin-common/src/main/java/me/zhengjie/base/BaseMapper.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/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/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/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/QueryHelp.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/ValidationUtil.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/repository/ColumnInfoRepository.java
create mode 100644 eladmin-generator/src/main/java/me/zhengjie/repository/GenConfigRepository.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/template/admin/Controller.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/Dto.ftl
create mode 100644 eladmin-generator/src/main/resources/template/admin/Entity.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/Repository.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/repository/LogRepository.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/dto/SysLogErrorDto.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/dto/SysLogQueryCriteria.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/dto/SysLogSmallDto.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/impl/SysLogServiceImpl.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/mapstruct/LogErrorMapper.java
create mode 100644 eladmin-logging/src/main/java/me/zhengjie/service/mapstruct/LogSmallMapper.java
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/ServerDeploy.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/repository/AppRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/repository/DatabaseRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/repository/DeployHistoryRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/repository/DeployRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/repository/ServerDeployRepository.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/ServerDeployController.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/ServerDeployService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/AppDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/AppQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/DatabaseDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/DatabaseQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/DeployDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/DeployHistoryDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/DeployHistoryQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/DeployQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/ServerDeployDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/dto/ServerDeployQueryCriteria.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/ServerDeployServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/mapstruct/AppMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/mapstruct/DatabaseMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/mapstruct/DeployHistoryMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/mapstruct/DeployMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/mnt/service/mapstruct/ServerDeployMapper.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/repository/QuartzJobRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/quartz/repository/QuartzLogRepository.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/dto/JobQueryCriteria.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/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/Purchase.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/domain/Reimburse.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/UserBank.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/MenuVo.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/repository/DeptRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/DictDetailRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/DictRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/JobRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/MenuRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/PurchaseRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/ReimburseRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/RoleRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/UserBankRepository.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/repository/UserRepository.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/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/PurchaseController.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/rest/ReimburseController.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/UserBankController.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/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/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/PurchaseService.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/ReimburseService.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/UserBankService.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/dto/DeptDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DeptQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DeptSmallDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DictDetailDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DictDetailQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DictDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DictQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/DictSmallDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/JobDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/JobQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/JobSmallDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MenuDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/MenuQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/PurchaseDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/PurchaseQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/ReimburseDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/ReimburseQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/RoleDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/RoleQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/RoleSmallDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserBankDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserBankQueryCriteria.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserLoginDto.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserQueryCriteria.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/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/PurchaseServiceImpl.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/ReimburseServiceImpl.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/UserBankServiceImpl.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/java/me/zhengjie/modules/system/service/mapstruct/DeptMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/DeptSmallMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/DictDetailMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/DictMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/DictSmallMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/JobMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/JobSmallMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/MenuMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/PurchaseMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/ReimburseMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/RoleMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/RoleSmallMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/UserBankMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/UserLoginMapper.java
create mode 100644 eladmin-system/src/main/java/me/zhengjie/modules/system/service/mapstruct/UserMapper.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.yml
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/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/config/MultipartConfig.java
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/TradeVo.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/repository/AliPayRepository.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/repository/EmailRepository.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/repository/LocalStorageRepository.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/repository/QiNiuConfigRepository.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/repository/QiniuContentRepository.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/QiNiuService.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/dto/LocalStorageDto.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/dto/LocalStorageQueryCriteria.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/dto/PictureQueryCriteria.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/dto/QiniuQueryCriteria.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/QiNiuServiceImpl.java
create mode 100644 eladmin-tools/src/main/java/me/zhengjie/service/mapstruct/LocalStorageMapper.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-web/.editorconfig
create mode 100644 eladmin-web/.env.development
create mode 100644 eladmin-web/.env.production
create mode 100644 eladmin-web/.eslintignore
create mode 100644 eladmin-web/.eslintrc.js
create mode 100644 eladmin-web/.gitignore
create mode 100644 eladmin-web/.travis.yml
create mode 100644 eladmin-web/LICENSE
create mode 100644 eladmin-web/README.md
create mode 100644 eladmin-web/babel.config.js
create mode 100644 eladmin-web/jest.config.js
create mode 100644 eladmin-web/package.json
create mode 100644 eladmin-web/plopfile.js
create mode 100644 eladmin-web/postcss.config.js
create mode 100644 eladmin-web/public/favicon.ico
create mode 100644 eladmin-web/public/index.html
create mode 100644 eladmin-web/public/robots.txt
create mode 100644 eladmin-web/src/App.vue
create mode 100644 eladmin-web/src/api/data.js
create mode 100644 eladmin-web/src/api/generator/genConfig.js
create mode 100644 eladmin-web/src/api/generator/generator.js
create mode 100644 eladmin-web/src/api/login.js
create mode 100644 eladmin-web/src/api/mnt/app.js
create mode 100644 eladmin-web/src/api/mnt/connect.js
create mode 100644 eladmin-web/src/api/mnt/database.js
create mode 100644 eladmin-web/src/api/mnt/deploy.js
create mode 100644 eladmin-web/src/api/mnt/deployHistory.js
create mode 100644 eladmin-web/src/api/mnt/serverDeploy.js
create mode 100644 eladmin-web/src/api/monitor/log.js
create mode 100644 eladmin-web/src/api/monitor/online.js
create mode 100644 eladmin-web/src/api/system/code.js
create mode 100644 eladmin-web/src/api/system/dept.js
create mode 100644 eladmin-web/src/api/system/dict.js
create mode 100644 eladmin-web/src/api/system/dictDetail.js
create mode 100644 eladmin-web/src/api/system/job.js
create mode 100644 eladmin-web/src/api/system/menu.js
create mode 100644 eladmin-web/src/api/system/purchase.js
create mode 100644 eladmin-web/src/api/system/reimburse.js
create mode 100644 eladmin-web/src/api/system/role.js
create mode 100644 eladmin-web/src/api/system/timing.js
create mode 100644 eladmin-web/src/api/system/user.js
create mode 100644 eladmin-web/src/api/tools/alipay.js
create mode 100644 eladmin-web/src/api/tools/email.js
create mode 100644 eladmin-web/src/api/tools/localStorage.js
create mode 100644 eladmin-web/src/api/tools/qiniu.js
create mode 100644 eladmin-web/src/api/userBank.js
create mode 100644 eladmin-web/src/assets/401_images/401.gif
create mode 100644 eladmin-web/src/assets/404_images/404.png
create mode 100644 eladmin-web/src/assets/404_images/404_cloud.png
create mode 100644 eladmin-web/src/assets/icons/index.js
create mode 100644 eladmin-web/src/assets/icons/svg/Steve-Jobs.svg
create mode 100644 eladmin-web/src/assets/icons/svg/alipay.svg
create mode 100644 eladmin-web/src/assets/icons/svg/anq.svg
create mode 100644 eladmin-web/src/assets/icons/svg/app.svg
create mode 100644 eladmin-web/src/assets/icons/svg/backup.svg
create mode 100644 eladmin-web/src/assets/icons/svg/blog.svg
create mode 100644 eladmin-web/src/assets/icons/svg/chain.svg
create mode 100644 eladmin-web/src/assets/icons/svg/chart.svg
create mode 100644 eladmin-web/src/assets/icons/svg/codeConsole.svg
create mode 100644 eladmin-web/src/assets/icons/svg/dashboard.svg
create mode 100644 eladmin-web/src/assets/icons/svg/database.svg
create mode 100644 eladmin-web/src/assets/icons/svg/date.svg
create mode 100644 eladmin-web/src/assets/icons/svg/deploy.svg
create mode 100644 eladmin-web/src/assets/icons/svg/dept.svg
create mode 100644 eladmin-web/src/assets/icons/svg/dev.svg
create mode 100644 eladmin-web/src/assets/icons/svg/develop.svg
create mode 100644 eladmin-web/src/assets/icons/svg/dictionary.svg
create mode 100644 eladmin-web/src/assets/icons/svg/doc.svg
create mode 100644 eladmin-web/src/assets/icons/svg/download.svg
create mode 100644 eladmin-web/src/assets/icons/svg/edit.svg
create mode 100644 eladmin-web/src/assets/icons/svg/education.svg
create mode 100644 eladmin-web/src/assets/icons/svg/email.svg
create mode 100644 eladmin-web/src/assets/icons/svg/error.svg
create mode 100644 eladmin-web/src/assets/icons/svg/exit-fullscreen.svg
create mode 100644 eladmin-web/src/assets/icons/svg/fullscreen.svg
create mode 100644 eladmin-web/src/assets/icons/svg/fwb.svg
create mode 100644 eladmin-web/src/assets/icons/svg/github.svg
create mode 100644 eladmin-web/src/assets/icons/svg/gonggao.svg
create mode 100644 eladmin-web/src/assets/icons/svg/icon.svg
create mode 100644 eladmin-web/src/assets/icons/svg/image.svg
create mode 100644 eladmin-web/src/assets/icons/svg/index.svg
create mode 100644 eladmin-web/src/assets/icons/svg/international.svg
create mode 100644 eladmin-web/src/assets/icons/svg/ipvisits.svg
create mode 100644 eladmin-web/src/assets/icons/svg/java.svg
create mode 100644 eladmin-web/src/assets/icons/svg/link.svg
create mode 100644 eladmin-web/src/assets/icons/svg/list.svg
create mode 100644 eladmin-web/src/assets/icons/svg/lock.svg
create mode 100644 eladmin-web/src/assets/icons/svg/log.svg
create mode 100644 eladmin-web/src/assets/icons/svg/login.svg
create mode 100644 eladmin-web/src/assets/icons/svg/markdown.svg
create mode 100644 eladmin-web/src/assets/icons/svg/menu.svg
create mode 100644 eladmin-web/src/assets/icons/svg/message.svg
create mode 100644 eladmin-web/src/assets/icons/svg/mnt.svg
create mode 100644 eladmin-web/src/assets/icons/svg/money.svg
create mode 100644 eladmin-web/src/assets/icons/svg/monitor.svg
create mode 100644 eladmin-web/src/assets/icons/svg/nested.svg
create mode 100644 eladmin-web/src/assets/icons/svg/password.svg
create mode 100644 eladmin-web/src/assets/icons/svg/people.svg
create mode 100644 eladmin-web/src/assets/icons/svg/peoples.svg
create mode 100644 eladmin-web/src/assets/icons/svg/permission.svg
create mode 100644 eladmin-web/src/assets/icons/svg/phone.svg
create mode 100644 eladmin-web/src/assets/icons/svg/qiniu.svg
create mode 100644 eladmin-web/src/assets/icons/svg/redis.svg
create mode 100644 eladmin-web/src/assets/icons/svg/role.svg
create mode 100644 eladmin-web/src/assets/icons/svg/search.svg
create mode 100644 eladmin-web/src/assets/icons/svg/server.svg
create mode 100644 eladmin-web/src/assets/icons/svg/shopping.svg
create mode 100644 eladmin-web/src/assets/icons/svg/size.svg
create mode 100644 eladmin-web/src/assets/icons/svg/skill.svg
create mode 100644 eladmin-web/src/assets/icons/svg/source.svg
create mode 100644 eladmin-web/src/assets/icons/svg/sqlMonitor.svg
create mode 100644 eladmin-web/src/assets/icons/svg/swagger.svg
create mode 100644 eladmin-web/src/assets/icons/svg/sys-tools.svg
create mode 100644 eladmin-web/src/assets/icons/svg/system.svg
create mode 100644 eladmin-web/src/assets/icons/svg/system1.svg
create mode 100644 eladmin-web/src/assets/icons/svg/tab.svg
create mode 100644 eladmin-web/src/assets/icons/svg/theme.svg
create mode 100644 eladmin-web/src/assets/icons/svg/timing.svg
create mode 100644 eladmin-web/src/assets/icons/svg/tools.svg
create mode 100644 eladmin-web/src/assets/icons/svg/tree-table.svg
create mode 100644 eladmin-web/src/assets/icons/svg/tree.svg
create mode 100644 eladmin-web/src/assets/icons/svg/unlock.svg
create mode 100644 eladmin-web/src/assets/icons/svg/user.svg
create mode 100644 eladmin-web/src/assets/icons/svg/user1.svg
create mode 100644 eladmin-web/src/assets/icons/svg/validCode.svg
create mode 100644 eladmin-web/src/assets/icons/svg/visits.svg
create mode 100644 eladmin-web/src/assets/icons/svg/web.svg
create mode 100644 eladmin-web/src/assets/icons/svg/wechat.svg
create mode 100644 eladmin-web/src/assets/icons/svg/weixin.svg
create mode 100644 eladmin-web/src/assets/icons/svg/zujian.svg
create mode 100644 eladmin-web/src/assets/icons/svgo.yml
create mode 100644 eladmin-web/src/assets/images/avatar.png
create mode 100644 eladmin-web/src/assets/images/background.webp
create mode 100644 eladmin-web/src/assets/images/logo.png
create mode 100644 eladmin-web/src/assets/styles/btn.scss
create mode 100644 eladmin-web/src/assets/styles/eladmin.scss
create mode 100644 eladmin-web/src/assets/styles/element-ui.scss
create mode 100644 eladmin-web/src/assets/styles/element-variables.scss
create mode 100644 eladmin-web/src/assets/styles/index.scss
create mode 100644 eladmin-web/src/assets/styles/mixin.scss
create mode 100644 eladmin-web/src/assets/styles/sidebar.scss
create mode 100644 eladmin-web/src/assets/styles/transition.scss
create mode 100644 eladmin-web/src/assets/styles/variables.scss
create mode 100644 eladmin-web/src/components/Breadcrumb/index.vue
create mode 100644 eladmin-web/src/components/Crud/CRUD.operation.vue
create mode 100644 eladmin-web/src/components/Crud/Pagination.vue
create mode 100644 eladmin-web/src/components/Crud/RR.operation.vue
create mode 100644 eladmin-web/src/components/Crud/UD.operation.vue
create mode 100644 eladmin-web/src/components/Crud/crud.js
create mode 100644 eladmin-web/src/components/DateRangePicker/index.vue
create mode 100644 eladmin-web/src/components/Dict/Dict.js
create mode 100644 eladmin-web/src/components/Dict/index.js
create mode 100644 eladmin-web/src/components/Doc/index.vue
create mode 100644 eladmin-web/src/components/Echarts/BarChart.vue
create mode 100644 eladmin-web/src/components/Echarts/Category.vue
create mode 100644 eladmin-web/src/components/Echarts/Funnel.vue
create mode 100644 eladmin-web/src/components/Echarts/Gauge.vue
create mode 100644 eladmin-web/src/components/Echarts/Graph.vue
create mode 100644 eladmin-web/src/components/Echarts/HeatMap.vue
create mode 100644 eladmin-web/src/components/Echarts/PieChart.vue
create mode 100644 eladmin-web/src/components/Echarts/Point.vue
create mode 100644 eladmin-web/src/components/Echarts/RadarChart.vue
create mode 100644 eladmin-web/src/components/Echarts/Rich.vue
create mode 100644 eladmin-web/src/components/Echarts/Sankey.vue
create mode 100644 eladmin-web/src/components/Echarts/Scatter.vue
create mode 100644 eladmin-web/src/components/Echarts/Sunburst.vue
create mode 100644 eladmin-web/src/components/Echarts/ThemeRiver.vue
create mode 100644 eladmin-web/src/components/GithubCorner/index.vue
create mode 100644 eladmin-web/src/components/Hamburger/index.vue
create mode 100644 eladmin-web/src/components/HeaderSearch/index.vue
create mode 100644 eladmin-web/src/components/IconSelect/index.vue
create mode 100644 eladmin-web/src/components/IconSelect/requireIcons.js
create mode 100644 eladmin-web/src/components/Iframe/index.vue
create mode 100644 eladmin-web/src/components/JavaEdit/index.vue
create mode 100644 eladmin-web/src/components/Pagination/index.vue
create mode 100644 eladmin-web/src/components/PanThumb/index.vue
create mode 100644 eladmin-web/src/components/ParentView/index.vue
create mode 100644 eladmin-web/src/components/Permission/index.js
create mode 100644 eladmin-web/src/components/Permission/permission.js
create mode 100644 eladmin-web/src/components/RightPanel/index.vue
create mode 100644 eladmin-web/src/components/Screenfull/index.vue
create mode 100644 eladmin-web/src/components/SizeSelect/index.vue
create mode 100644 eladmin-web/src/components/SvgIcon/index.vue
create mode 100644 eladmin-web/src/components/ThemePicker/index.vue
create mode 100644 eladmin-web/src/components/WangEditor/index.vue
create mode 100644 eladmin-web/src/components/YamlEdit/index.vue
create mode 100644 eladmin-web/src/layout/components/AppMain.vue
create mode 100644 eladmin-web/src/layout/components/Navbar.vue
create mode 100644 eladmin-web/src/layout/components/Settings/index.vue
create mode 100644 eladmin-web/src/layout/components/Sidebar/FixiOSBug.js
create mode 100644 eladmin-web/src/layout/components/Sidebar/Item.vue
create mode 100644 eladmin-web/src/layout/components/Sidebar/Link.vue
create mode 100644 eladmin-web/src/layout/components/Sidebar/Logo.vue
create mode 100644 eladmin-web/src/layout/components/Sidebar/SidebarItem.vue
create mode 100644 eladmin-web/src/layout/components/Sidebar/index.vue
create mode 100644 eladmin-web/src/layout/components/TagsView/ScrollPane.vue
create mode 100644 eladmin-web/src/layout/components/TagsView/index.vue
create mode 100644 eladmin-web/src/layout/components/index.js
create mode 100644 eladmin-web/src/layout/index.vue
create mode 100644 eladmin-web/src/layout/mixin/ResizeHandler.js
create mode 100644 eladmin-web/src/main.js
create mode 100644 eladmin-web/src/mixins/crud.js
create mode 100644 eladmin-web/src/router/index.js
create mode 100644 eladmin-web/src/router/routers.js
create mode 100644 eladmin-web/src/settings.js
create mode 100644 eladmin-web/src/store/getters.js
create mode 100644 eladmin-web/src/store/index.js
create mode 100644 eladmin-web/src/store/modules/api.js
create mode 100644 eladmin-web/src/store/modules/app.js
create mode 100644 eladmin-web/src/store/modules/permission.js
create mode 100644 eladmin-web/src/store/modules/settings.js
create mode 100644 eladmin-web/src/store/modules/tagsView.js
create mode 100644 eladmin-web/src/store/modules/user.js
create mode 100644 eladmin-web/src/utils/auth.js
create mode 100644 eladmin-web/src/utils/clipboard.js
create mode 100644 eladmin-web/src/utils/datetime.js
create mode 100644 eladmin-web/src/utils/index.js
create mode 100644 eladmin-web/src/utils/permission.js
create mode 100644 eladmin-web/src/utils/request.js
create mode 100644 eladmin-web/src/utils/rsaEncrypt.js
create mode 100644 eladmin-web/src/utils/shortcuts.js
create mode 100644 eladmin-web/src/utils/upload.js
create mode 100644 eladmin-web/src/utils/validate.js
create mode 100644 eladmin-web/src/views/components/Echarts.vue
create mode 100644 eladmin-web/src/views/components/Editor.vue
create mode 100644 eladmin-web/src/views/components/MarkDown.vue
create mode 100644 eladmin-web/src/views/components/YamlEdit.vue
create mode 100644 eladmin-web/src/views/components/icons/element-icons.js
create mode 100644 eladmin-web/src/views/components/icons/index.vue
create mode 100644 eladmin-web/src/views/components/icons/svg-icons.js
create mode 100644 eladmin-web/src/views/dashboard/LineChart.vue
create mode 100644 eladmin-web/src/views/dashboard/PanelGroup.vue
create mode 100644 eladmin-web/src/views/dashboard/mixins/resize.js
create mode 100644 eladmin-web/src/views/features/401.vue
create mode 100644 eladmin-web/src/views/features/404.vue
create mode 100644 eladmin-web/src/views/features/redirect.vue
create mode 100644 eladmin-web/src/views/generator/config.vue
create mode 100644 eladmin-web/src/views/generator/index.vue
create mode 100644 eladmin-web/src/views/generator/preview.vue
create mode 100644 eladmin-web/src/views/home.vue
create mode 100644 eladmin-web/src/views/login.vue
create mode 100644 eladmin-web/src/views/mnt/app/index.vue
create mode 100644 eladmin-web/src/views/mnt/database/execute.vue
create mode 100644 eladmin-web/src/views/mnt/database/index.vue
create mode 100644 eladmin-web/src/views/mnt/deploy/deploy.vue
create mode 100644 eladmin-web/src/views/mnt/deploy/index.vue
create mode 100644 eladmin-web/src/views/mnt/deploy/sysRestore.vue
create mode 100644 eladmin-web/src/views/mnt/deployHistory/index.vue
create mode 100644 eladmin-web/src/views/mnt/server/index.vue
create mode 100644 eladmin-web/src/views/monitor/log/errorLog.vue
create mode 100644 eladmin-web/src/views/monitor/log/index.vue
create mode 100644 eladmin-web/src/views/monitor/log/search.vue
create mode 100644 eladmin-web/src/views/monitor/online/index.vue
create mode 100644 eladmin-web/src/views/monitor/server/index.vue
create mode 100644 eladmin-web/src/views/monitor/sql/index.vue
create mode 100644 eladmin-web/src/views/nested/menu1/menu1-1/index.vue
create mode 100644 eladmin-web/src/views/nested/menu1/menu1-2/index.vue
create mode 100644 eladmin-web/src/views/nested/menu2/index.vue
create mode 100644 eladmin-web/src/views/system/dept/index.vue
create mode 100644 eladmin-web/src/views/system/dict/dictDetail.vue
create mode 100644 eladmin-web/src/views/system/dict/index.vue
create mode 100644 eladmin-web/src/views/system/job/index.vue
create mode 100644 eladmin-web/src/views/system/job/module/form.vue
create mode 100644 eladmin-web/src/views/system/job/module/header.vue
create mode 100644 eladmin-web/src/views/system/menu/index.vue
create mode 100644 eladmin-web/src/views/system/purchase/index.vue
create mode 100644 eladmin-web/src/views/system/reimburse/index.vue
create mode 100644 eladmin-web/src/views/system/role/index.vue
create mode 100644 eladmin-web/src/views/system/timing/index.vue
create mode 100644 eladmin-web/src/views/system/timing/log.vue
create mode 100644 eladmin-web/src/views/system/user/center.vue
create mode 100644 eladmin-web/src/views/system/user/center/updateEmail.vue
create mode 100644 eladmin-web/src/views/system/user/center/updatePass.vue
create mode 100644 eladmin-web/src/views/system/user/index.vue
create mode 100644 eladmin-web/src/views/system/userbank/index.vue
create mode 100644 eladmin-web/src/views/tools/aliPay/config.vue
create mode 100644 eladmin-web/src/views/tools/aliPay/index.vue
create mode 100644 eladmin-web/src/views/tools/aliPay/toPay.vue
create mode 100644 eladmin-web/src/views/tools/email/config.vue
create mode 100644 eladmin-web/src/views/tools/email/index.vue
create mode 100644 eladmin-web/src/views/tools/email/send.vue
create mode 100644 eladmin-web/src/views/tools/storage/index.vue
create mode 100644 eladmin-web/src/views/tools/storage/local/index.vue
create mode 100644 eladmin-web/src/views/tools/storage/qiniu/form.vue
create mode 100644 eladmin-web/src/views/tools/storage/qiniu/index.vue
create mode 100644 eladmin-web/src/views/tools/swagger/index.vue
create mode 100644 eladmin-web/vue.config.js
create mode 100644 pom.xml
create mode 100644 sql/eladmin.sql
create mode 100644 sql/finance.sql
create mode 100644 sql/脚本如何选择.md
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..f9d49d2
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+### IDEA ###
+.idea/*
+*.iml
+*/target/*
+*/*.iml
+/.gradle/
+/application.pid
+/.jpb/
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..9f53f73
--- /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-2023 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/README.md b/README.md
new file mode 100644
index 0000000..4b58280
--- /dev/null
+++ b/README.md
@@ -0,0 +1 @@
+先运行sql/finance.sql
diff --git a/eladmin-common/pom.xml b/eladmin-common/pom.xml
new file mode 100644
index 0000000..23d1024
--- /dev/null
+++ b/eladmin-common/pom.xml
@@ -0,0 +1,26 @@
+
+
+
+ eladmin
+ me.zhengjie
+ 2.7
+
+ 4.0.0
+
+ 5.8.20
+
+
+ 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/DataPermission.java b/eladmin-common/src/main/java/me/zhengjie/annotation/DataPermission.java
new file mode 100644
index 0000000..044d551
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/DataPermission.java
@@ -0,0 +1,47 @@
+/*
+ * 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.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ *
+ * 用于判断是否过滤数据权限
+ * 1、如果没有用到 @OneToOne 这种关联关系,只需要填写 fieldName [参考:DeptQueryCriteria.class]
+ * 2、如果用到了 @OneToOne ,fieldName 和 joinName 都需要填写,拿UserQueryCriteria.class举例:
+ * 应该是 @DataPermission(joinName = "dept", fieldName = "id")
+ *
+ * @author Zheng Jie
+ * @website https://eladmin.vip
+ * @date 2020-05-07
+ **/
+@Target(ElementType.TYPE)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface DataPermission {
+
+ /**
+ * Entity 中的字段名称
+ */
+ String fieldName() default "";
+
+ /**
+ * Entity 中与部门关联的字段名称
+ */
+ String joinName() default "";
+}
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/Query.java b/eladmin-common/src/main/java/me/zhengjie/annotation/Query.java
new file mode 100644
index 0000000..fe616f1
--- /dev/null
+++ b/eladmin-common/src/main/java/me/zhengjie/annotation/Query.java
@@ -0,0 +1,92 @@
+/*
+ * 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.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @author Zheng Jie
+ * @date 2019-6-4 13:52:30
+ */
+@Target(ElementType.FIELD)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface Query {
+
+ // Dong ZhaoYang 2017/8/7 基本对象的属性名
+ String propName() default "";
+ // Dong ZhaoYang 2017/8/7 查询方式
+ Type type() default Type.EQUAL;
+
+ /**
+ * 连接查询的属性名,如User类中的dept
+ */
+ String joinName() default "";
+
+ /**
+ * 默认左连接
+ */
+ Join join() default Join.LEFT;
+
+ /**
+ * 多字段模糊搜索,仅支持String类型字段,多个用逗号隔开, 如@Query(blurry = "email,username")
+ */
+ String blurry() default "";
+
+ enum Type {
+ // jie 2019/6/4 相等
+ EQUAL
+ // Dong ZhaoYang 2017/8/7 大于等于
+ , GREATER_THAN
+ // Dong ZhaoYang 2017/8/7 小于等于
+ , LESS_THAN
+ // Dong ZhaoYang 2017/8/7 中模糊查询
+ , INNER_LIKE
+ // Dong ZhaoYang 2017/8/7 左模糊查询
+ , LEFT_LIKE
+ // Dong ZhaoYang 2017/8/7 右模糊查询
+ , RIGHT_LIKE
+ // Dong ZhaoYang 2017/8/7 小于
+ , LESS_THAN_NQ
+ // jie 2019/6/4 包含
+ , IN
+ // 不包含
+ , NOT_IN
+ // 不等于
+ ,NOT_EQUAL
+ // between
+ ,BETWEEN
+ // 不为空
+ ,NOT_NULL
+ // 为空
+ ,IS_NULL,
+ // Aborn Jiang 2022/06/01, 对应SQL: SELECT * FROM table WHERE FIND_IN_SET('querytag', table.tags);
+ FIND_IN_SET
+ }
+
+ /**
+ * @author Zheng Jie
+ * 适用于简单连接查询,复杂的请自定义该注解,或者使用sql查询
+ */
+ enum Join {
+ /** jie 2019-6-4 13:18:30 */
+ LEFT, RIGHT, INNER
+ }
+
+}
+
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