From 12c3e69732ed03e44aac47576eadce59632c3cc2 Mon Sep 17 00:00:00 2001 From: Odboy Date: Fri, 21 Mar 2025 18:21:27 +0800 Subject: [PATCH] feat: init --- .gitignore | 34 + cutejava-ui/.editorconfig | 14 + cutejava-ui/.env.development | 8 + cutejava-ui/.env.production | 7 + cutejava-ui/.eslintignore | 4 + cutejava-ui/.eslintrc.js | 198 ++++ cutejava-ui/.gitignore | 24 + cutejava-ui/.travis.yml | 5 + cutejava-ui/LICENSE | 191 ++++ cutejava-ui/README.md | 59 ++ cutejava-ui/babel.config.js | 11 + cutejava-ui/jest.config.js | 24 + cutejava-ui/package.json | 115 +++ cutejava-ui/plopfile.js | 7 + cutejava-ui/postcss.config.js | 5 + cutejava-ui/public/favicon.ico | Bin 0 -> 67646 bytes cutejava-ui/public/index.html | 15 + cutejava-ui/public/robots.txt | 2 + cutejava-ui/src/App.vue | 11 + cutejava-ui/src/api/data.js | 17 + cutejava-ui/src/api/login.js | 35 + cutejava-ui/src/api/monitor/online.js | 9 + cutejava-ui/src/api/system/code.js | 15 + cutejava-ui/src/api/system/dept.js | 45 + cutejava-ui/src/api/system/dict.js | 34 + cutejava-ui/src/api/system/dictDetail.js | 52 ++ cutejava-ui/src/api/system/job.js | 40 + cutejava-ui/src/api/system/menu.js | 65 ++ cutejava-ui/src/api/system/role.js | 57 ++ cutejava-ui/src/api/system/timing.js | 41 + cutejava-ui/src/api/system/user.js | 69 ++ cutejava-ui/src/api/tools/email.js | 24 + cutejava-ui/src/api/tools/localStorage.js | 27 + cutejava-ui/src/api/tools/qiniu.js | 40 + cutejava-ui/src/assets/401_images/401.gif | Bin 0 -> 164227 bytes cutejava-ui/src/assets/404_images/404.png | Bin 0 -> 98071 bytes .../src/assets/404_images/404_cloud.png | Bin 0 -> 4766 bytes cutejava-ui/src/assets/icons/index.js | 9 + .../src/assets/icons/svg/Steve-Jobs.svg | 1 + cutejava-ui/src/assets/icons/svg/alipay.svg | 1 + cutejava-ui/src/assets/icons/svg/anq.svg | 1 + cutejava-ui/src/assets/icons/svg/app.svg | 1 + cutejava-ui/src/assets/icons/svg/backup.svg | 1 + cutejava-ui/src/assets/icons/svg/blog.svg | 1 + cutejava-ui/src/assets/icons/svg/chain.svg | 1 + cutejava-ui/src/assets/icons/svg/chart.svg | 1 + .../src/assets/icons/svg/codeConsole.svg | 1 + .../src/assets/icons/svg/dashboard.svg | 1 + cutejava-ui/src/assets/icons/svg/database.svg | 1 + cutejava-ui/src/assets/icons/svg/date.svg | 1 + cutejava-ui/src/assets/icons/svg/deploy.svg | 1 + cutejava-ui/src/assets/icons/svg/dept.svg | 1 + cutejava-ui/src/assets/icons/svg/dev.svg | 1 + cutejava-ui/src/assets/icons/svg/develop.svg | 1 + .../src/assets/icons/svg/dictionary.svg | 1 + cutejava-ui/src/assets/icons/svg/doc.svg | 1 + cutejava-ui/src/assets/icons/svg/download.svg | 1 + cutejava-ui/src/assets/icons/svg/edit.svg | 1 + .../src/assets/icons/svg/education.svg | 1 + cutejava-ui/src/assets/icons/svg/email.svg | 1 + cutejava-ui/src/assets/icons/svg/error.svg | 1 + .../src/assets/icons/svg/exit-fullscreen.svg | 1 + .../src/assets/icons/svg/fullscreen.svg | 1 + cutejava-ui/src/assets/icons/svg/fwb.svg | 1 + cutejava-ui/src/assets/icons/svg/github.svg | 1 + cutejava-ui/src/assets/icons/svg/gonggao.svg | 1 + cutejava-ui/src/assets/icons/svg/icon.svg | 1 + cutejava-ui/src/assets/icons/svg/image.svg | 1 + cutejava-ui/src/assets/icons/svg/index.svg | 1 + .../src/assets/icons/svg/international.svg | 1 + cutejava-ui/src/assets/icons/svg/ipvisits.svg | 1 + cutejava-ui/src/assets/icons/svg/java.svg | 1 + cutejava-ui/src/assets/icons/svg/link.svg | 1 + cutejava-ui/src/assets/icons/svg/list.svg | 1 + cutejava-ui/src/assets/icons/svg/lock.svg | 1 + cutejava-ui/src/assets/icons/svg/log.svg | 1 + cutejava-ui/src/assets/icons/svg/login.svg | 1 + cutejava-ui/src/assets/icons/svg/markdown.svg | 1 + cutejava-ui/src/assets/icons/svg/menu.svg | 1 + cutejava-ui/src/assets/icons/svg/message.svg | 1 + cutejava-ui/src/assets/icons/svg/mnt.svg | 1 + cutejava-ui/src/assets/icons/svg/money.svg | 1 + cutejava-ui/src/assets/icons/svg/monitor.svg | 1 + cutejava-ui/src/assets/icons/svg/nested.svg | 1 + cutejava-ui/src/assets/icons/svg/password.svg | 1 + cutejava-ui/src/assets/icons/svg/people.svg | 1 + cutejava-ui/src/assets/icons/svg/peoples.svg | 1 + .../src/assets/icons/svg/permission.svg | 1 + cutejava-ui/src/assets/icons/svg/phone.svg | 1 + cutejava-ui/src/assets/icons/svg/qiniu.svg | 1 + cutejava-ui/src/assets/icons/svg/redis.svg | 1 + cutejava-ui/src/assets/icons/svg/role.svg | 1 + cutejava-ui/src/assets/icons/svg/search.svg | 1 + cutejava-ui/src/assets/icons/svg/server.svg | 1 + cutejava-ui/src/assets/icons/svg/shopping.svg | 1 + cutejava-ui/src/assets/icons/svg/size.svg | 1 + cutejava-ui/src/assets/icons/svg/skill.svg | 1 + cutejava-ui/src/assets/icons/svg/source.svg | 1 + .../src/assets/icons/svg/sqlMonitor.svg | 1 + cutejava-ui/src/assets/icons/svg/swagger.svg | 1 + .../src/assets/icons/svg/sys-tools.svg | 1 + cutejava-ui/src/assets/icons/svg/system.svg | 1 + cutejava-ui/src/assets/icons/svg/system1.svg | 1 + cutejava-ui/src/assets/icons/svg/tab.svg | 1 + cutejava-ui/src/assets/icons/svg/theme.svg | 1 + cutejava-ui/src/assets/icons/svg/timing.svg | 1 + cutejava-ui/src/assets/icons/svg/tools.svg | 1 + .../src/assets/icons/svg/tree-table.svg | 1 + cutejava-ui/src/assets/icons/svg/tree.svg | 1 + cutejava-ui/src/assets/icons/svg/unlock.svg | 1 + cutejava-ui/src/assets/icons/svg/user.svg | 1 + cutejava-ui/src/assets/icons/svg/user1.svg | 1 + .../src/assets/icons/svg/validCode.svg | 1 + cutejava-ui/src/assets/icons/svg/visits.svg | 1 + cutejava-ui/src/assets/icons/svg/web.svg | 1 + cutejava-ui/src/assets/icons/svg/wechat.svg | 1 + cutejava-ui/src/assets/icons/svg/weixin.svg | 1 + cutejava-ui/src/assets/icons/svg/zujian.svg | 1 + cutejava-ui/src/assets/icons/svgo.yml | 22 + cutejava-ui/src/assets/images/avatar.png | Bin 0 -> 1865 bytes cutejava-ui/src/assets/images/background.jpeg | Bin 0 -> 241215 bytes cutejava-ui/src/assets/images/logo.png | Bin 0 -> 8852 bytes cutejava-ui/src/assets/styles/btn.scss | 99 ++ cutejava-ui/src/assets/styles/cutejava.scss | 117 +++ cutejava-ui/src/assets/styles/element-ui.scss | 79 ++ .../src/assets/styles/element-variables.scss | 31 + cutejava-ui/src/assets/styles/index.scss | 182 ++++ cutejava-ui/src/assets/styles/mixin.scss | 66 ++ cutejava-ui/src/assets/styles/sidebar.scss | 209 +++++ cutejava-ui/src/assets/styles/transition.scss | 48 + cutejava-ui/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 ++ cutejava-ui/src/components/Crud/crud.js | 865 ++++++++++++++++++ .../src/components/DateRangePicker/index.vue | 45 + cutejava-ui/src/components/Dict/Dict.js | 29 + cutejava-ui/src/components/Dict/index.js | 29 + .../src/components/Echarts/BarChart.vue | 106 +++ .../src/components/Echarts/Category.vue | 438 +++++++++ cutejava-ui/src/components/Echarts/Funnel.vue | 120 +++ cutejava-ui/src/components/Echarts/Gauge.vue | 74 ++ cutejava-ui/src/components/Echarts/Graph.vue | 101 ++ .../src/components/Echarts/HeatMap.vue | 105 +++ .../src/components/Echarts/PieChart.vue | 84 ++ cutejava-ui/src/components/Echarts/Point.vue | 149 +++ .../src/components/Echarts/RadarChart.vue | 120 +++ cutejava-ui/src/components/Echarts/Rich.vue | 149 +++ cutejava-ui/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 | 67 ++ .../src/components/IconSelect/requireIcons.js | 11 + cutejava-ui/src/components/Iframe/index.vue | 30 + cutejava-ui/src/components/JavaEdit/index.vue | 77 ++ .../src/components/Pagination/index.vue | 101 ++ cutejava-ui/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 ++ cutejava-ui/src/components/SvgIcon/index.vue | 62 ++ .../src/components/ThemePicker/index.vue | 165 ++++ .../src/components/WangEditor/index.vue | 93 ++ cutejava-ui/src/components/YamlEdit/index.vue | 81 ++ cutejava-ui/src/layout/components/AppMain.vue | 63 ++ cutejava-ui/src/layout/components/Navbar.vue | 194 ++++ .../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 ++++++ cutejava-ui/src/layout/components/index.js | 5 + cutejava-ui/src/layout/index.vue | 116 +++ cutejava-ui/src/layout/mixin/ResizeHandler.js | 45 + cutejava-ui/src/main.js | 41 + cutejava-ui/src/mixins/crud.js | 339 +++++++ cutejava-ui/src/router/index.js | 72 ++ cutejava-ui/src/router/routers.js | 68 ++ cutejava-ui/src/settings.js | 46 + cutejava-ui/src/store/getters.js | 23 + cutejava-ui/src/store/index.js | 25 + cutejava-ui/src/store/modules/api.js | 26 + cutejava-ui/src/store/modules/app.js | 56 ++ cutejava-ui/src/store/modules/permission.js | 83 ++ cutejava-ui/src/store/modules/settings.js | 36 + cutejava-ui/src/store/modules/tagsView.js | 165 ++++ cutejava-ui/src/store/modules/user.js | 94 ++ cutejava-ui/src/utils/auth.js | 18 + cutejava-ui/src/utils/clipboard.js | 36 + cutejava-ui/src/utils/datetime.js | 216 +++++ cutejava-ui/src/utils/index.js | 388 ++++++++ cutejava-ui/src/utils/permission.js | 23 + cutejava-ui/src/utils/request.js | 89 ++ cutejava-ui/src/utils/rsaEncrypt.js | 14 + cutejava-ui/src/utils/shortcuts.js | 76 ++ cutejava-ui/src/utils/upload.js | 11 + cutejava-ui/src/utils/validate.js | 167 ++++ cutejava-ui/src/views/components/Echarts.vue | 110 +++ cutejava-ui/src/views/components/Editor.vue | 35 + cutejava-ui/src/views/components/MarkDown.vue | 55 ++ cutejava-ui/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 + cutejava-ui/src/views/dashboard/LineChart.vue | 135 +++ .../src/views/dashboard/PanelGroup.vue | 181 ++++ .../src/views/dashboard/mixins/resize.js | 55 ++ cutejava-ui/src/views/features/401.vue | 89 ++ cutejava-ui/src/views/features/404.vue | 225 +++++ cutejava-ui/src/views/features/redirect.vue | 12 + cutejava-ui/src/views/home.vue | 107 +++ cutejava-ui/src/views/login.vue | 214 +++++ .../src/views/monitor/online/index.vue | 123 +++ .../src/views/monitor/server/index.vue | 291 ++++++ cutejava-ui/src/views/monitor/sql/index.vue | 16 + .../src/views/nested/menu1/menu1-1/index.vue | 33 + .../src/views/nested/menu1/menu1-2/index.vue | 5 + cutejava-ui/src/views/nested/menu2/index.vue | 5 + cutejava-ui/src/views/system/dept/index.vue | 254 +++++ .../src/views/system/dict/dictDetail.vue | 115 +++ cutejava-ui/src/views/system/dict/index.vue | 135 +++ cutejava-ui/src/views/system/job/index.vue | 109 +++ .../src/views/system/job/module/form.vue | 110 +++ .../src/views/system/job/module/header.vue | 32 + cutejava-ui/src/views/system/menu/index.vue | 252 +++++ cutejava-ui/src/views/system/role/index.vue | 364 ++++++++ cutejava-ui/src/views/system/timing/index.vue | 210 +++++ cutejava-ui/src/views/system/timing/log.vue | 104 +++ cutejava-ui/src/views/system/user/center.vue | 221 +++++ .../views/system/user/center/updateEmail.vue | 137 +++ .../views/system/user/center/updatePass.vue | 95 ++ cutejava-ui/src/views/system/user/index.vue | 524 +++++++++++ cutejava-ui/src/views/tools/email/config.vue | 91 ++ cutejava-ui/src/views/tools/email/index.vue | 41 + cutejava-ui/src/views/tools/email/send.vue | 98 ++ cutejava-ui/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 ++++ cutejava-ui/vue.config.js | 147 +++ cutejava/.gitignore | 9 + cutejava/LICENSE | 191 ++++ cutejava/README.md | 48 + cutejava/cutejava-common/pom.xml | 25 + .../annotation/rest/AnonymousAccess.java | 14 + .../rest/AnonymousDeleteMapping.java | 69 ++ .../annotation/rest/AnonymousGetMapping.java | 68 ++ .../rest/AnonymousPatchMapping.java | 69 ++ .../annotation/rest/AnonymousPostMapping.java | 69 ++ .../annotation/rest/AnonymousPutMapping.java | 69 ++ .../main/java/cn/odboy/base/BaseEntity.java | 64 ++ .../java/cn/odboy/config/AsyncExecutor.java | 80 ++ .../java/cn/odboy/config/AuthorityConfig.java | 26 + .../cn/odboy/config/RedisConfiguration.java | 178 ++++ .../odboy/config/RedissonConfiguration.java | 56 ++ .../cn/odboy/config/RemoveDruidAdConfig.java | 77 ++ .../config/mybatis/CustomP6SpyLogger.java | 57 ++ .../config/mybatis/MyMetaObjectHandler.java | 42 + .../config/mybatis/MybatisPlusConfig.java | 25 + .../config/properties/FileProperties.java | 46 + .../config/properties/RsaProperties.java | 17 + .../config/webConfig/ConfigurerAdapter.java | 79 ++ .../config/webConfig/MultipartConfig.java | 30 + .../config/webConfig/QueryCustomizer.java | 17 + .../odboy/config/webConfig/SwaggerConfig.java | 148 +++ .../config/webConfig/WebSocketConfig.java | 15 + .../main/java/cn/odboy/constant/CacheKey.java | 49 + .../java/cn/odboy/constant/CodeBiEnum.java | 31 + .../main/java/cn/odboy/constant/CodeEnum.java | 27 + .../java/cn/odboy/constant/DataScopeEnum.java | 34 + .../cn/odboy/constant/RequestMethodEnum.java | 53 ++ .../cn/odboy/constant/SystemConstant.java | 16 + .../odboy/exception/BadRequestException.java | 24 + .../odboy/exception/EntityExistException.java | 16 + .../exception/EntityNotFoundException.java | 15 + .../cn/odboy/exception/handler/ApiError.java | 31 + .../handler/GlobalExceptionHandler.java | 95 ++ .../main/java/cn/odboy/util/AnonTagUtil.java | 88 ++ .../java/cn/odboy/util/BigDecimalUtil.java | 134 +++ .../main/java/cn/odboy/util/CloseUtil.java | 29 + .../src/main/java/cn/odboy/util/DateUtil.java | 152 +++ .../main/java/cn/odboy/util/EncryptUtil.java | 79 ++ .../src/main/java/cn/odboy/util/FileUtil.java | 396 ++++++++ .../main/java/cn/odboy/util/PageResult.java | 21 + .../src/main/java/cn/odboy/util/PageUtil.java | 55 ++ .../main/java/cn/odboy/util/RedisUtil.java | 790 ++++++++++++++++ .../java/cn/odboy/util/RequestHolder.java | 17 + .../src/main/java/cn/odboy/util/RsaUtil.java | 198 ++++ .../main/java/cn/odboy/util/SecurityUtil.java | 134 +++ .../java/cn/odboy/util/SpringBeanHolder.java | 158 ++++ .../main/java/cn/odboy/util/StringUtil.java | 228 +++++ .../java/cn/odboy/util/ThrowableUtil.java | 21 + cutejava/cutejava-starter/pom.xml | 40 + .../src/main/java/cn/odboy/AppRun.java | 43 + .../src/main/resources/banner.txt | 8 + .../main/resources/config/application-dev.yml | 223 +++++ .../resources/config/application-prod.yml | 223 +++++ .../resources/config/application-quartz.yml | 31 + .../src/main/resources/config/application.yml | 5 + .../src/main/resources/logback.xml | 30 + .../mapper/quartz/QuartzJobMapper.xml | 51 ++ .../mapper/quartz/QuartzLogMapper.xml | 42 + .../resources/mapper/system/DeptMapper.xml | 82 ++ .../mapper/system/DictDetailMapper.xml | 56 ++ .../resources/mapper/system/DictMapper.xml | 35 + .../resources/mapper/system/JobMapper.xml | 37 + .../resources/mapper/system/MenuMapper.xml | 80 ++ .../mapper/system/RoleDeptMapper.xml | 25 + .../resources/mapper/system/RoleMapper.xml | 126 +++ .../mapper/system/RoleMenuMapper.xml | 30 + .../resources/mapper/system/UserJobMapper.xml | 25 + .../resources/mapper/system/UserMapper.xml | 178 ++++ .../mapper/system/UserRoleMapper.xml | 25 + .../src/main/resources/spy.properties | 20 + .../src/main/resources/template/email.ftl | 50 + .../src/main/resources/template/taskAlarm.ftl | 71 ++ .../java/cn/odboy/util/DateUtilsTest.java | 26 + .../java/cn/odboy/util/EncryptUtilTest.java | 40 + .../test/java/cn/odboy/util/FileUtilTest.java | 35 + .../java/cn/odboy/util/StringUtilTest.java | 48 + .../cn/odboy/util/SystemApplicationTests.java | 16 + cutejava/cutejava-system/pom.xml | 79 ++ .../modules/quartz/config/JobRunner.java | 33 + .../modules/quartz/config/QuartzConfig.java | 49 + .../modules/quartz/domain/QuartzJob.java | 68 ++ .../modules/quartz/domain/QuartzLog.java | 45 + .../domain/dto/QuartzJobQueryCriteria.java | 27 + .../quartz/mapper/QuartzJobMapper.java | 21 + .../quartz/mapper/QuartzLogMapper.java | 20 + .../quartz/rest/QuartzJobController.java | 125 +++ .../quartz/service/QuartzJobService.java | 112 +++ .../service/impl/QuartzJobServiceImpl.java | 173 ++++ .../odboy/modules/quartz/task/TestTask.java | 21 + .../modules/quartz/util/ExecutionJob.java | 115 +++ .../modules/quartz/util/QuartzManage.java | 165 ++++ .../modules/quartz/util/QuartzRunnable.java | 43 + .../security/config/CaptchaConfig.java | 120 +++ .../security/config/LoginProperties.java | 21 + .../security/config/SecurityProperties.java | 58 ++ .../security/config/SpringSecurityConfig.java | 119 +++ .../security/config/enums/LoginCodeEnum.java | 27 + .../modules/security/rest/AuthController.java | 138 +++ .../security/rest/OnlineController.java | 54 ++ .../security/JwtAccessDeniedHandler.java | 26 + .../security/JwtAuthenticationEntryPoint.java | 29 + .../security/security/TokenConfigurer.java | 23 + .../security/security/TokenFilter.java | 75 ++ .../security/security/TokenProvider.java | 136 +++ .../security/service/OnlineUserService.java | 137 +++ .../security/service/UserCacheManager.java | 72 ++ .../service/UserDetailsServiceImpl.java | 47 + .../security/service/dto/AuthUserDto.java | 26 + .../security/service/dto/AuthorityDto.java | 19 + .../security/service/dto/JwtUserDto.java | 66 ++ .../security/service/dto/OnlineUserDto.java | 44 + .../cn/odboy/modules/system/domain/Dept.java | 89 ++ .../cn/odboy/modules/system/domain/Dict.java | 32 + .../modules/system/domain/DictDetail.java | 41 + .../cn/odboy/modules/system/domain/Job.java | 55 ++ .../cn/odboy/modules/system/domain/Menu.java | 108 +++ .../cn/odboy/modules/system/domain/Role.java | 73 ++ .../cn/odboy/modules/system/domain/User.java | 102 +++ .../system/domain/dto/DeptQueryCriteria.java | 29 + .../domain/dto/DictDetailQueryCriteria.java | 20 + .../system/domain/dto/DictQueryCriteria.java | 17 + .../system/domain/dto/JobQueryCriteria.java | 29 + .../modules/system/domain/dto/MenuMetaVo.java | 21 + .../system/domain/dto/MenuQueryCriteria.java | 24 + .../modules/system/domain/dto/MenuVo.java | 38 + .../system/domain/dto/RoleQueryCriteria.java | 27 + .../modules/system/domain/dto/UserPassVo.java | 17 + .../system/domain/dto/UserQueryCriteria.java | 41 + .../modules/system/mapper/DeptMapper.java | 29 + .../system/mapper/DictDetailMapper.java | 23 + .../modules/system/mapper/DictMapper.java | 19 + .../modules/system/mapper/JobMapper.java | 23 + .../modules/system/mapper/MenuMapper.java | 36 + .../modules/system/mapper/RoleDeptMapper.java | 16 + .../modules/system/mapper/RoleMapper.java | 34 + .../modules/system/mapper/RoleMenuMapper.java | 19 + .../modules/system/mapper/UserJobMapper.java | 17 + .../modules/system/mapper/UserMapper.java | 50 + .../modules/system/mapper/UserRoleMapper.java | 16 + .../modules/system/rest/DeptController.java | 105 +++ .../modules/system/rest/DictController.java | 80 ++ .../system/rest/DictDetailController.java | 75 ++ .../modules/system/rest/JobController.java | 75 ++ .../modules/system/rest/MenuController.java | 132 +++ .../system/rest/MonitorController.java | 28 + .../modules/system/rest/RoleController.java | 133 +++ .../modules/system/rest/UserController.java | 187 ++++ .../modules/system/rest/VerifyController.java | 59 ++ .../modules/system/service/DataService.java | 19 + .../modules/system/service/DeptService.java | 118 +++ .../system/service/DictDetailService.java | 51 ++ .../modules/system/service/DictService.java | 63 ++ .../modules/system/service/JobService.java | 78 ++ .../modules/system/service/MenuService.java | 112 +++ .../system/service/MonitorService.java | 13 + .../modules/system/service/RoleService.java | 126 +++ .../modules/system/service/UserService.java | 128 +++ .../modules/system/service/VerifyService.java | 23 + .../system/service/impl/DataServiceImpl.java | 82 ++ .../system/service/impl/DeptServiceImpl.java | 270 ++++++ .../service/impl/DictDetailServiceImpl.java | 80 ++ .../system/service/impl/DictServiceImpl.java | 108 +++ .../system/service/impl/JobServiceImpl.java | 110 +++ .../system/service/impl/MenuServiceImpl.java | 353 +++++++ .../service/impl/MonitorServiceImpl.java | 184 ++++ .../system/service/impl/RoleServiceImpl.java | 225 +++++ .../system/service/impl/UserServiceImpl.java | 277 ++++++ .../service/impl/VerifyServiceImpl.java | 62 ++ cutejava/cutejava-tools/pom.xml | 40 + .../java/cn/odboy/domain/EmailConfig.java | 40 + .../java/cn/odboy/domain/LocalStorage.java | 56 ++ .../java/cn/odboy/domain/QiniuConfig.java | 51 ++ .../java/cn/odboy/domain/QiniuContent.java | 43 + .../java/cn/odboy/domain/dto/EmailDto.java | 31 + .../domain/dto/LocalStorageQueryCriteria.java | 24 + .../odboy/domain/dto/QiniuQueryCriteria.java | 24 + .../cn/odboy/mapper/EmailConfigMapper.java | 11 + .../cn/odboy/mapper/LocalStorageMapper.java | 19 + .../cn/odboy/mapper/QiniuConfigMapper.java | 11 + .../cn/odboy/mapper/QiniuContentMapper.java | 22 + .../java/cn/odboy/rest/EmailController.java | 43 + .../cn/odboy/rest/LocalStorageController.java | 80 ++ .../java/cn/odboy/rest/QiniuController.java | 103 +++ .../java/cn/odboy/service/EmailService.java | 34 + .../cn/odboy/service/LocalStorageService.java | 65 ++ .../cn/odboy/service/QiNiuConfigService.java | 29 + .../cn/odboy/service/QiniuContentService.java | 84 ++ .../odboy/service/impl/EmailServiceImpl.java | 87 ++ .../service/impl/LocalStorageServiceImpl.java | 108 +++ .../service/impl/QiNiuConfigServiceImpl.java | 48 + .../service/impl/QiniuContentServiceImpl.java | 187 ++++ .../main/java/cn/odboy/util/QiNiuUtil.java | 57 ++ .../resources/mapper/LocalStorageMapper.xml | 42 + .../resources/mapper/QiniuContentMapper.xml | 42 + cutejava/doc/@Validated常用.txt | 34 + cutejava/pom.xml | 289 ++++++ sql/cutejava20250321.sql | 829 +++++++++++++++++ 454 files changed, 31475 insertions(+) create mode 100644 .gitignore create mode 100644 cutejava-ui/.editorconfig create mode 100644 cutejava-ui/.env.development create mode 100644 cutejava-ui/.env.production create mode 100644 cutejava-ui/.eslintignore create mode 100644 cutejava-ui/.eslintrc.js create mode 100644 cutejava-ui/.gitignore create mode 100644 cutejava-ui/.travis.yml create mode 100644 cutejava-ui/LICENSE create mode 100644 cutejava-ui/README.md create mode 100644 cutejava-ui/babel.config.js create mode 100644 cutejava-ui/jest.config.js create mode 100644 cutejava-ui/package.json create mode 100644 cutejava-ui/plopfile.js create mode 100644 cutejava-ui/postcss.config.js create mode 100644 cutejava-ui/public/favicon.ico create mode 100644 cutejava-ui/public/index.html create mode 100644 cutejava-ui/public/robots.txt create mode 100644 cutejava-ui/src/App.vue create mode 100644 cutejava-ui/src/api/data.js create mode 100644 cutejava-ui/src/api/login.js create mode 100644 cutejava-ui/src/api/monitor/online.js create mode 100644 cutejava-ui/src/api/system/code.js create mode 100644 cutejava-ui/src/api/system/dept.js create mode 100644 cutejava-ui/src/api/system/dict.js create mode 100644 cutejava-ui/src/api/system/dictDetail.js create mode 100644 cutejava-ui/src/api/system/job.js create mode 100644 cutejava-ui/src/api/system/menu.js create mode 100644 cutejava-ui/src/api/system/role.js create mode 100644 cutejava-ui/src/api/system/timing.js create mode 100644 cutejava-ui/src/api/system/user.js create mode 100644 cutejava-ui/src/api/tools/email.js create mode 100644 cutejava-ui/src/api/tools/localStorage.js create mode 100644 cutejava-ui/src/api/tools/qiniu.js create mode 100644 cutejava-ui/src/assets/401_images/401.gif create mode 100644 cutejava-ui/src/assets/404_images/404.png create mode 100644 cutejava-ui/src/assets/404_images/404_cloud.png create mode 100644 cutejava-ui/src/assets/icons/index.js create mode 100644 cutejava-ui/src/assets/icons/svg/Steve-Jobs.svg create mode 100644 cutejava-ui/src/assets/icons/svg/alipay.svg create mode 100644 cutejava-ui/src/assets/icons/svg/anq.svg create mode 100644 cutejava-ui/src/assets/icons/svg/app.svg create mode 100644 cutejava-ui/src/assets/icons/svg/backup.svg create mode 100644 cutejava-ui/src/assets/icons/svg/blog.svg create mode 100644 cutejava-ui/src/assets/icons/svg/chain.svg create mode 100644 cutejava-ui/src/assets/icons/svg/chart.svg create mode 100644 cutejava-ui/src/assets/icons/svg/codeConsole.svg create mode 100644 cutejava-ui/src/assets/icons/svg/dashboard.svg create mode 100644 cutejava-ui/src/assets/icons/svg/database.svg create mode 100644 cutejava-ui/src/assets/icons/svg/date.svg create mode 100644 cutejava-ui/src/assets/icons/svg/deploy.svg create mode 100644 cutejava-ui/src/assets/icons/svg/dept.svg create mode 100644 cutejava-ui/src/assets/icons/svg/dev.svg create mode 100644 cutejava-ui/src/assets/icons/svg/develop.svg create mode 100644 cutejava-ui/src/assets/icons/svg/dictionary.svg create mode 100644 cutejava-ui/src/assets/icons/svg/doc.svg create mode 100644 cutejava-ui/src/assets/icons/svg/download.svg create mode 100644 cutejava-ui/src/assets/icons/svg/edit.svg create mode 100644 cutejava-ui/src/assets/icons/svg/education.svg create mode 100644 cutejava-ui/src/assets/icons/svg/email.svg create mode 100644 cutejava-ui/src/assets/icons/svg/error.svg create mode 100644 cutejava-ui/src/assets/icons/svg/exit-fullscreen.svg create mode 100644 cutejava-ui/src/assets/icons/svg/fullscreen.svg create mode 100644 cutejava-ui/src/assets/icons/svg/fwb.svg create mode 100644 cutejava-ui/src/assets/icons/svg/github.svg create mode 100644 cutejava-ui/src/assets/icons/svg/gonggao.svg create mode 100644 cutejava-ui/src/assets/icons/svg/icon.svg create mode 100644 cutejava-ui/src/assets/icons/svg/image.svg create mode 100644 cutejava-ui/src/assets/icons/svg/index.svg create mode 100644 cutejava-ui/src/assets/icons/svg/international.svg create mode 100644 cutejava-ui/src/assets/icons/svg/ipvisits.svg create mode 100644 cutejava-ui/src/assets/icons/svg/java.svg create mode 100644 cutejava-ui/src/assets/icons/svg/link.svg create mode 100644 cutejava-ui/src/assets/icons/svg/list.svg create mode 100644 cutejava-ui/src/assets/icons/svg/lock.svg create mode 100644 cutejava-ui/src/assets/icons/svg/log.svg create mode 100644 cutejava-ui/src/assets/icons/svg/login.svg create mode 100644 cutejava-ui/src/assets/icons/svg/markdown.svg create mode 100644 cutejava-ui/src/assets/icons/svg/menu.svg create mode 100644 cutejava-ui/src/assets/icons/svg/message.svg create mode 100644 cutejava-ui/src/assets/icons/svg/mnt.svg create mode 100644 cutejava-ui/src/assets/icons/svg/money.svg create mode 100644 cutejava-ui/src/assets/icons/svg/monitor.svg create mode 100644 cutejava-ui/src/assets/icons/svg/nested.svg create mode 100644 cutejava-ui/src/assets/icons/svg/password.svg create mode 100644 cutejava-ui/src/assets/icons/svg/people.svg create mode 100644 cutejava-ui/src/assets/icons/svg/peoples.svg create mode 100644 cutejava-ui/src/assets/icons/svg/permission.svg create mode 100644 cutejava-ui/src/assets/icons/svg/phone.svg create mode 100644 cutejava-ui/src/assets/icons/svg/qiniu.svg create mode 100644 cutejava-ui/src/assets/icons/svg/redis.svg create mode 100644 cutejava-ui/src/assets/icons/svg/role.svg create mode 100644 cutejava-ui/src/assets/icons/svg/search.svg create mode 100644 cutejava-ui/src/assets/icons/svg/server.svg create mode 100644 cutejava-ui/src/assets/icons/svg/shopping.svg create mode 100644 cutejava-ui/src/assets/icons/svg/size.svg create mode 100644 cutejava-ui/src/assets/icons/svg/skill.svg create mode 100644 cutejava-ui/src/assets/icons/svg/source.svg create mode 100644 cutejava-ui/src/assets/icons/svg/sqlMonitor.svg create mode 100644 cutejava-ui/src/assets/icons/svg/swagger.svg create mode 100644 cutejava-ui/src/assets/icons/svg/sys-tools.svg create mode 100644 cutejava-ui/src/assets/icons/svg/system.svg create mode 100644 cutejava-ui/src/assets/icons/svg/system1.svg create mode 100644 cutejava-ui/src/assets/icons/svg/tab.svg create mode 100644 cutejava-ui/src/assets/icons/svg/theme.svg create mode 100644 cutejava-ui/src/assets/icons/svg/timing.svg create mode 100644 cutejava-ui/src/assets/icons/svg/tools.svg create mode 100644 cutejava-ui/src/assets/icons/svg/tree-table.svg create mode 100644 cutejava-ui/src/assets/icons/svg/tree.svg create mode 100644 cutejava-ui/src/assets/icons/svg/unlock.svg create mode 100644 cutejava-ui/src/assets/icons/svg/user.svg create mode 100644 cutejava-ui/src/assets/icons/svg/user1.svg create mode 100644 cutejava-ui/src/assets/icons/svg/validCode.svg create mode 100644 cutejava-ui/src/assets/icons/svg/visits.svg create mode 100644 cutejava-ui/src/assets/icons/svg/web.svg create mode 100644 cutejava-ui/src/assets/icons/svg/wechat.svg create mode 100644 cutejava-ui/src/assets/icons/svg/weixin.svg create mode 100644 cutejava-ui/src/assets/icons/svg/zujian.svg create mode 100644 cutejava-ui/src/assets/icons/svgo.yml create mode 100644 cutejava-ui/src/assets/images/avatar.png create mode 100644 cutejava-ui/src/assets/images/background.jpeg create mode 100644 cutejava-ui/src/assets/images/logo.png create mode 100644 cutejava-ui/src/assets/styles/btn.scss create mode 100644 cutejava-ui/src/assets/styles/cutejava.scss create mode 100644 cutejava-ui/src/assets/styles/element-ui.scss create mode 100644 cutejava-ui/src/assets/styles/element-variables.scss create mode 100644 cutejava-ui/src/assets/styles/index.scss create mode 100644 cutejava-ui/src/assets/styles/mixin.scss create mode 100644 cutejava-ui/src/assets/styles/sidebar.scss create mode 100644 cutejava-ui/src/assets/styles/transition.scss create mode 100644 cutejava-ui/src/assets/styles/variables.scss create mode 100644 cutejava-ui/src/components/Breadcrumb/index.vue create mode 100644 cutejava-ui/src/components/Crud/CRUD.operation.vue create mode 100644 cutejava-ui/src/components/Crud/Pagination.vue create mode 100644 cutejava-ui/src/components/Crud/RR.operation.vue create mode 100644 cutejava-ui/src/components/Crud/UD.operation.vue create mode 100644 cutejava-ui/src/components/Crud/crud.js create mode 100644 cutejava-ui/src/components/DateRangePicker/index.vue create mode 100644 cutejava-ui/src/components/Dict/Dict.js create mode 100644 cutejava-ui/src/components/Dict/index.js create mode 100644 cutejava-ui/src/components/Echarts/BarChart.vue create mode 100644 cutejava-ui/src/components/Echarts/Category.vue create mode 100644 cutejava-ui/src/components/Echarts/Funnel.vue create mode 100644 cutejava-ui/src/components/Echarts/Gauge.vue create mode 100644 cutejava-ui/src/components/Echarts/Graph.vue create mode 100644 cutejava-ui/src/components/Echarts/HeatMap.vue create mode 100644 cutejava-ui/src/components/Echarts/PieChart.vue create mode 100644 cutejava-ui/src/components/Echarts/Point.vue create mode 100644 cutejava-ui/src/components/Echarts/RadarChart.vue create mode 100644 cutejava-ui/src/components/Echarts/Rich.vue create mode 100644 cutejava-ui/src/components/Echarts/Sankey.vue create mode 100644 cutejava-ui/src/components/Echarts/Scatter.vue create mode 100644 cutejava-ui/src/components/Echarts/Sunburst.vue create mode 100644 cutejava-ui/src/components/Echarts/ThemeRiver.vue create mode 100644 cutejava-ui/src/components/GithubCorner/index.vue create mode 100644 cutejava-ui/src/components/Hamburger/index.vue create mode 100644 cutejava-ui/src/components/HeaderSearch/index.vue create mode 100644 cutejava-ui/src/components/IconSelect/index.vue create mode 100644 cutejava-ui/src/components/IconSelect/requireIcons.js create mode 100644 cutejava-ui/src/components/Iframe/index.vue create mode 100644 cutejava-ui/src/components/JavaEdit/index.vue create mode 100644 cutejava-ui/src/components/Pagination/index.vue create mode 100644 cutejava-ui/src/components/PanThumb/index.vue create mode 100644 cutejava-ui/src/components/ParentView/index.vue create mode 100644 cutejava-ui/src/components/Permission/index.js create mode 100644 cutejava-ui/src/components/Permission/permission.js create mode 100644 cutejava-ui/src/components/RightPanel/index.vue create mode 100644 cutejava-ui/src/components/Screenfull/index.vue create mode 100644 cutejava-ui/src/components/SizeSelect/index.vue create mode 100644 cutejava-ui/src/components/SvgIcon/index.vue create mode 100644 cutejava-ui/src/components/ThemePicker/index.vue create mode 100644 cutejava-ui/src/components/WangEditor/index.vue create mode 100644 cutejava-ui/src/components/YamlEdit/index.vue create mode 100644 cutejava-ui/src/layout/components/AppMain.vue create mode 100644 cutejava-ui/src/layout/components/Navbar.vue create mode 100644 cutejava-ui/src/layout/components/Settings/index.vue create mode 100644 cutejava-ui/src/layout/components/Sidebar/FixiOSBug.js create mode 100644 cutejava-ui/src/layout/components/Sidebar/Item.vue create mode 100644 cutejava-ui/src/layout/components/Sidebar/Link.vue create mode 100644 cutejava-ui/src/layout/components/Sidebar/Logo.vue create mode 100644 cutejava-ui/src/layout/components/Sidebar/SidebarItem.vue create mode 100644 cutejava-ui/src/layout/components/Sidebar/index.vue create mode 100644 cutejava-ui/src/layout/components/TagsView/ScrollPane.vue create mode 100644 cutejava-ui/src/layout/components/TagsView/index.vue create mode 100644 cutejava-ui/src/layout/components/index.js create mode 100644 cutejava-ui/src/layout/index.vue create mode 100644 cutejava-ui/src/layout/mixin/ResizeHandler.js create mode 100644 cutejava-ui/src/main.js create mode 100644 cutejava-ui/src/mixins/crud.js create mode 100644 cutejava-ui/src/router/index.js create mode 100644 cutejava-ui/src/router/routers.js create mode 100644 cutejava-ui/src/settings.js create mode 100644 cutejava-ui/src/store/getters.js create mode 100644 cutejava-ui/src/store/index.js create mode 100644 cutejava-ui/src/store/modules/api.js create mode 100644 cutejava-ui/src/store/modules/app.js create mode 100644 cutejava-ui/src/store/modules/permission.js create mode 100644 cutejava-ui/src/store/modules/settings.js create mode 100644 cutejava-ui/src/store/modules/tagsView.js create mode 100644 cutejava-ui/src/store/modules/user.js create mode 100644 cutejava-ui/src/utils/auth.js create mode 100644 cutejava-ui/src/utils/clipboard.js create mode 100644 cutejava-ui/src/utils/datetime.js create mode 100644 cutejava-ui/src/utils/index.js create mode 100644 cutejava-ui/src/utils/permission.js create mode 100644 cutejava-ui/src/utils/request.js create mode 100644 cutejava-ui/src/utils/rsaEncrypt.js create mode 100644 cutejava-ui/src/utils/shortcuts.js create mode 100644 cutejava-ui/src/utils/upload.js create mode 100644 cutejava-ui/src/utils/validate.js create mode 100644 cutejava-ui/src/views/components/Echarts.vue create mode 100644 cutejava-ui/src/views/components/Editor.vue create mode 100644 cutejava-ui/src/views/components/MarkDown.vue create mode 100644 cutejava-ui/src/views/components/YamlEdit.vue create mode 100644 cutejava-ui/src/views/components/icons/element-icons.js create mode 100644 cutejava-ui/src/views/components/icons/index.vue create mode 100644 cutejava-ui/src/views/components/icons/svg-icons.js create mode 100644 cutejava-ui/src/views/dashboard/LineChart.vue create mode 100644 cutejava-ui/src/views/dashboard/PanelGroup.vue create mode 100644 cutejava-ui/src/views/dashboard/mixins/resize.js create mode 100644 cutejava-ui/src/views/features/401.vue create mode 100644 cutejava-ui/src/views/features/404.vue create mode 100644 cutejava-ui/src/views/features/redirect.vue create mode 100644 cutejava-ui/src/views/home.vue create mode 100644 cutejava-ui/src/views/login.vue create mode 100644 cutejava-ui/src/views/monitor/online/index.vue create mode 100644 cutejava-ui/src/views/monitor/server/index.vue create mode 100644 cutejava-ui/src/views/monitor/sql/index.vue create mode 100644 cutejava-ui/src/views/nested/menu1/menu1-1/index.vue create mode 100644 cutejava-ui/src/views/nested/menu1/menu1-2/index.vue create mode 100644 cutejava-ui/src/views/nested/menu2/index.vue create mode 100644 cutejava-ui/src/views/system/dept/index.vue create mode 100644 cutejava-ui/src/views/system/dict/dictDetail.vue create mode 100644 cutejava-ui/src/views/system/dict/index.vue create mode 100644 cutejava-ui/src/views/system/job/index.vue create mode 100644 cutejava-ui/src/views/system/job/module/form.vue create mode 100644 cutejava-ui/src/views/system/job/module/header.vue create mode 100644 cutejava-ui/src/views/system/menu/index.vue create mode 100644 cutejava-ui/src/views/system/role/index.vue create mode 100644 cutejava-ui/src/views/system/timing/index.vue create mode 100644 cutejava-ui/src/views/system/timing/log.vue create mode 100644 cutejava-ui/src/views/system/user/center.vue create mode 100644 cutejava-ui/src/views/system/user/center/updateEmail.vue create mode 100644 cutejava-ui/src/views/system/user/center/updatePass.vue create mode 100644 cutejava-ui/src/views/system/user/index.vue create mode 100644 cutejava-ui/src/views/tools/email/config.vue create mode 100644 cutejava-ui/src/views/tools/email/index.vue create mode 100644 cutejava-ui/src/views/tools/email/send.vue create mode 100644 cutejava-ui/src/views/tools/storage/index.vue create mode 100644 cutejava-ui/src/views/tools/storage/local/index.vue create mode 100644 cutejava-ui/src/views/tools/storage/qiniu/form.vue create mode 100644 cutejava-ui/src/views/tools/storage/qiniu/index.vue create mode 100644 cutejava-ui/vue.config.js create mode 100644 cutejava/.gitignore create mode 100644 cutejava/LICENSE create mode 100644 cutejava/README.md create mode 100644 cutejava/cutejava-common/pom.xml create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/annotation/rest/AnonymousAccess.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/annotation/rest/AnonymousDeleteMapping.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/annotation/rest/AnonymousGetMapping.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/annotation/rest/AnonymousPatchMapping.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/annotation/rest/AnonymousPostMapping.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/annotation/rest/AnonymousPutMapping.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/base/BaseEntity.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/AsyncExecutor.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/AuthorityConfig.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/RedisConfiguration.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/RedissonConfiguration.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/RemoveDruidAdConfig.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/mybatis/CustomP6SpyLogger.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/mybatis/MyMetaObjectHandler.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/mybatis/MybatisPlusConfig.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/properties/FileProperties.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/properties/RsaProperties.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/webConfig/ConfigurerAdapter.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/webConfig/MultipartConfig.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/webConfig/QueryCustomizer.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/webConfig/SwaggerConfig.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/config/webConfig/WebSocketConfig.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/constant/CacheKey.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/constant/CodeBiEnum.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/constant/CodeEnum.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/constant/DataScopeEnum.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/constant/RequestMethodEnum.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/constant/SystemConstant.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/exception/BadRequestException.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/exception/EntityExistException.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/exception/EntityNotFoundException.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/exception/handler/ApiError.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/exception/handler/GlobalExceptionHandler.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/AnonTagUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/BigDecimalUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/CloseUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/DateUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/EncryptUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/FileUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/PageResult.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/PageUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/RedisUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/RequestHolder.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/RsaUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/SecurityUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/SpringBeanHolder.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/StringUtil.java create mode 100644 cutejava/cutejava-common/src/main/java/cn/odboy/util/ThrowableUtil.java create mode 100644 cutejava/cutejava-starter/pom.xml create mode 100644 cutejava/cutejava-starter/src/main/java/cn/odboy/AppRun.java create mode 100644 cutejava/cutejava-starter/src/main/resources/banner.txt create mode 100644 cutejava/cutejava-starter/src/main/resources/config/application-dev.yml create mode 100644 cutejava/cutejava-starter/src/main/resources/config/application-prod.yml create mode 100644 cutejava/cutejava-starter/src/main/resources/config/application-quartz.yml create mode 100644 cutejava/cutejava-starter/src/main/resources/config/application.yml create mode 100644 cutejava/cutejava-starter/src/main/resources/logback.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/quartz/QuartzJobMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/quartz/QuartzLogMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/DeptMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/DictDetailMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/DictMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/JobMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/MenuMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/RoleDeptMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/RoleMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/RoleMenuMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/UserJobMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/UserMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/mapper/system/UserRoleMapper.xml create mode 100644 cutejava/cutejava-starter/src/main/resources/spy.properties create mode 100644 cutejava/cutejava-starter/src/main/resources/template/email.ftl create mode 100644 cutejava/cutejava-starter/src/main/resources/template/taskAlarm.ftl create mode 100644 cutejava/cutejava-starter/src/test/java/cn/odboy/util/DateUtilsTest.java create mode 100644 cutejava/cutejava-starter/src/test/java/cn/odboy/util/EncryptUtilTest.java create mode 100644 cutejava/cutejava-starter/src/test/java/cn/odboy/util/FileUtilTest.java create mode 100644 cutejava/cutejava-starter/src/test/java/cn/odboy/util/StringUtilTest.java create mode 100644 cutejava/cutejava-starter/src/test/java/cn/odboy/util/SystemApplicationTests.java create mode 100644 cutejava/cutejava-system/pom.xml create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/config/JobRunner.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/config/QuartzConfig.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/domain/QuartzJob.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/domain/QuartzLog.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/domain/dto/QuartzJobQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/mapper/QuartzJobMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/mapper/QuartzLogMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/rest/QuartzJobController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/service/QuartzJobService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/service/impl/QuartzJobServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/task/TestTask.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/util/ExecutionJob.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/util/QuartzManage.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/quartz/util/QuartzRunnable.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/config/CaptchaConfig.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/config/LoginProperties.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/config/SecurityProperties.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/config/SpringSecurityConfig.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/config/enums/LoginCodeEnum.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/rest/AuthController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/rest/OnlineController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/security/JwtAccessDeniedHandler.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/security/JwtAuthenticationEntryPoint.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/security/TokenConfigurer.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/security/TokenFilter.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/security/TokenProvider.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/OnlineUserService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/UserCacheManager.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/UserDetailsServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/dto/AuthUserDto.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/dto/AuthorityDto.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/dto/JwtUserDto.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/security/service/dto/OnlineUserDto.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/Dept.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/Dict.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/DictDetail.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/Job.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/Menu.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/Role.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/User.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/DeptQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/DictDetailQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/DictQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/JobQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/MenuMetaVo.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/MenuQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/MenuVo.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/RoleQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/UserPassVo.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/domain/dto/UserQueryCriteria.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/DeptMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/DictDetailMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/DictMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/JobMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/MenuMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/RoleDeptMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/RoleMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/RoleMenuMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/UserJobMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/UserMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/mapper/UserRoleMapper.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/DeptController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/DictController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/DictDetailController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/JobController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/MenuController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/MonitorController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/RoleController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/UserController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/rest/VerifyController.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/DataService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/DeptService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/DictDetailService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/DictService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/JobService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/MenuService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/MonitorService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/RoleService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/UserService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/VerifyService.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/DataServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/DeptServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/DictDetailServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/DictServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/JobServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/MenuServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/MonitorServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/RoleServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/UserServiceImpl.java create mode 100644 cutejava/cutejava-system/src/main/java/cn/odboy/modules/system/service/impl/VerifyServiceImpl.java create mode 100644 cutejava/cutejava-tools/pom.xml create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/EmailConfig.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/LocalStorage.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/QiniuConfig.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/QiniuContent.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/dto/EmailDto.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/dto/LocalStorageQueryCriteria.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/domain/dto/QiniuQueryCriteria.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/mapper/EmailConfigMapper.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/mapper/LocalStorageMapper.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/mapper/QiniuConfigMapper.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/mapper/QiniuContentMapper.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/rest/EmailController.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/rest/LocalStorageController.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/rest/QiniuController.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/EmailService.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/LocalStorageService.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/QiNiuConfigService.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/QiniuContentService.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/impl/EmailServiceImpl.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/impl/LocalStorageServiceImpl.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/impl/QiNiuConfigServiceImpl.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/service/impl/QiniuContentServiceImpl.java create mode 100644 cutejava/cutejava-tools/src/main/java/cn/odboy/util/QiNiuUtil.java create mode 100644 cutejava/cutejava-tools/src/main/resources/mapper/LocalStorageMapper.xml create mode 100644 cutejava/cutejava-tools/src/main/resources/mapper/QiniuContentMapper.xml create mode 100644 cutejava/doc/@Validated常用.txt create mode 100644 cutejava/pom.xml create mode 100644 sql/cutejava20250321.sql diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..cd8c847e --- /dev/null +++ b/.gitignore @@ -0,0 +1,34 @@ +.DS_Store +node_modules/ +dist/ +demo/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +**/*.log + +tests/**/coverage/ +tests/e2e/reports +selenium-debug.log + +# Editor directories and files +.idea +.vscode +*.suo +*.ntvs* +*.njsproj +*.sln +*.local + +package-lock.json +yarn.lock + +### IDEA ### +.DS_Store +~/* +.idea/* +*.iml +*/target/* +*/*.iml +/.gradle/ +/application.pid \ No newline at end of file diff --git a/cutejava-ui/.editorconfig b/cutejava-ui/.editorconfig new file mode 100644 index 00000000..3454886e --- /dev/null +++ b/cutejava-ui/.editorconfig @@ -0,0 +1,14 @@ +# https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +insert_final_newline = false +trim_trailing_whitespace = false diff --git a/cutejava-ui/.env.development b/cutejava-ui/.env.development new file mode 100644 index 00000000..d9a21321 --- /dev/null +++ b/cutejava-ui/.env.development @@ -0,0 +1,8 @@ +ENV = 'development' + +# 接口地址 +VUE_APP_BASE_API = 'http://localhost:8000' +VUE_APP_WS_API = 'ws://localhost:8000' + +# 是否启用 babel-plugin-dynamic-import-node插件 +VUE_CLI_BABEL_TRANSPILE_MODULES = true diff --git a/cutejava-ui/.env.production b/cutejava-ui/.env.production new file mode 100644 index 00000000..d680afa7 --- /dev/null +++ b/cutejava-ui/.env.production @@ -0,0 +1,7 @@ +ENV = 'production' + +# 如果使用 Nginx 代理后端接口,那么此处需要改为 '/',文件查看 Docker 部署篇,Nginx 配置 +# 接口地址,注意协议,如果你没有配置 ssl,需要将 https 改为 http +VUE_APP_BASE_API = 'https://cutejava-api.odboy.cn' +# 如果接口是 http 形式, wss 需要改为 ws +VUE_APP_WS_API = 'wss://cutejava-api.odboy.cn' diff --git a/cutejava-ui/.eslintignore b/cutejava-ui/.eslintignore new file mode 100644 index 00000000..e6529fc0 --- /dev/null +++ b/cutejava-ui/.eslintignore @@ -0,0 +1,4 @@ +build/*.js +src/assets +public +dist diff --git a/cutejava-ui/.eslintrc.js b/cutejava-ui/.eslintrc.js new file mode 100644 index 00000000..c9775054 --- /dev/null +++ b/cutejava-ui/.eslintrc.js @@ -0,0 +1,198 @@ +module.exports = { + root: true, + parserOptions: { + parser: 'babel-eslint', + sourceType: 'module' + }, + env: { + browser: true, + node: true, + es6: true, + }, + extends: ['plugin:vue/recommended', 'eslint:recommended'], + + // add your custom rules here + //it is base on https://github.com/vuejs/eslint-config-vue + rules: { + "vue/max-attributes-per-line": [2, { + "singleline": 10, + "multiline": { + "max": 1, + "allowFirstLine": false + } + }], + "vue/singleline-html-element-content-newline": "off", + "vue/multiline-html-element-content-newline":"off", + "vue/name-property-casing": ["error", "PascalCase"], + "vue/no-v-html": "off", + 'accessor-pairs': 2, + 'arrow-spacing': [2, { + 'before': true, + 'after': true + }], + 'block-spacing': [2, 'always'], + 'brace-style': [2, '1tbs', { + 'allowSingleLine': true + }], + 'camelcase': [0, { + 'properties': 'always' + }], + 'comma-dangle': [2, 'never'], + 'comma-spacing': [2, { + 'before': false, + 'after': true + }], + 'comma-style': [2, 'last'], + 'constructor-super': 2, + 'curly': [2, 'multi-line'], + 'dot-location': [2, 'property'], + 'eol-last': 2, + 'eqeqeq': ["error", "always", {"null": "ignore"}], + 'generator-star-spacing': [2, { + 'before': true, + 'after': true + }], + 'handle-callback-err': [2, '^(err|error)$'], + 'indent': [2, 2, { + 'SwitchCase': 1 + }], + 'jsx-quotes': [2, 'prefer-single'], + 'key-spacing': [2, { + 'beforeColon': false, + 'afterColon': true + }], + 'keyword-spacing': [2, { + 'before': true, + 'after': true + }], + 'new-cap': [2, { + 'newIsCap': true, + 'capIsNew': false + }], + 'new-parens': 2, + 'no-array-constructor': 2, + 'no-caller': 2, + 'no-console': 'off', + 'no-class-assign': 2, + 'no-cond-assign': 2, + 'no-const-assign': 2, + 'no-control-regex': 0, + 'no-delete-var': 2, + 'no-dupe-args': 2, + 'no-dupe-class-members': 2, + 'no-dupe-keys': 2, + 'no-duplicate-case': 2, + 'no-empty-character-class': 2, + 'no-empty-pattern': 2, + 'no-eval': 2, + 'no-ex-assign': 2, + 'no-extend-native': 2, + 'no-extra-bind': 2, + 'no-extra-boolean-cast': 2, + 'no-extra-parens': [2, 'functions'], + 'no-fallthrough': 2, + 'no-floating-decimal': 2, + 'no-func-assign': 2, + 'no-implied-eval': 2, + 'no-inner-declarations': [2, 'functions'], + 'no-invalid-regexp': 2, + 'no-irregular-whitespace': 2, + 'no-iterator': 2, + 'no-label-var': 2, + 'no-labels': [2, { + 'allowLoop': false, + 'allowSwitch': false + }], + 'no-lone-blocks': 2, + 'no-mixed-spaces-and-tabs': 2, + 'no-multi-spaces': 2, + 'no-multi-str': 2, + 'no-multiple-empty-lines': [2, { + 'max': 1 + }], + 'no-native-reassign': 2, + 'no-negated-in-lhs': 2, + 'no-new-object': 2, + 'no-new-require': 2, + 'no-new-symbol': 2, + 'no-new-wrappers': 2, + 'no-obj-calls': 2, + 'no-octal': 2, + 'no-octal-escape': 2, + 'no-path-concat': 2, + 'no-proto': 2, + 'no-redeclare': 2, + 'no-regex-spaces': 2, + 'no-return-assign': [2, 'except-parens'], + 'no-self-assign': 2, + 'no-self-compare': 2, + 'no-sequences': 2, + 'no-shadow-restricted-names': 2, + 'no-spaced-func': 2, + 'no-sparse-arrays': 2, + 'no-this-before-super': 2, + 'no-throw-literal': 2, + 'no-trailing-spaces': 2, + 'no-undef': 2, + 'no-undef-init': 2, + 'no-unexpected-multiline': 2, + 'no-unmodified-loop-condition': 2, + 'no-unneeded-ternary': [2, { + 'defaultAssignment': false + }], + 'no-unreachable': 2, + 'no-unsafe-finally': 2, + 'no-unused-vars': [2, { + 'vars': 'all', + 'args': 'none' + }], + 'no-useless-call': 2, + 'no-useless-computed-key': 2, + 'no-useless-constructor': 2, + 'no-useless-escape': 0, + 'no-whitespace-before-property': 2, + 'no-with': 2, + 'one-var': [2, { + 'initialized': 'never' + }], + 'operator-linebreak': [2, 'after', { + 'overrides': { + '?': 'before', + ':': 'before' + } + }], + 'padded-blocks': [2, 'never'], + 'quotes': [2, 'single', { + 'avoidEscape': true, + 'allowTemplateLiterals': true + }], + 'semi': [2, 'never'], + 'semi-spacing': [2, { + 'before': false, + 'after': true + }], + 'space-before-blocks': [2, 'always'], + 'space-before-function-paren': [2, 'never'], + 'space-in-parens': [2, 'never'], + 'space-infix-ops': 2, + 'space-unary-ops': [2, { + 'words': true, + 'nonwords': false + }], + 'spaced-comment': [2, 'always', { + 'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ','] + }], + 'template-curly-spacing': [2, 'never'], + 'use-isnan': 2, + 'valid-typeof': 2, + 'wrap-iife': [2, 'any'], + 'yield-star-spacing': [2, 'both'], + 'yoda': [2, 'never'], + 'prefer-const': 2, + 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, + 'object-curly-spacing': [2, 'always', { + objectsInObjects: false + }], + 'array-bracket-spacing': [2, 'never'] + } +} diff --git a/cutejava-ui/.gitignore b/cutejava-ui/.gitignore new file mode 100644 index 00000000..1978bc24 --- /dev/null +++ b/cutejava-ui/.gitignore @@ -0,0 +1,24 @@ +.DS_Store +node_modules/ +dist/ +demo/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +**/*.log + +tests/**/coverage/ +tests/e2e/reports +selenium-debug.log + +# Editor directories and files +.idea +.vscode +*.suo +*.ntvs* +*.njsproj +*.sln +*.local + +package-lock.json +yarn.lock diff --git a/cutejava-ui/.travis.yml b/cutejava-ui/.travis.yml new file mode 100644 index 00000000..f4be7a08 --- /dev/null +++ b/cutejava-ui/.travis.yml @@ -0,0 +1,5 @@ +language: node_js +node_js: 10 +script: npm run test +notifications: + email: false diff --git a/cutejava-ui/LICENSE b/cutejava-ui/LICENSE new file mode 100644 index 00000000..aae98709 --- /dev/null +++ b/cutejava-ui/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 2022 Odboy + + 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. diff --git a/cutejava-ui/README.md b/cutejava-ui/README.md new file mode 100644 index 00000000..11836c69 --- /dev/null +++ b/cutejava-ui/README.md @@ -0,0 +1,59 @@ +# cutejava-ui + +#### 前端模板 + +初始模板基于: [https://github.com/PanJiaChen/vue-element-admin](https://github.com/PanJiaChen/vue-element-admin) + +模板文档: [https://panjiachen.github.io/vue-element-admin-site/zh/guide/](https://panjiachen.github.io/vue-element-admin-site/zh/guide/) + +## 快速开始 + +### 环境要求 + +**推荐 node 版本:12-16** + +### 安装依赖 + +``` bash +# 安装依赖(依赖python) +npm install --registry https://registry.npmmirror.com --save +``` + +### 启动服务 + +```bash +# 启动服务 localhost:8013 +npm run dev + +# (或) 启动服务 localhost:8013 +IDEA -> Current File -> Edit Configurations... -> Add New Configuration -> npm -> Script选dev -> Apply -> Ok + +# 构建生产环境 +npm run build:prod +``` + +#### 常见问题 + +1、linux 系统在安装依赖的时候会出现 node-sass 无法安装的问题 + +解决方案: +``` +1. 单独安装:npm install --unsafe-perm node-sass +2. 直接使用:npm install --unsafe-perm +``` + +2、加速node-sass安装 + +https://www.ydyno.com/archives/1219.html + +#### 特别鸣谢 + +- 感谢 [JetBrains](https://www.jetbrains.com/) 提供的非商业开源软件开发授权 + +- 感谢 [PanJiaChen](https://github.com/PanJiaChen/vue-element-admin) 大佬提供的前端模板 + +- 感谢 [Moxun](https://github.com/moxun1639) 大佬提供的前端 Crud 通用组件 + +- 感谢 [zhy6599](https://gitee.com/zhy6599) 大佬提供的后端运维管理相关功能 + +- 感谢 [j.yao.SUSE](https://github.com/everhopingandwaiting) 大佬提供的匿名接口与Redis限流等功能 diff --git a/cutejava-ui/babel.config.js b/cutejava-ui/babel.config.js new file mode 100644 index 00000000..804632a0 --- /dev/null +++ b/cutejava-ui/babel.config.js @@ -0,0 +1,11 @@ +const plugins = ['@vue/babel-plugin-transform-vue-jsx'] +// 生产环境移除console +if (process.env.NODE_ENV === 'production') { + plugins.push('transform-remove-console') +} +module.exports = { + plugins: plugins, + presets: [ + '@vue/app' + ] +} diff --git a/cutejava-ui/jest.config.js b/cutejava-ui/jest.config.js new file mode 100644 index 00000000..143cdc86 --- /dev/null +++ b/cutejava-ui/jest.config.js @@ -0,0 +1,24 @@ +module.exports = { + moduleFileExtensions: ['js', 'jsx', 'json', 'vue'], + transform: { + '^.+\\.vue$': 'vue-jest', + '.+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$': + 'jest-transform-stub', + '^.+\\.jsx?$': 'babel-jest' + }, + moduleNameMapper: { + '^@/(.*)$': '/src/$1' + }, + snapshotSerializers: ['jest-serializer-vue'], + testMatch: [ + '**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)' + ], + collectCoverageFrom: ['src/utils/**/*.{js,vue}', '!src/utils/auth.js', '!src/utils/request.js', 'src/components/**/*.{js,vue}'], + coverageDirectory: '/tests/unit/coverage', + // 'collectCoverage': true, + 'coverageReporters': [ + 'lcov', + 'text-summary' + ], + testURL: 'http://localhost/' +} diff --git a/cutejava-ui/package.json b/cutejava-ui/package.json new file mode 100644 index 00000000..429ce013 --- /dev/null +++ b/cutejava-ui/package.json @@ -0,0 +1,115 @@ +{ + "name": "cutejava", + "version": "1.0", + "description": "CuteJava 前端源码", + "author": "Odboy", + "license": "Apache-2.0", + "scripts": { + "dev": "vue-cli-service serve", + "build:prod": "vue-cli-service build", + "build:stage": "vue-cli-service build --mode staging", + "preview": "node build/index.js --preview", + "lint": "eslint --ext .js,.vue src", + "test:unit": "jest --clearCache && vue-cli-service test:unit", + "svgo": "svgo -f src/assets/icons/svg --config=src/assets/icons/svgo.yml", + "new": "plop" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "src/**/*.{js,vue}": [ + "eslint --fix", + "git add" + ] + }, + "repository": { + "type": "git", + "url": "https://github.com/odboy-tianjun/cutejava.git" + }, + "bugs": { + "url": "https://github.com/odboy-tianjun/cutejava/issues" + }, + "dependencies": { + "@riophae/vue-treeselect": "^0.4.0", + "@wangeditor/editor": "^5.1.23", + "@wangeditor/editor-for-vue": "^1.0.2", + "axios": "1.7.4", + "clipboard": "2.0.4", + "codemirror": "^5.49.2", + "core-js": "^2.6.12", + "echarts": "^4.2.1", + "echarts-wordcloud": "^1.1.3", + "element-ui": "^2.15.8", + "file-saver": "1.3.8", + "fuse.js": "3.4.4", + "js-beautify": "^1.10.2", + "js-cookie": "2.2.0", + "jsencrypt": "^3.0.0-rc.1", + "jszip": "^3.7.1", + "mavon-editor": "^2.9.1", + "normalize.css": "7.0.0", + "nprogress": "0.2.0", + "path-to-regexp": "8.0.0", + "qs": "^6.10.1", + "screenfull": "4.2.0", + "sortablejs": "1.8.4", + "vue": "^2.6.14", + "vue-count-to": "^1.0.13", + "vue-cropper": "0.4.9", + "vue-echarts": "^5.0.0-beta.0", + "vue-image-crop-upload": "^2.5.0", + "vue-router": "3.0.2", + "vue-splitpane": "1.0.4", + "vuedraggable": "2.20.0", + "vuex": "3.1.0", + "wangeditor": "^4.7.11", + "webpack": "^4.47.0" + }, + "devDependencies": { + "@babel/parser": "^7.7.4", + "@babel/register": "7.0.0", + "@vue/babel-plugin-transform-vue-jsx": "^1.2.1", + "@vue/cli-plugin-babel": "3.5.3", + "@vue/cli-plugin-eslint": "^3.9.1", + "@vue/cli-plugin-unit-jest": "3.5.3", + "@vue/cli-service": "3.5.3", + "@vue/test-utils": "1.0.0-beta.29", + "autoprefixer": "^9.5.1", + "babel-core": "7.0.0-bridge.0", + "babel-eslint": "10.0.1", + "babel-jest": "23.6.0", + "babel-plugin-dynamic-import-node": "2.3.0", + "babel-plugin-transform-remove-console": "^6.9.4", + "chalk": "2.4.2", + "chokidar": "2.1.5", + "compression-webpack-plugin": "5.0.2", + "connect": "3.6.6", + "eslint": "5.15.3", + "eslint-plugin-vue": "5.2.2", + "html-webpack-plugin": "3.2.0", + "http-proxy-middleware": "3.0.3", + "husky": "1.3.1", + "lint-staged": "8.1.5", + "plop": "2.3.0", + "sass": "1.32.13", + "sass-loader": "10.2.0", + "script-ext-html-webpack-plugin": "2.1.3", + "script-loader": "0.7.2", + "serve-static": "1.16.2", + "svg-sprite-loader": "4.1.3", + "svgo": "1.2.0", + "tasksfile": "^5.1.1", + "vue-template-compiler": "2.7.15" + }, + "engines": { + "node": ">=8.9", + "npm": ">= 3.0.0" + }, + "browserslist": [ + "> 1%", + "last 2 versions" + ] +} diff --git a/cutejava-ui/plopfile.js b/cutejava-ui/plopfile.js new file mode 100644 index 00000000..9f3147e2 --- /dev/null +++ b/cutejava-ui/plopfile.js @@ -0,0 +1,7 @@ +const viewGenerator = require('./plop-templates/view/prompt') +const componentGenerator = require('./plop-templates/component/prompt') + +module.exports = function(plop) { + plop.setGenerator('view', viewGenerator) + plop.setGenerator('component', componentGenerator) +} diff --git a/cutejava-ui/postcss.config.js b/cutejava-ui/postcss.config.js new file mode 100644 index 00000000..961986e2 --- /dev/null +++ b/cutejava-ui/postcss.config.js @@ -0,0 +1,5 @@ +module.exports = { + plugins: { + autoprefixer: {} + } +} diff --git a/cutejava-ui/public/favicon.ico b/cutejava-ui/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..fcb69992e5f0777989b89db9a6318b3621eff240 GIT binary patch literal 67646 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 U$^5!t50tOVCyZ47oXe;G53^4nod5s; literal 0 HcmV?d00001 diff --git a/cutejava-ui/public/index.html b/cutejava-ui/public/index.html new file mode 100644 index 00000000..e9185009 --- /dev/null +++ b/cutejava-ui/public/index.html @@ -0,0 +1,15 @@ + + + + + + + + + <%= webpackConfig.name %> + + +
+ + + diff --git a/cutejava-ui/public/robots.txt b/cutejava-ui/public/robots.txt new file mode 100644 index 00000000..77470cb3 --- /dev/null +++ b/cutejava-ui/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: / \ No newline at end of file diff --git a/cutejava-ui/src/App.vue b/cutejava-ui/src/App.vue new file mode 100644 index 00000000..ec9032c1 --- /dev/null +++ b/cutejava-ui/src/App.vue @@ -0,0 +1,11 @@ + + + diff --git a/cutejava-ui/src/api/data.js b/cutejava-ui/src/api/data.js new file mode 100644 index 00000000..d975d754 --- /dev/null +++ b/cutejava-ui/src/api/data.js @@ -0,0 +1,17 @@ +import request from '@/utils/request' +import qs from 'qs' + +export function initData(url, params) { + return request({ + url: url + '?' + qs.stringify(params, { indices: false }), + method: 'get' + }) +} + +export function download(url, params) { + return request({ + url: url + '?' + qs.stringify(params, { indices: false }), + method: 'get', + responseType: 'blob' + }) +} diff --git a/cutejava-ui/src/api/login.js b/cutejava-ui/src/api/login.js new file mode 100644 index 00000000..fe257d2a --- /dev/null +++ b/cutejava-ui/src/api/login.js @@ -0,0 +1,35 @@ +import request from '@/utils/request' + +export function login(username, password, code, uuid) { + return request({ + url: 'auth/login', + method: 'post', + data: { + username, + password, + code, + uuid + } + }) +} + +export function getInfo() { + return request({ + url: 'auth/info', + method: 'get' + }) +} + +export function getCodeImg() { + return request({ + url: 'auth/code', + method: 'get' + }) +} + +export function logout() { + return request({ + url: 'auth/logout', + method: 'delete' + }) +} diff --git a/cutejava-ui/src/api/monitor/online.js b/cutejava-ui/src/api/monitor/online.js new file mode 100644 index 00000000..057275b1 --- /dev/null +++ b/cutejava-ui/src/api/monitor/online.js @@ -0,0 +1,9 @@ +import request from '@/utils/request' + +export function del(keys) { + return request({ + url: 'auth/online', + method: 'delete', + data: keys + }) +} diff --git a/cutejava-ui/src/api/system/code.js b/cutejava-ui/src/api/system/code.js new file mode 100644 index 00000000..0d2e4c27 --- /dev/null +++ b/cutejava-ui/src/api/system/code.js @@ -0,0 +1,15 @@ +import request from '@/utils/request' + +export function resetEmail(data) { + return request({ + url: 'api/code/resetEmail?email=' + data, + method: 'post' + }) +} + +export function updatePass(pass) { + return request({ + url: 'api/users/updatePass/' + pass, + method: 'get' + }) +} diff --git a/cutejava-ui/src/api/system/dept.js b/cutejava-ui/src/api/system/dept.js new file mode 100644 index 00000000..4217f77b --- /dev/null +++ b/cutejava-ui/src/api/system/dept.js @@ -0,0 +1,45 @@ +import request from '@/utils/request' + +export function getDepts(params) { + return request({ + url: 'api/dept', + method: 'get', + params + }) +} + +export function getDeptSuperior(ids, exclude) { + exclude = exclude !== undefined ? exclude : false + const data = Array.isArray(ids) ? ids : [ids] + return request({ + url: 'api/dept/superior?exclude=' + exclude, + method: 'post', + data + }) +} + +export function add(data) { + return request({ + url: 'api/dept', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/dept', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/dept', + method: 'put', + data + }) +} + +export default { add, edit, del, getDepts, getDeptSuperior } diff --git a/cutejava-ui/src/api/system/dict.js b/cutejava-ui/src/api/system/dict.js new file mode 100644 index 00000000..99170f7d --- /dev/null +++ b/cutejava-ui/src/api/system/dict.js @@ -0,0 +1,34 @@ +import request from '@/utils/request' + +export function getDicts() { + return request({ + url: 'api/dict/all', + method: 'get' + }) +} + +export function add(data) { + return request({ + url: 'api/dict', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/dict/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/dict', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/cutejava-ui/src/api/system/dictDetail.js b/cutejava-ui/src/api/system/dictDetail.js new file mode 100644 index 00000000..e8dc5120 --- /dev/null +++ b/cutejava-ui/src/api/system/dictDetail.js @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +export function get(dictName) { + const params = { + dictName, + page: 0, + size: 9999 + } + return request({ + url: 'api/dictDetail', + method: 'get', + params + }) +} + +export function getDictMap(dictName) { + const params = { + dictName, + page: 0, + size: 9999 + } + return request({ + url: 'api/dictDetail/map', + method: 'get', + params + }) +} + +export function add(data) { + return request({ + url: 'api/dictDetail', + method: 'post', + data + }) +} + +export function del(id) { + return request({ + url: 'api/dictDetail/' + id, + method: 'delete' + }) +} + +export function edit(data) { + return request({ + url: 'api/dictDetail', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/cutejava-ui/src/api/system/job.js b/cutejava-ui/src/api/system/job.js new file mode 100644 index 00000000..a00630ee --- /dev/null +++ b/cutejava-ui/src/api/system/job.js @@ -0,0 +1,40 @@ +import request from '@/utils/request' + +export function getAllJob() { + const params = { + page: 0, + size: 9999, + enabled: true + } + return request({ + url: 'api/job', + method: 'get', + params + }) +} + +export function add(data) { + return request({ + url: 'api/job', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/job', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/job', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/cutejava-ui/src/api/system/menu.js b/cutejava-ui/src/api/system/menu.js new file mode 100644 index 00000000..2125327a --- /dev/null +++ b/cutejava-ui/src/api/system/menu.js @@ -0,0 +1,65 @@ +import request from '@/utils/request' + +export function getMenusTree(pid) { + return request({ + url: 'api/menus/lazy?pid=' + pid, + method: 'get' + }) +} + +export function getMenus(params) { + return request({ + url: 'api/menus', + method: 'get', + params + }) +} + +export function getMenuSuperior(ids) { + const data = Array.isArray(ids) ? ids : [ids] + return request({ + url: 'api/menus/superior', + method: 'post', + data + }) +} + +export function getChild(id) { + return request({ + url: 'api/menus/child?id=' + id, + method: 'get' + }) +} + +export function buildMenus() { + return request({ + url: 'api/menus/build', + method: 'get' + }) +} + +export function add(data) { + return request({ + url: 'api/menus', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/menus', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/menus', + method: 'put', + data + }) +} + +export default { add, edit, del, getMenusTree, getMenuSuperior, getMenus, getChild } diff --git a/cutejava-ui/src/api/system/role.js b/cutejava-ui/src/api/system/role.js new file mode 100644 index 00000000..1f7bc1eb --- /dev/null +++ b/cutejava-ui/src/api/system/role.js @@ -0,0 +1,57 @@ +import request from '@/utils/request' + +// 获取所有的Role +export function getAll() { + return request({ + url: 'api/roles/all', + method: 'get' + }) +} + +export function add(data) { + return request({ + url: 'api/roles', + method: 'post', + data + }) +} + +export function get(id) { + return request({ + url: 'api/roles/' + id, + method: 'get' + }) +} + +export function getLevel() { + return request({ + url: 'api/roles/level', + method: 'get' + }) +} + +export function del(ids) { + return request({ + url: 'api/roles', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/roles', + method: 'put', + data + }) +} + +export function editMenu(data) { + return request({ + url: 'api/roles/menu', + method: 'put', + data + }) +} + +export default { add, edit, del, get, editMenu, getLevel } diff --git a/cutejava-ui/src/api/system/timing.js b/cutejava-ui/src/api/system/timing.js new file mode 100644 index 00000000..613e15f4 --- /dev/null +++ b/cutejava-ui/src/api/system/timing.js @@ -0,0 +1,41 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/jobs', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/jobs', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/jobs', + method: 'put', + data + }) +} + +export function updateIsPause(id) { + return request({ + url: 'api/jobs/' + id, + method: 'put' + }) +} + +export function execution(id) { + return request({ + url: 'api/jobs/exec/' + id, + method: 'put' + }) +} + +export default { del, updateIsPause, execution, add, edit } diff --git a/cutejava-ui/src/api/system/user.js b/cutejava-ui/src/api/system/user.js new file mode 100644 index 00000000..fee2d844 --- /dev/null +++ b/cutejava-ui/src/api/system/user.js @@ -0,0 +1,69 @@ +import request from '@/utils/request' +import { encrypt } from '@/utils/rsaEncrypt' + +export function add(data) { + return request({ + url: 'api/users', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/users', + method: 'delete', + data: ids + }) +} + +export function resetPwd(ids) { + return request({ + url: 'api/users/resetPwd', + method: 'put', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/users', + method: 'put', + data + }) +} + +export function editUser(data) { + return request({ + url: 'api/users/center', + method: 'put', + data + }) +} + +export function updatePass(user) { + const data = { + oldPass: encrypt(user.oldPass), + newPass: encrypt(user.newPass) + } + return request({ + url: 'api/users/updatePass/', + method: 'post', + data + }) +} + +export function updateEmail(form) { + const data = { + password: encrypt(form.pass), + email: form.email + } + return request({ + url: 'api/users/updateEmail/' + form.code, + method: 'post', + data + }) +} + +export default { add, edit, del, resetPwd } + diff --git a/cutejava-ui/src/api/tools/email.js b/cutejava-ui/src/api/tools/email.js new file mode 100644 index 00000000..af030cb0 --- /dev/null +++ b/cutejava-ui/src/api/tools/email.js @@ -0,0 +1,24 @@ +import request from '@/utils/request' + +export function get() { + return request({ + url: 'api/email', + method: 'get' + }) +} + +export function update(data) { + return request({ + url: 'api/email', + data, + method: 'put' + }) +} + +export function send(data) { + return request({ + url: 'api/email', + data, + method: 'post' + }) +} diff --git a/cutejava-ui/src/api/tools/localStorage.js b/cutejava-ui/src/api/tools/localStorage.js new file mode 100644 index 00000000..63ebe2b2 --- /dev/null +++ b/cutejava-ui/src/api/tools/localStorage.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/localStorage', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/localStorage/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/localStorage', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/cutejava-ui/src/api/tools/qiniu.js b/cutejava-ui/src/api/tools/qiniu.js new file mode 100644 index 00000000..6d567710 --- /dev/null +++ b/cutejava-ui/src/api/tools/qiniu.js @@ -0,0 +1,40 @@ +import request from '@/utils/request' + +export function get() { + return request({ + url: 'api/qiNiuContent/config', + method: 'get' + }) +} + +export function update(data) { + return request({ + url: 'api/qiNiuContent/config', + data, + method: 'put' + }) +} + +export function download(id) { + return request({ + url: 'api/qiNiuContent/download/' + id, + method: 'get' + }) +} + +export function sync() { + return request({ + url: 'api/qiNiuContent/synchronize', + method: 'post' + }) +} + +export function del(ids) { + return request({ + url: 'api/qiNiuContent', + method: 'delete', + data: ids + }) +} + +export default { del, download, sync } diff --git a/cutejava-ui/src/assets/401_images/401.gif b/cutejava-ui/src/assets/401_images/401.gif new file mode 100644 index 0000000000000000000000000000000000000000..cd6e0d9433421b3f29d0ec0c40f755e354728000 GIT binary patch literal 164227 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⋘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 GY5fOuZZib{ literal 0 HcmV?d00001 diff --git a/cutejava-ui/src/assets/404_images/404.png b/cutejava-ui/src/assets/404_images/404.png new file mode 100644 index 0000000000000000000000000000000000000000..3d8e2305cc973ad2121403aee4bf08728f76c461 GIT binary patch literal 98071 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 literal 0 HcmV?d00001 diff --git a/cutejava-ui/src/assets/404_images/404_cloud.png b/cutejava-ui/src/assets/404_images/404_cloud.png new file mode 100644 index 0000000000000000000000000000000000000000..c6281d09013e0a2c5f8e699a0a6038d9480291e5 GIT binary patch literal 4766 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 literal 0 HcmV?d00001 diff --git a/cutejava-ui/src/assets/icons/index.js b/cutejava-ui/src/assets/icons/index.js new file mode 100644 index 00000000..2c6b309c --- /dev/null +++ b/cutejava-ui/src/assets/icons/index.js @@ -0,0 +1,9 @@ +import Vue from 'vue' +import SvgIcon from '@/components/SvgIcon'// svg component + +// register globally +Vue.component('svg-icon', SvgIcon) + +const req = require.context('./svg', false, /\.svg$/) +const requireAll = requireContext => requireContext.keys().map(requireContext) +requireAll(req) diff --git a/cutejava-ui/src/assets/icons/svg/Steve-Jobs.svg b/cutejava-ui/src/assets/icons/svg/Steve-Jobs.svg new file mode 100644 index 00000000..53843e24 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/Steve-Jobs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/alipay.svg b/cutejava-ui/src/assets/icons/svg/alipay.svg new file mode 100644 index 00000000..91389813 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/alipay.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/anq.svg b/cutejava-ui/src/assets/icons/svg/anq.svg new file mode 100644 index 00000000..a466608d --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/anq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/app.svg b/cutejava-ui/src/assets/icons/svg/app.svg new file mode 100644 index 00000000..0796da35 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/app.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/backup.svg b/cutejava-ui/src/assets/icons/svg/backup.svg new file mode 100644 index 00000000..a3272a46 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/backup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/blog.svg b/cutejava-ui/src/assets/icons/svg/blog.svg new file mode 100644 index 00000000..a990eba2 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/blog.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/chain.svg b/cutejava-ui/src/assets/icons/svg/chain.svg new file mode 100644 index 00000000..ed3317f4 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/chain.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/chart.svg b/cutejava-ui/src/assets/icons/svg/chart.svg new file mode 100644 index 00000000..27728fb0 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/chart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/codeConsole.svg b/cutejava-ui/src/assets/icons/svg/codeConsole.svg new file mode 100644 index 00000000..672ec6e4 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/codeConsole.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/dashboard.svg b/cutejava-ui/src/assets/icons/svg/dashboard.svg new file mode 100644 index 00000000..5317d370 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/dashboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/database.svg b/cutejava-ui/src/assets/icons/svg/database.svg new file mode 100644 index 00000000..7fbad9b8 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/database.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/date.svg b/cutejava-ui/src/assets/icons/svg/date.svg new file mode 100644 index 00000000..0540e993 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/date.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/deploy.svg b/cutejava-ui/src/assets/icons/svg/deploy.svg new file mode 100644 index 00000000..f4a1c56e --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/deploy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/dept.svg b/cutejava-ui/src/assets/icons/svg/dept.svg new file mode 100644 index 00000000..894e4bff --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/dept.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/dev.svg b/cutejava-ui/src/assets/icons/svg/dev.svg new file mode 100644 index 00000000..ed4d23cf --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/dev.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/develop.svg b/cutejava-ui/src/assets/icons/svg/develop.svg new file mode 100644 index 00000000..e189223d --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/develop.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/dictionary.svg b/cutejava-ui/src/assets/icons/svg/dictionary.svg new file mode 100644 index 00000000..6e83c435 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/dictionary.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/doc.svg b/cutejava-ui/src/assets/icons/svg/doc.svg new file mode 100644 index 00000000..9160de8c --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/doc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/download.svg b/cutejava-ui/src/assets/icons/svg/download.svg new file mode 100644 index 00000000..0243c6a7 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/download.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/edit.svg b/cutejava-ui/src/assets/icons/svg/edit.svg new file mode 100644 index 00000000..d26101f2 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/edit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/education.svg b/cutejava-ui/src/assets/icons/svg/education.svg new file mode 100644 index 00000000..7bfb01d1 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/education.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/email.svg b/cutejava-ui/src/assets/icons/svg/email.svg new file mode 100644 index 00000000..f1cf3ae8 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/email.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/error.svg b/cutejava-ui/src/assets/icons/svg/error.svg new file mode 100644 index 00000000..fd935da9 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/error.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/exit-fullscreen.svg b/cutejava-ui/src/assets/icons/svg/exit-fullscreen.svg new file mode 100644 index 00000000..485c128b --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/exit-fullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/fullscreen.svg b/cutejava-ui/src/assets/icons/svg/fullscreen.svg new file mode 100644 index 00000000..0e86b6fa --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/fullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/fwb.svg b/cutejava-ui/src/assets/icons/svg/fwb.svg new file mode 100644 index 00000000..59933fc7 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/fwb.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/github.svg b/cutejava-ui/src/assets/icons/svg/github.svg new file mode 100644 index 00000000..8145e957 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/gonggao.svg b/cutejava-ui/src/assets/icons/svg/gonggao.svg new file mode 100644 index 00000000..22aed08f --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/gonggao.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/icon.svg b/cutejava-ui/src/assets/icons/svg/icon.svg new file mode 100644 index 00000000..82fbdd98 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/image.svg b/cutejava-ui/src/assets/icons/svg/image.svg new file mode 100644 index 00000000..16d572fd --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/image.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/index.svg b/cutejava-ui/src/assets/icons/svg/index.svg new file mode 100644 index 00000000..fdb38269 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/index.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/international.svg b/cutejava-ui/src/assets/icons/svg/international.svg new file mode 100644 index 00000000..e9b56eee --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/international.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/ipvisits.svg b/cutejava-ui/src/assets/icons/svg/ipvisits.svg new file mode 100644 index 00000000..4ca473d7 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/ipvisits.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/java.svg b/cutejava-ui/src/assets/icons/svg/java.svg new file mode 100644 index 00000000..e2effbbf --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/java.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/link.svg b/cutejava-ui/src/assets/icons/svg/link.svg new file mode 100644 index 00000000..48197ba4 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/link.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/list.svg b/cutejava-ui/src/assets/icons/svg/list.svg new file mode 100644 index 00000000..20259edd --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/lock.svg b/cutejava-ui/src/assets/icons/svg/lock.svg new file mode 100644 index 00000000..0f842ea4 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/log.svg b/cutejava-ui/src/assets/icons/svg/log.svg new file mode 100644 index 00000000..4fefe747 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/log.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/login.svg b/cutejava-ui/src/assets/icons/svg/login.svg new file mode 100644 index 00000000..cc5a854e --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/login.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/markdown.svg b/cutejava-ui/src/assets/icons/svg/markdown.svg new file mode 100644 index 00000000..7cd67475 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/markdown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/menu.svg b/cutejava-ui/src/assets/icons/svg/menu.svg new file mode 100644 index 00000000..e4360a02 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/menu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/message.svg b/cutejava-ui/src/assets/icons/svg/message.svg new file mode 100644 index 00000000..14ca8172 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/message.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/mnt.svg b/cutejava-ui/src/assets/icons/svg/mnt.svg new file mode 100644 index 00000000..936ce298 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/mnt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/money.svg b/cutejava-ui/src/assets/icons/svg/money.svg new file mode 100644 index 00000000..c1580de1 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/money.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/monitor.svg b/cutejava-ui/src/assets/icons/svg/monitor.svg new file mode 100644 index 00000000..339370ab --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/monitor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/nested.svg b/cutejava-ui/src/assets/icons/svg/nested.svg new file mode 100644 index 00000000..06713a86 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/nested.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/password.svg b/cutejava-ui/src/assets/icons/svg/password.svg new file mode 100644 index 00000000..4ab451f0 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/password.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/people.svg b/cutejava-ui/src/assets/icons/svg/people.svg new file mode 100644 index 00000000..2bd54aeb --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/people.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/peoples.svg b/cutejava-ui/src/assets/icons/svg/peoples.svg new file mode 100644 index 00000000..2c911615 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/peoples.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/permission.svg b/cutejava-ui/src/assets/icons/svg/permission.svg new file mode 100644 index 00000000..c4c74091 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/permission.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/phone.svg b/cutejava-ui/src/assets/icons/svg/phone.svg new file mode 100644 index 00000000..da339f97 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/phone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/qiniu.svg b/cutejava-ui/src/assets/icons/svg/qiniu.svg new file mode 100644 index 00000000..c2f9f8b2 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/qiniu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/redis.svg b/cutejava-ui/src/assets/icons/svg/redis.svg new file mode 100644 index 00000000..bef111b6 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/redis.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/role.svg b/cutejava-ui/src/assets/icons/svg/role.svg new file mode 100644 index 00000000..76cb18ff --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/role.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/search.svg b/cutejava-ui/src/assets/icons/svg/search.svg new file mode 100644 index 00000000..84233dda --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/server.svg b/cutejava-ui/src/assets/icons/svg/server.svg new file mode 100644 index 00000000..db6dcdf5 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/server.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/shopping.svg b/cutejava-ui/src/assets/icons/svg/shopping.svg new file mode 100644 index 00000000..87513e7c --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/shopping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/size.svg b/cutejava-ui/src/assets/icons/svg/size.svg new file mode 100644 index 00000000..ddb25b8d --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/size.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/skill.svg b/cutejava-ui/src/assets/icons/svg/skill.svg new file mode 100644 index 00000000..a3b73121 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/skill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/source.svg b/cutejava-ui/src/assets/icons/svg/source.svg new file mode 100644 index 00000000..1c3a0380 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/source.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/sqlMonitor.svg b/cutejava-ui/src/assets/icons/svg/sqlMonitor.svg new file mode 100644 index 00000000..950a430d --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/sqlMonitor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/swagger.svg b/cutejava-ui/src/assets/icons/svg/swagger.svg new file mode 100644 index 00000000..ded7de81 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/swagger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/sys-tools.svg b/cutejava-ui/src/assets/icons/svg/sys-tools.svg new file mode 100644 index 00000000..8f9055ed --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/sys-tools.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/system.svg b/cutejava-ui/src/assets/icons/svg/system.svg new file mode 100644 index 00000000..9333c60a --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/system.svg @@ -0,0 +1 @@ + diff --git a/cutejava-ui/src/assets/icons/svg/system1.svg b/cutejava-ui/src/assets/icons/svg/system1.svg new file mode 100644 index 00000000..37b0a0a8 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/system1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/tab.svg b/cutejava-ui/src/assets/icons/svg/tab.svg new file mode 100644 index 00000000..b4b48e48 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/tab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/theme.svg b/cutejava-ui/src/assets/icons/svg/theme.svg new file mode 100644 index 00000000..5982a2f7 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/theme.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/timing.svg b/cutejava-ui/src/assets/icons/svg/timing.svg new file mode 100644 index 00000000..f8fdc6dd --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/timing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/tools.svg b/cutejava-ui/src/assets/icons/svg/tools.svg new file mode 100644 index 00000000..aba1a401 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/tools.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/tree-table.svg b/cutejava-ui/src/assets/icons/svg/tree-table.svg new file mode 100644 index 00000000..8aafdb82 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/tree-table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/tree.svg b/cutejava-ui/src/assets/icons/svg/tree.svg new file mode 100644 index 00000000..dd4b7dd2 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/tree.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/unlock.svg b/cutejava-ui/src/assets/icons/svg/unlock.svg new file mode 100644 index 00000000..1219e41d --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/unlock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/user.svg b/cutejava-ui/src/assets/icons/svg/user.svg new file mode 100644 index 00000000..09d7a812 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/user1.svg b/cutejava-ui/src/assets/icons/svg/user1.svg new file mode 100644 index 00000000..14ca51e4 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/user1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/validCode.svg b/cutejava-ui/src/assets/icons/svg/validCode.svg new file mode 100644 index 00000000..a1feb74a --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/validCode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/visits.svg b/cutejava-ui/src/assets/icons/svg/visits.svg new file mode 100644 index 00000000..8425662d --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/visits.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/web.svg b/cutejava-ui/src/assets/icons/svg/web.svg new file mode 100644 index 00000000..9c574156 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/web.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/wechat.svg b/cutejava-ui/src/assets/icons/svg/wechat.svg new file mode 100644 index 00000000..c586e551 --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/wechat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/weixin.svg b/cutejava-ui/src/assets/icons/svg/weixin.svg new file mode 100644 index 00000000..8dbcfa5c --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/weixin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svg/zujian.svg b/cutejava-ui/src/assets/icons/svg/zujian.svg new file mode 100644 index 00000000..2aba32fc --- /dev/null +++ b/cutejava-ui/src/assets/icons/svg/zujian.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/cutejava-ui/src/assets/icons/svgo.yml b/cutejava-ui/src/assets/icons/svgo.yml new file mode 100644 index 00000000..d11906ae --- /dev/null +++ b/cutejava-ui/src/assets/icons/svgo.yml @@ -0,0 +1,22 @@ +# replace default config + +# multipass: true +# full: true + +plugins: + + # - name + # + # or: + # - name: false + # - name: true + # + # or: + # - name: + # param1: 1 + # param2: 2 + +- removeAttrs: + attrs: + - 'fill' + - 'fill-rule' diff --git a/cutejava-ui/src/assets/images/avatar.png b/cutejava-ui/src/assets/images/avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..997732a452cdf6273ec7cd444dab69f1a4db4e48 GIT binary patch literal 1865 zcmZ`)c{tQtAODTza*@X1N<*aVWTtDs?k%!jYoY}WLiX#HElY(Ex>s3Bwz^c7C|g8? z;b+D&Gxl}JF!ptZGRzore|q14-ap>wIp_QRe3#GXoaa2}IVai9#_Wi|aRC4Tj#!u* z+e7}&;pFFrtneos1#&#zhSr7vQ1w`F-<=nVWj)O8tpOlX0RUp+0e}gmVwM0P6a@e) zZUCVF8~`N#%=>iF003aFc2*81P{Z`}G!{o_>mXq}h^-w&$bKIL2)A|+4l$mH#r-!= zAP}%P5*8%1f&?;|j0K@Q)Y%JxR*=|^?}cnDp45&%q~mbI{}JSHIN0t%NUE)aaEL*u z)OV;162Q(w1!#3h5DLF1ziWa7QvcZO+|nj(>)Q@ve}5k;O-)nx_Lz{u(C8#%caJi= zu)MO)V(rh)EwO(}N?EEEcPqIJCY&TU)1% zO-#4rNxQpy)cNHe(lDESu(-UovbxdH)i*Ug$6)Nzx4v#|f9oF{pPrfD+Wy)}8067L z2}4KxbBMjoC4gVuA*!&xV_X2x>YyQew!>{XkiHnIhi8sMb%8Z5G#cQ99jChoe)cI+=tDU$U#pbw*z+#CC8P=$~EobKL z=6ZU6$+Z$o5Lef3Y+t_pF>ZCMx;fa2` zW7kY|HT}}U2o-W?N)FJfO;ph&q$qW*DMJMTgr=v3sUS>^;Hg$sG#j%tlyR}-ZLAO? zN%GH~=ZvI z%3ipaV_Ex(faW=BW~>Y$cTlJk##zBHsnU!qe2@Kd7ND;W@gMtlm8a0)YTv~* zuUQ~+tkg92wzP86iLl@TH${)%UPs#?DefE99ukizBJlGmODZDaHT>EKPp-X%J<~ME zu%EL<$WOkF(hx<5J2gG{Xx`MRkgAt(Ub0!P>fyy_+ZHd+8l(&iVEy>-fSB6mslu_b zcjl>#yN@cXc>L}ex+338UtY^H5xm6xaQ1@_TkUzBlkQX9^tgJ&(+g6LPV?}OXYof3 zX-WZJFYvjxTf2(3FRR33Gqn?4gMPhV;7fKMGb67yNGBFd97_skgaju9mn9EG{UQWX zN=Xv@^eQQn8jYDtMSP)y~~w$$XsMrgg@)x+Kd)0m`id< zCn(vd&gN^;W7$)m#3d+K@QR@3*b@cYFR;WA!*sCdkIt6bp1h#w@|K6Ee~ff87(k~` z?`8W-)VJ-!p8Qm5M4_D;ub{XPnTns_|5&_a$C)~W-&xNpFcR(FfN z9jeTdW$_E7nXqiMpbO4Br^zw;wM^dqlVtl~a?Y>CKSmZNG{`nwP|vDy;@+~iB45cj zFV8sPdcxic*;Rz`mD)9}D&_HL4sN>;y_bK3z`jgC@tjk7!@oV-qa|}I);=1ot~0M? zBbC-;T{IKj}RiTaFBbVESTn0$!I z)eukj5HEd?+g^|Z&Z5wI>Sz=+98hQVwe<8gbyZO)eH1Fd=cU8{5CVfdeQ!qme}c4@ SBJ}40fQ5;T@p~h;xPJj%?#LPd literal 0 HcmV?d00001 diff --git a/cutejava-ui/src/assets/images/background.jpeg b/cutejava-ui/src/assets/images/background.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..d7f30e3f7b0dfb9b1d9d3b5d3bbfc032247c9d79 GIT binary patch literal 241215 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

-_~_o{ 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%0Dux7; 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 literal 0 HcmV?d00001 diff --git a/cutejava-ui/src/assets/images/logo.png b/cutejava-ui/src/assets/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f7577109651b89def3d9359ab324b445c714fe77 GIT binary patch literal 8852 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 ZLF@BRes2KN|GQZNP*u`YtbtmE{|_Y7!}b6G literal 0 HcmV?d00001 diff --git a/cutejava-ui/src/assets/styles/btn.scss b/cutejava-ui/src/assets/styles/btn.scss new file mode 100644 index 00000000..8f47f2c0 --- /dev/null +++ b/cutejava-ui/src/assets/styles/btn.scss @@ -0,0 +1,99 @@ +@import 'variables'; + +@mixin colorBtn($color) { + background: $color; + + &:hover { + color: $color; + + &:before, + &:after { + background: $color; + } + } +} + +.blue-btn { + @include colorBtn($blue) +} + +.light-blue-btn { + @include colorBtn($light-blue) +} + +.red-btn { + @include colorBtn($red) +} + +.pink-btn { + @include colorBtn($pink) +} + +.green-btn { + @include colorBtn($green) +} + +.tiffany-btn { + @include colorBtn($tiffany) +} + +.yellow-btn { + @include colorBtn($yellow) +} + +.pan-btn { + font-size: 14px; + color: #fff; + padding: 14px 36px; + border-radius: 8px; + border: none; + outline: none; + transition: 600ms ease all; + position: relative; + display: inline-block; + + &:hover { + background: #fff; + + &:before, + &:after { + width: 100%; + transition: 600ms ease all; + } + } + + &:before, + &:after { + content: ''; + position: absolute; + top: 0; + right: 0; + height: 2px; + width: 0; + transition: 400ms ease all; + } + + &::after { + right: inherit; + top: inherit; + left: 0; + bottom: 0; + } +} + +.custom-button { + display: inline-block; + line-height: 1; + white-space: nowrap; + cursor: pointer; + background: #fff; + color: #fff; + -webkit-appearance: none; + text-align: center; + box-sizing: border-box; + outline: 0; + margin: 0; + padding: 10px 15px; + font-size: 14px; + border-radius: 4px; +} diff --git a/cutejava-ui/src/assets/styles/cutejava.scss b/cutejava-ui/src/assets/styles/cutejava.scss new file mode 100644 index 00000000..b9ae18da --- /dev/null +++ b/cutejava-ui/src/assets/styles/cutejava.scss @@ -0,0 +1,117 @@ +.head-container { + padding-bottom: 10px; + .filter-item { + display: inline-block; + vertical-align: middle; + margin: 0 3px 10px 0; + input { + height: 30.5px; + line-height: 30.5px; + } + } + .el-form-item-label { + margin: 0 3px 9px 0; + display: inline-block; + text-align: right; + vertical-align: middle; + font-size: 14px; + color: #606266; + line-height: 30.5px; + padding: 0 7px 0 7px; + } + .el-button+.el-button { + margin-left: 0 !important; + } + .el-select__caret.el-input__icon.el-icon-arrow-up{ + line-height: 30.5px; + } + .date-item { + display: inline-block; + vertical-align: middle; + margin-bottom: 10px; + height: 30.5px !important; + width: 230px !important; + } +} +.el-avatar { + display: inline-block; + text-align: center; + background: #ccc; + color: #fff; + white-space: nowrap; + position: relative; + overflow: hidden; + vertical-align: middle; + width: 32px; + height: 32px; + line-height: 32px; + border-radius: 16px; +} + +.logo-con{ + height: 60px; + padding: 13px 0 0; + img{ + height: 32px; + width: 135px; + display: block; + //margin: 0 auto; + } +} + +#el-login-footer { + height: 40px; + line-height: 40px; + position: fixed; + bottom: 0; + width: 100%; + text-align: center; + color: #fff; + font-family: Arial, serif; + font-size: 12px; + letter-spacing: 1px; +} + +#el-main-footer { + background: none repeat scroll 0 0 white; + border-top: 1px solid #e7eaec; + overflow: hidden; + padding: 10px 6px 0 6px; + height: 33px; + font-size: 0.7rem !important; + color: #7a8b9a; + letter-spacing: 0.8px; + font-family: Arial, sans-serif !important; + position: fixed; + bottom: 0; + z-index: 99; + width: 100%; +} +.my-upload { + border: 1px dashed #c0ccda; + border-radius: 5px; + height: 45px; + line-height: 45px; + width: 368px; +} +.my-blockquote{ + margin: 0 0 10px; + padding: 15px; + line-height: 22px; + border-left: 5px solid #00437B; + border-radius: 0 2px 2px 0; + background-color: #f2f2f2; +} +.my-code{ + position: relative; + padding: 15px; + line-height: 20px; + border-left: 5px solid #ddd; + color: #333; + font-family: Courier New, serif; + font-size: 12px +} + +.el-tabs{ + margin-bottom: 25px; +} diff --git a/cutejava-ui/src/assets/styles/element-ui.scss b/cutejava-ui/src/assets/styles/element-ui.scss new file mode 100644 index 00000000..8f7881c2 --- /dev/null +++ b/cutejava-ui/src/assets/styles/element-ui.scss @@ -0,0 +1,79 @@ +// cover some element-ui styles + +.el-breadcrumb__inner, +.el-breadcrumb__inner a { + font-weight: 400 !important; +} + +.el-upload { + input[type="file"] { + display: none !important; + } +} + +.el-upload__input { + display: none; +} + +.cell { + .el-tag { + margin-right: 0; + } +} + +.small-padding { + .cell { + padding-left: 5px; + padding-right: 5px; + } +} + +.fixed-width { + .el-button--mini { + padding: 7px 10px; + width: 60px; + } +} + +.status-col { + .cell { + padding: 0 10px; + text-align: center; + + .el-tag { + margin-right: 0; + } + } +} + +// to fixed https://github.com/ElemeFE/element/issues/2461 +.el-dialog { + transform: none; + left: 0; + position: relative; + margin: 0 auto; +} + +// refine element ui upload +.upload-container { + .el-upload { + width: 100%; + + .el-upload-dragger { + width: 100%; + height: 200px; + } + } +} + +// dropdown +.el-dropdown-menu { + a { + display: block + } +} + +// fix date-picker ui bug in filter-item +.el-range-editor.el-input__inner { + display: inline-flex !important; +} diff --git a/cutejava-ui/src/assets/styles/element-variables.scss b/cutejava-ui/src/assets/styles/element-variables.scss new file mode 100644 index 00000000..a4f8c4af --- /dev/null +++ b/cutejava-ui/src/assets/styles/element-variables.scss @@ -0,0 +1,31 @@ +/** +* I think element-ui's default theme color is too light for long-term use. +* So I modified the default color and you can modify it to your liking. +**/ + +/* theme color */ +$--color-primary: #1890ff; +$--color-success: #13ce66; +$--color-warning: #FFBA00; +$--color-danger: #ff4949; +// $--color-info: #1E1E1E; + +$--button-font-weight: 400; + +// $--color-text-regular: #1f2d3d; + +$--border-color-light: #dfe4ed; +$--border-color-lighter: #e6ebf5; + +$--table-border:1px solid#dfe6ec; + +/* icon font path, required */ +$--font-path: '~element-ui/lib/theme-chalk/fonts'; + +@import "../../../node_modules/element-ui/packages/theme-chalk/src/index"; + +// the :export directive is the magic sauce for webpack +// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass +:export { + theme: $--color-primary; +} diff --git a/cutejava-ui/src/assets/styles/index.scss b/cutejava-ui/src/assets/styles/index.scss new file mode 100644 index 00000000..22cafa35 --- /dev/null +++ b/cutejava-ui/src/assets/styles/index.scss @@ -0,0 +1,182 @@ +@import 'variables'; +@import 'mixin'; +@import 'transition'; +@import 'element-ui'; +@import 'sidebar'; +@import 'btn'; +@import 'cutejava'; + +body { + height: 100%; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + text-rendering: optimizeLegibility; + font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial, sans-serif; +} + +label { + font-weight: 700; +} + +html { + height: 100%; + box-sizing: border-box; +} + +#app { + height: 100%; +} + +*, +*:before, +*:after { + box-sizing: inherit; +} + +.no-padding { + padding: 0 !important; +} + +.padding-content { + padding: 4px 0; +} + +a:focus, +a:active { + outline: none; +} + +a, +a:focus, +a:hover { + cursor: pointer; + color: inherit; + text-decoration: none; +} + +div:focus { + outline: none; +} + +.fr { + float: right; +} + +.fl { + float: left; +} + +.pr-5 { + padding-right: 5px; +} + +.pl-5 { + padding-left: 5px; +} + +.block { + display: block; +} + +.pointer { + cursor: pointer; +} + +.inlineBlock { + display: block; +} + +.clearfix { + &:after { + visibility: hidden; + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; + } +} + +aside { + background: #eef1f6; + padding: 8px 24px; + margin-bottom: 20px; + border-radius: 2px; + display: block; + line-height: 32px; + font-size: 16px; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + color: #2c3e50; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + a { + color: #337ab7; + cursor: pointer; + + &:hover { + color: rgb(32, 160, 255); + } + } +} + +//main-container全局样式 +.app-container { + padding: 20px 20px 45px 20px; +} + +.components-container { + margin: 30px 50px; + position: relative; +} + +.pagination-container { + margin-top: 30px; +} + +.text-center { + text-align: center +} + +.sub-navbar { + height: 50px; + line-height: 50px; + position: relative; + width: 100%; + text-align: right; + padding-right: 20px; + transition: 600ms ease position; + background: linear-gradient(90deg, rgba(32, 182, 249, 1) 0%, rgba(32, 182, 249, 1) 0%, rgba(33, 120, 241, 1) 100%, rgba(33, 120, 241, 1) 100%); + + .subtitle { + font-size: 20px; + color: #fff; + } + + &.draft { + background: #d0d0d0; + } + + &.deleted { + background: #d0d0d0; + } +} + +.link-type, +.link-type:focus { + color: #337ab7; + cursor: pointer; + + &:hover { + color: rgb(32, 160, 255); + } +} + +//refine vue-multiselect plugin +.multiselect { + line-height: 16px; +} + +.multiselect--active { + z-index: 1000 !important; +} diff --git a/cutejava-ui/src/assets/styles/mixin.scss b/cutejava-ui/src/assets/styles/mixin.scss new file mode 100644 index 00000000..06fa0612 --- /dev/null +++ b/cutejava-ui/src/assets/styles/mixin.scss @@ -0,0 +1,66 @@ +@mixin clearfix { + &:after { + content: ""; + display: table; + clear: both; + } +} + +@mixin scrollBar { + &::-webkit-scrollbar-track-piece { + background: #d3dce6; + } + + &::-webkit-scrollbar { + width: 6px; + } + + &::-webkit-scrollbar-thumb { + background: #99a9bf; + border-radius: 20px; + } +} + +@mixin relative { + position: relative; + width: 100%; + height: 100%; +} + +@mixin pct($pct) { + width: #{$pct}; + position: relative; + margin: 0 auto; +} + +@mixin triangle($width, $height, $color, $direction) { + $width: $width/2; + $color-border-style: $height solid $color; + $transparent-border-style: $width solid transparent; + height: 0; + width: 0; + + @if $direction==up { + border-bottom: $color-border-style; + border-left: $transparent-border-style; + border-right: $transparent-border-style; + } + + @else if $direction==right { + border-left: $color-border-style; + border-top: $transparent-border-style; + border-bottom: $transparent-border-style; + } + + @else if $direction==down { + border-top: $color-border-style; + border-left: $transparent-border-style; + border-right: $transparent-border-style; + } + + @else if $direction==left { + border-right: $color-border-style; + border-top: $transparent-border-style; + border-bottom: $transparent-border-style; + } +} diff --git a/cutejava-ui/src/assets/styles/sidebar.scss b/cutejava-ui/src/assets/styles/sidebar.scss new file mode 100644 index 00000000..17381fcf --- /dev/null +++ b/cutejava-ui/src/assets/styles/sidebar.scss @@ -0,0 +1,209 @@ +#app { + + .main-container { + min-height: 100%; + transition: margin-left .28s; + margin-left: $sideBarWidth; + position: relative; + } + + .sidebar-container { + transition: width 0.28s; + width: $sideBarWidth !important; + background-color: $menuBg; + height: 100%; + position: fixed; + font-size: 0; + top: 0; + bottom: 0; + left: 0; + z-index: 1001; + overflow: hidden; + + // reset element-ui css + .horizontal-collapse-transition { + transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out; + } + + .scrollbar-wrapper { + overflow-x: hidden !important; + } + + .el-scrollbar__bar.is-vertical { + right: 0; + } + + .el-scrollbar { + height: 100%; + } + + &.has-logo { + .el-scrollbar { + height: calc(100% - 50px); + } + } + + .is-horizontal { + display: none; + } + + a { + display: inline-block; + width: 100%; + overflow: hidden; + } + + .svg-icon { + margin-right: 16px; + } + + .el-menu { + border: none; + height: 100%; + width: 100% !important; + } + + // menu hover + .submenu-title-noDropdown, + .el-submenu__title { + &:hover { + background-color: $menuHover !important; + } + } + + .is-active>.el-submenu__title { + color: $subMenuActiveText !important; + } + + & .nest-menu .el-submenu>.el-submenu__title, + & .el-submenu .el-menu-item { + min-width: $sideBarWidth !important; + background-color: $subMenuBg !important; + + &:hover { + background-color: $subMenuHover !important; + } + } + } + + .hideSidebar { + .sidebar-container { + width: 54px !important; + } + + .main-container { + margin-left: 54px; + } + + .submenu-title-noDropdown { + padding: 0 !important; + position: relative; + + .el-tooltip { + padding: 0 !important; + + .svg-icon { + margin-left: 20px; + } + } + } + + .el-submenu { + overflow: hidden; + + &>.el-submenu__title { + padding: 0 !important; + + .svg-icon { + margin-left: 20px; + } + + .el-submenu__icon-arrow { + display: none; + } + } + } + + .el-menu--collapse { + .el-submenu { + &>.el-submenu__title { + &>span { + height: 0; + width: 0; + overflow: hidden; + visibility: hidden; + display: inline-block; + } + } + } + } + } + + .el-menu--collapse .el-menu .el-submenu { + min-width: $sideBarWidth !important; + } + + // mobile responsive + .mobile { + .main-container { + margin-left: 0; + } + + .sidebar-container { + transition: transform .28s; + width: $sideBarWidth !important; + } + + &.hideSidebar { + .sidebar-container { + pointer-events: none; + transition-duration: 0.3s; + transform: translate3d(-$sideBarWidth, 0, 0); + } + } + } + + .withoutAnimation { + + .main-container, + .sidebar-container { + transition: none; + } + } +} + +// when menu collapsed +.el-menu--vertical { + &>.el-menu { + .svg-icon { + margin-right: 16px; + } + } + + .nest-menu .el-submenu>.el-submenu__title, + .el-menu-item { + &:hover { + // you can use $subMenuHover + background-color: $menuHover !important; + } + } + + // the scroll bar appears when the subMenu is too long + >.el-menu--popup { + max-height: 100vh; + overflow-y: auto; + + &::-webkit-scrollbar-track-piece { + background: #d3dce6; + } + + &::-webkit-scrollbar { + width: 6px; + } + + &::-webkit-scrollbar-thumb { + background: #99a9bf; + border-radius: 20px; + } + } +} diff --git a/cutejava-ui/src/assets/styles/transition.scss b/cutejava-ui/src/assets/styles/transition.scss new file mode 100644 index 00000000..4cb27cc8 --- /dev/null +++ b/cutejava-ui/src/assets/styles/transition.scss @@ -0,0 +1,48 @@ +// global transition css + +/* fade */ +.fade-enter-active, +.fade-leave-active { + transition: opacity 0.28s; +} + +.fade-enter, +.fade-leave-active { + opacity: 0; +} + +/* fade-transform */ +.fade-transform-leave-active, +.fade-transform-enter-active { + transition: all .5s; +} + +.fade-transform-enter { + opacity: 0; + transform: translateX(-30px); +} + +.fade-transform-leave-to { + opacity: 0; + transform: translateX(30px); +} + +/* breadcrumb transition */ +.breadcrumb-enter-active, +.breadcrumb-leave-active { + transition: all .5s; +} + +.breadcrumb-enter, +.breadcrumb-leave-active { + opacity: 0; + transform: translateX(20px); +} + +.breadcrumb-move { + transition: all .5s; +} + +.breadcrumb-leave-active { + position: absolute; +} diff --git a/cutejava-ui/src/assets/styles/variables.scss b/cutejava-ui/src/assets/styles/variables.scss new file mode 100644 index 00000000..41de79ca --- /dev/null +++ b/cutejava-ui/src/assets/styles/variables.scss @@ -0,0 +1,35 @@ +// base color +$blue:#324157; +$light-blue:#3A71A8; +$red:#C03639; +$pink: #E65D6E; +$green: #30B08F; +$tiffany: #4AB7BD; +$yellow:#FEC171; +$panGreen: #30B08F; + +// sidebar +$menuText:#bfcbd9; +$menuActiveText:#409EFF; +$subMenuActiveText:#f4f4f5; // https://github.com/ElemeFE/element/issues/12951 + +$menuBg:#304156; +$menuHover:#263445; + +$subMenuBg:#1f2d3d; +$subMenuHover:#001528; + +$sideBarWidth: 205px; + +// the :export directive is the magic sauce for webpack +// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass +:export { + menuText: $menuText; + menuActiveText: $menuActiveText; + subMenuActiveText: $subMenuActiveText; + menuBg: $menuBg; + menuHover: $menuHover; + subMenuBg: $subMenuBg; + subMenuHover: $subMenuHover; + sideBarWidth: $sideBarWidth; +} diff --git a/cutejava-ui/src/components/Breadcrumb/index.vue b/cutejava-ui/src/components/Breadcrumb/index.vue new file mode 100644 index 00000000..204ea59c --- /dev/null +++ b/cutejava-ui/src/components/Breadcrumb/index.vue @@ -0,0 +1,81 @@ + + + + + diff --git a/cutejava-ui/src/components/Crud/CRUD.operation.vue b/cutejava-ui/src/components/Crud/CRUD.operation.vue new file mode 100644 index 00000000..33d20777 --- /dev/null +++ b/cutejava-ui/src/components/Crud/CRUD.operation.vue @@ -0,0 +1,268 @@ + + + + diff --git a/cutejava-ui/src/components/Crud/Pagination.vue b/cutejava-ui/src/components/Crud/Pagination.vue new file mode 100644 index 00000000..d4482fbd --- /dev/null +++ b/cutejava-ui/src/components/Crud/Pagination.vue @@ -0,0 +1,18 @@ + + + diff --git a/cutejava-ui/src/components/Crud/RR.operation.vue b/cutejava-ui/src/components/Crud/RR.operation.vue new file mode 100644 index 00000000..df2c138e --- /dev/null +++ b/cutejava-ui/src/components/Crud/RR.operation.vue @@ -0,0 +1,20 @@ + + + diff --git a/cutejava-ui/src/components/Crud/UD.operation.vue b/cutejava-ui/src/components/Crud/UD.operation.vue new file mode 100644 index 00000000..221a4ef8 --- /dev/null +++ b/cutejava-ui/src/components/Crud/UD.operation.vue @@ -0,0 +1,71 @@ + + diff --git a/cutejava-ui/src/components/Crud/crud.js b/cutejava-ui/src/components/Crud/crud.js new file mode 100644 index 00000000..4c20189e --- /dev/null +++ b/cutejava-ui/src/components/Crud/crud.js @@ -0,0 +1,865 @@ +import { initData, download } from '@/api/data' +import { parseTime, downloadFile } from '@/utils/index' +import Vue from 'vue' + +/** + * CRUD配置 + * @author moxun + * @param {*} options
+ * @return crud instance. + * @example + * 要使用多crud时,请在关联crud的组件处使用crud-tag进行标记,如: + */ +function CRUD(options) { + const defaultOptions = { + tag: 'default', + // id字段名 + idField: 'id', + // 标题 + title: '', + // 请求数据的url + url: '', + // 表格数据 + data: [], + // 选择项 + selections: [], + // 待查询的对象 + query: {}, + // 查询数据的参数 + params: {}, + // Form 表单 + form: {}, + // 重置表单 + defaultForm: () => {}, + // 等待时间 + time: 50, + // CRUD Method + crudMethod: { + add: (form) => {}, + del: (id) => {}, + edit: (form) => {}, + get: (id) => {} + }, + // 主页操作栏显示哪些按钮 + optShow: { + add: true, + edit: true, + del: true, + download: true, + reset: true + }, + // 自定义一些扩展属性 + props: {}, + // 在主页准备 + queryOnPresenterCreated: true, + // 调试开关 + debug: false + } + options = mergeOptions(defaultOptions, options) + const data = { + ...options, + // 记录数据状态 + dataStatus: {}, + status: { + add: CRUD.STATUS.NORMAL, + edit: CRUD.STATUS.NORMAL, + // 添加或编辑状态 + get cu() { + if (this.add === CRUD.STATUS.NORMAL && this.edit === CRUD.STATUS.NORMAL) { + return CRUD.STATUS.NORMAL + } else if (this.add === CRUD.STATUS.PREPARED || this.edit === CRUD.STATUS.PREPARED) { + return CRUD.STATUS.PREPARED + } else if (this.add === CRUD.STATUS.PROCESSING || this.edit === CRUD.STATUS.PROCESSING) { + return CRUD.STATUS.PROCESSING + } + throw new Error('wrong crud\'s cu status') + }, + // 标题 + get title() { + return this.add > CRUD.STATUS.NORMAL ? `新增${crud.title}` : this.edit > CRUD.STATUS.NORMAL ? `编辑${crud.title}` : crud.title + } + }, + msg: { + submit: '提交成功', + add: '新增成功', + edit: '编辑成功', + del: '删除成功' + }, + page: { + // 页码 + page: 1, + // 每页数据条数 + size: 10, + // 总数据条数 + total: 0 + }, + // 整体loading + loading: false, + // 导出的 Loading + downloadLoading: false, + // 删除的 Loading + delAllLoading: false + } + const methods = { + /** + * 通用的提示 + */ + submitSuccessNotify() { + crud.notify(crud.msg.submit, CRUD.NOTIFICATION_TYPE.SUCCESS) + }, + addSuccessNotify() { + crud.notify(crud.msg.add, CRUD.NOTIFICATION_TYPE.SUCCESS) + }, + editSuccessNotify() { + crud.notify(crud.msg.edit, CRUD.NOTIFICATION_TYPE.SUCCESS) + }, + delSuccessNotify() { + crud.notify(crud.msg.del, CRUD.NOTIFICATION_TYPE.SUCCESS) + }, + // 搜索 + toQuery() { + crud.page.page = 1 + crud.refresh() + }, + // 刷新 + refresh() { + if (!callVmHook(crud, CRUD.HOOK.beforeRefresh)) { + return + } + return new Promise((resolve, reject) => { + crud.loading = true + // 请求数据 + initData(crud.url, crud.getQueryParams()).then(data => { + const table = crud.getTable() + if (table && table.lazy) { // 懒加载子节点数据,清掉已加载的数据 + table.store.states.treeData = {} + table.store.states.lazyTreeNodeMap = {} + } + crud.page.total = data.totalElements + crud.data = data.content + crud.resetDataStatus() + // time 毫秒后显示表格 + setTimeout(() => { + crud.loading = false + callVmHook(crud, CRUD.HOOK.afterRefresh) + }, crud.time) + resolve(data) + }).catch(err => { + crud.loading = false + reject(err) + }) + }) + }, + /** + * 启动添加 + */ + toAdd() { + crud.resetForm() + if (!(callVmHook(crud, CRUD.HOOK.beforeToAdd, crud.form) && callVmHook(crud, CRUD.HOOK.beforeToCU, crud.form))) { + return + } + crud.status.add = CRUD.STATUS.PREPARED + callVmHook(crud, CRUD.HOOK.afterToAdd, crud.form) + callVmHook(crud, CRUD.HOOK.afterToCU, crud.form) + }, + /** + * 启动编辑 + * @param {*} data 数据项 + */ + toEdit(data) { + crud.resetForm(JSON.parse(JSON.stringify(data))) + if (!(callVmHook(crud, CRUD.HOOK.beforeToEdit, crud.form) && callVmHook(crud, CRUD.HOOK.beforeToCU, crud.form))) { + return + } + crud.status.edit = CRUD.STATUS.PREPARED + crud.getDataStatus(crud.getDataId(data)).edit = CRUD.STATUS.PREPARED + callVmHook(crud, CRUD.HOOK.afterToEdit, crud.form) + callVmHook(crud, CRUD.HOOK.afterToCU, crud.form) + }, + /** + * 启动删除 + * @param {*} data 数据项 + */ + toDelete(data) { + crud.getDataStatus(crud.getDataId(data)).delete = CRUD.STATUS.PREPARED + }, + /** + * 取消删除 + * @param {*} data 数据项 + */ + cancelDelete(data) { + if (!callVmHook(crud, CRUD.HOOK.beforeDeleteCancel, data)) { + return + } + crud.getDataStatus(crud.getDataId(data)).delete = CRUD.STATUS.NORMAL + callVmHook(crud, CRUD.HOOK.afterDeleteCancel, data) + }, + /** + * 取消新增/编辑 + */ + cancelCU() { + const addStatus = crud.status.add + const editStatus = crud.status.edit + if (addStatus === CRUD.STATUS.PREPARED) { + if (!callVmHook(crud, CRUD.HOOK.beforeAddCancel, crud.form)) { + return + } + crud.status.add = CRUD.STATUS.NORMAL + } + if (editStatus === CRUD.STATUS.PREPARED) { + if (!callVmHook(crud, CRUD.HOOK.beforeEditCancel, crud.form)) { + return + } + crud.status.edit = CRUD.STATUS.NORMAL + crud.getDataStatus(crud.getDataId(crud.form)).edit = CRUD.STATUS.NORMAL + } + crud.resetForm() + if (addStatus === CRUD.STATUS.PREPARED) { + callVmHook(crud, CRUD.HOOK.afterAddCancel, crud.form) + } + if (editStatus === CRUD.STATUS.PREPARED) { + callVmHook(crud, CRUD.HOOK.afterEditCancel, crud.form) + } + // 清除表单验证 + if (crud.findVM('form').$refs['form']) { + crud.findVM('form').$refs['form'].clearValidate() + } + }, + /** + * 提交新增/编辑 + */ + submitCU() { + if (!callVmHook(crud, CRUD.HOOK.beforeValidateCU)) { + return + } + crud.findVM('form').$refs['form'].validate(valid => { + if (!valid) { + return + } + if (!callVmHook(crud, CRUD.HOOK.afterValidateCU)) { + return + } + if (crud.status.add === CRUD.STATUS.PREPARED) { + crud.doAdd() + } else if (crud.status.edit === CRUD.STATUS.PREPARED) { + crud.doEdit() + } + }) + }, + /** + * 执行添加 + */ + doAdd() { + if (!callVmHook(crud, CRUD.HOOK.beforeSubmit)) { + return + } + crud.status.add = CRUD.STATUS.PROCESSING + crud.crudMethod.add(crud.form).then(() => { + crud.status.add = CRUD.STATUS.NORMAL + crud.resetForm() + crud.addSuccessNotify() + callVmHook(crud, CRUD.HOOK.afterSubmit) + crud.toQuery() + }).catch(() => { + crud.status.add = CRUD.STATUS.PREPARED + callVmHook(crud, CRUD.HOOK.afterAddError) + }) + }, + /** + * 执行编辑 + */ + doEdit() { + if (!callVmHook(crud, CRUD.HOOK.beforeSubmit)) { + return + } + crud.status.edit = CRUD.STATUS.PROCESSING + crud.crudMethod.edit(crud.form).then(() => { + crud.status.edit = CRUD.STATUS.NORMAL + crud.getDataStatus(crud.getDataId(crud.form)).edit = CRUD.STATUS.NORMAL + crud.editSuccessNotify() + crud.resetForm() + callVmHook(crud, CRUD.HOOK.afterSubmit) + crud.refresh() + }).catch(() => { + crud.status.edit = CRUD.STATUS.PREPARED + callVmHook(crud, CRUD.HOOK.afterEditError) + }) + }, + /** + * 执行删除 + * @param {*} data 数据项 + */ + doDelete(data) { + let delAll = false + let dataStatus + const ids = [] + if (data instanceof Array) { + delAll = true + data.forEach(val => { + ids.push(this.getDataId(val)) + }) + } else { + ids.push(this.getDataId(data)) + dataStatus = crud.getDataStatus(this.getDataId(data)) + } + if (!callVmHook(crud, CRUD.HOOK.beforeDelete, data)) { + return + } + if (!delAll) { + dataStatus.delete = CRUD.STATUS.PROCESSING + } + return crud.crudMethod.del(ids).then(() => { + if (delAll) { + crud.delAllLoading = false + } else dataStatus.delete = CRUD.STATUS.PREPARED + crud.dleChangePage(1) + crud.delSuccessNotify() + callVmHook(crud, CRUD.HOOK.afterDelete, data) + crud.refresh() + }).catch(() => { + if (delAll) { + crud.delAllLoading = false + } else dataStatus.delete = CRUD.STATUS.PREPARED + }) + }, + /** + * 通用导出 + */ + doExport() { + crud.downloadLoading = true + download(crud.url + '/download', crud.getQueryParams()).then(result => { + downloadFile(result, crud.title + '数据', 'xlsx') + crud.downloadLoading = false + }).catch(() => { + crud.downloadLoading = false + }) + }, + /** + * 获取查询参数 + */ + getQueryParams: function() { + // 清除参数无值的情况 + Object.keys(crud.query).length !== 0 && Object.keys(crud.query).forEach(item => { + if (crud.query[item] === null || crud.query[item] === '') crud.query[item] = undefined + }) + Object.keys(crud.params).length !== 0 && Object.keys(crud.params).forEach(item => { + if (crud.params[item] === null || crud.params[item] === '') crud.params[item] = undefined + }) + return { + page: crud.page.page, + size: crud.page.size, + ...crud.query, + ...crud.params + } + }, + // 当前页改变 + pageChangeHandler(e) { + crud.page.page = e + crud.refresh() + }, + // 每页条数改变 + sizeChangeHandler(e) { + crud.page.size = e + crud.page.page = 1 + crud.refresh() + }, + // 预防删除第二页最后一条数据时,或者多选删除第二页的数据时,页码错误导致请求无数据 + dleChangePage(size) { + if (crud.data.length === size && crud.page.page !== 1) { + crud.page.page -= 1 + } + }, + // 选择改变 + selectionChangeHandler(val) { + crud.selections = val + }, + /** + * 重置查询参数 + * @param {Boolean} toQuery 重置后进行查询操作 + */ + resetQuery(toQuery = true) { + const defaultQuery = JSON.parse(JSON.stringify(crud.defaultQuery)) + const query = crud.query + Object.keys(query).forEach(key => { + query[key] = defaultQuery[key] + }) + // 重置参数 + this.params = {} + if (toQuery) { + crud.toQuery() + } + }, + /** + * 重置表单 + * @param {Array} data 数据 + */ + resetForm(data) { + delete crud.form['createTime'] + delete crud.form['updateTime'] + delete crud.form['createBy'] + delete crud.form['updateBy'] + const form = data || (typeof crud.defaultForm === 'object' ? JSON.parse(JSON.stringify(crud.defaultForm)) : crud.defaultForm.apply(crud.findVM('form'))) + const crudFrom = crud.form + for (const key in form) { + if (crudFrom.hasOwnProperty(key)) { + crudFrom[key] = form[key] + } else { + Vue.set(crudFrom, key, form[key]) + } + } + // add by ghl 2020-10-04 页面重复添加信息时,下拉框的校验会存在,需要找工取消 + if (crud.findVM('form').$refs['form']) { + crud.findVM('form').$refs['form'].clearValidate() + } + }, + /** + * 重置数据状态 + */ + resetDataStatus() { + const dataStatus = {} + function resetStatus(datas) { + datas.forEach(e => { + dataStatus[crud.getDataId(e)] = { + delete: 0, + edit: 0 + } + if (e.children) { + resetStatus(e.children) + } + }) + } + resetStatus(crud.data) + crud.dataStatus = dataStatus + }, + /** + * 获取数据状态 + * @param {Number | String} id 数据项id + */ + getDataStatus(id) { + return crud.dataStatus[id] + }, + /** + * 用于树形表格多选, 选中所有 + * @param selection + */ + selectAllChange(selection) { + // 如果选中的数目与请求到的数目相同就选中子节点,否则就清空选中 + if (selection && selection.length === crud.data.length) { + selection.forEach(val => { + crud.selectChange(selection, val) + }) + } else { + crud.getTable().clearSelection() + } + }, + /** + * 用于树形表格多选,单选的封装 + * @param selection + * @param row + */ + selectChange(selection, row) { + // 如果selection中存在row代表是选中,否则是取消选中 + if (selection.find(val => { return crud.getDataId(val) === crud.getDataId(row) })) { + if (row.children) { + row.children.forEach(val => { + crud.getTable().toggleRowSelection(val, true) + selection.push(val) + if (val.children) { + crud.selectChange(selection, val) + } + }) + } + } else { + crud.toggleRowSelection(selection, row) + } + }, + /** + * 切换选中状态 + * @param selection + * @param data + */ + toggleRowSelection(selection, data) { + if (data.children) { + data.children.forEach(val => { + selection.splice(selection.findIndex(item => this.getDataId(item) === this.getDataId(val)), 1) + crud.getTable().toggleRowSelection(val, false) + if (val.children) { + crud.toggleRowSelection(selection, val) + } + }) + } + }, + findVM(type) { + return crud.vms.find(vm => vm && vm.type === type).vm + }, + notify(title, type = CRUD.NOTIFICATION_TYPE.INFO) { + crud.vms[0].vm.$notify({ + title, + type, + duration: 2500 + }) + }, + updateProp(name, value) { + Vue.set(crud.props, name, value) + }, + getDataId(data) { + return data[this.idField] + }, + getTable() { + return this.findVM('presenter').$refs.table + }, + attchTable() { + const table = this.getTable() + this.updateProp('table', table) + const that = this + table.$on('expand-change', (row, expanded) => { + if (!expanded) { + return + } + const lazyTreeNodeMap = table.store.states.lazyTreeNodeMap + row.children = lazyTreeNodeMap[crud.getDataId(row)] + if (row.children) { + row.children.forEach(ele => { + const id = crud.getDataId(ele) + if (that.dataStatus[id] === undefined) { + that.dataStatus[id] = { + delete: 0, + edit: 0 + } + } + }) + } + }) + } + } + const crud = Object.assign({}, data) + // 可观测化 + Vue.observable(crud) + // 附加方法 + Object.assign(crud, methods) + // 记录初始默认的查询参数,后续重置查询时使用 + Object.assign(crud, { + defaultQuery: JSON.parse(JSON.stringify(data.query)), + // 预留4位存储:组件 主页、头部、分页、表单,调试查看也方便找 + vms: Array(4), + /** + * 注册组件实例 + * @param {String} type 类型 + * @param {*} vm 组件实例 + * @param {Number} index 该参数内部使用 + */ + registerVM(type, vm, index = -1) { + const vmObj = { + type, + vm: vm + } + if (index < 0) { + this.vms.push(vmObj) + return + } + if (index < 4) { // 内置预留vm数 + this.vms[index] = vmObj + return + } + this.vms.length = Math.max(this.vms.length, index) + this.vms.splice(index, 1, vmObj) + }, + /** + * 取消注册组件实例 + * @param {*} vm 组件实例 + */ + unregisterVM(type, vm) { + for (let i = this.vms.length - 1; i >= 0; i--) { + if (this.vms[i] === undefined) { + continue + } + if (this.vms[i].type === type && this.vms[i].vm === vm) { + if (i < 4) { // 内置预留vm数 + this.vms[i] = undefined + } else { + this.vms.splice(i, 1) + } + break + } + } + } + }) + // 冻结处理,需要扩展数据的话,使用crud.updateProp(name, value),以crud.props.name形式访问,这个是响应式的,可以做数据绑定 + Object.freeze(crud) + return crud +} + +// hook VM +function callVmHook(crud, hook) { + if (crud.debug) { + console.log('callVmHook: ' + hook) + } + const tagHook = crud.tag ? hook + '$' + crud.tag : null + let ret = true + const nargs = [crud] + for (let i = 2; i < arguments.length; ++i) { + nargs.push(arguments[i]) + } + // 有些组件扮演了多个角色,调用钩子时,需要去重 + const vmSet = new Set() + crud.vms.forEach(vm => vm && vmSet.add(vm.vm)) + vmSet.forEach(vm => { + if (vm[hook]) { + ret = vm[hook].apply(vm, nargs) !== false && ret + } + if (tagHook && vm[tagHook]) { + ret = vm[tagHook].apply(vm, nargs) !== false && ret + } + }) + return ret +} + +function mergeOptions(src, opts) { + const optsRet = { + ...src + } + for (const key in src) { + if (opts.hasOwnProperty(key)) { + optsRet[key] = opts[key] + } + } + return optsRet +} + +/** + * 查找crud + * @param {*} vm + * @param {string} tag + */ +function lookupCrud(vm, tag) { + tag = tag || vm.$attrs['crud-tag'] || 'default' + // function lookupCrud(vm, tag) { + if (vm.$crud) { + const ret = vm.$crud[tag] + if (ret) { + return ret + } + } + return vm.$parent ? lookupCrud(vm.$parent, tag) : undefined +} + +/** + * crud主页 + */ +function presenter(crud) { + if (crud) { + console.warn('[CRUD warn]: ' + 'please use $options.cruds() { return CRUD(...) or [CRUD(...), ...] }') + } + return { + data() { + // 在data中返回crud,是为了将crud与当前实例关联,组件观测crud相关属性变化 + return { + crud: this.crud + } + }, + beforeCreate() { + this.$crud = this.$crud || {} + let cruds = this.$options.cruds instanceof Function ? this.$options.cruds() : crud + if (!(cruds instanceof Array)) { + cruds = [cruds] + } + cruds.forEach(ele => { + if (this.$crud[ele.tag]) { + console.error('[CRUD error]: ' + 'crud with tag [' + ele.tag + ' is already exist') + } + this.$crud[ele.tag] = ele + ele.registerVM('presenter', this, 0) + }) + this.crud = this.$crud['defalut'] || cruds[0] + }, + methods: { + parseTime + }, + created() { + for (const k in this.$crud) { + if (this.$crud[k].queryOnPresenterCreated) { + this.$crud[k].toQuery() + } + } + }, + destroyed() { + for (const k in this.$crud) { + this.$crud[k].unregisterVM('presenter', this) + } + }, + mounted() { + // 如果table未实例化(例如使用了v-if),请稍后在适当时机crud.attchTable刷新table信息 + if (this.$refs.table !== undefined) { + this.crud.attchTable() + } + } + } +} + +/** + * 头部 + */ +function header() { + return { + data() { + return { + crud: this.crud, + query: this.crud.query + } + }, + beforeCreate() { + this.crud = lookupCrud(this) + this.crud.registerVM('header', this, 1) + }, + destroyed() { + this.crud.unregisterVM('header', this) + } + } +} + +/** + * 分页 + */ +function pagination() { + return { + data() { + return { + crud: this.crud, + page: this.crud.page + } + }, + beforeCreate() { + this.crud = lookupCrud(this) + this.crud.registerVM('pagination', this, 2) + }, + destroyed() { + this.crud.unregisterVM('pagination', this) + } + } +} + +/** + * 表单 + */ +function form(defaultForm) { + return { + data() { + return { + crud: this.crud, + form: this.crud.form + } + }, + beforeCreate() { + this.crud = lookupCrud(this) + this.crud.registerVM('form', this, 3) + }, + created() { + this.crud.defaultForm = defaultForm + this.crud.resetForm() + }, + destroyed() { + this.crud.unregisterVM('form', this) + } + } +} + +/** + * crud + */ +function crud(options = {}) { + const defaultOptions = { + type: undefined + } + options = mergeOptions(defaultOptions, options) + return { + data() { + return { + crud: this.crud + } + }, + beforeCreate() { + this.crud = lookupCrud(this) + this.crud.registerVM(options.type, this) + }, + destroyed() { + this.crud.unregisterVM(options.type, this) + } + } +} + +/** + * CRUD钩子 + */ +CRUD.HOOK = { + /** 刷新 - 之前 */ + beforeRefresh: 'beforeCrudRefresh', + /** 刷新 - 之后 */ + afterRefresh: 'afterCrudRefresh', + /** 删除 - 之前 */ + beforeDelete: 'beforeCrudDelete', + /** 删除 - 之后 */ + afterDelete: 'afterCrudDelete', + /** 删除取消 - 之前 */ + beforeDeleteCancel: 'beforeCrudDeleteCancel', + /** 删除取消 - 之后 */ + afterDeleteCancel: 'afterCrudDeleteCancel', + /** 新建 - 之前 */ + beforeToAdd: 'beforeCrudToAdd', + /** 新建 - 之后 */ + afterToAdd: 'afterCrudToAdd', + /** 编辑 - 之前 */ + beforeToEdit: 'beforeCrudToEdit', + /** 编辑 - 之后 */ + afterToEdit: 'afterCrudToEdit', + /** 开始 "新建/编辑" - 之前 */ + beforeToCU: 'beforeCrudToCU', + /** 开始 "新建/编辑" - 之后 */ + afterToCU: 'afterCrudToCU', + /** "新建/编辑" 验证 - 之前 */ + beforeValidateCU: 'beforeCrudValidateCU', + /** "新建/编辑" 验证 - 之后 */ + afterValidateCU: 'afterCrudValidateCU', + /** 添加取消 - 之前 */ + beforeAddCancel: 'beforeCrudAddCancel', + /** 添加取消 - 之后 */ + afterAddCancel: 'afterCrudAddCancel', + /** 编辑取消 - 之前 */ + beforeEditCancel: 'beforeCrudEditCancel', + /** 编辑取消 - 之后 */ + afterEditCancel: 'afterCrudEditCancel', + /** 提交 - 之前 */ + beforeSubmit: 'beforeCrudSubmitCU', + /** 提交 - 之后 */ + afterSubmit: 'afterCrudSubmitCU', + afterAddError: 'afterCrudAddError', + afterEditError: 'afterCrudEditError' +} + +/** + * CRUD状态 + */ +CRUD.STATUS = { + NORMAL: 0, + PREPARED: 1, + PROCESSING: 2 +} + +/** + * CRUD通知类型 + */ +CRUD.NOTIFICATION_TYPE = { + SUCCESS: 'success', + WARNING: 'warning', + INFO: 'info', + ERROR: 'error' +} + +export default CRUD + +export { + presenter, + header, + form, + pagination, + crud +} diff --git a/cutejava-ui/src/components/DateRangePicker/index.vue b/cutejava-ui/src/components/DateRangePicker/index.vue new file mode 100644 index 00000000..8feea56d --- /dev/null +++ b/cutejava-ui/src/components/DateRangePicker/index.vue @@ -0,0 +1,45 @@ + diff --git a/cutejava-ui/src/components/Dict/Dict.js b/cutejava-ui/src/components/Dict/Dict.js new file mode 100644 index 00000000..48554de7 --- /dev/null +++ b/cutejava-ui/src/components/Dict/Dict.js @@ -0,0 +1,29 @@ +import Vue from 'vue' +import { get as getDictDetail } from '@/api/system/dictDetail' + +export default class Dict { + constructor(dict) { + this.dict = dict + } + + async init(names, completeCallback) { + if (names === undefined || name === null) { + throw new Error('need Dict names') + } + const ps = [] + names.forEach(n => { + Vue.set(this.dict.dict, n, {}) + Vue.set(this.dict.label, n, {}) + Vue.set(this.dict, n, []) + ps.push(getDictDetail(n).then(data => { + this.dict[n].splice(0, 0, ...data.content) + data.content.forEach(d => { + Vue.set(this.dict.dict[n], d.value, d) + Vue.set(this.dict.label[n], d.value, d.label) + }) + })) + }) + await Promise.all(ps) + completeCallback() + } +} diff --git a/cutejava-ui/src/components/Dict/index.js b/cutejava-ui/src/components/Dict/index.js new file mode 100644 index 00000000..0952f439 --- /dev/null +++ b/cutejava-ui/src/components/Dict/index.js @@ -0,0 +1,29 @@ +import Dict from './Dict' + +const install = function(Vue) { + Vue.mixin({ + data() { + if (this.$options.dicts instanceof Array) { + const dict = { + dict: {}, + label: {} + } + return { + dict + } + } + return {} + }, + created() { + if (this.$options.dicts instanceof Array) { + new Dict(this.dict).init(this.$options.dicts, () => { + this.$nextTick(() => { + this.$emit('dictReady') + }) + }) + } + } + }) +} + +export default { install } diff --git a/cutejava-ui/src/components/Echarts/BarChart.vue b/cutejava-ui/src/components/Echarts/BarChart.vue new file mode 100644 index 00000000..fa265ef6 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/BarChart.vue @@ -0,0 +1,106 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Category.vue b/cutejava-ui/src/components/Echarts/Category.vue new file mode 100644 index 00000000..58591145 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Category.vue @@ -0,0 +1,438 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Funnel.vue b/cutejava-ui/src/components/Echarts/Funnel.vue new file mode 100644 index 00000000..380b3731 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Funnel.vue @@ -0,0 +1,120 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Gauge.vue b/cutejava-ui/src/components/Echarts/Gauge.vue new file mode 100644 index 00000000..40ce775e --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Gauge.vue @@ -0,0 +1,74 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Graph.vue b/cutejava-ui/src/components/Echarts/Graph.vue new file mode 100644 index 00000000..a5a88b3b --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Graph.vue @@ -0,0 +1,101 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/HeatMap.vue b/cutejava-ui/src/components/Echarts/HeatMap.vue new file mode 100644 index 00000000..6606278a --- /dev/null +++ b/cutejava-ui/src/components/Echarts/HeatMap.vue @@ -0,0 +1,105 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/PieChart.vue b/cutejava-ui/src/components/Echarts/PieChart.vue new file mode 100644 index 00000000..ff1bc52c --- /dev/null +++ b/cutejava-ui/src/components/Echarts/PieChart.vue @@ -0,0 +1,84 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Point.vue b/cutejava-ui/src/components/Echarts/Point.vue new file mode 100644 index 00000000..5a6c7774 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Point.vue @@ -0,0 +1,149 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/RadarChart.vue b/cutejava-ui/src/components/Echarts/RadarChart.vue new file mode 100644 index 00000000..de70e523 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/RadarChart.vue @@ -0,0 +1,120 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Rich.vue b/cutejava-ui/src/components/Echarts/Rich.vue new file mode 100644 index 00000000..1cf6bf27 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Rich.vue @@ -0,0 +1,149 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Sankey.vue b/cutejava-ui/src/components/Echarts/Sankey.vue new file mode 100644 index 00000000..49968c4f --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Sankey.vue @@ -0,0 +1,100 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Scatter.vue b/cutejava-ui/src/components/Echarts/Scatter.vue new file mode 100644 index 00000000..b776efb9 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Scatter.vue @@ -0,0 +1,143 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/Sunburst.vue b/cutejava-ui/src/components/Echarts/Sunburst.vue new file mode 100644 index 00000000..fafc1a88 --- /dev/null +++ b/cutejava-ui/src/components/Echarts/Sunburst.vue @@ -0,0 +1,107 @@ + + + diff --git a/cutejava-ui/src/components/Echarts/ThemeRiver.vue b/cutejava-ui/src/components/Echarts/ThemeRiver.vue new file mode 100644 index 00000000..967fc05b --- /dev/null +++ b/cutejava-ui/src/components/Echarts/ThemeRiver.vue @@ -0,0 +1,148 @@ + + + diff --git a/cutejava-ui/src/components/GithubCorner/index.vue b/cutejava-ui/src/components/GithubCorner/index.vue new file mode 100644 index 00000000..d7d1e9e5 --- /dev/null +++ b/cutejava-ui/src/components/GithubCorner/index.vue @@ -0,0 +1,54 @@ + + + diff --git a/cutejava-ui/src/components/Hamburger/index.vue b/cutejava-ui/src/components/Hamburger/index.vue new file mode 100644 index 00000000..368b0021 --- /dev/null +++ b/cutejava-ui/src/components/Hamburger/index.vue @@ -0,0 +1,44 @@ + + + + + diff --git a/cutejava-ui/src/components/HeaderSearch/index.vue b/cutejava-ui/src/components/HeaderSearch/index.vue new file mode 100644 index 00000000..c713efc2 --- /dev/null +++ b/cutejava-ui/src/components/HeaderSearch/index.vue @@ -0,0 +1,188 @@ + + + + + diff --git a/cutejava-ui/src/components/IconSelect/index.vue b/cutejava-ui/src/components/IconSelect/index.vue new file mode 100644 index 00000000..92e4e2e2 --- /dev/null +++ b/cutejava-ui/src/components/IconSelect/index.vue @@ -0,0 +1,67 @@ + + + + + diff --git a/cutejava-ui/src/components/IconSelect/requireIcons.js b/cutejava-ui/src/components/IconSelect/requireIcons.js new file mode 100644 index 00000000..99e5c54c --- /dev/null +++ b/cutejava-ui/src/components/IconSelect/requireIcons.js @@ -0,0 +1,11 @@ + +const req = require.context('../../assets/icons/svg', false, /\.svg$/) +const requireAll = requireContext => requireContext.keys() + +const re = /\.\/(.*)\.svg/ + +const icons = requireAll(req).map(i => { + return i.match(re)[1] +}) + +export default icons diff --git a/cutejava-ui/src/components/Iframe/index.vue b/cutejava-ui/src/components/Iframe/index.vue new file mode 100644 index 00000000..cdd612b4 --- /dev/null +++ b/cutejava-ui/src/components/Iframe/index.vue @@ -0,0 +1,30 @@ +