From 0495cb488e3336ae6589b883c231d7f2149c6d72 Mon Sep 17 00:00:00 2001 From: Eric <01714308@yto.net.cn> Date: Wed, 11 Feb 2026 11:04:23 +0800 Subject: [PATCH] jdk 17 --- .idea/compiler.xml | 28 + .idea/encodings.xml | 22 + .idea/jarRepositories.xml | 50 ++ .idea/lingniu-platform.iml | 9 - .idea/misc.xml | 14 +- .idea/modules.xml | 8 - demo/backend/{ => demo}/.gitattributes | 0 demo/backend/{ => demo}/.gitignore | 0 demo/backend/{ => demo}/pom.xml | 0 .../example/demo/DemoApplication.java | 2 +- .../demo/controller/DemoController.java} | 16 +- .../java/org/lingniu}/example/demo/test.http | 6 + .../java/org/lingniu/example/demo/test2.http | 50 ++ .../src/main/resources/application-dev.yml} | 0 .../src/main/resources/application-test.yml | 70 ++ .../demo/src/main/resources/application.yml | 3 + .../example/demo/DemoApplicationTests.java | 2 +- demo/backend/mvnw | 295 -------- demo/backend/mvnw.cmd | 189 ----- demo/frontend/README.md | 5 - demo/frontend/demo/demo-sdk/.env.development | 9 + demo/frontend/demo/demo-sdk/.env.production | 7 + demo/frontend/{ => demo/demo-sdk}/.gitignore | 0 demo/frontend/demo/demo-sdk/README.md | 159 +++++ demo/frontend/{ => demo/demo-sdk}/index.html | 0 .../frontend/{ => demo/demo-sdk}/package.json | 3 +- .../{ => demo/demo-sdk}/pnpm-lock.yaml | 23 + .../{ => demo/demo-sdk}/pnpm-workspace.yaml | 0 .../{ => demo/demo-sdk}/public/vite.svg | 0 demo/frontend/demo/demo-sdk/src/App.vue | 160 +++++ .../{ => demo/demo-sdk}/src/assets/vue.svg | 0 .../demo-sdk/src/components/EChartsReport.vue | 142 ++++ demo/frontend/demo/demo-sdk/src/main.ts | 37 + .../demo/demo-sdk/src/router/index.ts | 90 +++ .../{ => demo/demo-sdk}/src/style.css | 0 .../demo/demo-sdk/src/views/Callback.vue | 111 +++ .../demo/demo-sdk/src/views/Dashboard.vue | 581 ++++++++++++++++ .../demo/demo-sdk/src/views/Profile.vue | 487 +++++++++++++ .../{ => demo/demo-sdk}/tsconfig.app.json | 0 .../{ => demo/demo-sdk}/tsconfig.json | 0 .../{ => demo/demo-sdk}/tsconfig.node.json | 0 .../{ => demo/demo-sdk}/vite.config.ts | 5 +- demo/frontend/src/App.vue | 9 - demo/frontend/src/components/Home.vue | 37 - demo/frontend/src/main.ts | 18 - demo/frontend/src/router/index.ts | 31 - idp/backend/idp-starter/.gitattributes | 2 - idp/backend/idp-starter/mvnw | 295 -------- idp/backend/idp-starter/mvnw.cmd | 189 ----- idp/backend/idp-starter/pom.xml | 2 +- .../idp/config/AuthorizationServerConfig.java | 1 + .../org/lingniu/idp/config/CaptchaConfig.java | 4 +- .../org/lingniu/idp/controller/login.http | 20 +- .../lingniu/idp/model/vo/AccessTokenInfo.java | 2 +- .../idp/utils/ClientCredentialUtil.java | 4 +- ...lication-local.yml => application-dev.yml} | 2 +- .../src/main/resources/application-test.yml | 2 +- .../src/main/resources/application.yml | 2 +- idp/frontend/{ => idp}/.env.development | 4 +- idp/frontend/{ => idp}/.env.production | 0 idp/frontend/{ => idp}/.env.staging | 0 idp/frontend/{ => idp}/README.md | 0 idp/frontend/{ => idp}/crypto-js.d.ts | 0 idp/frontend/{ => idp}/index.html | 0 idp/frontend/{ => idp}/package.json | 0 idp/frontend/{ => idp}/pnpm-lock.yaml | 0 idp/frontend/{ => idp}/src/App.vue | 0 idp/frontend/{ => idp}/src/api/login.ts | 0 .../{ => idp}/src/assets/401_images/401.gif | Bin .../{ => idp}/src/assets/404_images/404.png | Bin .../src/assets/404_images/404_cloud.png | Bin .../{ => idp}/src/assets/icons/svg/404.svg | 0 .../{ => idp}/src/assets/icons/svg/bug.svg | 0 .../{ => idp}/src/assets/icons/svg/build.svg | 0 .../{ => idp}/src/assets/icons/svg/button.svg | 0 .../src/assets/icons/svg/cascader.svg | 0 .../{ => idp}/src/assets/icons/svg/chart.svg | 0 .../src/assets/icons/svg/checkbox.svg | 0 .../src/assets/icons/svg/clipboard.svg | 0 .../{ => idp}/src/assets/icons/svg/code.svg | 0 .../{ => idp}/src/assets/icons/svg/color.svg | 0 .../src/assets/icons/svg/component.svg | 0 .../src/assets/icons/svg/dashboard.svg | 0 .../src/assets/icons/svg/date-range.svg | 0 .../{ => idp}/src/assets/icons/svg/date.svg | 0 .../{ => idp}/src/assets/icons/svg/dict.svg | 0 .../src/assets/icons/svg/documentation.svg | 0 .../src/assets/icons/svg/download.svg | 0 .../{ => idp}/src/assets/icons/svg/drag.svg | 0 .../{ => idp}/src/assets/icons/svg/druid.svg | 0 .../{ => idp}/src/assets/icons/svg/edit.svg | 0 .../src/assets/icons/svg/education.svg | 0 .../{ => idp}/src/assets/icons/svg/email.svg | 0 .../{ => idp}/src/assets/icons/svg/enter.svg | 0 .../src/assets/icons/svg/example.svg | 0 .../{ => idp}/src/assets/icons/svg/excel.svg | 0 .../src/assets/icons/svg/exit-fullscreen.svg | 0 .../src/assets/icons/svg/eye-open.svg | 0 .../{ => idp}/src/assets/icons/svg/eye.svg | 0 .../{ => idp}/src/assets/icons/svg/form.svg | 0 .../src/assets/icons/svg/fullscreen.svg | 0 .../{ => idp}/src/assets/icons/svg/github.svg | 0 .../{ => idp}/src/assets/icons/svg/guide.svg | 0 .../{ => idp}/src/assets/icons/svg/icon.svg | 0 .../{ => idp}/src/assets/icons/svg/input.svg | 0 .../src/assets/icons/svg/international.svg | 0 .../{ => idp}/src/assets/icons/svg/job.svg | 0 .../src/assets/icons/svg/language.svg | 0 .../{ => idp}/src/assets/icons/svg/link.svg | 0 .../{ => idp}/src/assets/icons/svg/list.svg | 0 .../{ => idp}/src/assets/icons/svg/lock.svg | 0 .../{ => idp}/src/assets/icons/svg/log.svg | 0 .../src/assets/icons/svg/logininfor.svg | 0 .../src/assets/icons/svg/message.svg | 0 .../{ => idp}/src/assets/icons/svg/money.svg | 0 .../src/assets/icons/svg/monitor.svg | 0 .../{ => idp}/src/assets/icons/svg/moon.svg | 0 .../src/assets/icons/svg/more-up.svg | 0 .../{ => idp}/src/assets/icons/svg/nested.svg | 0 .../{ => idp}/src/assets/icons/svg/number.svg | 0 .../{ => idp}/src/assets/icons/svg/online.svg | 0 .../src/assets/icons/svg/password.svg | 0 .../{ => idp}/src/assets/icons/svg/pdf.svg | 0 .../{ => idp}/src/assets/icons/svg/people.svg | 0 .../src/assets/icons/svg/peoples.svg | 0 .../{ => idp}/src/assets/icons/svg/phone.svg | 0 .../{ => idp}/src/assets/icons/svg/post.svg | 0 .../{ => idp}/src/assets/icons/svg/qq.svg | 0 .../src/assets/icons/svg/question.svg | 0 .../{ => idp}/src/assets/icons/svg/radio.svg | 0 .../{ => idp}/src/assets/icons/svg/rate.svg | 0 .../src/assets/icons/svg/redis-list.svg | 0 .../{ => idp}/src/assets/icons/svg/redis.svg | 0 .../{ => idp}/src/assets/icons/svg/row.svg | 0 .../{ => idp}/src/assets/icons/svg/search.svg | 0 .../{ => idp}/src/assets/icons/svg/select.svg | 0 .../{ => idp}/src/assets/icons/svg/server.svg | 0 .../src/assets/icons/svg/shopping.svg | 0 .../{ => idp}/src/assets/icons/svg/size.svg | 0 .../{ => idp}/src/assets/icons/svg/skill.svg | 0 .../{ => idp}/src/assets/icons/svg/slider.svg | 0 .../{ => idp}/src/assets/icons/svg/star.svg | 0 .../{ => idp}/src/assets/icons/svg/sunny.svg | 0 .../src/assets/icons/svg/swagger.svg | 0 .../{ => idp}/src/assets/icons/svg/switch.svg | 0 .../{ => idp}/src/assets/icons/svg/system.svg | 0 .../{ => idp}/src/assets/icons/svg/tab.svg | 0 .../{ => idp}/src/assets/icons/svg/table.svg | 0 .../src/assets/icons/svg/textarea.svg | 0 .../{ => idp}/src/assets/icons/svg/theme.svg | 0 .../src/assets/icons/svg/time-range.svg | 0 .../{ => idp}/src/assets/icons/svg/time.svg | 0 .../{ => idp}/src/assets/icons/svg/tool.svg | 0 .../src/assets/icons/svg/tree-table.svg | 0 .../{ => idp}/src/assets/icons/svg/tree.svg | 0 .../{ => idp}/src/assets/icons/svg/upload.svg | 0 .../{ => idp}/src/assets/icons/svg/user.svg | 0 .../src/assets/icons/svg/validCode.svg | 0 .../{ => idp}/src/assets/icons/svg/wechat.svg | 0 .../{ => idp}/src/assets/icons/svg/zip.svg | 0 .../{ => idp}/src/assets/images/login.png | Bin .../{ => idp}/src/assets/styles/btn.scss | 0 .../src/assets/styles/element-ui.scss | 0 .../{ => idp}/src/assets/styles/idp.scss | 0 .../{ => idp}/src/assets/styles/index.scss | 0 .../{ => idp}/src/assets/styles/mixin.scss | 0 .../{ => idp}/src/assets/styles/sidebar.scss | 0 .../src/assets/styles/transition.scss | 0 .../src/assets/styles/variables.module.scss | 0 .../{ => idp}/src/components/SvgIcon/index.ts | 0 .../src/components/SvgIcon/index.vue | 0 .../src/components/SvgIcon/svgicon.ts | 0 idp/frontend/{ => idp}/src/main.ts | 0 idp/frontend/{ => idp}/src/router/index.ts | 0 idp/frontend/{ => idp}/src/settings.ts | 0 idp/frontend/{ => idp}/src/stores/auth.ts | 0 idp/frontend/{ => idp}/src/stores/index.ts | 0 idp/frontend/{ => idp}/src/stores/user.ts | 0 .../{ => idp}/src/types/crypto-js.d.ts | 0 idp/frontend/{ => idp}/src/types/index.ts | 0 idp/frontend/{ => idp}/src/utils/auth.ts | 0 idp/frontend/{ => idp}/src/utils/cache.ts | 0 idp/frontend/{ => idp}/src/utils/encryptor.ts | 0 idp/frontend/{ => idp}/src/utils/errorCode.ts | 0 idp/frontend/{ => idp}/src/utils/jsencrypt.ts | 0 idp/frontend/{ => idp}/src/utils/request.ts | 0 idp/frontend/{ => idp}/src/utils/storage.ts | 0 idp/frontend/{ => idp}/src/utils/validate.ts | 0 .../{ => idp}/src/views/LoginPage.vue | 0 .../src/views/login/PasswordLogin.vue | 0 .../{ => idp}/src/views/login/SmsLogin.vue | 0 .../{ => idp}/src/views/login/Sso.vue | 10 +- .../src/views/login/ThirdPartyLogin.vue | 0 idp/frontend/{ => idp}/src/vite-env.d.ts | 0 idp/frontend/{ => idp}/tsconfig.json | 0 idp/frontend/{ => idp}/tsconfig.node.json | 0 idp/frontend/{ => idp}/vite-env.d.ts | 0 idp/frontend/{ => idp}/vite.config.ts | 0 .../{ => idp}/vite/plugins/auto-import.ts | 0 .../{ => idp}/vite/plugins/compression.ts | 0 idp/frontend/{ => idp}/vite/plugins/index.ts | 0 .../{ => idp}/vite/plugins/setup-extend.ts | 0 .../{ => idp}/vite/plugins/svg-icon.ts | 0 pom.xml | 18 + portal/backend/portal/.gitignore | 47 ++ portal/backend/{ => portal}/README.md | 0 portal/backend/{ => portal}/pom.xml | 0 .../backend/{ => portal}/portal-admin/pom.xml | 0 .../org/lingniu/portal/PortalApplication.java | 0 .../portal/PortalServletInitializer.java | 0 .../controller/common/CommonController.java | 0 .../controller/monitor/CacheController.java | 0 .../controller/monitor/ServerController.java | 0 .../monitor/SysLogininforController.java | 0 .../monitor/SysOperlogController.java | 0 .../monitor/SysUserOnlineController.java | 0 .../system/SysConfigController.java | 0 .../controller/system/SysDeptController.java | 0 .../system/SysDictDataController.java | 0 .../system/SysDictTypeController.java | 0 .../controller/system/SysIndexController.java | 0 .../controller/system/SysMenuController.java | 0 .../system/SysNoticeController.java | 0 .../controller/system/SysPostController.java | 0 .../system/SysProfileController.java | 0 .../system/SysRegisterController.java | 0 .../controller/system/SysRoleController.java | 0 .../controller/system/SysUserController.java | 0 .../META-INF/spring-devtools.properties | 0 .../src/main/resources}/application-local.yml | 16 +- .../src/main/resources/application-test.yml | 12 +- .../src/main/resources}/application.yml | 9 +- .../src/main/resources/banner.txt | 0 .../main/resources/i18n/messages.properties | 0 .../src/main/resources}/logback.xml | 2 +- .../main/resources/mybatis/mybatis-config.xml | 0 .../META-INF/spring-devtools.properties | 0 .../target/classes}/application-local.yml | 16 +- .../target/classes/application-test.yml | 12 +- .../target/classes}/application.yml | 7 +- .../portal-admin/target/classes/banner.txt | 0 .../target/classes/i18n/messages.properties | 0 .../portal-admin/target/classes}/logback.xml | 2 +- .../target/classes/mybatis/mybatis-config.xml | 0 .../lingniu/portal/PortalApplication.class | Bin .../portal/PortalServletInitializer.class | Bin .../controller/common/CommonController.class | Bin .../controller/monitor/CacheController.class | Bin .../controller/monitor/ServerController.class | Bin .../monitor/SysLogininforController.class | Bin .../monitor/SysOperlogController.class | Bin .../monitor/SysUserOnlineController.class | Bin .../system/SysConfigController.class | Bin .../controller/system/SysDeptController.class | Bin .../system/SysDictDataController.class | Bin .../system/SysDictTypeController.class | Bin .../system/SysIndexController.class | Bin .../controller/system/SysMenuController.class | Bin .../system/SysNoticeController.class | Bin .../controller/system/SysPostController.class | Bin .../system/SysProfileController.class | Bin .../system/SysRegisterController.class | Bin .../controller/system/SysRoleController.class | Bin .../controller/system/SysUserController.class | Bin .../target/maven-archiver/pom.properties | 2 +- .../compile/default-compile/createdFiles.lst | 0 .../compile/default-compile/inputFiles.lst | 0 .../portal-admin/target/portal-admin.jar | Bin 92383245 -> 92383409 bytes .../target/portal-admin.jar.original | Bin 55794 -> 55958 bytes .../{ => portal}/portal-common/pom.xml | 0 .../portal/common/annotation/Anonymous.java | 0 .../portal/common/annotation/DataScope.java | 0 .../portal/common/annotation/DataSource.java | 0 .../portal/common/annotation/Excel.java | 0 .../portal/common/annotation/Excels.java | 0 .../lingniu/portal/common/annotation/Log.java | 0 .../portal/common/annotation/RateLimiter.java | 0 .../common/annotation/RepeatSubmit.java | 0 .../portal/common/annotation/Sensitive.java | 0 .../portal/common/config/ProjectConfig.java | 0 .../serializer/SensitiveJsonSerializer.java | 0 .../common/constant/CacheConstants.java | 0 .../portal/common/constant/Constants.java | 0 .../portal/common/constant/GenConstants.java | 0 .../portal/common/constant/HttpStatus.java | 0 .../common/constant/ScheduleConstants.java | 0 .../portal/common/constant/UserConstants.java | 0 .../core/controller/BaseController.java | 0 .../portal/common/core/domain/AjaxResult.java | 0 .../portal/common/core/domain/BaseEntity.java | 0 .../lingniu/portal/common/core/domain/R.java | 0 .../portal/common/core/domain/TreeEntity.java | 0 .../portal/common/core/domain/TreeSelect.java | 0 .../common/core/domain/entity/SysDept.java | 0 .../core/domain/entity/SysDictData.java | 0 .../core/domain/entity/SysDictType.java | 0 .../common/core/domain/entity/SysMenu.java | 0 .../common/core/domain/entity/SysRole.java | 0 .../common/core/domain/entity/SysUser.java | 0 .../common/core/domain/model/LoginBody.java | 0 .../common/core/domain/model/LoginUser.java | 0 .../core/domain/model/RegisterBody.java | 0 .../portal/common/core/page/PageDomain.java | 0 .../common/core/page/TableDataInfo.java | 0 .../portal/common/core/page/TableSupport.java | 0 .../portal/common/core/redis/RedisCache.java | 0 .../portal/common/core/text/CharsetKit.java | 0 .../portal/common/core/text/Convert.java | 0 .../portal/common/core/text/StrFormatter.java | 0 .../portal/common/enums/BusinessStatus.java | 0 .../portal/common/enums/BusinessType.java | 0 .../portal/common/enums/DataSourceType.java | 0 .../portal/common/enums/DesensitizedType.java | 0 .../portal/common/enums/HttpMethod.java | 0 .../portal/common/enums/LimitType.java | 0 .../portal/common/enums/OperatorType.java | 0 .../portal/common/enums/UserStatus.java | 0 .../common/exception/DemoModeException.java | 0 .../common/exception/GlobalException.java | 0 .../common/exception/ServiceException.java | 0 .../common/exception/UtilException.java | 0 .../common/exception/base/BaseException.java | 0 .../common/exception/file/FileException.java | 0 .../FileNameLengthLimitExceededException.java | 0 .../file/FileSizeLimitExceededException.java | 0 .../exception/file/FileUploadException.java | 0 .../file/InvalidExtensionException.java | 0 .../common/exception/job/TaskException.java | 0 .../exception/user/BlackListException.java | 0 .../exception/user/CaptchaException.java | 0 .../user/CaptchaExpireException.java | 0 .../common/exception/user/UserException.java | 0 .../user/UserNotExistsException.java | 0 .../user/UserPasswordNotMatchException.java | 0 ...UserPasswordRetryLimitExceedException.java | 0 .../filter/PropertyPreExcludeFilter.java | 0 .../portal/common/filter/RefererFilter.java | 0 .../common/filter/RepeatableFilter.java | 0 .../filter/RepeatedlyRequestWrapper.java | 0 .../portal/common/filter/XssFilter.java | 0 .../filter/XssHttpServletRequestWrapper.java | 0 .../lingniu/portal/common/utils/Arith.java | 0 .../portal/common/utils/DateUtils.java | 0 .../portal/common/utils/DesensitizedUtil.java | 0 .../portal/common/utils/DictUtils.java | 0 .../portal/common/utils/ExceptionUtil.java | 0 .../lingniu/portal/common/utils/LogUtils.java | 0 .../portal/common/utils/MessageUtils.java | 0 .../portal/common/utils/PageUtils.java | 0 .../portal/common/utils/SecurityUtils.java | 0 .../portal/common/utils/ServletUtils.java | 0 .../portal/common/utils/StringUtils.java | 0 .../lingniu/portal/common/utils/Threads.java | 0 .../portal/common/utils/bean/BeanUtils.java | 0 .../common/utils/bean/BeanValidators.java | 0 .../common/utils/file/FileTypeUtils.java | 0 .../common/utils/file/FileUploadUtils.java | 0 .../portal/common/utils/file/FileUtils.java | 0 .../portal/common/utils/file/ImageUtils.java | 0 .../common/utils/file/MimeTypeUtils.java | 0 .../portal/common/utils/html/EscapeUtil.java | 0 .../portal/common/utils/html/HTMLFilter.java | 0 .../portal/common/utils/http/HttpHelper.java | 0 .../portal/common/utils/http/HttpUtils.java | 0 .../common/utils/http/UserAgentUtils.java | 0 .../portal/common/utils/ip/AddressUtils.java | 0 .../portal/common/utils/ip/IpUtils.java | 0 .../common/utils/poi/ExcelHandlerAdapter.java | 0 .../portal/common/utils/poi/ExcelUtil.java | 0 .../common/utils/reflect/ReflectUtils.java | 0 .../portal/common/utils/sign/Base64.java | 0 .../portal/common/utils/sign/Md5Utils.java | 0 .../common/utils/spring/SpringUtils.java | 10 +- .../portal/common/utils/sql/SqlUtil.java | 0 .../portal/common/utils/uuid/IdUtils.java | 0 .../lingniu/portal/common/utils/uuid/Seq.java | 0 .../portal/common/utils/uuid/UUID.java | 0 .../org/lingniu/portal/common/xss/Xss.java | 0 .../portal/common/xss/XssValidator.java | 0 .../portal/common/annotation/Anonymous.class | Bin .../portal/common/annotation/DataScope.class | Bin .../portal/common/annotation/DataSource.class | Bin .../common/annotation/Excel$ColumnType.class | Bin .../portal/common/annotation/Excel$Type.class | Bin .../portal/common/annotation/Excel.class | Bin .../portal/common/annotation/Excels.class | Bin .../portal/common/annotation/Log.class | Bin .../common/annotation/RateLimiter.class | Bin .../common/annotation/RepeatSubmit.class | Bin .../portal/common/annotation/Sensitive.class | Bin .../portal/common/config/ProjectConfig.class | Bin .../serializer/SensitiveJsonSerializer.class | Bin .../common/constant/CacheConstants.class | Bin .../portal/common/constant/Constants.class | Bin .../portal/common/constant/GenConstants.class | Bin .../portal/common/constant/HttpStatus.class | Bin .../constant/ScheduleConstants$Status.class | Bin .../common/constant/ScheduleConstants.class | Bin .../common/constant/UserConstants.class | Bin .../core/controller/BaseController$1.class | Bin .../core/controller/BaseController.class | Bin .../common/core/domain/AjaxResult.class | Bin .../common/core/domain/BaseEntity.class | Bin .../lingniu/portal/common/core/domain/R.class | Bin .../common/core/domain/TreeEntity.class | Bin .../common/core/domain/TreeSelect.class | Bin .../common/core/domain/entity/SysDept.class | Bin .../core/domain/entity/SysDictData.class | Bin .../core/domain/entity/SysDictType.class | Bin .../common/core/domain/entity/SysMenu.class | Bin .../common/core/domain/entity/SysRole.class | Bin .../common/core/domain/entity/SysUser.class | Bin .../common/core/domain/model/LoginBody.class | Bin .../common/core/domain/model/LoginUser.class | Bin .../core/domain/model/RegisterBody.class | Bin .../portal/common/core/page/PageDomain.class | Bin .../common/core/page/TableDataInfo.class | Bin .../common/core/page/TableSupport.class | Bin .../portal/common/core/redis/RedisCache.class | Bin .../portal/common/core/text/CharsetKit.class | Bin .../portal/common/core/text/Convert.class | Bin .../common/core/text/StrFormatter.class | Bin .../portal/common/enums/BusinessStatus.class | Bin .../portal/common/enums/BusinessType.class | Bin .../portal/common/enums/DataSourceType.class | Bin .../common/enums/DesensitizedType.class | Bin .../portal/common/enums/HttpMethod.class | Bin .../portal/common/enums/LimitType.class | Bin .../portal/common/enums/OperatorType.class | Bin .../portal/common/enums/UserStatus.class | Bin .../common/exception/DemoModeException.class | Bin .../common/exception/GlobalException.class | Bin .../common/exception/ServiceException.class | Bin .../common/exception/UtilException.class | Bin .../common/exception/base/BaseException.class | Bin .../common/exception/file/FileException.class | Bin ...FileNameLengthLimitExceededException.class | Bin .../file/FileSizeLimitExceededException.class | Bin .../exception/file/FileUploadException.class | Bin ...ption$InvalidFlashExtensionException.class | Bin ...ption$InvalidImageExtensionException.class | Bin ...ption$InvalidMediaExtensionException.class | Bin ...ption$InvalidVideoExtensionException.class | Bin .../file/InvalidExtensionException.class | Bin .../exception/job/TaskException$Code.class | Bin .../common/exception/job/TaskException.class | Bin .../exception/user/BlackListException.class | Bin .../exception/user/CaptchaException.class | Bin .../user/CaptchaExpireException.class | Bin .../common/exception/user/UserException.class | Bin .../user/UserNotExistsException.class | Bin .../user/UserPasswordNotMatchException.class | Bin ...serPasswordRetryLimitExceedException.class | Bin .../filter/PropertyPreExcludeFilter.class | Bin .../portal/common/filter/RefererFilter.class | Bin .../common/filter/RepeatableFilter.class | Bin .../filter/RepeatedlyRequestWrapper$1.class | Bin .../filter/RepeatedlyRequestWrapper.class | Bin .../portal/common/filter/XssFilter.class | Bin .../XssHttpServletRequestWrapper$1.class | Bin .../filter/XssHttpServletRequestWrapper.class | Bin .../lingniu/portal/common/utils/Arith.class | Bin .../portal/common/utils/DateUtils.class | Bin .../common/utils/DesensitizedUtil.class | Bin .../portal/common/utils/DictUtils.class | Bin .../portal/common/utils/ExceptionUtil.class | Bin .../portal/common/utils/LogUtils.class | Bin .../portal/common/utils/MessageUtils.class | Bin .../portal/common/utils/PageUtils.class | Bin .../portal/common/utils/SecurityUtils.class | Bin .../portal/common/utils/ServletUtils.class | Bin .../portal/common/utils/StringUtils.class | Bin .../lingniu/portal/common/utils/Threads.class | Bin .../portal/common/utils/bean/BeanUtils.class | Bin .../common/utils/bean/BeanValidators.class | Bin .../common/utils/file/FileTypeUtils.class | Bin .../common/utils/file/FileUploadUtils.class | Bin .../portal/common/utils/file/FileUtils.class | Bin .../portal/common/utils/file/ImageUtils.class | Bin .../common/utils/file/MimeTypeUtils.class | Bin .../portal/common/utils/html/EscapeUtil.class | Bin .../portal/common/utils/html/HTMLFilter.class | Bin .../portal/common/utils/http/HttpHelper.class | Bin .../HttpUtils$TrustAnyHostnameVerifier.class | Bin .../http/HttpUtils$TrustAnyTrustManager.class | Bin .../portal/common/utils/http/HttpUtils.class | Bin .../common/utils/http/UserAgentUtils.class | Bin .../portal/common/utils/ip/AddressUtils.class | Bin .../portal/common/utils/ip/IpUtils.class | Bin .../utils/poi/ExcelHandlerAdapter.class | Bin .../portal/common/utils/poi/ExcelUtil.class | Bin .../common/utils/reflect/ReflectUtils.class | Bin .../portal/common/utils/sign/Base64.class | Bin .../portal/common/utils/sign/Md5Utils.class | Bin .../common/utils/spring/SpringUtils.class | Bin .../portal/common/utils/sql/SqlUtil.class | Bin .../portal/common/utils/uuid/IdUtils.class | Bin .../portal/common/utils/uuid/Seq.class | Bin .../common/utils/uuid/UUID$Holder.class | Bin .../portal/common/utils/uuid/UUID.class | Bin .../org/lingniu/portal/common/xss/Xss.class | Bin .../portal/common/xss/XssValidator.class | Bin .../target/maven-archiver/pom.properties | 2 +- .../compile/default-compile/createdFiles.lst | 0 .../compile/default-compile/inputFiles.lst | 0 .../target/portal-common-1.0.0.jar | Bin 207767 -> 207767 bytes .../{ => portal}/portal-framework/pom.xml | 0 .../framework/aspectj/DataScopeAspect.java | 0 .../framework/aspectj/DataSourceAspect.java | 0 .../portal/framework/aspectj/LogAspect.java | 0 .../framework/aspectj/RateLimiterAspect.java | 0 .../framework/config/ApplicationConfig.java | 0 .../framework/config/CaptchaConfig.java | 0 .../portal/framework/config/DruidConfig.java | 0 .../config/FastJson2JsonRedisSerializer.java | 0 .../portal/framework/config/FilterConfig.java | 0 .../portal/framework/config/I18nConfig.java | 0 .../framework/config/KaptchaTextCreator.java | 0 .../framework/config/MyBatisConfig.java | 0 .../portal/framework/config/RedisConfig.java | 0 .../framework/config/ResourcesConfig.java | 0 .../framework/config/SecurityConfig.java | 2 +- .../portal/framework/config/ServerConfig.java | 0 .../framework/config/ThreadPoolConfig.java | 0 .../config/properties/DruidProperties.java | 0 .../properties/PermitAllUrlProperties.java | 0 .../datasource/DynamicDataSource.java | 0 .../DynamicDataSourceContextHolder.java | 0 .../interceptor/RepeatSubmitInterceptor.java | 0 .../impl/SameUrlDataInterceptor.java | 0 .../framework/manager/AsyncManager.java | 0 .../framework/manager/ShutdownManager.java | 0 .../manager/factory/AsyncFactory.java | 0 .../context/AuthenticationContextHolder.java | 0 .../context/PermissionContextHolder.java | 0 .../portal/framework/web/domain/Server.java | 0 .../framework/web/domain/server/Cpu.java | 0 .../framework/web/domain/server/Jvm.java | 0 .../framework/web/domain/server/Mem.java | 0 .../framework/web/domain/server/Sys.java | 0 .../framework/web/domain/server/SysFile.java | 0 .../web/exception/GlobalExceptionHandler.java | 0 .../web/service/SysPasswordService.java | 0 .../web/service/SysPermissionService.java | 0 .../web/service/SysRegisterService.java | 0 .../web/service/UserDetailsServiceImpl.java | 0 .../framework/aspectj/DataScopeAspect.class | Bin .../framework/aspectj/DataSourceAspect.class | Bin .../portal/framework/aspectj/LogAspect.class | Bin .../framework/aspectj/RateLimiterAspect.class | Bin .../framework/config/ApplicationConfig.class | Bin .../framework/config/CaptchaConfig.class | Bin .../framework/config/DruidConfig$1.class | Bin .../portal/framework/config/DruidConfig.class | Bin .../config/FastJson2JsonRedisSerializer.class | Bin .../framework/config/FilterConfig.class | Bin .../portal/framework/config/I18nConfig.class | Bin .../framework/config/KaptchaTextCreator.class | Bin .../framework/config/MyBatisConfig.class | Bin .../portal/framework/config/RedisConfig.class | Bin .../framework/config/ResourcesConfig.class | Bin .../framework/config/ServerConfig.class | Bin .../framework/config/ThreadPoolConfig$1.class | Bin .../framework/config/ThreadPoolConfig.class | Bin .../config/properties/DruidProperties.class | Bin .../properties/PermitAllUrlProperties.class | Bin .../datasource/DynamicDataSource.class | Bin .../DynamicDataSourceContextHolder.class | Bin .../interceptor/RepeatSubmitInterceptor.class | Bin .../impl/SameUrlDataInterceptor.class | Bin .../framework/manager/AsyncManager.class | Bin .../framework/manager/ShutdownManager.class | Bin .../manager/factory/AsyncFactory$1.class | Bin .../manager/factory/AsyncFactory$2.class | Bin .../manager/factory/AsyncFactory.class | Bin .../context/AuthenticationContextHolder.class | Bin .../context/PermissionContextHolder.class | Bin .../portal/framework/web/domain/Server.class | Bin .../framework/web/domain/server/Cpu.class | Bin .../framework/web/domain/server/Jvm.class | Bin .../framework/web/domain/server/Mem.class | Bin .../framework/web/domain/server/Sys.class | Bin .../framework/web/domain/server/SysFile.class | Bin .../exception/GlobalExceptionHandler.class | Bin .../web/service/SysPasswordService.class | Bin .../web/service/SysPermissionService.class | Bin .../web/service/SysRegisterService.class | Bin .../web/service/UserDetailsServiceImpl.class | Bin .../target/maven-archiver/pom.properties | 2 +- .../compile/default-compile/createdFiles.lst | 0 .../compile/default-compile/inputFiles.lst | 0 .../target/portal-framework-1.0.0.jar | Bin 72639 -> 72638 bytes .../{ => portal}/portal-system/pom.xml | 0 .../portal/system/domain/SysCache.java | 0 .../portal/system/domain/SysConfig.java | 0 .../portal/system/domain/SysLogininfor.java | 0 .../portal/system/domain/SysNotice.java | 0 .../portal/system/domain/SysOperLog.java | 0 .../lingniu/portal/system/domain/SysPost.java | 0 .../portal/system/domain/SysRoleDept.java | 0 .../portal/system/domain/SysRoleMenu.java | 0 .../portal/system/domain/SysUserOnline.java | 0 .../portal/system/domain/SysUserPost.java | 0 .../portal/system/domain/SysUserRole.java | 0 .../portal/system/domain/vo/MetaVo.java | 0 .../portal/system/domain/vo/RouterVo.java | 0 .../portal/system/mapper/SysConfigMapper.java | 0 .../portal/system/mapper/SysDeptMapper.java | 0 .../system/mapper/SysDictDataMapper.java | 0 .../system/mapper/SysDictTypeMapper.java | 0 .../system/mapper/SysLogininforMapper.java | 0 .../portal/system/mapper/SysMenuMapper.java | 0 .../portal/system/mapper/SysNoticeMapper.java | 0 .../system/mapper/SysOperLogMapper.java | 0 .../portal/system/mapper/SysPostMapper.java | 0 .../system/mapper/SysRoleDeptMapper.java | 0 .../portal/system/mapper/SysRoleMapper.java | 0 .../system/mapper/SysRoleMenuMapper.java | 0 .../portal/system/mapper/SysUserMapper.java | 0 .../system/mapper/SysUserPostMapper.java | 0 .../system/mapper/SysUserRoleMapper.java | 0 .../system/service/ISysConfigService.java | 0 .../system/service/ISysDeptService.java | 0 .../system/service/ISysDictDataService.java | 0 .../system/service/ISysDictTypeService.java | 0 .../system/service/ISysLogininforService.java | 0 .../system/service/ISysMenuService.java | 0 .../system/service/ISysNoticeService.java | 0 .../system/service/ISysOperLogService.java | 0 .../system/service/ISysPostService.java | 0 .../system/service/ISysRoleService.java | 0 .../system/service/ISysUserOnlineService.java | 0 .../system/service/ISysUserService.java | 0 .../service/impl/SysConfigServiceImpl.java | 0 .../service/impl/SysDeptServiceImpl.java | 0 .../service/impl/SysDictDataServiceImpl.java | 0 .../service/impl/SysDictTypeServiceImpl.java | 0 .../impl/SysLogininforServiceImpl.java | 0 .../service/impl/SysMenuServiceImpl.java | 0 .../service/impl/SysNoticeServiceImpl.java | 0 .../service/impl/SysOperLogServiceImpl.java | 0 .../service/impl/SysPostServiceImpl.java | 0 .../service/impl/SysRoleServiceImpl.java | 0 .../impl/SysUserOnlineServiceImpl.java | 0 .../service/impl/SysUserServiceImpl.java | 0 .../mapper/system/SysConfigMapper.xml | 0 .../resources/mapper/system/SysDeptMapper.xml | 0 .../mapper/system/SysDictDataMapper.xml | 0 .../mapper/system/SysDictTypeMapper.xml | 0 .../mapper/system/SysLogininforMapper.xml | 0 .../resources/mapper/system/SysMenuMapper.xml | 0 .../mapper/system/SysNoticeMapper.xml | 0 .../mapper/system/SysOperLogMapper.xml | 0 .../resources/mapper/system/SysPostMapper.xml | 0 .../mapper/system/SysRoleDeptMapper.xml | 0 .../resources/mapper/system/SysRoleMapper.xml | 0 .../mapper/system/SysRoleMenuMapper.xml | 0 .../resources/mapper/system/SysUserMapper.xml | 0 .../mapper/system/SysUserPostMapper.xml | 0 .../mapper/system/SysUserRoleMapper.xml | 0 .../classes/mapper/system/SysConfigMapper.xml | 0 .../classes/mapper/system/SysDeptMapper.xml | 0 .../mapper/system/SysDictDataMapper.xml | 0 .../mapper/system/SysDictTypeMapper.xml | 0 .../mapper/system/SysLogininforMapper.xml | 0 .../classes/mapper/system/SysMenuMapper.xml | 0 .../classes/mapper/system/SysNoticeMapper.xml | 0 .../mapper/system/SysOperLogMapper.xml | 0 .../classes/mapper/system/SysPostMapper.xml | 0 .../mapper/system/SysRoleDeptMapper.xml | 0 .../classes/mapper/system/SysRoleMapper.xml | 0 .../mapper/system/SysRoleMenuMapper.xml | 0 .../classes/mapper/system/SysUserMapper.xml | 0 .../mapper/system/SysUserPostMapper.xml | 0 .../mapper/system/SysUserRoleMapper.xml | 0 .../portal/system/domain/SysCache.class | Bin .../portal/system/domain/SysConfig.class | Bin .../portal/system/domain/SysLogininfor.class | Bin .../portal/system/domain/SysNotice.class | Bin .../portal/system/domain/SysOperLog.class | Bin .../portal/system/domain/SysPost.class | Bin .../portal/system/domain/SysRoleDept.class | Bin .../portal/system/domain/SysRoleMenu.class | Bin .../portal/system/domain/SysUserOnline.class | Bin .../portal/system/domain/SysUserPost.class | Bin .../portal/system/domain/SysUserRole.class | Bin .../portal/system/domain/vo/MetaVo.class | Bin .../portal/system/domain/vo/RouterVo.class | Bin .../system/mapper/SysConfigMapper.class | Bin .../portal/system/mapper/SysDeptMapper.class | Bin .../system/mapper/SysDictDataMapper.class | Bin .../system/mapper/SysDictTypeMapper.class | Bin .../system/mapper/SysLogininforMapper.class | Bin .../portal/system/mapper/SysMenuMapper.class | Bin .../system/mapper/SysNoticeMapper.class | Bin .../system/mapper/SysOperLogMapper.class | Bin .../portal/system/mapper/SysPostMapper.class | Bin .../system/mapper/SysRoleDeptMapper.class | Bin .../portal/system/mapper/SysRoleMapper.class | Bin .../system/mapper/SysRoleMenuMapper.class | Bin .../portal/system/mapper/SysUserMapper.class | Bin .../system/mapper/SysUserPostMapper.class | Bin .../system/mapper/SysUserRoleMapper.class | Bin .../system/service/ISysConfigService.class | Bin .../system/service/ISysDeptService.class | Bin .../system/service/ISysDictDataService.class | Bin .../system/service/ISysDictTypeService.class | Bin .../service/ISysLogininforService.class | Bin .../system/service/ISysMenuService.class | Bin .../system/service/ISysNoticeService.class | Bin .../system/service/ISysOperLogService.class | Bin .../system/service/ISysPostService.class | Bin .../system/service/ISysRoleService.class | Bin .../service/ISysUserOnlineService.class | Bin .../system/service/ISysUserService.class | Bin .../service/impl/SysConfigServiceImpl.class | Bin .../service/impl/SysDeptServiceImpl.class | Bin .../service/impl/SysDictDataServiceImpl.class | Bin .../service/impl/SysDictTypeServiceImpl.class | Bin .../impl/SysLogininforServiceImpl.class | Bin .../service/impl/SysMenuServiceImpl.class | Bin .../service/impl/SysNoticeServiceImpl.class | Bin .../service/impl/SysOperLogServiceImpl.class | Bin .../service/impl/SysPostServiceImpl.class | Bin .../service/impl/SysRoleServiceImpl.class | Bin .../impl/SysUserOnlineServiceImpl.class | Bin .../service/impl/SysUserServiceImpl.class | Bin .../target/maven-archiver/pom.properties | 2 +- .../compile/default-compile/createdFiles.lst | 0 .../compile/default-compile/inputFiles.lst | 0 .../target/portal-system-1.0.0.jar | Bin 89611 -> 89612 bytes portal/frontend/portal/.env.development | 15 +- portal/frontend/portal/README.md | 25 - portal/frontend/portal/src/permission.ts | 21 +- portal/frontend/portal/src/router/index.ts | 2 +- portal/frontend/portal/vite.config.ts | 14 +- sdk/backend/oauth2-login-sdk/.gitignore | 60 ++ sdk/backend/oauth2-login-sdk/pom.xml | 2 +- .../sdk/model/token/AccessTokenInfo.java | 2 +- sdk/frontend/oauth2-login-sdk/README.md | 70 -- .../oauth2-login-sdk/src/core/http.ts | 370 ---------- .../oauth2-login-sdk/src/core/token.ts | 45 -- .../oauth2-login-sdk/src/guards/router.ts | 130 ---- sdk/frontend/oauth2-login-sdk/src/index.ts | 94 --- sdk/frontend/unified-login-sdk/.gitignore | 60 ++ sdk/frontend/unified-login-sdk/README.md | 119 ++++ .../dist/core/auth.d.ts | 0 .../dist/core/auth.d.ts.map | 0 .../dist/core/auth.js | 0 .../dist/core/auth.js.map | 0 .../dist/core/http.d.ts | 0 .../dist/core/http.d.ts.map | 0 .../dist/core/http.js | 0 .../dist/core/http.js.map | 0 .../dist/core/token.d.ts | 0 .../dist/core/token.d.ts.map | 0 .../dist/core/token.js | 0 .../dist/core/token.js.map | 0 .../dist/guards/router.d.ts | 0 .../dist/guards/router.d.ts.map | 0 .../dist/guards/router.js | 0 .../dist/guards/router.js.map | 0 .../dist/index.d.ts | 0 .../dist/index.d.ts.map | 0 .../dist/index.esm.js | 0 .../dist/index.esm.js.map | 0 .../dist/index.js | 0 .../dist/index.js.map | 0 .../dist/plugins/vue.d.ts | 0 .../dist/plugins/vue.d.ts.map | 0 .../dist/plugins/vue.js | 0 .../dist/plugins/vue.js.map | 0 .../dist/types/config.d.ts | 0 .../dist/types/config.d.ts.map | 0 .../dist/types/config.js | 0 .../dist/types/config.js.map | 0 .../dist/types/index.d.ts | 0 .../dist/types/index.d.ts.map | 0 .../dist/types/index.js | 0 .../dist/types/index.js.map | 0 .../dist/types/user.d.ts | 0 .../dist/types/user.d.ts.map | 0 .../dist/types/user.js | 0 .../dist/types/user.js.map | 0 .../dist/utils/storage.d.ts | 0 .../dist/utils/storage.d.ts.map | 0 .../dist/utils/storage.js | 0 .../dist/utils/storage.js.map | 0 .../dist/utils/url.d.ts | 0 .../dist/utils/url.d.ts.map | 0 .../dist/utils/url.js | 0 .../dist/utils/url.js.map | 0 .../package.json | 2 +- .../pnpm-lock.yaml | 0 .../rollup.config.js | 0 .../src/core/auth.ts | 120 +++- .../src/core/http.examples.ts | 287 ++++++++ .../unified-login-sdk/src/core/http.test.ts | 136 ++++ .../unified-login-sdk/src/core/http.ts | 655 ++++++++++++++++++ .../unified-login-sdk/src/core/token.ts | 92 +++ .../src/guards/router.examples.ts | 281 ++++++++ .../src/guards/router.test.ts | 358 ++++++++++ .../unified-login-sdk/src/guards/router.ts | 311 +++++++++ sdk/frontend/unified-login-sdk/src/index.ts | 108 +++ .../unified-login-sdk/src/plugins/vue.test.ts | 260 +++++++ .../src/plugins/vue.ts | 74 +- .../src/types/config.ts | 18 - .../src/types/index.ts | 8 +- .../src/types/user.ts | 0 .../src/utils/storage.ts | 0 .../src/utils/url.ts | 0 .../tsconfig.json | 0 812 files changed, 5138 insertions(+), 1979 deletions(-) create mode 100644 .idea/compiler.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/jarRepositories.xml delete mode 100644 .idea/lingniu-platform.iml delete mode 100644 .idea/modules.xml rename demo/backend/{ => demo}/.gitattributes (100%) rename demo/backend/{ => demo}/.gitignore (100%) rename demo/backend/{ => demo}/pom.xml (100%) rename demo/backend/{src/main/java/com => demo/src/main/java/org/lingniu}/example/demo/DemoApplication.java (90%) rename demo/backend/{src/main/java/com/example/demo/Controller/UserController.java => demo/src/main/java/org/lingniu/example/demo/controller/DemoController.java} (63%) rename demo/backend/{src/main/java/com => demo/src/main/java/org/lingniu}/example/demo/test.http (98%) create mode 100644 demo/backend/demo/src/main/java/org/lingniu/example/demo/test2.http rename demo/backend/{src/main/resources/application.yml => demo/src/main/resources/application-dev.yml} (100%) create mode 100644 demo/backend/demo/src/main/resources/application-test.yml create mode 100644 demo/backend/demo/src/main/resources/application.yml rename demo/backend/{src/test/java/com => demo/src/test/java/org/lingniu}/example/demo/DemoApplicationTests.java (84%) delete mode 100644 demo/backend/mvnw delete mode 100644 demo/backend/mvnw.cmd delete mode 100644 demo/frontend/README.md create mode 100644 demo/frontend/demo/demo-sdk/.env.development create mode 100644 demo/frontend/demo/demo-sdk/.env.production rename demo/frontend/{ => demo/demo-sdk}/.gitignore (100%) create mode 100644 demo/frontend/demo/demo-sdk/README.md rename demo/frontend/{ => demo/demo-sdk}/index.html (100%) rename demo/frontend/{ => demo/demo-sdk}/package.json (91%) rename demo/frontend/{ => demo/demo-sdk}/pnpm-lock.yaml (97%) rename demo/frontend/{ => demo/demo-sdk}/pnpm-workspace.yaml (100%) rename demo/frontend/{ => demo/demo-sdk}/public/vite.svg (100%) create mode 100644 demo/frontend/demo/demo-sdk/src/App.vue rename demo/frontend/{ => demo/demo-sdk}/src/assets/vue.svg (100%) create mode 100644 demo/frontend/demo/demo-sdk/src/components/EChartsReport.vue create mode 100644 demo/frontend/demo/demo-sdk/src/main.ts create mode 100644 demo/frontend/demo/demo-sdk/src/router/index.ts rename demo/frontend/{ => demo/demo-sdk}/src/style.css (100%) create mode 100644 demo/frontend/demo/demo-sdk/src/views/Callback.vue create mode 100644 demo/frontend/demo/demo-sdk/src/views/Dashboard.vue create mode 100644 demo/frontend/demo/demo-sdk/src/views/Profile.vue rename demo/frontend/{ => demo/demo-sdk}/tsconfig.app.json (100%) rename demo/frontend/{ => demo/demo-sdk}/tsconfig.json (100%) rename demo/frontend/{ => demo/demo-sdk}/tsconfig.node.json (100%) rename demo/frontend/{ => demo/demo-sdk}/vite.config.ts (90%) delete mode 100644 demo/frontend/src/App.vue delete mode 100644 demo/frontend/src/components/Home.vue delete mode 100644 demo/frontend/src/main.ts delete mode 100644 demo/frontend/src/router/index.ts delete mode 100644 idp/backend/idp-starter/.gitattributes delete mode 100644 idp/backend/idp-starter/mvnw delete mode 100644 idp/backend/idp-starter/mvnw.cmd rename idp/backend/idp-starter/src/main/resources/{application-local.yml => application-dev.yml} (99%) rename idp/frontend/{ => idp}/.env.development (71%) rename idp/frontend/{ => idp}/.env.production (100%) rename idp/frontend/{ => idp}/.env.staging (100%) rename idp/frontend/{ => idp}/README.md (100%) rename idp/frontend/{ => idp}/crypto-js.d.ts (100%) rename idp/frontend/{ => idp}/index.html (100%) rename idp/frontend/{ => idp}/package.json (100%) rename idp/frontend/{ => idp}/pnpm-lock.yaml (100%) rename idp/frontend/{ => idp}/src/App.vue (100%) rename idp/frontend/{ => idp}/src/api/login.ts (100%) rename idp/frontend/{ => idp}/src/assets/401_images/401.gif (100%) rename idp/frontend/{ => idp}/src/assets/404_images/404.png (100%) rename idp/frontend/{ => idp}/src/assets/404_images/404_cloud.png (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/404.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/bug.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/build.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/button.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/cascader.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/chart.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/checkbox.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/clipboard.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/code.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/color.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/component.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/dashboard.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/date-range.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/date.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/dict.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/documentation.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/download.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/drag.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/druid.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/edit.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/education.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/email.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/enter.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/example.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/excel.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/exit-fullscreen.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/eye-open.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/eye.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/form.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/fullscreen.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/github.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/guide.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/icon.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/input.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/international.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/job.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/language.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/link.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/list.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/lock.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/log.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/logininfor.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/message.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/money.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/monitor.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/moon.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/more-up.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/nested.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/number.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/online.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/password.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/pdf.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/people.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/peoples.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/phone.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/post.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/qq.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/question.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/radio.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/rate.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/redis-list.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/redis.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/row.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/search.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/select.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/server.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/shopping.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/size.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/skill.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/slider.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/star.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/sunny.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/swagger.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/switch.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/system.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/tab.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/table.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/textarea.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/theme.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/time-range.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/time.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/tool.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/tree-table.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/tree.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/upload.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/user.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/validCode.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/wechat.svg (100%) rename idp/frontend/{ => idp}/src/assets/icons/svg/zip.svg (100%) rename idp/frontend/{ => idp}/src/assets/images/login.png (100%) rename idp/frontend/{ => idp}/src/assets/styles/btn.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/element-ui.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/idp.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/index.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/mixin.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/sidebar.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/transition.scss (100%) rename idp/frontend/{ => idp}/src/assets/styles/variables.module.scss (100%) rename idp/frontend/{ => idp}/src/components/SvgIcon/index.ts (100%) rename idp/frontend/{ => idp}/src/components/SvgIcon/index.vue (100%) rename idp/frontend/{ => idp}/src/components/SvgIcon/svgicon.ts (100%) rename idp/frontend/{ => idp}/src/main.ts (100%) rename idp/frontend/{ => idp}/src/router/index.ts (100%) rename idp/frontend/{ => idp}/src/settings.ts (100%) rename idp/frontend/{ => idp}/src/stores/auth.ts (100%) rename idp/frontend/{ => idp}/src/stores/index.ts (100%) rename idp/frontend/{ => idp}/src/stores/user.ts (100%) rename idp/frontend/{ => idp}/src/types/crypto-js.d.ts (100%) rename idp/frontend/{ => idp}/src/types/index.ts (100%) rename idp/frontend/{ => idp}/src/utils/auth.ts (100%) rename idp/frontend/{ => idp}/src/utils/cache.ts (100%) rename idp/frontend/{ => idp}/src/utils/encryptor.ts (100%) rename idp/frontend/{ => idp}/src/utils/errorCode.ts (100%) rename idp/frontend/{ => idp}/src/utils/jsencrypt.ts (100%) rename idp/frontend/{ => idp}/src/utils/request.ts (100%) rename idp/frontend/{ => idp}/src/utils/storage.ts (100%) rename idp/frontend/{ => idp}/src/utils/validate.ts (100%) rename idp/frontend/{ => idp}/src/views/LoginPage.vue (100%) rename idp/frontend/{ => idp}/src/views/login/PasswordLogin.vue (100%) rename idp/frontend/{ => idp}/src/views/login/SmsLogin.vue (100%) rename idp/frontend/{ => idp}/src/views/login/Sso.vue (90%) rename idp/frontend/{ => idp}/src/views/login/ThirdPartyLogin.vue (100%) rename idp/frontend/{ => idp}/src/vite-env.d.ts (100%) rename idp/frontend/{ => idp}/tsconfig.json (100%) rename idp/frontend/{ => idp}/tsconfig.node.json (100%) rename idp/frontend/{ => idp}/vite-env.d.ts (100%) rename idp/frontend/{ => idp}/vite.config.ts (100%) rename idp/frontend/{ => idp}/vite/plugins/auto-import.ts (100%) rename idp/frontend/{ => idp}/vite/plugins/compression.ts (100%) rename idp/frontend/{ => idp}/vite/plugins/index.ts (100%) rename idp/frontend/{ => idp}/vite/plugins/setup-extend.ts (100%) rename idp/frontend/{ => idp}/vite/plugins/svg-icon.ts (100%) create mode 100644 pom.xml create mode 100644 portal/backend/portal/.gitignore rename portal/backend/{ => portal}/README.md (100%) rename portal/backend/{ => portal}/pom.xml (100%) rename portal/backend/{ => portal}/portal-admin/pom.xml (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/PortalApplication.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/PortalServletInitializer.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/common/CommonController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/monitor/CacheController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/monitor/ServerController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/monitor/SysLogininforController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/monitor/SysOperlogController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/monitor/SysUserOnlineController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysConfigController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysDeptController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysDictDataController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysDictTypeController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysIndexController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysMenuController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysNoticeController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysPostController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysProfileController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysRegisterController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysRoleController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/java/org/lingniu/portal/web/controller/system/SysUserController.java (100%) rename portal/backend/{ => portal}/portal-admin/src/main/resources/META-INF/spring-devtools.properties (100%) rename portal/backend/{portal-admin/target/classes => portal/portal-admin/src/main/resources}/application-local.yml (79%) rename portal/backend/{ => portal}/portal-admin/src/main/resources/application-test.yml (84%) rename portal/backend/{portal-admin/target/classes => portal/portal-admin/src/main/resources}/application.yml (95%) rename portal/backend/{ => portal}/portal-admin/src/main/resources/banner.txt (100%) rename portal/backend/{ => portal}/portal-admin/src/main/resources/i18n/messages.properties (100%) rename portal/backend/{portal-admin/target/classes => portal/portal-admin/src/main/resources}/logback.xml (99%) rename portal/backend/{ => portal}/portal-admin/src/main/resources/mybatis/mybatis-config.xml (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/META-INF/spring-devtools.properties (100%) rename portal/backend/{portal-admin/src/main/resources => portal/portal-admin/target/classes}/application-local.yml (79%) rename portal/backend/{ => portal}/portal-admin/target/classes/application-test.yml (84%) rename portal/backend/{portal-admin/src/main/resources => portal/portal-admin/target/classes}/application.yml (96%) rename portal/backend/{ => portal}/portal-admin/target/classes/banner.txt (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/i18n/messages.properties (100%) rename portal/backend/{portal-admin/src/main/resources => portal/portal-admin/target/classes}/logback.xml (99%) rename portal/backend/{ => portal}/portal-admin/target/classes/mybatis/mybatis-config.xml (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/PortalApplication.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/PortalServletInitializer.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/common/CommonController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/monitor/CacheController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/monitor/ServerController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/monitor/SysLogininforController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/monitor/SysOperlogController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/monitor/SysUserOnlineController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysConfigController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysDeptController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysDictDataController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysDictTypeController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysIndexController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysMenuController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysNoticeController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysPostController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysProfileController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysRegisterController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysRoleController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/classes/org/lingniu/portal/web/controller/system/SysUserController.class (100%) rename portal/backend/{ => portal}/portal-admin/target/maven-archiver/pom.properties (72%) rename portal/backend/{ => portal}/portal-admin/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst (100%) rename portal/backend/{ => portal}/portal-admin/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst (100%) rename portal/backend/{ => portal}/portal-admin/target/portal-admin.jar (99%) rename portal/backend/{ => portal}/portal-admin/target/portal-admin.jar.original (80%) rename portal/backend/{ => portal}/portal-common/pom.xml (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/Anonymous.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/DataScope.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/DataSource.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/Excel.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/Excels.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/Log.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/RateLimiter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/RepeatSubmit.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/annotation/Sensitive.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/config/ProjectConfig.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/config/serializer/SensitiveJsonSerializer.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/constant/CacheConstants.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/constant/Constants.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/constant/GenConstants.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/constant/HttpStatus.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/constant/ScheduleConstants.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/constant/UserConstants.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/controller/BaseController.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/AjaxResult.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/BaseEntity.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/R.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/TreeEntity.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/TreeSelect.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/entity/SysDept.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/entity/SysDictData.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/entity/SysDictType.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/entity/SysMenu.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/entity/SysRole.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/entity/SysUser.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/model/LoginBody.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/model/LoginUser.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/domain/model/RegisterBody.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/page/PageDomain.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/page/TableDataInfo.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/page/TableSupport.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/redis/RedisCache.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/text/CharsetKit.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/text/Convert.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/core/text/StrFormatter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/BusinessStatus.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/BusinessType.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/DataSourceType.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/DesensitizedType.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/HttpMethod.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/LimitType.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/OperatorType.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/enums/UserStatus.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/DemoModeException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/GlobalException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/ServiceException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/UtilException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/base/BaseException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/file/FileException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/file/FileNameLengthLimitExceededException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/file/FileSizeLimitExceededException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/file/FileUploadException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/file/InvalidExtensionException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/job/TaskException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/BlackListException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/CaptchaException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/CaptchaExpireException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/UserException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/UserNotExistsException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/UserPasswordNotMatchException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/exception/user/UserPasswordRetryLimitExceedException.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/filter/PropertyPreExcludeFilter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/filter/RefererFilter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/filter/RepeatableFilter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/filter/RepeatedlyRequestWrapper.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/filter/XssFilter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/filter/XssHttpServletRequestWrapper.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/Arith.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/DateUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/DesensitizedUtil.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/DictUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/ExceptionUtil.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/LogUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/MessageUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/PageUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/SecurityUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/ServletUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/StringUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/Threads.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/bean/BeanUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/bean/BeanValidators.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/file/FileTypeUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/file/FileUploadUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/file/FileUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/file/ImageUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/file/MimeTypeUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/html/EscapeUtil.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/html/HTMLFilter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/http/HttpHelper.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/http/HttpUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/http/UserAgentUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/ip/AddressUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/ip/IpUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/poi/ExcelHandlerAdapter.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/poi/ExcelUtil.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/reflect/ReflectUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/sign/Base64.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/sign/Md5Utils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/spring/SpringUtils.java (92%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/sql/SqlUtil.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/uuid/IdUtils.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/uuid/Seq.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/utils/uuid/UUID.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/xss/Xss.java (100%) rename portal/backend/{ => portal}/portal-common/src/main/java/org/lingniu/portal/common/xss/XssValidator.java (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Anonymous.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/DataScope.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/DataSource.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Excel$ColumnType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Excel$Type.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Excel.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Excels.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Log.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/RateLimiter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/RepeatSubmit.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/annotation/Sensitive.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/config/ProjectConfig.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/config/serializer/SensitiveJsonSerializer.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/CacheConstants.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/Constants.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/GenConstants.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/HttpStatus.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/ScheduleConstants$Status.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/ScheduleConstants.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/constant/UserConstants.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/controller/BaseController$1.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/controller/BaseController.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/AjaxResult.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/BaseEntity.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/R.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/TreeEntity.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/TreeSelect.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/entity/SysDept.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/entity/SysDictData.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/entity/SysDictType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/entity/SysMenu.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/entity/SysRole.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/entity/SysUser.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/model/LoginBody.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/model/LoginUser.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/domain/model/RegisterBody.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/page/PageDomain.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/page/TableDataInfo.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/page/TableSupport.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/redis/RedisCache.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/text/CharsetKit.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/text/Convert.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/core/text/StrFormatter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/BusinessStatus.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/BusinessType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/DataSourceType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/DesensitizedType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/HttpMethod.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/LimitType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/OperatorType.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/enums/UserStatus.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/DemoModeException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/GlobalException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/ServiceException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/UtilException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/base/BaseException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/FileException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/FileNameLengthLimitExceededException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/FileSizeLimitExceededException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/FileUploadException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/InvalidExtensionException$InvalidFlashExtensionException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/InvalidExtensionException$InvalidImageExtensionException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/InvalidExtensionException$InvalidMediaExtensionException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/InvalidExtensionException$InvalidVideoExtensionException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/file/InvalidExtensionException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/job/TaskException$Code.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/job/TaskException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/BlackListException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/CaptchaException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/CaptchaExpireException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/UserException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/UserNotExistsException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/UserPasswordNotMatchException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/exception/user/UserPasswordRetryLimitExceedException.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/PropertyPreExcludeFilter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/RefererFilter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/RepeatableFilter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/RepeatedlyRequestWrapper$1.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/RepeatedlyRequestWrapper.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/XssFilter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/XssHttpServletRequestWrapper$1.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/filter/XssHttpServletRequestWrapper.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/Arith.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/DateUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/DesensitizedUtil.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/DictUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/ExceptionUtil.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/LogUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/MessageUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/PageUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/SecurityUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/ServletUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/StringUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/Threads.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/bean/BeanUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/bean/BeanValidators.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/file/FileTypeUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/file/FileUploadUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/file/FileUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/file/ImageUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/file/MimeTypeUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/html/EscapeUtil.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/html/HTMLFilter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/http/HttpHelper.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/http/HttpUtils$TrustAnyHostnameVerifier.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/http/HttpUtils$TrustAnyTrustManager.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/http/HttpUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/http/UserAgentUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/ip/AddressUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/ip/IpUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/poi/ExcelHandlerAdapter.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/poi/ExcelUtil.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/reflect/ReflectUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/sign/Base64.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/sign/Md5Utils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/spring/SpringUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/sql/SqlUtil.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/uuid/IdUtils.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/uuid/Seq.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/uuid/UUID$Holder.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/utils/uuid/UUID.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/xss/Xss.class (100%) rename portal/backend/{ => portal}/portal-common/target/classes/org/lingniu/portal/common/xss/XssValidator.class (100%) rename portal/backend/{ => portal}/portal-common/target/maven-archiver/pom.properties (72%) rename portal/backend/{ => portal}/portal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst (100%) rename portal/backend/{ => portal}/portal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst (100%) rename portal/backend/{ => portal}/portal-common/target/portal-common-1.0.0.jar (90%) rename portal/backend/{ => portal}/portal-framework/pom.xml (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/aspectj/DataScopeAspect.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/aspectj/DataSourceAspect.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/aspectj/LogAspect.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/aspectj/RateLimiterAspect.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/ApplicationConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/CaptchaConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/DruidConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/FastJson2JsonRedisSerializer.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/FilterConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/I18nConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/KaptchaTextCreator.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/MyBatisConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/RedisConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/ResourcesConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/SecurityConfig.java (98%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/ServerConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/ThreadPoolConfig.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/properties/DruidProperties.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/config/properties/PermitAllUrlProperties.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/datasource/DynamicDataSource.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/datasource/DynamicDataSourceContextHolder.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/interceptor/RepeatSubmitInterceptor.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/interceptor/impl/SameUrlDataInterceptor.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/manager/AsyncManager.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/manager/ShutdownManager.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/manager/factory/AsyncFactory.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/security/context/AuthenticationContextHolder.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/security/context/PermissionContextHolder.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/domain/Server.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/domain/server/Cpu.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/domain/server/Jvm.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/domain/server/Mem.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/domain/server/Sys.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/domain/server/SysFile.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/exception/GlobalExceptionHandler.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/service/SysPasswordService.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/service/SysPermissionService.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/service/SysRegisterService.java (100%) rename portal/backend/{ => portal}/portal-framework/src/main/java/org/lingniu/portal/framework/web/service/UserDetailsServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/aspectj/DataScopeAspect.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/aspectj/DataSourceAspect.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/aspectj/LogAspect.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/aspectj/RateLimiterAspect.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/ApplicationConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/CaptchaConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/DruidConfig$1.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/DruidConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/FastJson2JsonRedisSerializer.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/FilterConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/I18nConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/KaptchaTextCreator.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/MyBatisConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/RedisConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/ResourcesConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/ServerConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/ThreadPoolConfig$1.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/ThreadPoolConfig.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/properties/DruidProperties.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/config/properties/PermitAllUrlProperties.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/datasource/DynamicDataSource.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/datasource/DynamicDataSourceContextHolder.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/interceptor/RepeatSubmitInterceptor.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/interceptor/impl/SameUrlDataInterceptor.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/manager/AsyncManager.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/manager/ShutdownManager.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/manager/factory/AsyncFactory$1.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/manager/factory/AsyncFactory$2.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/manager/factory/AsyncFactory.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/security/context/AuthenticationContextHolder.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/security/context/PermissionContextHolder.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/domain/Server.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/domain/server/Cpu.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/domain/server/Jvm.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/domain/server/Mem.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/domain/server/Sys.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/domain/server/SysFile.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/exception/GlobalExceptionHandler.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/service/SysPasswordService.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/service/SysPermissionService.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/service/SysRegisterService.class (100%) rename portal/backend/{ => portal}/portal-framework/target/classes/org/lingniu/portal/framework/web/service/UserDetailsServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-framework/target/maven-archiver/pom.properties (73%) rename portal/backend/{ => portal}/portal-framework/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst (100%) rename portal/backend/{ => portal}/portal-framework/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst (100%) rename portal/backend/{ => portal}/portal-framework/target/portal-framework-1.0.0.jar (89%) rename portal/backend/{ => portal}/portal-system/pom.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysCache.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysConfig.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysLogininfor.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysNotice.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysOperLog.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysPost.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysRoleDept.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysRoleMenu.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysUserOnline.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysUserPost.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/SysUserRole.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/vo/MetaVo.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/domain/vo/RouterVo.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysConfigMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysDeptMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysDictDataMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysDictTypeMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysLogininforMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysMenuMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysNoticeMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysOperLogMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysPostMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysRoleDeptMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysRoleMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysRoleMenuMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysUserMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysUserPostMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/mapper/SysUserRoleMapper.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysConfigService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysDeptService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysDictDataService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysDictTypeService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysLogininforService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysMenuService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysNoticeService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysOperLogService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysPostService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysRoleService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysUserOnlineService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/ISysUserService.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysConfigServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysDeptServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysDictDataServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysDictTypeServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysLogininforServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysMenuServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysNoticeServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysOperLogServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysPostServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysRoleServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysUserOnlineServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/java/org/lingniu/portal/system/service/impl/SysUserServiceImpl.java (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysConfigMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysDeptMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysDictDataMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysDictTypeMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysLogininforMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysMenuMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysNoticeMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysOperLogMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysPostMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysRoleDeptMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysRoleMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysUserMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysUserPostMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/src/main/resources/mapper/system/SysUserRoleMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysConfigMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysDeptMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysDictDataMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysDictTypeMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysLogininforMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysMenuMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysNoticeMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysOperLogMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysPostMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysRoleDeptMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysRoleMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysRoleMenuMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysUserMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysUserPostMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/mapper/system/SysUserRoleMapper.xml (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysCache.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysConfig.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysLogininfor.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysNotice.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysOperLog.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysPost.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysRoleDept.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysRoleMenu.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysUserOnline.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysUserPost.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/SysUserRole.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/vo/MetaVo.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/domain/vo/RouterVo.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysConfigMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysDeptMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysDictDataMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysDictTypeMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysLogininforMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysMenuMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysNoticeMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysOperLogMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysPostMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysRoleDeptMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysRoleMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysRoleMenuMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysUserMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysUserPostMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/mapper/SysUserRoleMapper.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysConfigService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysDeptService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysDictDataService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysDictTypeService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysLogininforService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysMenuService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysNoticeService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysOperLogService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysPostService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysRoleService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysUserOnlineService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/ISysUserService.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysConfigServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysDeptServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysDictDataServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysDictTypeServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysLogininforServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysMenuServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysNoticeServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysOperLogServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysPostServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysRoleServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysUserOnlineServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/classes/org/lingniu/portal/system/service/impl/SysUserServiceImpl.class (100%) rename portal/backend/{ => portal}/portal-system/target/maven-archiver/pom.properties (72%) rename portal/backend/{ => portal}/portal-system/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst (100%) rename portal/backend/{ => portal}/portal-system/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst (100%) rename portal/backend/{ => portal}/portal-system/target/portal-system-1.0.0.jar (88%) create mode 100644 sdk/backend/oauth2-login-sdk/.gitignore delete mode 100644 sdk/frontend/oauth2-login-sdk/README.md delete mode 100644 sdk/frontend/oauth2-login-sdk/src/core/http.ts delete mode 100644 sdk/frontend/oauth2-login-sdk/src/core/token.ts delete mode 100644 sdk/frontend/oauth2-login-sdk/src/guards/router.ts delete mode 100644 sdk/frontend/oauth2-login-sdk/src/index.ts create mode 100644 sdk/frontend/unified-login-sdk/.gitignore create mode 100644 sdk/frontend/unified-login-sdk/README.md rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/auth.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/auth.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/auth.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/auth.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/http.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/http.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/http.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/http.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/token.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/token.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/token.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/core/token.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/guards/router.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/guards/router.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/guards/router.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/guards/router.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/index.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/index.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/index.esm.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/index.esm.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/index.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/index.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/plugins/vue.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/plugins/vue.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/plugins/vue.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/plugins/vue.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/config.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/config.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/config.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/config.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/index.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/index.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/index.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/index.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/user.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/user.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/user.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/types/user.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/storage.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/storage.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/storage.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/storage.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/url.d.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/url.d.ts.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/url.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/dist/utils/url.js.map (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/package.json (96%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/pnpm-lock.yaml (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/rollup.config.js (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/core/auth.ts (65%) create mode 100644 sdk/frontend/unified-login-sdk/src/core/http.examples.ts create mode 100644 sdk/frontend/unified-login-sdk/src/core/http.test.ts create mode 100644 sdk/frontend/unified-login-sdk/src/core/http.ts create mode 100644 sdk/frontend/unified-login-sdk/src/core/token.ts create mode 100644 sdk/frontend/unified-login-sdk/src/guards/router.examples.ts create mode 100644 sdk/frontend/unified-login-sdk/src/guards/router.test.ts create mode 100644 sdk/frontend/unified-login-sdk/src/guards/router.ts create mode 100644 sdk/frontend/unified-login-sdk/src/index.ts create mode 100644 sdk/frontend/unified-login-sdk/src/plugins/vue.test.ts rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/plugins/vue.ts (62%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/types/config.ts (54%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/types/index.ts (91%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/types/user.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/utils/storage.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/src/utils/url.ts (100%) rename sdk/frontend/{oauth2-login-sdk => unified-login-sdk}/tsconfig.json (100%) diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..7806386 --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..7cb47f6 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..8fb5dc2 --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/lingniu-platform.iml b/.idea/lingniu-platform.iml deleted file mode 100644 index d6ebd48..0000000 --- a/.idea/lingniu-platform.iml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 639900d..ce9541d 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,18 @@ - + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index b5cfd88..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/demo/backend/.gitattributes b/demo/backend/demo/.gitattributes similarity index 100% rename from demo/backend/.gitattributes rename to demo/backend/demo/.gitattributes diff --git a/demo/backend/.gitignore b/demo/backend/demo/.gitignore similarity index 100% rename from demo/backend/.gitignore rename to demo/backend/demo/.gitignore diff --git a/demo/backend/pom.xml b/demo/backend/demo/pom.xml similarity index 100% rename from demo/backend/pom.xml rename to demo/backend/demo/pom.xml diff --git a/demo/backend/src/main/java/com/example/demo/DemoApplication.java b/demo/backend/demo/src/main/java/org/lingniu/example/demo/DemoApplication.java similarity index 90% rename from demo/backend/src/main/java/com/example/demo/DemoApplication.java rename to demo/backend/demo/src/main/java/org/lingniu/example/demo/DemoApplication.java index 70629e9..df68dae 100644 --- a/demo/backend/src/main/java/com/example/demo/DemoApplication.java +++ b/demo/backend/demo/src/main/java/org/lingniu/example/demo/DemoApplication.java @@ -1,4 +1,4 @@ -package com.example.demo; +package org.lingniu.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; diff --git a/demo/backend/src/main/java/com/example/demo/Controller/UserController.java b/demo/backend/demo/src/main/java/org/lingniu/example/demo/controller/DemoController.java similarity index 63% rename from demo/backend/src/main/java/com/example/demo/Controller/UserController.java rename to demo/backend/demo/src/main/java/org/lingniu/example/demo/controller/DemoController.java index 56b0fd0..ddef756 100644 --- a/demo/backend/src/main/java/com/example/demo/Controller/UserController.java +++ b/demo/backend/demo/src/main/java/org/lingniu/example/demo/controller/DemoController.java @@ -1,37 +1,29 @@ -package org.lingniu.sdk.web; +package org.lingniu.example.demo.controller; -import com.alibaba.fastjson2.JSON; import com.fasterxml.jackson.databind.ObjectMapper; import org.lingniu.sdk.model.base.CommonResult; import org.lingniu.sdk.model.user.UserInfo; -import org.lingniu.sdk.utils.HttpClientUtils; -import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.security.oauth2.client.OAuth2ClientProperties; import org.springframework.security.core.annotation.AuthenticationPrincipal; -import org.springframework.security.oauth2.client.OAuth2AuthorizedClient; -import org.springframework.security.oauth2.client.annotation.RegisteredOAuth2AuthorizedClient; -import org.springframework.security.oauth2.core.OAuth2AccessToken; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.Map; - @RequestMapping("/test") @RestController -public class UserController { +public class DemoController { private final OAuth2ClientProperties oAuth2ClientProperties; private final ObjectMapper objectMapper; - public UserController(OAuth2ClientProperties oAuth2ClientProperties, ObjectMapper objectMapper) { + public DemoController(OAuth2ClientProperties oAuth2ClientProperties, ObjectMapper objectMapper) { this.oAuth2ClientProperties = oAuth2ClientProperties; this.objectMapper = objectMapper; } @GetMapping("/getUserInfo") - @PreAuthorize("@ss.hasPermi('user:info')") public CommonResult getUserInfo(@AuthenticationPrincipal UserInfo userInfo) throws Exception { return CommonResult.success(userInfo); } + } diff --git a/demo/backend/src/main/java/com/example/demo/test.http b/demo/backend/demo/src/main/java/org/lingniu/example/demo/test.http similarity index 98% rename from demo/backend/src/main/java/com/example/demo/test.http rename to demo/backend/demo/src/main/java/org/lingniu/example/demo/test.http index 4a0bfa1..9a78081 100644 --- a/demo/backend/src/main/java/com/example/demo/test.http +++ b/demo/backend/demo/src/main/java/org/lingniu/example/demo/test.http @@ -39,3 +39,9 @@ Accept: application/json POST http://localhost:10001/logout Cookie: app_refresh_token=02237ce2c5d14e8088be3d462b69df99 + + + +http://106.14.217.120/portal-api/authorization/demo + + diff --git a/demo/backend/demo/src/main/java/org/lingniu/example/demo/test2.http b/demo/backend/demo/src/main/java/org/lingniu/example/demo/test2.http new file mode 100644 index 0000000..90fed07 --- /dev/null +++ b/demo/backend/demo/src/main/java/org/lingniu/example/demo/test2.http @@ -0,0 +1,50 @@ +# @no-redirect +GET http://106.14.217.120/portal-api/oauth2/authorization/portal + +### +GET localhost:8080 + +### +POST http://localhost:8000/oauth2/authorize +Content-Type: application/x-www-form-urlencoded +Accept: application/json +Idp: 387cec08371f4ebfb61074d41a94046e +Cookie: idp_refresh_token=7bb21a0dcac94aec99f08ae6a2d6db30 + +response_type=code&client_id=b55c88c20db94790a60a5075&scope=openid%20profile%20perms&state=MK1s_JKXsVowOsaGIGK3UK00yVgjUM-lgV-T7tOZdIQ%3D&redirect_uri=http://localhost:9506/oauth2/callback&nonce=rXdsOr0tczTckUSP_RKZ5ABmP575Z4JrTLOxCQ1nt3U + + +#### +GET http://localhost:8080/login/oauth2/code/portal?code=ua3zRRX2YMHsGmYaY4CGEvtklZbCzNtT5sOjguXzhY68zoKqnA83NlQXtG1dN-X_mv4Sn5MaYERkymxk9EWJzpHA_RB523keRb25jmIt5LgUjWJtwD4gJmQJulPOXFO1&state=MK1s_JKXsVowOsaGIGK3UK00yVgjUM-lgV-T7tOZdIQ%3D + +### +GET http://localhost:10001/idp/routes +#Authorization: 85a9f4d6fef34763b4437830ec331570 +Authorization: Bearer eyJraWQiOiJpZHAiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImF1ZCI6ImI1NWM4OGMyMGRiOTQ3OTBhNjBhNTA3NSIsIm5iZiI6MTc3MDM5MjMwMiwic2NvcGUiOlsib3BlbmlkIiwicHJvZmlsZSIsInBlcm1zIl0sImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMCIsImV4cCI6MTc3MDQzNTUwMiwiaWF0IjoxNzcwMzkyMzAyLCJqdGkiOiIxMmRjZjZmOS0zMjNhLTRhMmUtYjI4Ni1lNDcyOTFhNjc4YTYifQ.MC2khfn7Q2PeU5NB9BCazj-4oWsS_9VIoRLvVZfRiM4RKyAw6VkBv0bNWNuIcUAzZ7GpfIsGMufjsDiVgj7tBK_MWweasWz7DRDc_QCkFt8RZxK2LjxZAilFmXZOaydUNnlGgBmI6S-xAD5N5ltx8OTEdWHuD7tm7S8ppXlvTCk4QSeNd3UYXyXPkR408HOk5ZWTH4PudGVJN5q5gDUAbM9FyN7NejGuJQ4gmHuur7oDhMEqmBQjiv6OnJZko6GszOcN0-nkRJX-KzXV45uIkEF9BaUhJvC6EhotqioVXLuLznX3yB9iuFGqekpS3uHOYwzZF0CHR6xTHg29hvLOxw +#Cookie: app_refresh_token=ce08d9a6b3064311ac163a7806b811ef + + +### +GET http://localhost:8000/account/getRouters +#Authorization: 85a9f4d6fef34763b4437830ec331570 +Authorization: Bearer eyJraWQiOiJpZHAiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImF1ZCI6ImI1NWM4OGMyMGRiOTQ3OTBhNjBhNTA3NSIsIm5iZiI6MTc3MDM5MjMwMiwic2NvcGUiOlsib3BlbmlkIiwicHJvZmlsZSIsInBlcm1zIl0sImlzcyI6Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMCIsImV4cCI6MTc3MDQzNTUwMiwiaWF0IjoxNzcwMzkyMzAyLCJqdGkiOiIxMmRjZjZmOS0zMjNhLTRhMmUtYjI4Ni1lNDcyOTFhNjc4YTYifQ.MC2khfn7Q2PeU5NB9BCazj-4oWsS_9VIoRLvVZfRiM4RKyAw6VkBv0bNWNuIcUAzZ7GpfIsGMufjsDiVgj7tBK_MWweasWz7DRDc_QCkFt8RZxK2LjxZAilFmXZOaydUNnlGgBmI6S-xAD5N5ltx8OTEdWHuD7tm7S8ppXlvTCk4QSeNd3UYXyXPkR408HOk5ZWTH4PudGVJN5q5gDUAbM9FyN7NejGuJQ4gmHuur7oDhMEqmBQjiv6OnJZko6GszOcN0-nkRJX-KzXV45uIkEF9BaUhJvC6EhotqioVXLuLznX3yB9iuFGqekpS3uHOYwzZF0CHR6xTHg29hvLOxw +#Cookie: app_refresh_token=ce08d9a6b3064311ac163a7806b811ef +Accept: application/json + +#### +GET http://localhost:10001/idp/routes +#Authorization: 85a9f4d6fef34763b4437830ec331570 +Authorization: 41deb286d03b42139bc3559cbbcc9995 +#Cookie: app_refresh_token=ce08d9a6b3064311ac163a7806b811ef +Accept: application/json + +### +POST http://localhost:10001/logout +Cookie: app_refresh_token=02237ce2c5d14e8088be3d462b69df99 + + + + + + + diff --git a/demo/backend/src/main/resources/application.yml b/demo/backend/demo/src/main/resources/application-dev.yml similarity index 100% rename from demo/backend/src/main/resources/application.yml rename to demo/backend/demo/src/main/resources/application-dev.yml diff --git a/demo/backend/demo/src/main/resources/application-test.yml b/demo/backend/demo/src/main/resources/application-test.yml new file mode 100644 index 0000000..5df65f8 --- /dev/null +++ b/demo/backend/demo/src/main/resources/application-test.yml @@ -0,0 +1,70 @@ +spring: + application: + name: demo + # redis \u914D\u7F6E + security: + oauth2: + resourceserver: + jwt: + jwk-set-uri: http://127.0.0.1:8082/oauth2/jwks + client: + registration: + demo: + client-id: b55c88c20db94790a60a5075 + client-secret: UqVAS8UiehSFJSR8_CygnYGR5M79LuGuGiDwATtcGqg + client-name: DEMO + authorization-grant-type: authorization_code + redirect-uri: http://106.14.217.120/demo/callback + scope: + - openid + - profile + # 返回权限 + - perms + provider: idp + + provider: + idp: + issuer-uri: http://127.0.0.1:8082 + authorization-uri: http://106.14.217.120/idp-ui/sso + token-uri: http://127.0.0.1:8082/oauth2/token + user-info-uri: http://127.0.0.1:8082/userinfo + jwk-set-uri: http://127.0.0.1:8082/oauth2/jwks + user-name-attribute: sub + data: + redis: + # \u5730\u5740 + host: localhost + # \u7AEF\u53E3\uFF0C\u9ED8\u8BA4\u4E3A6379 + port: 6379 + # \u6570\u636E\u5E93\u7D22\u5F15 + database: 0 + # \u5BC6\u7801 + password: + # \u8FDE\u63A5\u8D85\u65F6\u65F6\u95F4 + timeout: 10s + lettuce: + pool: + # \u8FDE\u63A5\u6C60\u4E2D\u7684\u6700\u5C0F\u7A7A\u95F2\u8FDE\u63A5 + min-idle: 0 + # \u8FDE\u63A5\u6C60\u4E2D\u7684\u6700\u5927\u7A7A\u95F2\u8FDE\u63A5 + max-idle: 8 + # \u8FDE\u63A5\u6C60\u7684\u6700\u5927\u6570\u636E\u5E93\u8FDE\u63A5\u6570 + max-active: 8 + # #\u8FDE\u63A5\u6C60\u6700\u5927\u963B\u585E\u7B49\u5F85\u65F6\u95F4\uFF08\u4F7F\u7528\u8D1F\u503C\u8868\u793A\u6CA1\u6709\u9650\u5236\uFF09 + max-wait: -1ms + + + + + +logging: + level: + root: info + org.springframework.web: debug + org.springframework.security: debug + org.springframework.security.oauth2: debug + + +server: + port: 10001 + diff --git a/demo/backend/demo/src/main/resources/application.yml b/demo/backend/demo/src/main/resources/application.yml new file mode 100644 index 0000000..caf4dfc --- /dev/null +++ b/demo/backend/demo/src/main/resources/application.yml @@ -0,0 +1,3 @@ +spring: + profiles: + active: dev \ No newline at end of file diff --git a/demo/backend/src/test/java/com/example/demo/DemoApplicationTests.java b/demo/backend/demo/src/test/java/org/lingniu/example/demo/DemoApplicationTests.java similarity index 84% rename from demo/backend/src/test/java/com/example/demo/DemoApplicationTests.java rename to demo/backend/demo/src/test/java/org/lingniu/example/demo/DemoApplicationTests.java index eaa9969..8e7b2c0 100644 --- a/demo/backend/src/test/java/com/example/demo/DemoApplicationTests.java +++ b/demo/backend/demo/src/test/java/org/lingniu/example/demo/DemoApplicationTests.java @@ -1,4 +1,4 @@ -package com.example.demo; +package org.lingniu.example.demo; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; diff --git a/demo/backend/mvnw b/demo/backend/mvnw deleted file mode 100644 index bd8896b..0000000 --- a/demo/backend/mvnw +++ /dev/null @@ -1,295 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you 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. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Apache Maven Wrapper startup batch script, version 3.3.4 -# -# Optional ENV vars -# ----------------- -# JAVA_HOME - location of a JDK home dir, required when download maven via java source -# MVNW_REPOURL - repo url base for downloading maven distribution -# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven -# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output -# ---------------------------------------------------------------------------- - -set -euf -[ "${MVNW_VERBOSE-}" != debug ] || set -x - -# OS specific support. -native_path() { printf %s\\n "$1"; } -case "$(uname)" in -CYGWIN* | MINGW*) - [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" - native_path() { cygpath --path --windows "$1"; } - ;; -esac - -# set JAVACMD and JAVACCMD -set_java_home() { - # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched - if [ -n "${JAVA_HOME-}" ]; then - if [ -x "$JAVA_HOME/jre/sh/java" ]; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - JAVACCMD="$JAVA_HOME/jre/sh/javac" - else - JAVACMD="$JAVA_HOME/bin/java" - JAVACCMD="$JAVA_HOME/bin/javac" - - if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then - echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 - echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 - return 1 - fi - fi - else - JAVACMD="$( - 'set' +e - 'unset' -f command 2>/dev/null - 'command' -v java - )" || : - JAVACCMD="$( - 'set' +e - 'unset' -f command 2>/dev/null - 'command' -v javac - )" || : - - if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then - echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 - return 1 - fi - fi -} - -# hash string like Java String::hashCode -hash_string() { - str="${1:-}" h=0 - while [ -n "$str" ]; do - char="${str%"${str#?}"}" - h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) - str="${str#?}" - done - printf %x\\n $h -} - -verbose() { :; } -[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - -die() { - printf %s\\n "$1" >&2 - exit 1 -} - -trim() { - # MWRAPPER-139: - # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. - # Needed for removing poorly interpreted newline sequences when running in more - # exotic environments such as mingw bash on Windows. - printf "%s" "${1}" | tr -d '[:space:]' -} - -scriptDir="$(dirname "$0")" -scriptName="$(basename "$0")" - -# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties -while IFS="=" read -r key value; do - case "${key-}" in - distributionUrl) distributionUrl=$(trim "${value-}") ;; - distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; - esac -done <"$scriptDir/.mvn/wrapper/maven-wrapper.properties" -[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" - -case "${distributionUrl##*/}" in -maven-mvnd-*bin.*) - MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ - case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in - *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; - :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; - :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; - :Linux*x86_64*) distributionPlatform=linux-amd64 ;; - *) - echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 - distributionPlatform=linux-amd64 - ;; - esac - distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" - ;; -maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; -*) MVN_CMD="mvn${scriptName#mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; -esac - -# apply MVNW_REPOURL and calculate MAVEN_HOME -# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ -[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" -distributionUrlName="${distributionUrl##*/}" -distributionUrlNameMain="${distributionUrlName%.*}" -distributionUrlNameMain="${distributionUrlNameMain%-bin}" -MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" -MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" - -exec_maven() { - unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : - exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" -} - -if [ -d "$MAVEN_HOME" ]; then - verbose "found existing MAVEN_HOME at $MAVEN_HOME" - exec_maven "$@" -fi - -case "${distributionUrl-}" in -*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; -*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; -esac - -# prepare tmp dir -if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then - clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } - trap clean HUP INT TERM EXIT -else - die "cannot create temp dir" -fi - -mkdir -p -- "${MAVEN_HOME%/*}" - -# Download and Install Apache Maven -verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." -verbose "Downloading from: $distributionUrl" -verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" - -# select .zip or .tar.gz -if ! command -v unzip >/dev/null; then - distributionUrl="${distributionUrl%.zip}.tar.gz" - distributionUrlName="${distributionUrl##*/}" -fi - -# verbose opt -__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' -[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v - -# normalize http auth -case "${MVNW_PASSWORD:+has-password}" in -'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; -has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; -esac - -if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then - verbose "Found wget ... using wget" - wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" -elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then - verbose "Found curl ... using curl" - curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" -elif set_java_home; then - verbose "Falling back to use Java to download" - javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" - targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" - cat >"$javaSource" <<-END - public class Downloader extends java.net.Authenticator - { - protected java.net.PasswordAuthentication getPasswordAuthentication() - { - return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); - } - public static void main( String[] args ) throws Exception - { - setDefault( new Downloader() ); - java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); - } - } - END - # For Cygwin/MinGW, switch paths to Windows format before running javac and java - verbose " - Compiling Downloader.java ..." - "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" - verbose " - Running Downloader.java ..." - "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" -fi - -# If specified, validate the SHA-256 sum of the Maven distribution zip file -if [ -n "${distributionSha256Sum-}" ]; then - distributionSha256Result=false - if [ "$MVN_CMD" = mvnd.sh ]; then - echo "Checksum validation is not supported for maven-mvnd." >&2 - echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 - exit 1 - elif command -v sha256sum >/dev/null; then - if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c - >/dev/null 2>&1; then - distributionSha256Result=true - fi - elif command -v shasum >/dev/null; then - if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then - distributionSha256Result=true - fi - else - echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 - echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 - exit 1 - fi - if [ $distributionSha256Result = false ]; then - echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 - echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 - exit 1 - fi -fi - -# unzip and move -if command -v unzip >/dev/null; then - unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" -else - tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" -fi - -# Find the actual extracted directory name (handles snapshots where filename != directory name) -actualDistributionDir="" - -# First try the expected directory name (for regular distributions) -if [ -d "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" ]; then - if [ -f "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/bin/$MVN_CMD" ]; then - actualDistributionDir="$distributionUrlNameMain" - fi -fi - -# If not found, search for any directory with the Maven executable (for snapshots) -if [ -z "$actualDistributionDir" ]; then - # enable globbing to iterate over items - set +f - for dir in "$TMP_DOWNLOAD_DIR"/*; do - if [ -d "$dir" ]; then - if [ -f "$dir/bin/$MVN_CMD" ]; then - actualDistributionDir="$(basename "$dir")" - break - fi - fi - done - set -f -fi - -if [ -z "$actualDistributionDir" ]; then - verbose "Contents of $TMP_DOWNLOAD_DIR:" - verbose "$(ls -la "$TMP_DOWNLOAD_DIR")" - die "Could not find Maven distribution directory in extracted archive" -fi - -verbose "Found extracted Maven distribution directory: $actualDistributionDir" -printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$actualDistributionDir/mvnw.url" -mv -- "$TMP_DOWNLOAD_DIR/$actualDistributionDir" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" - -clean || : -exec_maven "$@" diff --git a/demo/backend/mvnw.cmd b/demo/backend/mvnw.cmd deleted file mode 100644 index 92450f9..0000000 --- a/demo/backend/mvnw.cmd +++ /dev/null @@ -1,189 +0,0 @@ -<# : batch portion -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM http://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Apache Maven Wrapper startup batch script, version 3.3.4 -@REM -@REM Optional ENV vars -@REM MVNW_REPOURL - repo url base for downloading maven distribution -@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven -@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output -@REM ---------------------------------------------------------------------------- - -@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) -@SET __MVNW_CMD__= -@SET __MVNW_ERROR__= -@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% -@SET PSModulePath= -@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( - IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) -) -@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% -@SET __MVNW_PSMODULEP_SAVE= -@SET __MVNW_ARG0_NAME__= -@SET MVNW_USERNAME= -@SET MVNW_PASSWORD= -@IF NOT "%__MVNW_CMD__%"=="" ("%__MVNW_CMD__%" %*) -@echo Cannot start maven from wrapper >&2 && exit /b 1 -@GOTO :EOF -: end batch / begin powershell #> - -$ErrorActionPreference = "Stop" -if ($env:MVNW_VERBOSE -eq "true") { - $VerbosePreference = "Continue" -} - -# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties -$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl -if (!$distributionUrl) { - Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" -} - -switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { - "maven-mvnd-*" { - $USE_MVND = $true - $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" - $MVN_CMD = "mvnd.cmd" - break - } - default { - $USE_MVND = $false - $MVN_CMD = $script -replace '^mvnw','mvn' - break - } -} - -# apply MVNW_REPOURL and calculate MAVEN_HOME -# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ -if ($env:MVNW_REPOURL) { - $MVNW_REPO_PATTERN = if ($USE_MVND -eq $False) { "/org/apache/maven/" } else { "/maven/mvnd/" } - $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace "^.*$MVNW_REPO_PATTERN",'')" -} -$distributionUrlName = $distributionUrl -replace '^.*/','' -$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' - -$MAVEN_M2_PATH = "$HOME/.m2" -if ($env:MAVEN_USER_HOME) { - $MAVEN_M2_PATH = "$env:MAVEN_USER_HOME" -} - -if (-not (Test-Path -Path $MAVEN_M2_PATH)) { - New-Item -Path $MAVEN_M2_PATH -ItemType Directory | Out-Null -} - -$MAVEN_WRAPPER_DISTS = $null -if ((Get-Item $MAVEN_M2_PATH).Target[0] -eq $null) { - $MAVEN_WRAPPER_DISTS = "$MAVEN_M2_PATH/wrapper/dists" -} else { - $MAVEN_WRAPPER_DISTS = (Get-Item $MAVEN_M2_PATH).Target[0] + "/wrapper/dists" -} - -$MAVEN_HOME_PARENT = "$MAVEN_WRAPPER_DISTS/$distributionUrlNameMain" -$MAVEN_HOME_NAME = ([System.Security.Cryptography.SHA256]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' -$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" - -if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { - Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" - Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" - exit $? -} - -if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { - Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" -} - -# prepare tmp dir -$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile -$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" -$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null -trap { - if ($TMP_DOWNLOAD_DIR.Exists) { - try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } - catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } - } -} - -New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null - -# Download and Install Apache Maven -Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." -Write-Verbose "Downloading from: $distributionUrl" -Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" - -$webclient = New-Object System.Net.WebClient -if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { - $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) -} -[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 -$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null - -# If specified, validate the SHA-256 sum of the Maven distribution zip file -$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum -if ($distributionSha256Sum) { - if ($USE_MVND) { - Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." - } - Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash - if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { - Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." - } -} - -# unzip and move -Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null - -# Find the actual extracted directory name (handles snapshots where filename != directory name) -$actualDistributionDir = "" - -# First try the expected directory name (for regular distributions) -$expectedPath = Join-Path "$TMP_DOWNLOAD_DIR" "$distributionUrlNameMain" -$expectedMvnPath = Join-Path "$expectedPath" "bin/$MVN_CMD" -if ((Test-Path -Path $expectedPath -PathType Container) -and (Test-Path -Path $expectedMvnPath -PathType Leaf)) { - $actualDistributionDir = $distributionUrlNameMain -} - -# If not found, search for any directory with the Maven executable (for snapshots) -if (!$actualDistributionDir) { - Get-ChildItem -Path "$TMP_DOWNLOAD_DIR" -Directory | ForEach-Object { - $testPath = Join-Path $_.FullName "bin/$MVN_CMD" - if (Test-Path -Path $testPath -PathType Leaf) { - $actualDistributionDir = $_.Name - } - } -} - -if (!$actualDistributionDir) { - Write-Error "Could not find Maven distribution directory in extracted archive" -} - -Write-Verbose "Found extracted Maven distribution directory: $actualDistributionDir" -Rename-Item -Path "$TMP_DOWNLOAD_DIR/$actualDistributionDir" -NewName $MAVEN_HOME_NAME | Out-Null -try { - Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null -} catch { - if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { - Write-Error "fail to move MAVEN_HOME" - } -} finally { - try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } - catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } -} - -Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/demo/frontend/README.md b/demo/frontend/README.md deleted file mode 100644 index 33895ab..0000000 --- a/demo/frontend/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Vue 3 + TypeScript + Vite - -This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 ` + + \ No newline at end of file diff --git a/demo/frontend/src/assets/vue.svg b/demo/frontend/demo/demo-sdk/src/assets/vue.svg similarity index 100% rename from demo/frontend/src/assets/vue.svg rename to demo/frontend/demo/demo-sdk/src/assets/vue.svg diff --git a/demo/frontend/demo/demo-sdk/src/components/EChartsReport.vue b/demo/frontend/demo/demo-sdk/src/components/EChartsReport.vue new file mode 100644 index 0000000..fb23489 --- /dev/null +++ b/demo/frontend/demo/demo-sdk/src/components/EChartsReport.vue @@ -0,0 +1,142 @@ + + + + + \ No newline at end of file diff --git a/demo/frontend/demo/demo-sdk/src/main.ts b/demo/frontend/demo/demo-sdk/src/main.ts new file mode 100644 index 0000000..858098d --- /dev/null +++ b/demo/frontend/demo/demo-sdk/src/main.ts @@ -0,0 +1,37 @@ +import { createApp } from 'vue' +import './style.css' +import App from './App.vue' +import router from './router' +import unifiedLoginSDK from "oauth2-login-sdk"; + +// SDK配置 +const SDK_CONFIG = { + clientId: 'b55c88c20db94790a60a5075', + registrationId: 'demo', + storageType: 'localStorage' as const, + basepath: '/demo-api', + idpLogoutUrl: 'http://106.14.217.120/idp-ui/logout', + homePage: 'http://106.14.217.120/demo/dashboard' +}; + +// 初始化SDK +try { + unifiedLoginSDK.init(SDK_CONFIG); + console.log('✅ SDK初始化成功'); +} catch (error) { + console.error('❌ SDK初始化失败:', error); +} + +// 创建Vue应用 +const app = createApp(App) + +// 注册路由 +app.use(router) + +// 挂载应用 +app.mount('#app') + +// 全局错误处理 +app.config.errorHandler = (err, _instance, info) => { + console.error('Vue错误:', err, info); +}; diff --git a/demo/frontend/demo/demo-sdk/src/router/index.ts b/demo/frontend/demo/demo-sdk/src/router/index.ts new file mode 100644 index 0000000..65a8cbf --- /dev/null +++ b/demo/frontend/demo/demo-sdk/src/router/index.ts @@ -0,0 +1,90 @@ +import { createRouter, createWebHistory } from 'vue-router' +import unifiedLoginSDK from 'oauth2-login-sdk'; + +// 路由配置 +const routes = [ + { + path: '/', + redirect: '/dashboard' + }, + { + path: '/dashboard', + name: 'dashboard', + component: () => import('../views/Dashboard.vue'), + meta: { + requiresAuth: true, + title: '仪表板' + } + }, + { + path: '/profile', + name: 'profile', + component: () => import('../views/Profile.vue'), + meta: { + requiresAuth: true, + title: '个人中心' + } + }, + { + path: '/oauth2/callback', + name: 'callback', + component: () => import('../views/Callback.vue'), + meta: { + title: '认证回调' + } + } +]; + +const router = createRouter({ + history: createWebHistory(import.meta.env.BASE_URL), + routes +}); + +// 路由守卫 +router.beforeEach(async (to, _from, next) => { + // 设置页面标题 + if (to.meta.title) { + document.title = `${to.meta.title} - 统一登录Demo`; + } + + // 检查是否需要认证 + const requiresAuth = to.matched.some(record => record.meta.requiresAuth); + + if (requiresAuth) { + // 需要认证的路由 + if (!unifiedLoginSDK.isAuthenticated()) { + try { + console.log('🔒 用户未认证,正在跳转到登录页面...'); + await unifiedLoginSDK.login(); + // 登录会重定向到认证服务器,阻止当前路由切换 + next(false); + } catch (error) { + console.error('❌ 登录失败:', error); + next(false); + } + } else { + // 已认证,允许访问 + next(); + } + } else if (unifiedLoginSDK.isCallback()) { + // 处理OAuth2回调 + try { + console.log('🔄 处理OAuth2回调...'); + await unifiedLoginSDK.handleCallback(); + // 回调处理完成后SDK会自动跳转到homePage + } catch (error) { + console.error('❌ 回调处理失败:', error); + next('/'); + } + } else { + // 公开路由 + next(); + } +}); + +// 路由后置守卫 +router.afterEach((to, from) => { + console.log(`🧭 路由切换: ${from.path} -> ${to.path}`); +}); + +export default router \ No newline at end of file diff --git a/demo/frontend/src/style.css b/demo/frontend/demo/demo-sdk/src/style.css similarity index 100% rename from demo/frontend/src/style.css rename to demo/frontend/demo/demo-sdk/src/style.css diff --git a/demo/frontend/demo/demo-sdk/src/views/Callback.vue b/demo/frontend/demo/demo-sdk/src/views/Callback.vue new file mode 100644 index 0000000..96ace64 --- /dev/null +++ b/demo/frontend/demo/demo-sdk/src/views/Callback.vue @@ -0,0 +1,111 @@ + + + + + \ No newline at end of file diff --git a/demo/frontend/demo/demo-sdk/src/views/Dashboard.vue b/demo/frontend/demo/demo-sdk/src/views/Dashboard.vue new file mode 100644 index 0000000..116b2e4 --- /dev/null +++ b/demo/frontend/demo/demo-sdk/src/views/Dashboard.vue @@ -0,0 +1,581 @@ + + + + + \ No newline at end of file diff --git a/demo/frontend/demo/demo-sdk/src/views/Profile.vue b/demo/frontend/demo/demo-sdk/src/views/Profile.vue new file mode 100644 index 0000000..53ec448 --- /dev/null +++ b/demo/frontend/demo/demo-sdk/src/views/Profile.vue @@ -0,0 +1,487 @@ + + + + + \ No newline at end of file diff --git a/demo/frontend/tsconfig.app.json b/demo/frontend/demo/demo-sdk/tsconfig.app.json similarity index 100% rename from demo/frontend/tsconfig.app.json rename to demo/frontend/demo/demo-sdk/tsconfig.app.json diff --git a/demo/frontend/tsconfig.json b/demo/frontend/demo/demo-sdk/tsconfig.json similarity index 100% rename from demo/frontend/tsconfig.json rename to demo/frontend/demo/demo-sdk/tsconfig.json diff --git a/demo/frontend/tsconfig.node.json b/demo/frontend/demo/demo-sdk/tsconfig.node.json similarity index 100% rename from demo/frontend/tsconfig.node.json rename to demo/frontend/demo/demo-sdk/tsconfig.node.json diff --git a/demo/frontend/vite.config.ts b/demo/frontend/demo/demo-sdk/vite.config.ts similarity index 90% rename from demo/frontend/vite.config.ts rename to demo/frontend/demo/demo-sdk/vite.config.ts index 81e0f7e..26731b0 100644 --- a/demo/frontend/vite.config.ts +++ b/demo/frontend/demo/demo-sdk/vite.config.ts @@ -58,9 +58,8 @@ export default defineConfig(({ mode }) => { rollupOptions: { output: { manualChunks: { - vue: ['vue', 'vue-router', 'vuex/pinia'], - vendor: ['axios', 'lodash', 'dayjs'], - ui: ['element-plus', 'ant-design-vue'] // 根据实际使用的 UI 库调整 + vue: ['vue', 'vue-router'], + echarts: ['echarts'] } } } diff --git a/demo/frontend/src/App.vue b/demo/frontend/src/App.vue deleted file mode 100644 index 59b75db..0000000 --- a/demo/frontend/src/App.vue +++ /dev/null @@ -1,9 +0,0 @@ - - - - \ No newline at end of file diff --git a/demo/frontend/src/components/Home.vue b/demo/frontend/src/components/Home.vue deleted file mode 100644 index cb56f8a..0000000 --- a/demo/frontend/src/components/Home.vue +++ /dev/null @@ -1,37 +0,0 @@ - - - \ No newline at end of file diff --git a/demo/frontend/src/main.ts b/demo/frontend/src/main.ts deleted file mode 100644 index cd35530..0000000 --- a/demo/frontend/src/main.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { createApp } from 'vue' -import './style.css' -import App from './App.vue' -import router from './router' -import unifiedLoginSDK from "oauth2-login-sdk"; - -// 初始化配置 -unifiedLoginSDK.init({ - clientId: 'b55c88c20db94790a60a5075', - registrationId: 'demo', - storageType: 'localStorage', - basepath: '/demo-api', - idpLogoutUrl: 'http://localhost/logout', - homePage: 'http://localhost:9506/home' -}); -const app = createApp(App) -app.use(router) -app.mount('#app') diff --git a/demo/frontend/src/router/index.ts b/demo/frontend/src/router/index.ts deleted file mode 100644 index 6e39902..0000000 --- a/demo/frontend/src/router/index.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { createRouter, createWebHistory } from 'vue-router' -import unifiedLoginSDK from 'oauth2-login-sdk'; -const router = createRouter({ - history: createWebHistory(import.meta.env.BASE_URL), - routes: [ - { - path: '/', - name: 'home', - redirect: '/home' - }, - { - path: '/', - name: 'home', - component: () => import('../components/Home.vue') - } - ] -}) -router.beforeEach(async (to, _from, next) => { - debugger - if (!unifiedLoginSDK.isAuthenticated()) { - if (to.path === '/oauth2/callback') { - await unifiedLoginSDK.handleCallback() - }else{ - await unifiedLoginSDK.login() - } - } else { - next() - } -}) - -export default router \ No newline at end of file diff --git a/idp/backend/idp-starter/.gitattributes b/idp/backend/idp-starter/.gitattributes deleted file mode 100644 index 3b41682..0000000 --- a/idp/backend/idp-starter/.gitattributes +++ /dev/null @@ -1,2 +0,0 @@ -/mvnw text eol=lf -*.cmd text eol=crlf diff --git a/idp/backend/idp-starter/mvnw b/idp/backend/idp-starter/mvnw deleted file mode 100644 index bd8896b..0000000 --- a/idp/backend/idp-starter/mvnw +++ /dev/null @@ -1,295 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you 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. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Apache Maven Wrapper startup batch script, version 3.3.4 -# -# Optional ENV vars -# ----------------- -# JAVA_HOME - location of a JDK home dir, required when download maven via java source -# MVNW_REPOURL - repo url base for downloading maven distribution -# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven -# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output -# ---------------------------------------------------------------------------- - -set -euf -[ "${MVNW_VERBOSE-}" != debug ] || set -x - -# OS specific support. -native_path() { printf %s\\n "$1"; } -case "$(uname)" in -CYGWIN* | MINGW*) - [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" - native_path() { cygpath --path --windows "$1"; } - ;; -esac - -# set JAVACMD and JAVACCMD -set_java_home() { - # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched - if [ -n "${JAVA_HOME-}" ]; then - if [ -x "$JAVA_HOME/jre/sh/java" ]; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - JAVACCMD="$JAVA_HOME/jre/sh/javac" - else - JAVACMD="$JAVA_HOME/bin/java" - JAVACCMD="$JAVA_HOME/bin/javac" - - if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then - echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 - echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 - return 1 - fi - fi - else - JAVACMD="$( - 'set' +e - 'unset' -f command 2>/dev/null - 'command' -v java - )" || : - JAVACCMD="$( - 'set' +e - 'unset' -f command 2>/dev/null - 'command' -v javac - )" || : - - if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then - echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 - return 1 - fi - fi -} - -# hash string like Java String::hashCode -hash_string() { - str="${1:-}" h=0 - while [ -n "$str" ]; do - char="${str%"${str#?}"}" - h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) - str="${str#?}" - done - printf %x\\n $h -} - -verbose() { :; } -[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } - -die() { - printf %s\\n "$1" >&2 - exit 1 -} - -trim() { - # MWRAPPER-139: - # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. - # Needed for removing poorly interpreted newline sequences when running in more - # exotic environments such as mingw bash on Windows. - printf "%s" "${1}" | tr -d '[:space:]' -} - -scriptDir="$(dirname "$0")" -scriptName="$(basename "$0")" - -# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties -while IFS="=" read -r key value; do - case "${key-}" in - distributionUrl) distributionUrl=$(trim "${value-}") ;; - distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; - esac -done <"$scriptDir/.mvn/wrapper/maven-wrapper.properties" -[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" - -case "${distributionUrl##*/}" in -maven-mvnd-*bin.*) - MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ - case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in - *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; - :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; - :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; - :Linux*x86_64*) distributionPlatform=linux-amd64 ;; - *) - echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 - distributionPlatform=linux-amd64 - ;; - esac - distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" - ;; -maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; -*) MVN_CMD="mvn${scriptName#mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; -esac - -# apply MVNW_REPOURL and calculate MAVEN_HOME -# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ -[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" -distributionUrlName="${distributionUrl##*/}" -distributionUrlNameMain="${distributionUrlName%.*}" -distributionUrlNameMain="${distributionUrlNameMain%-bin}" -MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" -MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" - -exec_maven() { - unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : - exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" -} - -if [ -d "$MAVEN_HOME" ]; then - verbose "found existing MAVEN_HOME at $MAVEN_HOME" - exec_maven "$@" -fi - -case "${distributionUrl-}" in -*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; -*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; -esac - -# prepare tmp dir -if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then - clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } - trap clean HUP INT TERM EXIT -else - die "cannot create temp dir" -fi - -mkdir -p -- "${MAVEN_HOME%/*}" - -# Download and Install Apache Maven -verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." -verbose "Downloading from: $distributionUrl" -verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" - -# select .zip or .tar.gz -if ! command -v unzip >/dev/null; then - distributionUrl="${distributionUrl%.zip}.tar.gz" - distributionUrlName="${distributionUrl##*/}" -fi - -# verbose opt -__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' -[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v - -# normalize http auth -case "${MVNW_PASSWORD:+has-password}" in -'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; -has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; -esac - -if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then - verbose "Found wget ... using wget" - wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" -elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then - verbose "Found curl ... using curl" - curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" -elif set_java_home; then - verbose "Falling back to use Java to download" - javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" - targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" - cat >"$javaSource" <<-END - public class Downloader extends java.net.Authenticator - { - protected java.net.PasswordAuthentication getPasswordAuthentication() - { - return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); - } - public static void main( String[] args ) throws Exception - { - setDefault( new Downloader() ); - java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); - } - } - END - # For Cygwin/MinGW, switch paths to Windows format before running javac and java - verbose " - Compiling Downloader.java ..." - "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" - verbose " - Running Downloader.java ..." - "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" -fi - -# If specified, validate the SHA-256 sum of the Maven distribution zip file -if [ -n "${distributionSha256Sum-}" ]; then - distributionSha256Result=false - if [ "$MVN_CMD" = mvnd.sh ]; then - echo "Checksum validation is not supported for maven-mvnd." >&2 - echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 - exit 1 - elif command -v sha256sum >/dev/null; then - if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c - >/dev/null 2>&1; then - distributionSha256Result=true - fi - elif command -v shasum >/dev/null; then - if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then - distributionSha256Result=true - fi - else - echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 - echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 - exit 1 - fi - if [ $distributionSha256Result = false ]; then - echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 - echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 - exit 1 - fi -fi - -# unzip and move -if command -v unzip >/dev/null; then - unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" -else - tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" -fi - -# Find the actual extracted directory name (handles snapshots where filename != directory name) -actualDistributionDir="" - -# First try the expected directory name (for regular distributions) -if [ -d "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" ]; then - if [ -f "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/bin/$MVN_CMD" ]; then - actualDistributionDir="$distributionUrlNameMain" - fi -fi - -# If not found, search for any directory with the Maven executable (for snapshots) -if [ -z "$actualDistributionDir" ]; then - # enable globbing to iterate over items - set +f - for dir in "$TMP_DOWNLOAD_DIR"/*; do - if [ -d "$dir" ]; then - if [ -f "$dir/bin/$MVN_CMD" ]; then - actualDistributionDir="$(basename "$dir")" - break - fi - fi - done - set -f -fi - -if [ -z "$actualDistributionDir" ]; then - verbose "Contents of $TMP_DOWNLOAD_DIR:" - verbose "$(ls -la "$TMP_DOWNLOAD_DIR")" - die "Could not find Maven distribution directory in extracted archive" -fi - -verbose "Found extracted Maven distribution directory: $actualDistributionDir" -printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$actualDistributionDir/mvnw.url" -mv -- "$TMP_DOWNLOAD_DIR/$actualDistributionDir" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" - -clean || : -exec_maven "$@" diff --git a/idp/backend/idp-starter/mvnw.cmd b/idp/backend/idp-starter/mvnw.cmd deleted file mode 100644 index 92450f9..0000000 --- a/idp/backend/idp-starter/mvnw.cmd +++ /dev/null @@ -1,189 +0,0 @@ -<# : batch portion -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM http://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Apache Maven Wrapper startup batch script, version 3.3.4 -@REM -@REM Optional ENV vars -@REM MVNW_REPOURL - repo url base for downloading maven distribution -@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven -@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output -@REM ---------------------------------------------------------------------------- - -@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) -@SET __MVNW_CMD__= -@SET __MVNW_ERROR__= -@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% -@SET PSModulePath= -@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( - IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) -) -@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% -@SET __MVNW_PSMODULEP_SAVE= -@SET __MVNW_ARG0_NAME__= -@SET MVNW_USERNAME= -@SET MVNW_PASSWORD= -@IF NOT "%__MVNW_CMD__%"=="" ("%__MVNW_CMD__%" %*) -@echo Cannot start maven from wrapper >&2 && exit /b 1 -@GOTO :EOF -: end batch / begin powershell #> - -$ErrorActionPreference = "Stop" -if ($env:MVNW_VERBOSE -eq "true") { - $VerbosePreference = "Continue" -} - -# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties -$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl -if (!$distributionUrl) { - Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" -} - -switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { - "maven-mvnd-*" { - $USE_MVND = $true - $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" - $MVN_CMD = "mvnd.cmd" - break - } - default { - $USE_MVND = $false - $MVN_CMD = $script -replace '^mvnw','mvn' - break - } -} - -# apply MVNW_REPOURL and calculate MAVEN_HOME -# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ -if ($env:MVNW_REPOURL) { - $MVNW_REPO_PATTERN = if ($USE_MVND -eq $False) { "/org/apache/maven/" } else { "/maven/mvnd/" } - $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace "^.*$MVNW_REPO_PATTERN",'')" -} -$distributionUrlName = $distributionUrl -replace '^.*/','' -$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' - -$MAVEN_M2_PATH = "$HOME/.m2" -if ($env:MAVEN_USER_HOME) { - $MAVEN_M2_PATH = "$env:MAVEN_USER_HOME" -} - -if (-not (Test-Path -Path $MAVEN_M2_PATH)) { - New-Item -Path $MAVEN_M2_PATH -ItemType Directory | Out-Null -} - -$MAVEN_WRAPPER_DISTS = $null -if ((Get-Item $MAVEN_M2_PATH).Target[0] -eq $null) { - $MAVEN_WRAPPER_DISTS = "$MAVEN_M2_PATH/wrapper/dists" -} else { - $MAVEN_WRAPPER_DISTS = (Get-Item $MAVEN_M2_PATH).Target[0] + "/wrapper/dists" -} - -$MAVEN_HOME_PARENT = "$MAVEN_WRAPPER_DISTS/$distributionUrlNameMain" -$MAVEN_HOME_NAME = ([System.Security.Cryptography.SHA256]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' -$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" - -if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { - Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" - Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" - exit $? -} - -if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { - Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" -} - -# prepare tmp dir -$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile -$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" -$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null -trap { - if ($TMP_DOWNLOAD_DIR.Exists) { - try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } - catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } - } -} - -New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null - -# Download and Install Apache Maven -Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." -Write-Verbose "Downloading from: $distributionUrl" -Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" - -$webclient = New-Object System.Net.WebClient -if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { - $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) -} -[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 -$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null - -# If specified, validate the SHA-256 sum of the Maven distribution zip file -$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum -if ($distributionSha256Sum) { - if ($USE_MVND) { - Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." - } - Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash - if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { - Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." - } -} - -# unzip and move -Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null - -# Find the actual extracted directory name (handles snapshots where filename != directory name) -$actualDistributionDir = "" - -# First try the expected directory name (for regular distributions) -$expectedPath = Join-Path "$TMP_DOWNLOAD_DIR" "$distributionUrlNameMain" -$expectedMvnPath = Join-Path "$expectedPath" "bin/$MVN_CMD" -if ((Test-Path -Path $expectedPath -PathType Container) -and (Test-Path -Path $expectedMvnPath -PathType Leaf)) { - $actualDistributionDir = $distributionUrlNameMain -} - -# If not found, search for any directory with the Maven executable (for snapshots) -if (!$actualDistributionDir) { - Get-ChildItem -Path "$TMP_DOWNLOAD_DIR" -Directory | ForEach-Object { - $testPath = Join-Path $_.FullName "bin/$MVN_CMD" - if (Test-Path -Path $testPath -PathType Leaf) { - $actualDistributionDir = $_.Name - } - } -} - -if (!$actualDistributionDir) { - Write-Error "Could not find Maven distribution directory in extracted archive" -} - -Write-Verbose "Found extracted Maven distribution directory: $actualDistributionDir" -Rename-Item -Path "$TMP_DOWNLOAD_DIR/$actualDistributionDir" -NewName $MAVEN_HOME_NAME | Out-Null -try { - Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null -} catch { - if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { - Write-Error "fail to move MAVEN_HOME" - } -} finally { - try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } - catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } -} - -Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/idp/backend/idp-starter/pom.xml b/idp/backend/idp-starter/pom.xml index e4c6c9b..4a5004f 100644 --- a/idp/backend/idp-starter/pom.xml +++ b/idp/backend/idp-starter/pom.xml @@ -10,7 +10,7 @@ org.lingniu idp-starter - 0.0.1-SNAPSHOT + 1.0.0-SNAPSHOT idp-starter idp-starter diff --git a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/AuthorizationServerConfig.java b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/AuthorizationServerConfig.java index 6c13364..2f9da01 100644 --- a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/AuthorizationServerConfig.java +++ b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/AuthorizationServerConfig.java @@ -142,6 +142,7 @@ public class AuthorizationServerConfig { .scope("read") .scope("write") .build(); + // Save registered client's in db as if in-memory JdbcRegisteredClientRepository registeredClientRepository = new JdbcRegisteredClientRepository(jdbcTemplate); registeredClientRepository.save(client); diff --git a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/CaptchaConfig.java b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/CaptchaConfig.java index ef25bdf..e9304ec 100644 --- a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/CaptchaConfig.java +++ b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/config/CaptchaConfig.java @@ -37,7 +37,7 @@ public class CaptchaConfig // 验证码文本字符长度 默认为5 properties.setProperty(KAPTCHA_TEXTPRODUCER_CHAR_LENGTH, "4"); // 验证码文本字体样式 默认为new Font("Arial", 1, fontSize), new Font("Courier", 1, fontSize) - properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_NAMES, "Arial,Courier"); + properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_NAMES, "DejaVu San,DejaVu Serif,DejaVu Sans Mono,Arial,Courier"); // 图片样式 水纹com.google.code.kaptcha.impl.WaterRipple 鱼眼com.google.code.kaptcha.impl.FishEyeGimpy 阴影com.google.code.kaptcha.impl.ShadowGimpy properties.setProperty(KAPTCHA_OBSCURIFICATOR_IMPL, "com.google.code.kaptcha.impl.ShadowGimpy"); Config config = new Config(properties); @@ -71,7 +71,7 @@ public class CaptchaConfig // 验证码文本字符长度 默认为5 properties.setProperty(KAPTCHA_TEXTPRODUCER_CHAR_LENGTH, "6"); // 验证码文本字体样式 默认为new Font("Arial", 1, fontSize), new Font("Courier", 1, fontSize) - properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_NAMES, "Arial,Courier"); + properties.setProperty(KAPTCHA_TEXTPRODUCER_FONT_NAMES, "DejaVu San,DejaVu Serif,DejaVu Sans Mono,Arial,Courier"); // 验证码噪点颜色 默认为Color.BLACK properties.setProperty(KAPTCHA_NOISE_COLOR, "white"); // 干扰实现类 diff --git a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/controller/login.http b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/controller/login.http index 46dd375..dcb6ed8 100644 --- a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/controller/login.http +++ b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/controller/login.http @@ -21,11 +21,11 @@ Cookie: idp_refresh_token=7bb21a0dcac94aec99f08ae6a2d6db30 client_id=2c6f1d9ff78641c78d72a848&redirect_uri=http%3A%2F%2Flocalhost%3A81%2Fcallback&response_type=code&state=LXcbn1xobq6unvUCz5uwG7PcwtsNdbWg&scope=openid ### @name 一次性授权码登录 -POST http://localhost:8000/oauth2/token +POST http://idp.lingniu.com/oauth2/token Content-Type: application/x-www-form-urlencoded Authorization: Basic MmM2ZjFkOWZmNzg2NDFjNzhkNzJhODQ4OmkxYnBlcjFKdzJnTGVUelVOMW9uaXd1SUNQRFFnTnVRRWNZeFRLSjVpdjA= -grant_type=authorization_code&redirect_uri=http%3A%2F%2Flocalhost%3A81%2Fcallback&code=qmkNPAOk7pKTrTcHecwfSuona-O9Kjs-bbgSthovqSZz-wBhrqh9SUVeVUEN8ct4Gr7V-Dt4xMeupw3gFslSlbxZ8t2UHl74-63rGp7xnDVUGFWAA99TVa8hOnSgABZX&state=LXcbn1xobq6unvUCz5uwG7PcwtsNdbWg +grant_type=authorization_code&redirect_uri=http%3A%2F%2F106.14.217.120%2Fportal-ui%2Fcallback&code=ddaKrgG3dJCEnuRkQifzPFT-6CVPgZiPkc2B-a222jvkKT2lBId8eej9HigCP07EJphe5icFoFs85P98B-_RnCa4YP5dH6nNPazaa8Mja3u1fJ4GLu54JGduDnN_By7K&state=hFH5yAFqSxseGODiUFyCrjYVFJUnUN6GX3J9p7PyTsI%3D #### @@ -46,3 +46,19 @@ Content-Type: application/x-www-form-urlencoded Authorization: Basic MmM2ZjFkOWZmNzg2NDFjNzhkNzJhODQ4OmkxYnBlcjFKdzJnTGVUelVOMW9uaXd1SUNQRFFnTnVRRWNZeFRLSjVpdjA= grant_type=refresh_token&refresh_token=_NfU5Gdy_dANJkbvjJm6cK7PxNSHyQexWMY5KthA8Hs_nOFtPnTVChsHF-dmLjzhDRZk5nHNZWV7XhxyOp5qS-nLjScsrbvVwSmZhb20QpDLaSoUGtF-ZdBawvlceXks + + +### +GET http://idp.lingniu.com/portal-api/oauth2/authorization/portal + + +### +POST http://idp.lingniu.com/idp-api2/oauth2/authorize +Content-Type: application/x-www-form-urlencoded +Accept: application/json +Idp: bc46a1a9e21449a898e0bd978dc5b2fb + +response_type=code&client_id=2c6f1d9ff78641c78d72a848&scope=openid%20profile%20perms&state=Jy8Q9QHmuPIx9QJ3Yj_StD6b1o2pzCv4ccb6XmfnPRs%3D&redirect_uri=http://106.14.217.120/portal-ui/callback&nonce=brzv1fO14EC4sY0LFIUz9UL9W3i4xw8t3tD9tGEGBvM + +### +GET http://idp.lingniu.com/portal-api/login/oauth2/code/portal?code=8bc_NkChuAgey3hCBE6genllT_JEuMhWn7F9vvDQ9QdLdmvHoFMh891fobX8NwdvAB3fusqg6cumOResv-IISyGrOaeTx_0BizfMacNP4hXdOwPSqz1UhvH2sZvfKOVH&state=Jy8Q9QHmuPIx9QJ3Yj_StD6b1o2pzCv4ccb6XmfnPRs%3D \ No newline at end of file diff --git a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/model/vo/AccessTokenInfo.java b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/model/vo/AccessTokenInfo.java index a8d2865..fefe496 100644 --- a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/model/vo/AccessTokenInfo.java +++ b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/model/vo/AccessTokenInfo.java @@ -171,7 +171,7 @@ public class AccessTokenInfo { return null; } - AccessTokenInfo.AccessTokenInfoBuilder builder = AccessTokenInfo.builder(); + AccessTokenInfoBuilder builder = AccessTokenInfo.builder(); builder.userId((String) map.get("userId")); builder.username((String) map.get("username")); diff --git a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/utils/ClientCredentialUtil.java b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/utils/ClientCredentialUtil.java index f195d68..7725718 100644 --- a/idp/backend/idp-starter/src/main/java/org/lingniu/idp/utils/ClientCredentialUtil.java +++ b/idp/backend/idp-starter/src/main/java/org/lingniu/idp/utils/ClientCredentialUtil.java @@ -72,12 +72,12 @@ public class ClientCredentialUtil { * 生成完整的Client凭证 * @return 包含Client ID、原始Secret和加密Secret的Map */ - public static java.util.Map generateClientCredentials() { + public static Map generateClientCredentials() { String clientId = generateClientId(); String rawSecret = generateRandomSecret(32); String encodedSecret = encodeWithBCryptPrefix(rawSecret); - java.util.Map credentials = new java.util.HashMap<>(); + Map credentials = new java.util.HashMap<>(); credentials.put("clientId", clientId); credentials.put("rawSecret", rawSecret); credentials.put("encodedSecret", encodedSecret); diff --git a/idp/backend/idp-starter/src/main/resources/application-local.yml b/idp/backend/idp-starter/src/main/resources/application-dev.yml similarity index 99% rename from idp/backend/idp-starter/src/main/resources/application-local.yml rename to idp/backend/idp-starter/src/main/resources/application-dev.yml index e0da1e8..c799777 100644 --- a/idp/backend/idp-starter/src/main/resources/application-local.yml +++ b/idp/backend/idp-starter/src/main/resources/application-dev.yml @@ -14,7 +14,7 @@ project: # 验证码类型 math 数字计算 char 字符验证 captchaType: math server: - port: 8443 + port: 8082 spring: # 资源信息 diff --git a/idp/backend/idp-starter/src/main/resources/application-test.yml b/idp/backend/idp-starter/src/main/resources/application-test.yml index 24a683f..60a821b 100644 --- a/idp/backend/idp-starter/src/main/resources/application-test.yml +++ b/idp/backend/idp-starter/src/main/resources/application-test.yml @@ -14,7 +14,7 @@ project: # 验证码类型 math 数字计算 char 字符验证 captchaType: math server: - port: 8443 + port: 8082 spring: # 资源信息 messages: diff --git a/idp/backend/idp-starter/src/main/resources/application.yml b/idp/backend/idp-starter/src/main/resources/application.yml index 03c30d3..3d7808a 100644 --- a/idp/backend/idp-starter/src/main/resources/application.yml +++ b/idp/backend/idp-starter/src/main/resources/application.yml @@ -1,3 +1,3 @@ spring: profiles: - active: test + active: dev diff --git a/idp/frontend/.env.development b/idp/frontend/idp/.env.development similarity index 71% rename from idp/frontend/.env.development rename to idp/frontend/idp/.env.development index 46a1dbe..16e9df4 100644 --- a/idp/frontend/.env.development +++ b/idp/frontend/idp/.env.development @@ -4,8 +4,8 @@ VITE_APP_TITLE = IDP统一登录系统 # 开发环境配置 VITE_APP_ENV = 'development' -VITE_APP_BASE_URL=/idp-ui/ +VITE_APP_BASE_URL=/ # 开发环境 -VITE_APP_BASE_API = '/idp-api2' +VITE_APP_BASE_API = '/dev-api' VITE_APP_DEFAULT_PAGE='' diff --git a/idp/frontend/.env.production b/idp/frontend/idp/.env.production similarity index 100% rename from idp/frontend/.env.production rename to idp/frontend/idp/.env.production diff --git a/idp/frontend/.env.staging b/idp/frontend/idp/.env.staging similarity index 100% rename from idp/frontend/.env.staging rename to idp/frontend/idp/.env.staging diff --git a/idp/frontend/README.md b/idp/frontend/idp/README.md similarity index 100% rename from idp/frontend/README.md rename to idp/frontend/idp/README.md diff --git a/idp/frontend/crypto-js.d.ts b/idp/frontend/idp/crypto-js.d.ts similarity index 100% rename from idp/frontend/crypto-js.d.ts rename to idp/frontend/idp/crypto-js.d.ts diff --git a/idp/frontend/index.html b/idp/frontend/idp/index.html similarity index 100% rename from idp/frontend/index.html rename to idp/frontend/idp/index.html diff --git a/idp/frontend/package.json b/idp/frontend/idp/package.json similarity index 100% rename from idp/frontend/package.json rename to idp/frontend/idp/package.json diff --git a/idp/frontend/pnpm-lock.yaml b/idp/frontend/idp/pnpm-lock.yaml similarity index 100% rename from idp/frontend/pnpm-lock.yaml rename to idp/frontend/idp/pnpm-lock.yaml diff --git a/idp/frontend/src/App.vue b/idp/frontend/idp/src/App.vue similarity index 100% rename from idp/frontend/src/App.vue rename to idp/frontend/idp/src/App.vue diff --git a/idp/frontend/src/api/login.ts b/idp/frontend/idp/src/api/login.ts similarity index 100% rename from idp/frontend/src/api/login.ts rename to idp/frontend/idp/src/api/login.ts diff --git a/idp/frontend/src/assets/401_images/401.gif b/idp/frontend/idp/src/assets/401_images/401.gif similarity index 100% rename from idp/frontend/src/assets/401_images/401.gif rename to idp/frontend/idp/src/assets/401_images/401.gif diff --git a/idp/frontend/src/assets/404_images/404.png b/idp/frontend/idp/src/assets/404_images/404.png similarity index 100% rename from idp/frontend/src/assets/404_images/404.png rename to idp/frontend/idp/src/assets/404_images/404.png diff --git a/idp/frontend/src/assets/404_images/404_cloud.png b/idp/frontend/idp/src/assets/404_images/404_cloud.png similarity index 100% rename from idp/frontend/src/assets/404_images/404_cloud.png rename to idp/frontend/idp/src/assets/404_images/404_cloud.png diff --git a/idp/frontend/src/assets/icons/svg/404.svg b/idp/frontend/idp/src/assets/icons/svg/404.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/404.svg rename to idp/frontend/idp/src/assets/icons/svg/404.svg diff --git a/idp/frontend/src/assets/icons/svg/bug.svg b/idp/frontend/idp/src/assets/icons/svg/bug.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/bug.svg rename to idp/frontend/idp/src/assets/icons/svg/bug.svg diff --git a/idp/frontend/src/assets/icons/svg/build.svg b/idp/frontend/idp/src/assets/icons/svg/build.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/build.svg rename to idp/frontend/idp/src/assets/icons/svg/build.svg diff --git a/idp/frontend/src/assets/icons/svg/button.svg b/idp/frontend/idp/src/assets/icons/svg/button.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/button.svg rename to idp/frontend/idp/src/assets/icons/svg/button.svg diff --git a/idp/frontend/src/assets/icons/svg/cascader.svg b/idp/frontend/idp/src/assets/icons/svg/cascader.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/cascader.svg rename to idp/frontend/idp/src/assets/icons/svg/cascader.svg diff --git a/idp/frontend/src/assets/icons/svg/chart.svg b/idp/frontend/idp/src/assets/icons/svg/chart.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/chart.svg rename to idp/frontend/idp/src/assets/icons/svg/chart.svg diff --git a/idp/frontend/src/assets/icons/svg/checkbox.svg b/idp/frontend/idp/src/assets/icons/svg/checkbox.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/checkbox.svg rename to idp/frontend/idp/src/assets/icons/svg/checkbox.svg diff --git a/idp/frontend/src/assets/icons/svg/clipboard.svg b/idp/frontend/idp/src/assets/icons/svg/clipboard.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/clipboard.svg rename to idp/frontend/idp/src/assets/icons/svg/clipboard.svg diff --git a/idp/frontend/src/assets/icons/svg/code.svg b/idp/frontend/idp/src/assets/icons/svg/code.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/code.svg rename to idp/frontend/idp/src/assets/icons/svg/code.svg diff --git a/idp/frontend/src/assets/icons/svg/color.svg b/idp/frontend/idp/src/assets/icons/svg/color.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/color.svg rename to idp/frontend/idp/src/assets/icons/svg/color.svg diff --git a/idp/frontend/src/assets/icons/svg/component.svg b/idp/frontend/idp/src/assets/icons/svg/component.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/component.svg rename to idp/frontend/idp/src/assets/icons/svg/component.svg diff --git a/idp/frontend/src/assets/icons/svg/dashboard.svg b/idp/frontend/idp/src/assets/icons/svg/dashboard.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/dashboard.svg rename to idp/frontend/idp/src/assets/icons/svg/dashboard.svg diff --git a/idp/frontend/src/assets/icons/svg/date-range.svg b/idp/frontend/idp/src/assets/icons/svg/date-range.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/date-range.svg rename to idp/frontend/idp/src/assets/icons/svg/date-range.svg diff --git a/idp/frontend/src/assets/icons/svg/date.svg b/idp/frontend/idp/src/assets/icons/svg/date.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/date.svg rename to idp/frontend/idp/src/assets/icons/svg/date.svg diff --git a/idp/frontend/src/assets/icons/svg/dict.svg b/idp/frontend/idp/src/assets/icons/svg/dict.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/dict.svg rename to idp/frontend/idp/src/assets/icons/svg/dict.svg diff --git a/idp/frontend/src/assets/icons/svg/documentation.svg b/idp/frontend/idp/src/assets/icons/svg/documentation.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/documentation.svg rename to idp/frontend/idp/src/assets/icons/svg/documentation.svg diff --git a/idp/frontend/src/assets/icons/svg/download.svg b/idp/frontend/idp/src/assets/icons/svg/download.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/download.svg rename to idp/frontend/idp/src/assets/icons/svg/download.svg diff --git a/idp/frontend/src/assets/icons/svg/drag.svg b/idp/frontend/idp/src/assets/icons/svg/drag.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/drag.svg rename to idp/frontend/idp/src/assets/icons/svg/drag.svg diff --git a/idp/frontend/src/assets/icons/svg/druid.svg b/idp/frontend/idp/src/assets/icons/svg/druid.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/druid.svg rename to idp/frontend/idp/src/assets/icons/svg/druid.svg diff --git a/idp/frontend/src/assets/icons/svg/edit.svg b/idp/frontend/idp/src/assets/icons/svg/edit.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/edit.svg rename to idp/frontend/idp/src/assets/icons/svg/edit.svg diff --git a/idp/frontend/src/assets/icons/svg/education.svg b/idp/frontend/idp/src/assets/icons/svg/education.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/education.svg rename to idp/frontend/idp/src/assets/icons/svg/education.svg diff --git a/idp/frontend/src/assets/icons/svg/email.svg b/idp/frontend/idp/src/assets/icons/svg/email.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/email.svg rename to idp/frontend/idp/src/assets/icons/svg/email.svg diff --git a/idp/frontend/src/assets/icons/svg/enter.svg b/idp/frontend/idp/src/assets/icons/svg/enter.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/enter.svg rename to idp/frontend/idp/src/assets/icons/svg/enter.svg diff --git a/idp/frontend/src/assets/icons/svg/example.svg b/idp/frontend/idp/src/assets/icons/svg/example.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/example.svg rename to idp/frontend/idp/src/assets/icons/svg/example.svg diff --git a/idp/frontend/src/assets/icons/svg/excel.svg b/idp/frontend/idp/src/assets/icons/svg/excel.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/excel.svg rename to idp/frontend/idp/src/assets/icons/svg/excel.svg diff --git a/idp/frontend/src/assets/icons/svg/exit-fullscreen.svg b/idp/frontend/idp/src/assets/icons/svg/exit-fullscreen.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/exit-fullscreen.svg rename to idp/frontend/idp/src/assets/icons/svg/exit-fullscreen.svg diff --git a/idp/frontend/src/assets/icons/svg/eye-open.svg b/idp/frontend/idp/src/assets/icons/svg/eye-open.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/eye-open.svg rename to idp/frontend/idp/src/assets/icons/svg/eye-open.svg diff --git a/idp/frontend/src/assets/icons/svg/eye.svg b/idp/frontend/idp/src/assets/icons/svg/eye.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/eye.svg rename to idp/frontend/idp/src/assets/icons/svg/eye.svg diff --git a/idp/frontend/src/assets/icons/svg/form.svg b/idp/frontend/idp/src/assets/icons/svg/form.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/form.svg rename to idp/frontend/idp/src/assets/icons/svg/form.svg diff --git a/idp/frontend/src/assets/icons/svg/fullscreen.svg b/idp/frontend/idp/src/assets/icons/svg/fullscreen.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/fullscreen.svg rename to idp/frontend/idp/src/assets/icons/svg/fullscreen.svg diff --git a/idp/frontend/src/assets/icons/svg/github.svg b/idp/frontend/idp/src/assets/icons/svg/github.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/github.svg rename to idp/frontend/idp/src/assets/icons/svg/github.svg diff --git a/idp/frontend/src/assets/icons/svg/guide.svg b/idp/frontend/idp/src/assets/icons/svg/guide.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/guide.svg rename to idp/frontend/idp/src/assets/icons/svg/guide.svg diff --git a/idp/frontend/src/assets/icons/svg/icon.svg b/idp/frontend/idp/src/assets/icons/svg/icon.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/icon.svg rename to idp/frontend/idp/src/assets/icons/svg/icon.svg diff --git a/idp/frontend/src/assets/icons/svg/input.svg b/idp/frontend/idp/src/assets/icons/svg/input.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/input.svg rename to idp/frontend/idp/src/assets/icons/svg/input.svg diff --git a/idp/frontend/src/assets/icons/svg/international.svg b/idp/frontend/idp/src/assets/icons/svg/international.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/international.svg rename to idp/frontend/idp/src/assets/icons/svg/international.svg diff --git a/idp/frontend/src/assets/icons/svg/job.svg b/idp/frontend/idp/src/assets/icons/svg/job.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/job.svg rename to idp/frontend/idp/src/assets/icons/svg/job.svg diff --git a/idp/frontend/src/assets/icons/svg/language.svg b/idp/frontend/idp/src/assets/icons/svg/language.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/language.svg rename to idp/frontend/idp/src/assets/icons/svg/language.svg diff --git a/idp/frontend/src/assets/icons/svg/link.svg b/idp/frontend/idp/src/assets/icons/svg/link.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/link.svg rename to idp/frontend/idp/src/assets/icons/svg/link.svg diff --git a/idp/frontend/src/assets/icons/svg/list.svg b/idp/frontend/idp/src/assets/icons/svg/list.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/list.svg rename to idp/frontend/idp/src/assets/icons/svg/list.svg diff --git a/idp/frontend/src/assets/icons/svg/lock.svg b/idp/frontend/idp/src/assets/icons/svg/lock.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/lock.svg rename to idp/frontend/idp/src/assets/icons/svg/lock.svg diff --git a/idp/frontend/src/assets/icons/svg/log.svg b/idp/frontend/idp/src/assets/icons/svg/log.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/log.svg rename to idp/frontend/idp/src/assets/icons/svg/log.svg diff --git a/idp/frontend/src/assets/icons/svg/logininfor.svg b/idp/frontend/idp/src/assets/icons/svg/logininfor.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/logininfor.svg rename to idp/frontend/idp/src/assets/icons/svg/logininfor.svg diff --git a/idp/frontend/src/assets/icons/svg/message.svg b/idp/frontend/idp/src/assets/icons/svg/message.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/message.svg rename to idp/frontend/idp/src/assets/icons/svg/message.svg diff --git a/idp/frontend/src/assets/icons/svg/money.svg b/idp/frontend/idp/src/assets/icons/svg/money.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/money.svg rename to idp/frontend/idp/src/assets/icons/svg/money.svg diff --git a/idp/frontend/src/assets/icons/svg/monitor.svg b/idp/frontend/idp/src/assets/icons/svg/monitor.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/monitor.svg rename to idp/frontend/idp/src/assets/icons/svg/monitor.svg diff --git a/idp/frontend/src/assets/icons/svg/moon.svg b/idp/frontend/idp/src/assets/icons/svg/moon.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/moon.svg rename to idp/frontend/idp/src/assets/icons/svg/moon.svg diff --git a/idp/frontend/src/assets/icons/svg/more-up.svg b/idp/frontend/idp/src/assets/icons/svg/more-up.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/more-up.svg rename to idp/frontend/idp/src/assets/icons/svg/more-up.svg diff --git a/idp/frontend/src/assets/icons/svg/nested.svg b/idp/frontend/idp/src/assets/icons/svg/nested.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/nested.svg rename to idp/frontend/idp/src/assets/icons/svg/nested.svg diff --git a/idp/frontend/src/assets/icons/svg/number.svg b/idp/frontend/idp/src/assets/icons/svg/number.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/number.svg rename to idp/frontend/idp/src/assets/icons/svg/number.svg diff --git a/idp/frontend/src/assets/icons/svg/online.svg b/idp/frontend/idp/src/assets/icons/svg/online.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/online.svg rename to idp/frontend/idp/src/assets/icons/svg/online.svg diff --git a/idp/frontend/src/assets/icons/svg/password.svg b/idp/frontend/idp/src/assets/icons/svg/password.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/password.svg rename to idp/frontend/idp/src/assets/icons/svg/password.svg diff --git a/idp/frontend/src/assets/icons/svg/pdf.svg b/idp/frontend/idp/src/assets/icons/svg/pdf.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/pdf.svg rename to idp/frontend/idp/src/assets/icons/svg/pdf.svg diff --git a/idp/frontend/src/assets/icons/svg/people.svg b/idp/frontend/idp/src/assets/icons/svg/people.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/people.svg rename to idp/frontend/idp/src/assets/icons/svg/people.svg diff --git a/idp/frontend/src/assets/icons/svg/peoples.svg b/idp/frontend/idp/src/assets/icons/svg/peoples.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/peoples.svg rename to idp/frontend/idp/src/assets/icons/svg/peoples.svg diff --git a/idp/frontend/src/assets/icons/svg/phone.svg b/idp/frontend/idp/src/assets/icons/svg/phone.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/phone.svg rename to idp/frontend/idp/src/assets/icons/svg/phone.svg diff --git a/idp/frontend/src/assets/icons/svg/post.svg b/idp/frontend/idp/src/assets/icons/svg/post.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/post.svg rename to idp/frontend/idp/src/assets/icons/svg/post.svg diff --git a/idp/frontend/src/assets/icons/svg/qq.svg b/idp/frontend/idp/src/assets/icons/svg/qq.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/qq.svg rename to idp/frontend/idp/src/assets/icons/svg/qq.svg diff --git a/idp/frontend/src/assets/icons/svg/question.svg b/idp/frontend/idp/src/assets/icons/svg/question.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/question.svg rename to idp/frontend/idp/src/assets/icons/svg/question.svg diff --git a/idp/frontend/src/assets/icons/svg/radio.svg b/idp/frontend/idp/src/assets/icons/svg/radio.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/radio.svg rename to idp/frontend/idp/src/assets/icons/svg/radio.svg diff --git a/idp/frontend/src/assets/icons/svg/rate.svg b/idp/frontend/idp/src/assets/icons/svg/rate.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/rate.svg rename to idp/frontend/idp/src/assets/icons/svg/rate.svg diff --git a/idp/frontend/src/assets/icons/svg/redis-list.svg b/idp/frontend/idp/src/assets/icons/svg/redis-list.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/redis-list.svg rename to idp/frontend/idp/src/assets/icons/svg/redis-list.svg diff --git a/idp/frontend/src/assets/icons/svg/redis.svg b/idp/frontend/idp/src/assets/icons/svg/redis.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/redis.svg rename to idp/frontend/idp/src/assets/icons/svg/redis.svg diff --git a/idp/frontend/src/assets/icons/svg/row.svg b/idp/frontend/idp/src/assets/icons/svg/row.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/row.svg rename to idp/frontend/idp/src/assets/icons/svg/row.svg diff --git a/idp/frontend/src/assets/icons/svg/search.svg b/idp/frontend/idp/src/assets/icons/svg/search.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/search.svg rename to idp/frontend/idp/src/assets/icons/svg/search.svg diff --git a/idp/frontend/src/assets/icons/svg/select.svg b/idp/frontend/idp/src/assets/icons/svg/select.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/select.svg rename to idp/frontend/idp/src/assets/icons/svg/select.svg diff --git a/idp/frontend/src/assets/icons/svg/server.svg b/idp/frontend/idp/src/assets/icons/svg/server.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/server.svg rename to idp/frontend/idp/src/assets/icons/svg/server.svg diff --git a/idp/frontend/src/assets/icons/svg/shopping.svg b/idp/frontend/idp/src/assets/icons/svg/shopping.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/shopping.svg rename to idp/frontend/idp/src/assets/icons/svg/shopping.svg diff --git a/idp/frontend/src/assets/icons/svg/size.svg b/idp/frontend/idp/src/assets/icons/svg/size.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/size.svg rename to idp/frontend/idp/src/assets/icons/svg/size.svg diff --git a/idp/frontend/src/assets/icons/svg/skill.svg b/idp/frontend/idp/src/assets/icons/svg/skill.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/skill.svg rename to idp/frontend/idp/src/assets/icons/svg/skill.svg diff --git a/idp/frontend/src/assets/icons/svg/slider.svg b/idp/frontend/idp/src/assets/icons/svg/slider.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/slider.svg rename to idp/frontend/idp/src/assets/icons/svg/slider.svg diff --git a/idp/frontend/src/assets/icons/svg/star.svg b/idp/frontend/idp/src/assets/icons/svg/star.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/star.svg rename to idp/frontend/idp/src/assets/icons/svg/star.svg diff --git a/idp/frontend/src/assets/icons/svg/sunny.svg b/idp/frontend/idp/src/assets/icons/svg/sunny.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/sunny.svg rename to idp/frontend/idp/src/assets/icons/svg/sunny.svg diff --git a/idp/frontend/src/assets/icons/svg/swagger.svg b/idp/frontend/idp/src/assets/icons/svg/swagger.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/swagger.svg rename to idp/frontend/idp/src/assets/icons/svg/swagger.svg diff --git a/idp/frontend/src/assets/icons/svg/switch.svg b/idp/frontend/idp/src/assets/icons/svg/switch.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/switch.svg rename to idp/frontend/idp/src/assets/icons/svg/switch.svg diff --git a/idp/frontend/src/assets/icons/svg/system.svg b/idp/frontend/idp/src/assets/icons/svg/system.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/system.svg rename to idp/frontend/idp/src/assets/icons/svg/system.svg diff --git a/idp/frontend/src/assets/icons/svg/tab.svg b/idp/frontend/idp/src/assets/icons/svg/tab.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/tab.svg rename to idp/frontend/idp/src/assets/icons/svg/tab.svg diff --git a/idp/frontend/src/assets/icons/svg/table.svg b/idp/frontend/idp/src/assets/icons/svg/table.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/table.svg rename to idp/frontend/idp/src/assets/icons/svg/table.svg diff --git a/idp/frontend/src/assets/icons/svg/textarea.svg b/idp/frontend/idp/src/assets/icons/svg/textarea.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/textarea.svg rename to idp/frontend/idp/src/assets/icons/svg/textarea.svg diff --git a/idp/frontend/src/assets/icons/svg/theme.svg b/idp/frontend/idp/src/assets/icons/svg/theme.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/theme.svg rename to idp/frontend/idp/src/assets/icons/svg/theme.svg diff --git a/idp/frontend/src/assets/icons/svg/time-range.svg b/idp/frontend/idp/src/assets/icons/svg/time-range.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/time-range.svg rename to idp/frontend/idp/src/assets/icons/svg/time-range.svg diff --git a/idp/frontend/src/assets/icons/svg/time.svg b/idp/frontend/idp/src/assets/icons/svg/time.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/time.svg rename to idp/frontend/idp/src/assets/icons/svg/time.svg diff --git a/idp/frontend/src/assets/icons/svg/tool.svg b/idp/frontend/idp/src/assets/icons/svg/tool.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/tool.svg rename to idp/frontend/idp/src/assets/icons/svg/tool.svg diff --git a/idp/frontend/src/assets/icons/svg/tree-table.svg b/idp/frontend/idp/src/assets/icons/svg/tree-table.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/tree-table.svg rename to idp/frontend/idp/src/assets/icons/svg/tree-table.svg diff --git a/idp/frontend/src/assets/icons/svg/tree.svg b/idp/frontend/idp/src/assets/icons/svg/tree.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/tree.svg rename to idp/frontend/idp/src/assets/icons/svg/tree.svg diff --git a/idp/frontend/src/assets/icons/svg/upload.svg b/idp/frontend/idp/src/assets/icons/svg/upload.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/upload.svg rename to idp/frontend/idp/src/assets/icons/svg/upload.svg diff --git a/idp/frontend/src/assets/icons/svg/user.svg b/idp/frontend/idp/src/assets/icons/svg/user.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/user.svg rename to idp/frontend/idp/src/assets/icons/svg/user.svg diff --git a/idp/frontend/src/assets/icons/svg/validCode.svg b/idp/frontend/idp/src/assets/icons/svg/validCode.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/validCode.svg rename to idp/frontend/idp/src/assets/icons/svg/validCode.svg diff --git a/idp/frontend/src/assets/icons/svg/wechat.svg b/idp/frontend/idp/src/assets/icons/svg/wechat.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/wechat.svg rename to idp/frontend/idp/src/assets/icons/svg/wechat.svg diff --git a/idp/frontend/src/assets/icons/svg/zip.svg b/idp/frontend/idp/src/assets/icons/svg/zip.svg similarity index 100% rename from idp/frontend/src/assets/icons/svg/zip.svg rename to idp/frontend/idp/src/assets/icons/svg/zip.svg diff --git a/idp/frontend/src/assets/images/login.png b/idp/frontend/idp/src/assets/images/login.png similarity index 100% rename from idp/frontend/src/assets/images/login.png rename to idp/frontend/idp/src/assets/images/login.png diff --git a/idp/frontend/src/assets/styles/btn.scss b/idp/frontend/idp/src/assets/styles/btn.scss similarity index 100% rename from idp/frontend/src/assets/styles/btn.scss rename to idp/frontend/idp/src/assets/styles/btn.scss diff --git a/idp/frontend/src/assets/styles/element-ui.scss b/idp/frontend/idp/src/assets/styles/element-ui.scss similarity index 100% rename from idp/frontend/src/assets/styles/element-ui.scss rename to idp/frontend/idp/src/assets/styles/element-ui.scss diff --git a/idp/frontend/src/assets/styles/idp.scss b/idp/frontend/idp/src/assets/styles/idp.scss similarity index 100% rename from idp/frontend/src/assets/styles/idp.scss rename to idp/frontend/idp/src/assets/styles/idp.scss diff --git a/idp/frontend/src/assets/styles/index.scss b/idp/frontend/idp/src/assets/styles/index.scss similarity index 100% rename from idp/frontend/src/assets/styles/index.scss rename to idp/frontend/idp/src/assets/styles/index.scss diff --git a/idp/frontend/src/assets/styles/mixin.scss b/idp/frontend/idp/src/assets/styles/mixin.scss similarity index 100% rename from idp/frontend/src/assets/styles/mixin.scss rename to idp/frontend/idp/src/assets/styles/mixin.scss diff --git a/idp/frontend/src/assets/styles/sidebar.scss b/idp/frontend/idp/src/assets/styles/sidebar.scss similarity index 100% rename from idp/frontend/src/assets/styles/sidebar.scss rename to idp/frontend/idp/src/assets/styles/sidebar.scss diff --git a/idp/frontend/src/assets/styles/transition.scss b/idp/frontend/idp/src/assets/styles/transition.scss similarity index 100% rename from idp/frontend/src/assets/styles/transition.scss rename to idp/frontend/idp/src/assets/styles/transition.scss diff --git a/idp/frontend/src/assets/styles/variables.module.scss b/idp/frontend/idp/src/assets/styles/variables.module.scss similarity index 100% rename from idp/frontend/src/assets/styles/variables.module.scss rename to idp/frontend/idp/src/assets/styles/variables.module.scss diff --git a/idp/frontend/src/components/SvgIcon/index.ts b/idp/frontend/idp/src/components/SvgIcon/index.ts similarity index 100% rename from idp/frontend/src/components/SvgIcon/index.ts rename to idp/frontend/idp/src/components/SvgIcon/index.ts diff --git a/idp/frontend/src/components/SvgIcon/index.vue b/idp/frontend/idp/src/components/SvgIcon/index.vue similarity index 100% rename from idp/frontend/src/components/SvgIcon/index.vue rename to idp/frontend/idp/src/components/SvgIcon/index.vue diff --git a/idp/frontend/src/components/SvgIcon/svgicon.ts b/idp/frontend/idp/src/components/SvgIcon/svgicon.ts similarity index 100% rename from idp/frontend/src/components/SvgIcon/svgicon.ts rename to idp/frontend/idp/src/components/SvgIcon/svgicon.ts diff --git a/idp/frontend/src/main.ts b/idp/frontend/idp/src/main.ts similarity index 100% rename from idp/frontend/src/main.ts rename to idp/frontend/idp/src/main.ts diff --git a/idp/frontend/src/router/index.ts b/idp/frontend/idp/src/router/index.ts similarity index 100% rename from idp/frontend/src/router/index.ts rename to idp/frontend/idp/src/router/index.ts diff --git a/idp/frontend/src/settings.ts b/idp/frontend/idp/src/settings.ts similarity index 100% rename from idp/frontend/src/settings.ts rename to idp/frontend/idp/src/settings.ts diff --git a/idp/frontend/src/stores/auth.ts b/idp/frontend/idp/src/stores/auth.ts similarity index 100% rename from idp/frontend/src/stores/auth.ts rename to idp/frontend/idp/src/stores/auth.ts diff --git a/idp/frontend/src/stores/index.ts b/idp/frontend/idp/src/stores/index.ts similarity index 100% rename from idp/frontend/src/stores/index.ts rename to idp/frontend/idp/src/stores/index.ts diff --git a/idp/frontend/src/stores/user.ts b/idp/frontend/idp/src/stores/user.ts similarity index 100% rename from idp/frontend/src/stores/user.ts rename to idp/frontend/idp/src/stores/user.ts diff --git a/idp/frontend/src/types/crypto-js.d.ts b/idp/frontend/idp/src/types/crypto-js.d.ts similarity index 100% rename from idp/frontend/src/types/crypto-js.d.ts rename to idp/frontend/idp/src/types/crypto-js.d.ts diff --git a/idp/frontend/src/types/index.ts b/idp/frontend/idp/src/types/index.ts similarity index 100% rename from idp/frontend/src/types/index.ts rename to idp/frontend/idp/src/types/index.ts diff --git a/idp/frontend/src/utils/auth.ts b/idp/frontend/idp/src/utils/auth.ts similarity index 100% rename from idp/frontend/src/utils/auth.ts rename to idp/frontend/idp/src/utils/auth.ts diff --git a/idp/frontend/src/utils/cache.ts b/idp/frontend/idp/src/utils/cache.ts similarity index 100% rename from idp/frontend/src/utils/cache.ts rename to idp/frontend/idp/src/utils/cache.ts diff --git a/idp/frontend/src/utils/encryptor.ts b/idp/frontend/idp/src/utils/encryptor.ts similarity index 100% rename from idp/frontend/src/utils/encryptor.ts rename to idp/frontend/idp/src/utils/encryptor.ts diff --git a/idp/frontend/src/utils/errorCode.ts b/idp/frontend/idp/src/utils/errorCode.ts similarity index 100% rename from idp/frontend/src/utils/errorCode.ts rename to idp/frontend/idp/src/utils/errorCode.ts diff --git a/idp/frontend/src/utils/jsencrypt.ts b/idp/frontend/idp/src/utils/jsencrypt.ts similarity index 100% rename from idp/frontend/src/utils/jsencrypt.ts rename to idp/frontend/idp/src/utils/jsencrypt.ts diff --git a/idp/frontend/src/utils/request.ts b/idp/frontend/idp/src/utils/request.ts similarity index 100% rename from idp/frontend/src/utils/request.ts rename to idp/frontend/idp/src/utils/request.ts diff --git a/idp/frontend/src/utils/storage.ts b/idp/frontend/idp/src/utils/storage.ts similarity index 100% rename from idp/frontend/src/utils/storage.ts rename to idp/frontend/idp/src/utils/storage.ts diff --git a/idp/frontend/src/utils/validate.ts b/idp/frontend/idp/src/utils/validate.ts similarity index 100% rename from idp/frontend/src/utils/validate.ts rename to idp/frontend/idp/src/utils/validate.ts diff --git a/idp/frontend/src/views/LoginPage.vue b/idp/frontend/idp/src/views/LoginPage.vue similarity index 100% rename from idp/frontend/src/views/LoginPage.vue rename to idp/frontend/idp/src/views/LoginPage.vue diff --git a/idp/frontend/src/views/login/PasswordLogin.vue b/idp/frontend/idp/src/views/login/PasswordLogin.vue similarity index 100% rename from idp/frontend/src/views/login/PasswordLogin.vue rename to idp/frontend/idp/src/views/login/PasswordLogin.vue diff --git a/idp/frontend/src/views/login/SmsLogin.vue b/idp/frontend/idp/src/views/login/SmsLogin.vue similarity index 100% rename from idp/frontend/src/views/login/SmsLogin.vue rename to idp/frontend/idp/src/views/login/SmsLogin.vue diff --git a/idp/frontend/src/views/login/Sso.vue b/idp/frontend/idp/src/views/login/Sso.vue similarity index 90% rename from idp/frontend/src/views/login/Sso.vue rename to idp/frontend/idp/src/views/login/Sso.vue index 7be72d6..8ef10cd 100644 --- a/idp/frontend/src/views/login/Sso.vue +++ b/idp/frontend/idp/src/views/login/Sso.vue @@ -1,14 +1,6 @@