From 9ffad647730f5509df39b4deafa7f619a1165712 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E6=B5=B7=E5=AE=81?= <15600600491@163.com>
Date: Wed, 27 Mar 2024 18:09:04 +0800
Subject: [PATCH] asa
---
.idea/compiler.xml | 21 +-
.idea/encodings.xml | 12 +-
.idea/misc.xml | 1 +
README.md | 2 +-
devops/build/build.sh | 57 -----
devops/release/deploy.sh | 47 ----
pom.xml | 18 +-
{zhn-auth => xsnb-auth}/Dockerfile | 10 +-
{zhn-auth => xsnb-auth}/pom.xml | 20 +-
.../main/java/com/xsnb}/auth/AuthMian.java | 6 +-
.../xsnb/auth/controller/AuthController.java | 53 ++++
.../com/xsnb}/auth/feign/AuthFeignSystem.java | 9 +-
.../com/xsnb/auth/service/AuthService.java | 17 ++
.../auth/service/impl/AuthServiceImpl.java | 124 ++++++++++
.../src/main/resources}/bootstrap.yml | 6 +-
.../src/main/resources}/mapper/AuthMapper.xml | 4 +-
{zhn-common => xsnb-common}/pom.xml | 31 ++-
.../com/xsnb}/common/constants/Constants.java | 4 +-
.../xsnb}/common/constants/JwtConstants.java | 4 +-
.../common/constants/RabbitMQConstants.java | 11 +
.../common/constants/TokenConstants.java | 4 +-
.../java/com/xsnb/common/domain/User.java | 22 ++
.../common/domain/request/RequestUser.java | 4 +-
.../xsnb}/common/domain/response/RespJwt.java | 4 +-
.../common/domain/response/ResponseUser.java | 2 +-
.../com/xsnb}/common/result/PageResult.java | 4 +-
.../java/com/xsnb}/common/result/Result.java | 6 +-
.../java/com/xsnb}/common/utils/JwtUtils.java | 6 +-
.../com/xsnb}/common/utils/Msg/HttpUtils.java | 4 +-
.../com/xsnb}/common/utils/Msg/MsgUtil.java | 2 +-
.../java/com/xsnb}/common/utils/OssUtil.java | 2 +-
.../com/xsnb}/common/utils/StringUtils.java | 4 +-
.../com/xsnb}/common/utils/TelSmsUtils.java | 23 +-
.../xsnb/common/utils/mqUtile/DLXQueue.java | 77 ++++++
.../common/utils/mqUtile/DelayedQueue.java | 79 ++++++
.../xsnb/common/utils/mqUtile/RabbitMQ.java | 8 +
.../xsnb/common/utils/mqUtile/TtlQueue.java | 66 +++++
.../src/main/resources/date.txt | 0
xsnb-gateway/Dockerfile | 15 ++
{zhn-gateway => xsnb-gateway}/pom.xml | 20 +-
.../java/com/xsnb}/gateway/GatewayMian.java | 4 +-
.../gateway/config/IgnoreWhiteConfig.java | 4 +-
.../com/xsnb/gateway/constants/Constants.java | 4 +
.../xsnb}/gateway/filters/AuthFilters.java | 15 +-
.../com/xsnb}/gateway/utils/GatewayUtils.java | 8 +-
.../src/main/resources/bootstrap.yml | 6 +-
{zhn-modules => xsnb-modules}/pom.xml | 10 +-
xsnb-modules/xsnb-system/Dockerfile | 15 ++
.../xsnb-system}/pom.xml | 22 +-
.../java/com/xsnb}/system/SystemMian.java | 4 +-
.../com/xsnb/system/config/MailSender.java | 48 ++++
.../system/controller/DomeController.java | 50 ++++
.../system/controller/UserController.java | 32 +++
.../com/xsnb/system/domain/Attachment.java | 21 ++
.../java/com/xsnb/system/domain/Mail.java | 31 +++
.../com/xsnb/system/domain/MinioReturn.java | 35 +++
.../com/xsnb/system/domain/req/ReqMail.java | 30 +++
.../com/xsnb/system/mapper/MailMapper.java | 7 +
.../com/xsnb/system/mapper/UserMapper.java | 12 +
.../rabbitMQ/MessageConsumerService.java | 60 +++++
.../com/xsnb/system/service/MailService.java | 25 ++
.../com/xsnb/system/service/UserService.java | 10 +
.../system/service/impl/MailServiceImpl.java | 61 +++++
.../system/service/impl/UserServiceImpl.java | 27 +++
.../com/xsnb/system/utils/EmailUtils.java | 90 +++++++
.../src/main/resources/bootstrap.yml | 50 ++++
.../zhn/auth/controller/AuthController.java | 32 ---
.../com/zhn/auth/service/AuthService.java | 14 --
.../auth/service/impl/AuthServiceImpl.java | 85 -------
zhn-auth/src/main/resources/bootstrap.yml | 31 ---
.../src/main/resources/mapper/AuthMapper.xml | 7 -
.../classes/com/zhn/auth/AuthMian.class | Bin 767 -> 0 bytes
.../zhn/auth/controller/AuthController.class | Bin 1629 -> 0 bytes
.../com/zhn/auth/feign/AuthFeignSystem.class | Bin 666 -> 0 bytes
.../com/zhn/auth/service/AuthService.class | Bin 628 -> 0 bytes
.../auth/service/impl/AuthServiceImpl.class | Bin 4551 -> 0 bytes
.../main/java/com/zhn/common/domain/User.java | 22 --
.../com/zhn/common/constants/Constants.class | Bin 649 -> 0 bytes
.../zhn/common/constants/JwtConstants.class | Bin 542 -> 0 bytes
.../zhn/common/constants/TokenConstants.class | Bin 524 -> 0 bytes
.../classes/com/zhn/common/domain/User.class | Bin 4617 -> 0 bytes
.../common/domain/request/RequestUser.class | Bin 4998 -> 0 bytes
.../zhn/common/domain/response/RespJwt.class | Bin 1890 -> 0 bytes
.../common/domain/response/ResponseUser.class | Bin 4667 -> 0 bytes
.../com/zhn/common/result/PageResult.class | Bin 3287 -> 0 bytes
.../com/zhn/common/result/Result.class | Bin 4863 -> 0 bytes
.../com/zhn/common/utils/JwtUtils.class | Bin 2868 -> 0 bytes
.../zhn/common/utils/Msg/HttpUtils$1.class | Bin 1001 -> 0 bytes
.../com/zhn/common/utils/Msg/HttpUtils.class | Bin 10265 -> 0 bytes
.../com/zhn/common/utils/Msg/MsgUtil.class | Bin 2009 -> 0 bytes
.../com/zhn/common/utils/OssUtil.class | Bin 5189 -> 0 bytes
.../com/zhn/common/utils/StringUtils.class | Bin 1803 -> 0 bytes
.../com/zhn/common/utils/TelSmsUtils.class | Bin 3740 -> 0 bytes
zhn-common/target/classes/date.txt | 1 -
zhn-gateway/Dockerfile | 15 --
.../com/zhn/gateway/constants/Constants.java | 4 -
zhn-gateway/target/classes/bootstrap.yml | 29 ---
.../classes/com/zhn/gateway/GatewayMian.class | Bin 719 -> 0 bytes
.../gateway/config/IgnoreWhiteConfig.class | Bin 2582 -> 0 bytes
.../com/zhn/gateway/constants/Constants.class | Bin 304 -> 0 bytes
.../com/zhn/gateway/filters/AuthFilters.class | Bin 5201 -> 0 bytes
.../com/zhn/gateway/utils/GatewayUtils.class | Bin 6200 -> 0 bytes
zhn-modules/zhn-system/Dockerfile | 15 --
.../zhn/system/controller/UserController.java | 42 ----
.../com/zhn/system/mapper/UserMapper.java | 15 --
.../com/zhn/system/service/UserService.java | 11 -
.../system/service/impl/UserServiceImpl.java | 28 ---
.../src/main/resources/bootstrap.yml | 42 ----
.../src/main/resources/mappers/UserMapper.xml | 22 --
.../zhn-system/target/classes/bootstrap.yml | 42 ----
.../classes/com/zhn/system/SystemMian.class | Bin 844 -> 0 bytes
.../system/controller/UserController.class | Bin 1608 -> 0 bytes
.../com/zhn/system/mapper/UserMapper.class | Bin 510 -> 0 bytes
.../com/zhn/system/service/UserService.class | Bin 462 -> 0 bytes
.../system/service/impl/UserServiceImpl.class | Bin 1385 -> 0 bytes
.../target/classes/mappers/UserMapper.xml | 22 --
zhn-vue-ui/.editorconfig | 14 --
zhn-vue-ui/.env.development | 5 -
zhn-vue-ui/.env.production | 6 -
zhn-vue-ui/.env.staging | 8 -
zhn-vue-ui/.eslintignore | 5 -
zhn-vue-ui/.eslintrc.js | 198 ---------------
zhn-vue-ui/.gitignore | 16 --
zhn-vue-ui/.travis.yml | 5 -
zhn-vue-ui/LICENSE | 21 --
zhn-vue-ui/README-zh.md | 111 ---------
zhn-vue-ui/README.md | 99 --------
zhn-vue-ui/babel.config.js | 14 --
zhn-vue-ui/build/index.js | 35 ---
zhn-vue-ui/jest.config.js | 24 --
zhn-vue-ui/jsconfig.json | 9 -
zhn-vue-ui/package.json | 62 -----
zhn-vue-ui/postcss.config.js | 8 -
zhn-vue-ui/public/favicon.ico | Bin 67646 -> 0 bytes
zhn-vue-ui/public/index.html | 17 --
zhn-vue-ui/src/App.vue | 11 -
zhn-vue-ui/src/api/table.js | 9 -
zhn-vue-ui/src/api/user.js | 24 --
zhn-vue-ui/src/assets/404_images/404.png | Bin 98071 -> 0 bytes
.../src/assets/404_images/404_cloud.png | Bin 4766 -> 0 bytes
.../src/components/Breadcrumb/index.vue | 78 ------
zhn-vue-ui/src/components/Hamburger/index.vue | 44 ----
zhn-vue-ui/src/components/SvgIcon/index.vue | 62 -----
zhn-vue-ui/src/icons/index.js | 9 -
zhn-vue-ui/src/icons/svg/dashboard.svg | 1 -
zhn-vue-ui/src/icons/svg/example.svg | 1 -
zhn-vue-ui/src/icons/svg/eye-open.svg | 1 -
zhn-vue-ui/src/icons/svg/eye.svg | 1 -
zhn-vue-ui/src/icons/svg/form.svg | 1 -
zhn-vue-ui/src/icons/svg/link.svg | 1 -
zhn-vue-ui/src/icons/svg/nested.svg | 1 -
zhn-vue-ui/src/icons/svg/password.svg | 1 -
zhn-vue-ui/src/icons/svg/table.svg | 1 -
zhn-vue-ui/src/icons/svg/tree.svg | 1 -
zhn-vue-ui/src/icons/svg/user.svg | 1 -
zhn-vue-ui/src/icons/svgo.yml | 22 --
zhn-vue-ui/src/layout/components/AppMain.vue | 40 ---
zhn-vue-ui/src/layout/components/Navbar.vue | 136 -----------
.../layout/components/Sidebar/FixiOSBug.js | 26 --
.../src/layout/components/Sidebar/Item.vue | 42 ----
.../src/layout/components/Sidebar/Link.vue | 44 ----
.../src/layout/components/Sidebar/Logo.vue | 82 -------
.../layout/components/Sidebar/SidebarItem.vue | 95 --------
.../src/layout/components/Sidebar/index.vue | 57 -----
zhn-vue-ui/src/layout/components/index.js | 3 -
zhn-vue-ui/src/layout/index.vue | 102 --------
zhn-vue-ui/src/layout/mixin/ResizeHandler.js | 45 ----
zhn-vue-ui/src/main.js | 42 ----
zhn-vue-ui/src/permission.js | 67 -----
zhn-vue-ui/src/router/index.js | 103 --------
zhn-vue-ui/src/settings.js | 16 --
zhn-vue-ui/src/store/getters.js | 11 -
zhn-vue-ui/src/store/index.js | 19 --
zhn-vue-ui/src/store/modules/app.js | 48 ----
zhn-vue-ui/src/store/modules/settings.js | 32 ---
zhn-vue-ui/src/store/modules/user.js | 101 --------
zhn-vue-ui/src/styles/element-ui.scss | 49 ----
zhn-vue-ui/src/styles/index.scss | 65 -----
zhn-vue-ui/src/styles/mixin.scss | 28 ---
zhn-vue-ui/src/styles/sidebar.scss | 226 -----------------
zhn-vue-ui/src/styles/transition.scss | 48 ----
zhn-vue-ui/src/styles/variables.scss | 25 --
zhn-vue-ui/src/utils/auth.js | 15 --
zhn-vue-ui/src/utils/get-page-title.js | 10 -
zhn-vue-ui/src/utils/index.js | 117 ---------
zhn-vue-ui/src/utils/request.js | 85 -------
zhn-vue-ui/src/utils/validate.js | 20 --
zhn-vue-ui/src/views/404.vue | 228 ------------------
zhn-vue-ui/src/views/dashboard/index.vue | 85 -------
zhn-vue-ui/src/views/login/index.vue | 197 ---------------
zhn-vue-ui/tests/unit/.eslintrc.js | 5 -
.../tests/unit/components/Breadcrumb.spec.js | 98 --------
.../tests/unit/components/Hamburger.spec.js | 18 --
.../tests/unit/components/SvgIcon.spec.js | 22 --
.../tests/unit/utils/formatTime.spec.js | 30 ---
zhn-vue-ui/tests/unit/utils/param2Obj.spec.js | 14 --
zhn-vue-ui/tests/unit/utils/parseTime.spec.js | 35 ---
zhn-vue-ui/tests/unit/utils/validate.spec.js | 17 --
zhn-vue-ui/vue.config.js | 117 ---------
199 files changed, 1271 insertions(+), 4290 deletions(-)
delete mode 100644 devops/build/build.sh
delete mode 100644 devops/release/deploy.sh
rename {zhn-auth => xsnb-auth}/Dockerfile (51%)
rename {zhn-auth => xsnb-auth}/pom.xml (66%)
rename {zhn-auth/src/main/java/com/zhn => xsnb-auth/src/main/java/com/xsnb}/auth/AuthMian.java (93%)
create mode 100644 xsnb-auth/src/main/java/com/xsnb/auth/controller/AuthController.java
rename {zhn-auth/src/main/java/com/zhn => xsnb-auth/src/main/java/com/xsnb}/auth/feign/AuthFeignSystem.java (70%)
create mode 100644 xsnb-auth/src/main/java/com/xsnb/auth/service/AuthService.java
create mode 100644 xsnb-auth/src/main/java/com/xsnb/auth/service/impl/AuthServiceImpl.java
rename {zhn-auth/target/classes => xsnb-auth/src/main/resources}/bootstrap.yml (85%)
rename {zhn-auth/target/classes => xsnb-auth/src/main/resources}/mapper/AuthMapper.xml (78%)
rename {zhn-common => xsnb-common}/pom.xml (79%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/constants/Constants.java (87%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/constants/JwtConstants.java (90%)
create mode 100644 xsnb-common/src/main/java/com/xsnb/common/constants/RabbitMQConstants.java
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/constants/TokenConstants.java (90%)
create mode 100644 xsnb-common/src/main/java/com/xsnb/common/domain/User.java
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/domain/request/RequestUser.java (75%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/domain/response/RespJwt.java (79%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/domain/response/ResponseUser.java (89%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/result/PageResult.java (93%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/result/Result.java (94%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/utils/JwtUtils.java (96%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/utils/Msg/HttpUtils.java (99%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/utils/Msg/MsgUtil.java (96%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/utils/OssUtil.java (99%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/utils/StringUtils.java (97%)
rename {zhn-common/src/main/java/com/zhn => xsnb-common/src/main/java/com/xsnb}/common/utils/TelSmsUtils.java (75%)
create mode 100644 xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DLXQueue.java
create mode 100644 xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DelayedQueue.java
create mode 100644 xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/RabbitMQ.java
create mode 100644 xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/TtlQueue.java
rename {zhn-common => xsnb-common}/src/main/resources/date.txt (100%)
create mode 100644 xsnb-gateway/Dockerfile
rename {zhn-gateway => xsnb-gateway}/pom.xml (73%)
rename {zhn-gateway/src/main/java/com/zhn => xsnb-gateway/src/main/java/com/xsnb}/gateway/GatewayMian.java (91%)
rename {zhn-gateway/src/main/java/com/zhn => xsnb-gateway/src/main/java/com/xsnb}/gateway/config/IgnoreWhiteConfig.java (94%)
create mode 100644 xsnb-gateway/src/main/java/com/xsnb/gateway/constants/Constants.java
rename {zhn-gateway/src/main/java/com/zhn => xsnb-gateway/src/main/java/com/xsnb}/gateway/filters/AuthFilters.java (88%)
rename {zhn-gateway/src/main/java/com/zhn => xsnb-gateway/src/main/java/com/xsnb}/gateway/utils/GatewayUtils.java (96%)
rename {zhn-gateway => xsnb-gateway}/src/main/resources/bootstrap.yml (85%)
rename {zhn-modules => xsnb-modules}/pom.xml (71%)
create mode 100644 xsnb-modules/xsnb-system/Dockerfile
rename {zhn-modules/zhn-system => xsnb-modules/xsnb-system}/pom.xml (85%)
rename {zhn-modules/zhn-system/src/main/java/com/zhn => xsnb-modules/xsnb-system/src/main/java/com/xsnb}/system/SystemMian.java (80%)
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/config/MailSender.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/controller/DomeController.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/controller/UserController.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/domain/Attachment.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/domain/Mail.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/domain/MinioReturn.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/domain/req/ReqMail.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/mapper/MailMapper.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/mapper/UserMapper.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/rabbitMQ/MessageConsumerService.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/service/MailService.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/service/UserService.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/service/impl/MailServiceImpl.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/service/impl/UserServiceImpl.java
create mode 100644 xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/utils/EmailUtils.java
create mode 100644 xsnb-modules/xsnb-system/src/main/resources/bootstrap.yml
delete mode 100644 zhn-auth/src/main/java/com/zhn/auth/controller/AuthController.java
delete mode 100644 zhn-auth/src/main/java/com/zhn/auth/service/AuthService.java
delete mode 100644 zhn-auth/src/main/java/com/zhn/auth/service/impl/AuthServiceImpl.java
delete mode 100644 zhn-auth/src/main/resources/bootstrap.yml
delete mode 100644 zhn-auth/src/main/resources/mapper/AuthMapper.xml
delete mode 100644 zhn-auth/target/classes/com/zhn/auth/AuthMian.class
delete mode 100644 zhn-auth/target/classes/com/zhn/auth/controller/AuthController.class
delete mode 100644 zhn-auth/target/classes/com/zhn/auth/feign/AuthFeignSystem.class
delete mode 100644 zhn-auth/target/classes/com/zhn/auth/service/AuthService.class
delete mode 100644 zhn-auth/target/classes/com/zhn/auth/service/impl/AuthServiceImpl.class
delete mode 100644 zhn-common/src/main/java/com/zhn/common/domain/User.java
delete mode 100644 zhn-common/target/classes/com/zhn/common/constants/Constants.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/constants/JwtConstants.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/constants/TokenConstants.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/domain/User.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/domain/request/RequestUser.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/domain/response/RespJwt.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/domain/response/ResponseUser.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/result/PageResult.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/result/Result.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/JwtUtils.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/Msg/HttpUtils$1.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/Msg/HttpUtils.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/Msg/MsgUtil.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/OssUtil.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/StringUtils.class
delete mode 100644 zhn-common/target/classes/com/zhn/common/utils/TelSmsUtils.class
delete mode 100644 zhn-common/target/classes/date.txt
delete mode 100644 zhn-gateway/Dockerfile
delete mode 100644 zhn-gateway/src/main/java/com/zhn/gateway/constants/Constants.java
delete mode 100644 zhn-gateway/target/classes/bootstrap.yml
delete mode 100644 zhn-gateway/target/classes/com/zhn/gateway/GatewayMian.class
delete mode 100644 zhn-gateway/target/classes/com/zhn/gateway/config/IgnoreWhiteConfig.class
delete mode 100644 zhn-gateway/target/classes/com/zhn/gateway/constants/Constants.class
delete mode 100644 zhn-gateway/target/classes/com/zhn/gateway/filters/AuthFilters.class
delete mode 100644 zhn-gateway/target/classes/com/zhn/gateway/utils/GatewayUtils.class
delete mode 100644 zhn-modules/zhn-system/Dockerfile
delete mode 100644 zhn-modules/zhn-system/src/main/java/com/zhn/system/controller/UserController.java
delete mode 100644 zhn-modules/zhn-system/src/main/java/com/zhn/system/mapper/UserMapper.java
delete mode 100644 zhn-modules/zhn-system/src/main/java/com/zhn/system/service/UserService.java
delete mode 100644 zhn-modules/zhn-system/src/main/java/com/zhn/system/service/impl/UserServiceImpl.java
delete mode 100644 zhn-modules/zhn-system/src/main/resources/bootstrap.yml
delete mode 100644 zhn-modules/zhn-system/src/main/resources/mappers/UserMapper.xml
delete mode 100644 zhn-modules/zhn-system/target/classes/bootstrap.yml
delete mode 100644 zhn-modules/zhn-system/target/classes/com/zhn/system/SystemMian.class
delete mode 100644 zhn-modules/zhn-system/target/classes/com/zhn/system/controller/UserController.class
delete mode 100644 zhn-modules/zhn-system/target/classes/com/zhn/system/mapper/UserMapper.class
delete mode 100644 zhn-modules/zhn-system/target/classes/com/zhn/system/service/UserService.class
delete mode 100644 zhn-modules/zhn-system/target/classes/com/zhn/system/service/impl/UserServiceImpl.class
delete mode 100644 zhn-modules/zhn-system/target/classes/mappers/UserMapper.xml
delete mode 100644 zhn-vue-ui/.editorconfig
delete mode 100644 zhn-vue-ui/.env.development
delete mode 100644 zhn-vue-ui/.env.production
delete mode 100644 zhn-vue-ui/.env.staging
delete mode 100644 zhn-vue-ui/.eslintignore
delete mode 100644 zhn-vue-ui/.eslintrc.js
delete mode 100644 zhn-vue-ui/.gitignore
delete mode 100644 zhn-vue-ui/.travis.yml
delete mode 100644 zhn-vue-ui/LICENSE
delete mode 100644 zhn-vue-ui/README-zh.md
delete mode 100644 zhn-vue-ui/README.md
delete mode 100644 zhn-vue-ui/babel.config.js
delete mode 100644 zhn-vue-ui/build/index.js
delete mode 100644 zhn-vue-ui/jest.config.js
delete mode 100644 zhn-vue-ui/jsconfig.json
delete mode 100644 zhn-vue-ui/package.json
delete mode 100644 zhn-vue-ui/postcss.config.js
delete mode 100644 zhn-vue-ui/public/favicon.ico
delete mode 100644 zhn-vue-ui/public/index.html
delete mode 100644 zhn-vue-ui/src/App.vue
delete mode 100644 zhn-vue-ui/src/api/table.js
delete mode 100644 zhn-vue-ui/src/api/user.js
delete mode 100644 zhn-vue-ui/src/assets/404_images/404.png
delete mode 100644 zhn-vue-ui/src/assets/404_images/404_cloud.png
delete mode 100644 zhn-vue-ui/src/components/Breadcrumb/index.vue
delete mode 100644 zhn-vue-ui/src/components/Hamburger/index.vue
delete mode 100644 zhn-vue-ui/src/components/SvgIcon/index.vue
delete mode 100644 zhn-vue-ui/src/icons/index.js
delete mode 100644 zhn-vue-ui/src/icons/svg/dashboard.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/example.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/eye-open.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/eye.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/form.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/link.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/nested.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/password.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/table.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/tree.svg
delete mode 100644 zhn-vue-ui/src/icons/svg/user.svg
delete mode 100644 zhn-vue-ui/src/icons/svgo.yml
delete mode 100644 zhn-vue-ui/src/layout/components/AppMain.vue
delete mode 100644 zhn-vue-ui/src/layout/components/Navbar.vue
delete mode 100644 zhn-vue-ui/src/layout/components/Sidebar/FixiOSBug.js
delete mode 100644 zhn-vue-ui/src/layout/components/Sidebar/Item.vue
delete mode 100644 zhn-vue-ui/src/layout/components/Sidebar/Link.vue
delete mode 100644 zhn-vue-ui/src/layout/components/Sidebar/Logo.vue
delete mode 100644 zhn-vue-ui/src/layout/components/Sidebar/SidebarItem.vue
delete mode 100644 zhn-vue-ui/src/layout/components/Sidebar/index.vue
delete mode 100644 zhn-vue-ui/src/layout/components/index.js
delete mode 100644 zhn-vue-ui/src/layout/index.vue
delete mode 100644 zhn-vue-ui/src/layout/mixin/ResizeHandler.js
delete mode 100644 zhn-vue-ui/src/main.js
delete mode 100644 zhn-vue-ui/src/permission.js
delete mode 100644 zhn-vue-ui/src/router/index.js
delete mode 100644 zhn-vue-ui/src/settings.js
delete mode 100644 zhn-vue-ui/src/store/getters.js
delete mode 100644 zhn-vue-ui/src/store/index.js
delete mode 100644 zhn-vue-ui/src/store/modules/app.js
delete mode 100644 zhn-vue-ui/src/store/modules/settings.js
delete mode 100644 zhn-vue-ui/src/store/modules/user.js
delete mode 100644 zhn-vue-ui/src/styles/element-ui.scss
delete mode 100644 zhn-vue-ui/src/styles/index.scss
delete mode 100644 zhn-vue-ui/src/styles/mixin.scss
delete mode 100644 zhn-vue-ui/src/styles/sidebar.scss
delete mode 100644 zhn-vue-ui/src/styles/transition.scss
delete mode 100644 zhn-vue-ui/src/styles/variables.scss
delete mode 100644 zhn-vue-ui/src/utils/auth.js
delete mode 100644 zhn-vue-ui/src/utils/get-page-title.js
delete mode 100644 zhn-vue-ui/src/utils/index.js
delete mode 100644 zhn-vue-ui/src/utils/request.js
delete mode 100644 zhn-vue-ui/src/utils/validate.js
delete mode 100644 zhn-vue-ui/src/views/404.vue
delete mode 100644 zhn-vue-ui/src/views/dashboard/index.vue
delete mode 100644 zhn-vue-ui/src/views/login/index.vue
delete mode 100644 zhn-vue-ui/tests/unit/.eslintrc.js
delete mode 100644 zhn-vue-ui/tests/unit/components/Breadcrumb.spec.js
delete mode 100644 zhn-vue-ui/tests/unit/components/Hamburger.spec.js
delete mode 100644 zhn-vue-ui/tests/unit/components/SvgIcon.spec.js
delete mode 100644 zhn-vue-ui/tests/unit/utils/formatTime.spec.js
delete mode 100644 zhn-vue-ui/tests/unit/utils/param2Obj.spec.js
delete mode 100644 zhn-vue-ui/tests/unit/utils/parseTime.spec.js
delete mode 100644 zhn-vue-ui/tests/unit/utils/validate.spec.js
delete mode 100644 zhn-vue-ui/vue.config.js
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 343c56d..0fad9d5 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -7,18 +7,27 @@
-
-
-
-
+
+
+
+
-
+
+
+
+
+
+
+
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index e6dd92d..d4d942a 100644
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -3,11 +3,11 @@
-
-
-
-
-
-
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 1f19f73..f095382 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -8,6 +8,7 @@
diff --git a/README.md b/README.md
index ab07054..79e7b6b 100644
--- a/README.md
+++ b/README.md
@@ -1 +1 @@
-# 用于自动化部署的测试项目
+# 个人中心微服务
diff --git a/devops/build/build.sh b/devops/build/build.sh
deleted file mode 100644
index 861a8ff..0000000
--- a/devops/build/build.sh
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/bash
-echo "==============build begin 当前环境:【$ENV】=============="
-if [[ "$ENV" = "" ]]; then
- ENV=$env
-fi
-
-if [[ $ENV == 'test' ]]; then
- HUB_USERNAME=wlf19941002
- HUB_PASSWORD=901002wei
- UCLOUD_HUB=registry.cn-hangzhou.aliyuncs.com/weilingfeng-dev
- elif [[ $ENV == 'prod' ]]; then
- HUB_USERNAME=wlf19941002
- HUB_PASSWORD=901002wei
- UCLOUD_HUB=registry.cn-hangzhou.aliyuncs.com/weilingfeng-prod
- else
- echo 'Please enter right environment! eg: test || prod(master or v/V*.*.* branch)'
- exit 1
-fi
-
-#编译后将包拷贝至新建的publish目录下,gitlab上可以在对应节点下载包。
-mvn clean package -Dmaven.test.skip=true || exit 1 && \
- echo 'build successful!'
-
-# 构建 TAG 变量
-TAG="${CI_COMMIT_SHA:0:4}${CI_PIPELINE_ID:0:4}"
-
-# 打印 TAG 变量的值
-echo "TAG value: $TAG"
-
-ZHN_AUTH=zhn-auth
-ZHN_GATEWAY=zhn-gateway
-ZHN_SYSTEM=zhn-system
-
-#构建镜像
-docker build -f zhn-gateway/Dockerfile -t $UCLOUD_HUB/${ZHN_GATEWAY}:$TAG .
-docker build -f zhn-auth/Dockerfile -t $UCLOUD_HUB/${ZHN_AUTH}:$TAG .
-docker build -f zhn-modules/zhn-system/Dockerfile -t $UCLOUD_HUB/${ZHN_SYSTEM}:$TAG .
-#镜像仓库登录
-docker login registry.cn-hangzhou.aliyuncs.com --username $HUB_USERNAME --password $HUB_PASSWORD
-
-#推送镜像
-docker push $UCLOUD_HUB/${ZHN_AUTH}:$TAG
-docker push $UCLOUD_HUB/${ZHN_GATEWAY}:$TAG
-docker push $UCLOUD_HUB/${ZHN_SYSTEM}:$TAG
-
-#删除镜像
-docker rmi -f $UCLOUD_HUB/${ZHN_AUTH}:$TAG
-docker rmi -f $UCLOUD_HUB/${ZHN_GATEWAY}:$TAG
-docker push $UCLOUD_HUB/${ZHN_SYSTEM}:$TAG
-
-#删除none 镜像
-docker image prune -f --filter "dangling=true"
-
-echo "$UCLOUD_HUB/${ZHN_AUTH}:$TAG"
-echo "$UCLOUD_HUB/${ZHN_GATEWAY}:$TAG"
-echo "$UCLOUD_HUB/${ZHN_SYSTEM}:$TAG"
-echo "==============build end!!!================"
diff --git a/devops/release/deploy.sh b/devops/release/deploy.sh
deleted file mode 100644
index dea326b..0000000
--- a/devops/release/deploy.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/bash
-echo "==============deploy begin!!!================"
-
-UCLOUD_HUB=registry.cn-hangzhou.aliyuncs.com/weilingfeng-dev
-UCLOUD_HUB=registry.cn-hangzhou.aliyuncs.com/weilingfeng-prod
-
-TAG="${CI_COMMIT_SHA:0:4}${CI_PIPELINE_ID:0:4}"
-
-ZHN_GATEWAY=zhn-gateway
-ZHN_AUTH=zhn-auth
-ZHN_SYSTEM=zhn-system
-
-#停止
-if [ -n "$(docker ps -a -q -f name=$ZHN_GATEWAY)" ]; then
- docker rm -f $ZHN_GATEWAY
- echo "$ZHN_GATEWAY 已经停止"
-fi
-
-if [ -n "$(docker ps -a -q -f name=$ZHN_AUTH)" ]; then
- docker rm -f $ZHN_AUTH
- echo "$ZHN_AUTH 已经停止"
-fi
-
-if [ -n "$(docker ps -a -q -f name=$ZHN_SYSTEM)" ]; then
- docker rm -f $ZHN_SYSTEM
- echo "$ZHN_SYSTEM 已经停止"
-fi
-
-#删除所有镜像
-docker images | grep "zhn-gateway" | awk '{print $3}' | while read image_id; do docker rmi -f "$image_id"; done
-docker images | grep "zhn-auth" | awk '{print $3}' | while read image_id; do docker rmi -f "$image_id"; done
-docker images | grep "zhn-system" | awk '{print $3}' | while read image_id; do docker rmi -f "$image_id"; done
-
-
-#拉取镜像
-docker pull $UCLOUD_HUB/${ZHN_AUTH}:$TAG || exit 1
-docker pull $UCLOUD_HUB/${ZHN_SYSTEM}:$TAG || exit 1
-docker pull $UCLOUD_HUB/${ZHN_GATEWAY}:$TAG || exit 1
-
-#发布
-docker run -itd -p 8080:8080 --name=zhn-gateway --restart=always $UCLOUD_HUB/${ZHN_GATEWAY}:$TAG || exit 1
-docker run -itd -p 9200:9200 --name=zhn-auth --restart=always $UCLOUD_HUB/${ZHN_AUTH}:$TAG || exit 1
-docker run -itd -p 9201:9201 --name=zhn-system --restart=always $UCLOUD_HUB/${ZHN_SYSTEM}:$TAG || exit 1
-
-echo "==============deploy success end!!!=================="
-
-
diff --git a/pom.xml b/pom.xml
index 1713842..0264de5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,15 +4,15 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
- com.zhn
- zhn-dev
+ com.xsnb
+ xsnb-dev
pom
1.0.0
- zhn-common
- zhn-gateway
- zhn-auth
- zhn-modules
+ xsnb-common
+ xsnb-gateway
+ xsnb-auth
+ xsnb-modules
@@ -50,12 +50,12 @@
- com.zhn
- zhn-common
+ com.xsnb
+ xsnb-common
1.0.0
-
\ No newline at end of file
+
diff --git a/zhn-auth/Dockerfile b/xsnb-auth/Dockerfile
similarity index 51%
rename from zhn-auth/Dockerfile
rename to xsnb-auth/Dockerfile
index da9260e..8ec3990 100644
--- a/zhn-auth/Dockerfile
+++ b/xsnb-auth/Dockerfile
@@ -4,12 +4,12 @@ FROM openjdk:8-jre
MAINTAINER ex_weilingfeng@163.com
# 挂载目录
-VOLUME /home/zhn
+VOLUME /home/xsnb
# 创建目录
-RUN mkdir -p /home/zhn
+RUN mkdir -p /home/xsnb
# 指定路径
-WORKDIR /home/zhn
+WORKDIR /home/xsnb
# 复制jar文件到路径
-COPY zhn-auth/target/zhn-auth.jar /home/zhn/zhn-auth.jar
+COPY xsnb-auth/target/xsnb-auth.jar /home/xsnb/xsnb-auth.jar
# 启动网关服务
-ENTRYPOINT ["java","-jar","zhn-auth.jar"]
+ENTRYPOINT ["java","-jar","xsnb-auth.jar"]
diff --git a/zhn-auth/pom.xml b/xsnb-auth/pom.xml
similarity index 66%
rename from zhn-auth/pom.xml
rename to xsnb-auth/pom.xml
index eaba2e3..2b6811d 100644
--- a/zhn-auth/pom.xml
+++ b/xsnb-auth/pom.xml
@@ -3,19 +3,29 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- zhn-dev
- com.zhn
+ xsnb-dev
+ com.xsnb
1.0.0
4.0.0
- zhn-auth
+ xsnb-auth
- com.zhn
- zhn-common
+ com.xsnb
+ xsnb-common
+
+
+ com.baomidou
+ mybatis-plus
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+
+
diff --git a/zhn-auth/src/main/java/com/zhn/auth/AuthMian.java b/xsnb-auth/src/main/java/com/xsnb/auth/AuthMian.java
similarity index 93%
rename from zhn-auth/src/main/java/com/zhn/auth/AuthMian.java
rename to xsnb-auth/src/main/java/com/xsnb/auth/AuthMian.java
index 50ed9b8..92c88d6 100644
--- a/zhn-auth/src/main/java/com/zhn/auth/AuthMian.java
+++ b/xsnb-auth/src/main/java/com/xsnb/auth/AuthMian.java
@@ -1,4 +1,5 @@
-package com.zhn.auth;
+package com.xsnb.auth;
+
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -7,8 +8,9 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
/**
* @author zhang
*/
-@SpringBootApplication
+
@EnableFeignClients
+@SpringBootApplication
public class AuthMian {
public static void main(String[] args) {
SpringApplication.run(AuthMian.class, args);
diff --git a/xsnb-auth/src/main/java/com/xsnb/auth/controller/AuthController.java b/xsnb-auth/src/main/java/com/xsnb/auth/controller/AuthController.java
new file mode 100644
index 0000000..27935e2
--- /dev/null
+++ b/xsnb-auth/src/main/java/com/xsnb/auth/controller/AuthController.java
@@ -0,0 +1,53 @@
+package com.xsnb.auth.controller;
+
+
+import com.xsnb.auth.service.AuthService;
+import com.xsnb.common.domain.User;
+import com.xsnb.common.domain.request.RequestUser;
+import com.xsnb.common.domain.response.RespJwt;
+import com.xsnb.common.result.Result;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+
+@RestController
+@Log4j2
+public class AuthController {
+ @Autowired
+ AuthService authService;
+
+
+
+ @PostMapping("/getPhoneCode")
+ public Result getPhoneCode(@RequestBody User user ){
+ log.info("获取的信息:{}",user.toString());
+ return authService.getPhoneCode(user);
+ }
+
+
+ /**
+ *
+ * 登录
+ * @param requestUser
+ * @return
+ */
+ @PostMapping("/login")
+ Result login(@RequestBody RequestUser requestUser){
+
+ return authService.login(requestUser);
+ }
+
+
+ @GetMapping("/user/info")
+ Result userinfo(HttpServletRequest request){
+ return authService.userinfo(request);
+
+ }
+
+
+}
diff --git a/zhn-auth/src/main/java/com/zhn/auth/feign/AuthFeignSystem.java b/xsnb-auth/src/main/java/com/xsnb/auth/feign/AuthFeignSystem.java
similarity index 70%
rename from zhn-auth/src/main/java/com/zhn/auth/feign/AuthFeignSystem.java
rename to xsnb-auth/src/main/java/com/xsnb/auth/feign/AuthFeignSystem.java
index aace3a0..07a3231 100644
--- a/zhn-auth/src/main/java/com/zhn/auth/feign/AuthFeignSystem.java
+++ b/xsnb-auth/src/main/java/com/xsnb/auth/feign/AuthFeignSystem.java
@@ -1,14 +1,15 @@
-package com.zhn.auth.feign;
+package com.xsnb.auth.feign;
-import com.zhn.common.domain.User;
-import com.zhn.common.result.Result;
+import com.xsnb.common.domain.User;
+import com.xsnb.common.result.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
-@FeignClient("zhn-system")
+@FeignClient("xsnb-system")
public interface AuthFeignSystem {
+
@GetMapping("/user/byphone/{phone}")
Result byphone(@PathVariable String phone);
diff --git a/xsnb-auth/src/main/java/com/xsnb/auth/service/AuthService.java b/xsnb-auth/src/main/java/com/xsnb/auth/service/AuthService.java
new file mode 100644
index 0000000..5ee0eed
--- /dev/null
+++ b/xsnb-auth/src/main/java/com/xsnb/auth/service/AuthService.java
@@ -0,0 +1,17 @@
+package com.xsnb.auth.service;
+
+import com.xsnb.common.domain.User;
+import com.xsnb.common.domain.request.RequestUser;
+import com.xsnb.common.domain.response.RespJwt;
+import com.xsnb.common.result.Result;
+
+import javax.servlet.http.HttpServletRequest;
+
+public interface AuthService {
+ Result login(RequestUser requestUser);
+
+ Result userinfo(HttpServletRequest request);
+
+ Result getPhoneCode(User user);
+
+}
diff --git a/xsnb-auth/src/main/java/com/xsnb/auth/service/impl/AuthServiceImpl.java b/xsnb-auth/src/main/java/com/xsnb/auth/service/impl/AuthServiceImpl.java
new file mode 100644
index 0000000..f3d0013
--- /dev/null
+++ b/xsnb-auth/src/main/java/com/xsnb/auth/service/impl/AuthServiceImpl.java
@@ -0,0 +1,124 @@
+package com.xsnb.auth.service.impl;
+
+
+import com.alibaba.fastjson.JSONObject;
+import com.xsnb.auth.feign.AuthFeignSystem;
+import com.xsnb.auth.service.AuthService;
+import com.xsnb.common.constants.JwtConstants;
+import com.xsnb.common.constants.RabbitMQConstants;
+import com.xsnb.common.constants.TokenConstants;
+import com.xsnb.common.domain.User;
+import com.xsnb.common.domain.request.RequestUser;
+import com.xsnb.common.domain.response.RespJwt;
+import com.xsnb.common.result.Result;
+import com.xsnb.common.utils.JwtUtils;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
+import java.util.UUID;
+import java.util.concurrent.TimeUnit;
+import java.util.regex.Pattern;
+
+@Service
+@Log4j2
+public class AuthServiceImpl implements AuthService {
+
+ @Autowired
+ AuthFeignSystem authFeignSystem;
+
+ @Autowired
+ RedisTemplate redisTemplate;
+ @Autowired
+ RabbitTemplate rabbitTemplate;
+
+
+ @Override
+ public Result login(RequestUser requestUser) {
+ String phone = requestUser.getPhone();
+ String captcha = requestUser.getCaptcha();
+ if (null == phone || null == captcha) {
+ return Result.error("联系管理员");
+ }
+ if ("".equals(phone) || "".equals(captcha)) {
+
+ return Result.error("请输入手机号+密码");
+ }
+ Result byphone = authFeignSystem.byphone(phone);
+ User data = byphone.getData();
+ if (null == data) {
+ return Result.error("先注册手机号,在登录");
+ }
+ //从redsi拿验证码进行比对
+ //判断名字为"PHONE_"+phone的key是否存在
+ String s = redisTemplate.opsForValue().get(phone);
+ log.info("拿到的:{}",s);
+ if (null == s || !s.equals(captcha)) {
+ return Result.error("验证码错误");
+ }
+ HashMap map = new HashMap<>();
+ String userkey = UUID.randomUUID().toString().replaceAll("-", "");
+ map.put(JwtConstants.USER_KEY, userkey);
+ map.put(JwtConstants.DETAILS_USER_ID, data.getId());
+ String token = JwtUtils.createToken(map);
+ redisTemplate.opsForValue().set(
+ TokenConstants.LOGIN_TOKEN_KEY + userkey,
+ JSONObject.toJSONString(data),
+ TokenConstants.EXPIRATION,
+ TimeUnit.MINUTES
+ );
+ RespJwt respJwt = new RespJwt();
+ respJwt.setToken(token);
+ respJwt.setEidTime("720MIN");
+ log.info("登录成功,token:{}", token);
+ return Result.success(respJwt);
+ }
+
+ /*
+ * 前台每次请求都会来到这里进行解析user
+ *
+ * */
+ @Override
+ public Result userinfo(HttpServletRequest request) {
+ String token = request.getHeader(TokenConstants.TOKEN);
+ String userKey = JwtUtils.getUserKey(token);
+ String s = redisTemplate.opsForValue().get(TokenConstants.LOGIN_TOKEN_KEY + userKey);
+ User user = JSONObject.parseObject(s, User.class);
+ /*获取用户信息*/
+ log.info("userInfo获取的用户信息是:{}", user);
+ return Result.success(user);
+ }
+
+ /**
+ * @param user
+ * @return
+ * @dis 短信发送
+ */
+ @Override
+ public Result getPhoneCode(User user) {
+ String phone = user.getPhone() == null ? "18906604007" : user.getPhone();
+
+ log.info("短信发送的手机号 :{}", phone);
+ Result byphone = authFeignSystem.byphone(phone);
+ User data = byphone.getData();
+ if (null == data) {
+ return Result.error("先注册手机号,在登录");
+ }
+ Pattern compile = Pattern.compile("^(?:(?:\\+|00)86)?1\\d{10}$");
+ if (!compile.matcher(phone).matches()) {
+ return Result.error("手机号格式错误");
+ }
+ rabbitTemplate.convertAndSend(RabbitMQConstants.SEND_SMS_QUEUs, phone, message -> {
+ message.getMessageProperties().setMessageId(UUID.randomUUID().toString());
+ log.info("rabbit异步发送完毕 :{}", phone);
+ return message;
+ });
+
+ return Result.success("开始发送短信");
+ }
+
+}
diff --git a/zhn-auth/target/classes/bootstrap.yml b/xsnb-auth/src/main/resources/bootstrap.yml
similarity index 85%
rename from zhn-auth/target/classes/bootstrap.yml
rename to xsnb-auth/src/main/resources/bootstrap.yml
index c0dda39..abe4521 100644
--- a/zhn-auth/target/classes/bootstrap.yml
+++ b/xsnb-auth/src/main/resources/bootstrap.yml
@@ -12,7 +12,7 @@ spring:
time-zone: GMT+8
application:
# 应用名称
- name: zhn-auth
+ name: xsnb-auth
profiles:
# 环境配置
active: dev
@@ -20,10 +20,10 @@ spring:
nacos:
discovery:
# 服务注册地址
- server-addr: 192.168.2.51:8848
+ server-addr: 127.0.0.1:8848
config:
# 配置中心地址
- server-addr: 192.168.2.51:8848
+ server-addr: 127.0.0.1:8848
# 配置文件格式
file-extension: yml
# 共享配置
diff --git a/zhn-auth/target/classes/mapper/AuthMapper.xml b/xsnb-auth/src/main/resources/mapper/AuthMapper.xml
similarity index 78%
rename from zhn-auth/target/classes/mapper/AuthMapper.xml
rename to xsnb-auth/src/main/resources/mapper/AuthMapper.xml
index 697c9a5..b24a808 100644
--- a/zhn-auth/target/classes/mapper/AuthMapper.xml
+++ b/xsnb-auth/src/main/resources/mapper/AuthMapper.xml
@@ -1,7 +1,7 @@
-
+
-
\ No newline at end of file
+
diff --git a/zhn-common/pom.xml b/xsnb-common/pom.xml
similarity index 79%
rename from zhn-common/pom.xml
rename to xsnb-common/pom.xml
index 9e449e9..eb362ae 100644
--- a/zhn-common/pom.xml
+++ b/xsnb-common/pom.xml
@@ -3,13 +3,13 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- zhn-dev
- com.zhn
+ xsnb-dev
+ com.xsnb
1.0.0
4.0.0
- zhn-common
+ xsnb-common
@@ -58,6 +58,16 @@
org.springframework.boot
spring-boot-starter-data-redis
+
+
+ org.springframework.boot
+ spring-boot-starter-amqp
+
+
+
+ org.springframework.boot
+ spring-boot-starter-mail
+
org.springframework.boot
@@ -91,6 +101,19 @@
aliyun-sdk-oss
3.12.0
+
+
+
+
+ com.baomidou
+ mybatis-plus
+ 3.3.1
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+ 3.3.1
+
-
\ No newline at end of file
+
diff --git a/zhn-common/src/main/java/com/zhn/common/constants/Constants.java b/xsnb-common/src/main/java/com/xsnb/common/constants/Constants.java
similarity index 87%
rename from zhn-common/src/main/java/com/zhn/common/constants/Constants.java
rename to xsnb-common/src/main/java/com/xsnb/common/constants/Constants.java
index 512b656..3d3cffb 100644
--- a/zhn-common/src/main/java/com/zhn/common/constants/Constants.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/constants/Constants.java
@@ -1,8 +1,8 @@
-package com.zhn.common.constants;
+package com.xsnb.common.constants;
/**
* @description: 系统常量
- * @author zhn
+ * @author xsnb
*/
public class Constants {
/**
diff --git a/zhn-common/src/main/java/com/zhn/common/constants/JwtConstants.java b/xsnb-common/src/main/java/com/xsnb/common/constants/JwtConstants.java
similarity index 90%
rename from zhn-common/src/main/java/com/zhn/common/constants/JwtConstants.java
rename to xsnb-common/src/main/java/com/xsnb/common/constants/JwtConstants.java
index e240c98..80afd33 100644
--- a/zhn-common/src/main/java/com/zhn/common/constants/JwtConstants.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/constants/JwtConstants.java
@@ -1,7 +1,7 @@
-package com.zhn.common.constants;
+package com.xsnb.common.constants;
/**
- * @author zhn
+ * @author xsnb
* @description: Jwt常量
*/
public class JwtConstants {
diff --git a/xsnb-common/src/main/java/com/xsnb/common/constants/RabbitMQConstants.java b/xsnb-common/src/main/java/com/xsnb/common/constants/RabbitMQConstants.java
new file mode 100644
index 0000000..54d6e94
--- /dev/null
+++ b/xsnb-common/src/main/java/com/xsnb/common/constants/RabbitMQConstants.java
@@ -0,0 +1,11 @@
+package com.xsnb.common.constants;
+
+/**
+ * @BelongsProject: Bob_Up_Like_A_Cork
+ * @BelongsPackage: com.zhn.common.constants
+ * @Author: zhangquan
+ * @CreateTime: 2023/8/1 20:11
+ */
+public class RabbitMQConstants {
+ public static final String SEND_SMS_QUEUs = "send_sms_queun";
+}
diff --git a/zhn-common/src/main/java/com/zhn/common/constants/TokenConstants.java b/xsnb-common/src/main/java/com/xsnb/common/constants/TokenConstants.java
similarity index 90%
rename from zhn-common/src/main/java/com/zhn/common/constants/TokenConstants.java
rename to xsnb-common/src/main/java/com/xsnb/common/constants/TokenConstants.java
index 0add0a0..a3d9e8f 100644
--- a/zhn-common/src/main/java/com/zhn/common/constants/TokenConstants.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/constants/TokenConstants.java
@@ -1,7 +1,7 @@
-package com.zhn.common.constants;
+package com.xsnb.common.constants;
/**
- * @author zhn
+ * @author xsnb
* @description: 令牌常量
*/
public class TokenConstants {
diff --git a/xsnb-common/src/main/java/com/xsnb/common/domain/User.java b/xsnb-common/src/main/java/com/xsnb/common/domain/User.java
new file mode 100644
index 0000000..fcc6713
--- /dev/null
+++ b/xsnb-common/src/main/java/com/xsnb/common/domain/User.java
@@ -0,0 +1,22 @@
+package com.xsnb.common.domain;
+
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class User {
+
+ private Integer id;
+ private String name;
+ private String phone;
+ private String email;
+ private String wx_uid;
+ private String user_name;
+ private String user_pass;
+ private String avatar;
+ private Date lastLoginTime;
+ private String balance;
+
+}
diff --git a/zhn-common/src/main/java/com/zhn/common/domain/request/RequestUser.java b/xsnb-common/src/main/java/com/xsnb/common/domain/request/RequestUser.java
similarity index 75%
rename from zhn-common/src/main/java/com/zhn/common/domain/request/RequestUser.java
rename to xsnb-common/src/main/java/com/xsnb/common/domain/request/RequestUser.java
index 39050e1..14b1a68 100644
--- a/zhn-common/src/main/java/com/zhn/common/domain/request/RequestUser.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/domain/request/RequestUser.java
@@ -1,4 +1,4 @@
-package com.zhn.common.domain.request;
+package com.xsnb.common.domain.request;
import lombok.Data;
@@ -14,6 +14,8 @@ public class RequestUser {
private String emil;
private String lastLoginTime;
private String balance;
+ private String captcha;
+ private String loginRadio;
diff --git a/zhn-common/src/main/java/com/zhn/common/domain/response/RespJwt.java b/xsnb-common/src/main/java/com/xsnb/common/domain/response/RespJwt.java
similarity index 79%
rename from zhn-common/src/main/java/com/zhn/common/domain/response/RespJwt.java
rename to xsnb-common/src/main/java/com/xsnb/common/domain/response/RespJwt.java
index 76969c3..7ddb367 100644
--- a/zhn-common/src/main/java/com/zhn/common/domain/response/RespJwt.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/domain/response/RespJwt.java
@@ -1,10 +1,10 @@
-package com.zhn.common.domain.response;
+package com.xsnb.common.domain.response;
import lombok.Data;
/**
* @ClassName:RespJwt
- * @author:zhn
+ * @author:xsnb
* @create: 2023-08-03 09:01
* @Description: 用户登录token返回实体类
*/
diff --git a/zhn-common/src/main/java/com/zhn/common/domain/response/ResponseUser.java b/xsnb-common/src/main/java/com/xsnb/common/domain/response/ResponseUser.java
similarity index 89%
rename from zhn-common/src/main/java/com/zhn/common/domain/response/ResponseUser.java
rename to xsnb-common/src/main/java/com/xsnb/common/domain/response/ResponseUser.java
index 03f7a61..97f21e9 100644
--- a/zhn-common/src/main/java/com/zhn/common/domain/response/ResponseUser.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/domain/response/ResponseUser.java
@@ -1,4 +1,4 @@
-package com.zhn.common.domain.response;
+package com.xsnb.common.domain.response;
import lombok.Data;
diff --git a/zhn-common/src/main/java/com/zhn/common/result/PageResult.java b/xsnb-common/src/main/java/com/xsnb/common/result/PageResult.java
similarity index 93%
rename from zhn-common/src/main/java/com/zhn/common/result/PageResult.java
rename to xsnb-common/src/main/java/com/xsnb/common/result/PageResult.java
index 35768fc..4ba4f68 100644
--- a/zhn-common/src/main/java/com/zhn/common/result/PageResult.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/result/PageResult.java
@@ -1,4 +1,4 @@
-package com.zhn.common.result;
+package com.xsnb.common.result;
import lombok.Data;
@@ -6,7 +6,7 @@ import java.io.Serializable;
import java.util.List;
/**
- * @author zhn
+ * @author xsnb
* @description: 列表返回结果集
*/
@Data
diff --git a/zhn-common/src/main/java/com/zhn/common/result/Result.java b/xsnb-common/src/main/java/com/xsnb/common/result/Result.java
similarity index 94%
rename from zhn-common/src/main/java/com/zhn/common/result/Result.java
rename to xsnb-common/src/main/java/com/xsnb/common/result/Result.java
index 47f249d..ef956ae 100644
--- a/zhn-common/src/main/java/com/zhn/common/result/Result.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/result/Result.java
@@ -1,12 +1,12 @@
-package com.zhn.common.result;
+package com.xsnb.common.result;
-import com.zhn.common.constants.Constants;
+import com.xsnb.common.constants.Constants;
import lombok.Data;
import java.io.Serializable;
/**
- * @author zhn
+ * @author xsnb
* @description: 响应信息主体
*/
@Data
diff --git a/zhn-common/src/main/java/com/zhn/common/utils/JwtUtils.java b/xsnb-common/src/main/java/com/xsnb/common/utils/JwtUtils.java
similarity index 96%
rename from zhn-common/src/main/java/com/zhn/common/utils/JwtUtils.java
rename to xsnb-common/src/main/java/com/xsnb/common/utils/JwtUtils.java
index b1cd22e..ec89cf4 100644
--- a/zhn-common/src/main/java/com/zhn/common/utils/JwtUtils.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/JwtUtils.java
@@ -1,6 +1,6 @@
-package com.zhn.common.utils;
+package com.xsnb.common.utils;
-import com.zhn.common.constants.JwtConstants;
+import com.xsnb.common.constants.JwtConstants;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
@@ -9,7 +9,7 @@ import java.util.Map;
/**
* @description: Jwt工具类
- * @author zhn
+ * @author xsnb
*/
public class JwtUtils {
diff --git a/zhn-common/src/main/java/com/zhn/common/utils/Msg/HttpUtils.java b/xsnb-common/src/main/java/com/xsnb/common/utils/Msg/HttpUtils.java
similarity index 99%
rename from zhn-common/src/main/java/com/zhn/common/utils/Msg/HttpUtils.java
rename to xsnb-common/src/main/java/com/xsnb/common/utils/Msg/HttpUtils.java
index 8a8e974..cb9583e 100644
--- a/zhn-common/src/main/java/com/zhn/common/utils/Msg/HttpUtils.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/Msg/HttpUtils.java
@@ -1,6 +1,6 @@
-package com.zhn.common.utils.Msg;
+package com.xsnb.common.utils.Msg;
-import com.zhn.common.utils.StringUtils;
+import com.xsnb.common.utils.StringUtils;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
diff --git a/zhn-common/src/main/java/com/zhn/common/utils/Msg/MsgUtil.java b/xsnb-common/src/main/java/com/xsnb/common/utils/Msg/MsgUtil.java
similarity index 96%
rename from zhn-common/src/main/java/com/zhn/common/utils/Msg/MsgUtil.java
rename to xsnb-common/src/main/java/com/xsnb/common/utils/Msg/MsgUtil.java
index 5b9c4c8..6726eb4 100644
--- a/zhn-common/src/main/java/com/zhn/common/utils/Msg/MsgUtil.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/Msg/MsgUtil.java
@@ -1,4 +1,4 @@
-package com.zhn.common.utils.Msg;
+package com.xsnb.common.utils.Msg;
diff --git a/zhn-common/src/main/java/com/zhn/common/utils/OssUtil.java b/xsnb-common/src/main/java/com/xsnb/common/utils/OssUtil.java
similarity index 99%
rename from zhn-common/src/main/java/com/zhn/common/utils/OssUtil.java
rename to xsnb-common/src/main/java/com/xsnb/common/utils/OssUtil.java
index 187b6ca..7c4cece 100644
--- a/zhn-common/src/main/java/com/zhn/common/utils/OssUtil.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/OssUtil.java
@@ -1,4 +1,4 @@
-package com.zhn.common.utils;
+package com.xsnb.common.utils;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
diff --git a/zhn-common/src/main/java/com/zhn/common/utils/StringUtils.java b/xsnb-common/src/main/java/com/xsnb/common/utils/StringUtils.java
similarity index 97%
rename from zhn-common/src/main/java/com/zhn/common/utils/StringUtils.java
rename to xsnb-common/src/main/java/com/xsnb/common/utils/StringUtils.java
index c478c79..9b35e5e 100644
--- a/zhn-common/src/main/java/com/zhn/common/utils/StringUtils.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/StringUtils.java
@@ -1,4 +1,4 @@
-package com.zhn.common.utils;
+package com.xsnb.common.utils;
import org.springframework.util.AntPathMatcher;
@@ -6,7 +6,7 @@ import java.util.Collection;
import java.util.List;
/**
- * @author zhn
+ * @author xsnb
* @description: 字符串处理工具类
*/
public class StringUtils extends org.apache.commons.lang3.StringUtils {
diff --git a/zhn-common/src/main/java/com/zhn/common/utils/TelSmsUtils.java b/xsnb-common/src/main/java/com/xsnb/common/utils/TelSmsUtils.java
similarity index 75%
rename from zhn-common/src/main/java/com/zhn/common/utils/TelSmsUtils.java
rename to xsnb-common/src/main/java/com/xsnb/common/utils/TelSmsUtils.java
index ba898de..bab8bc5 100644
--- a/zhn-common/src/main/java/com/zhn/common/utils/TelSmsUtils.java
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/TelSmsUtils.java
@@ -1,4 +1,4 @@
-package com.zhn.common.utils;
+package com.xsnb.common.utils;
import com.alibaba.fastjson.JSONObject;
import com.aliyun.dysmsapi20170525.Client;
@@ -18,8 +18,9 @@ public class TelSmsUtils {
/**
* 阿里云主账号AccessKey,accessKeySecret拥有所有API的访问权限
*/
- private static String accessKeyId = "LTAIEVXszCmcd1T5";
- private static String accessKeySecret = "2zHwciQXln8wExSEnkIYtRTSwLeRNd";
+ private static String accessKeyId = "LTAI5tHLTV3mgTwB4wzxvkLS";
+ private static String accessKeySecret = "jjQt8WSFzSDTvp1TMhRFS8FSyueaQU";
+ private static String templateCode = "SMS_154950909";
/**
* 短信访问域名
@@ -28,7 +29,7 @@ public class TelSmsUtils {
/**
* 短信签名
*/
- private static String signName = "登录验证";
+ private static String signName = "阿里云短信测试";
/**
* 实例化短信对象
@@ -40,22 +41,22 @@ public class TelSmsUtils {
long startTime = System.currentTimeMillis();
try {
client = initClient();
- log.info("初始化短信成功:{}",signName);
+ log.info("初始化短信成功:{}", signName);
} catch (Exception e) {
e.printStackTrace();
}
- log.info("初始化短信服务结束:耗时:{}MS",(System.currentTimeMillis()-startTime));
+ log.info("初始化短信服务结束:耗时:{}MS", (System.currentTimeMillis() - startTime));
}
+
/**
* 初始化短信对象
+ *
* @return
* @throws Exception
*/
- private static Client initClient() throws Exception{
+ private static Client initClient() throws Exception {
Config config = new Config()
- // 您的AccessKey ID
.setAccessKeyId(accessKeyId)
- // 您的AccessKey Secret
.setAccessKeySecret(accessKeySecret);
// 访问的域名
config.endpoint = endpoint;
@@ -64,11 +65,11 @@ public class TelSmsUtils {
/**
* 发送单条短信
+ *
* @param tel
- * @param templateCode SMS_153991546
* @param sendDataMap
*/
- public static String sendSms(String tel , String templateCode , Map sendDataMap){
+ public static String sendSms(String tel, Map sendDataMap) {
SendSmsRequest sendSmsRequest = new SendSmsRequest()
.setPhoneNumbers(tel)
.setSignName(signName)
diff --git a/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DLXQueue.java b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DLXQueue.java
new file mode 100644
index 0000000..0ff07eb
--- /dev/null
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DLXQueue.java
@@ -0,0 +1,77 @@
+package com.xsnb.common.utils.mqUtile;
+
+import org.springframework.amqp.core.Binding;
+import org.springframework.amqp.core.BindingBuilder;
+import org.springframework.amqp.core.DirectExchange;
+import org.springframework.amqp.core.Queue;
+import org.springframework.amqp.rabbit.core.RabbitAdmin;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.Map;
+
+@Component
+public class DLXQueue {
+ // routingKey
+ private static final String DEAD_ROUTING_KEY = "dead.routingkey";
+ private static final String ROUTING_KEY = "routingkey";
+ private static final String DEAD_EXCHANGE = "dead.exchange";
+ private static final String EXCHANGE = "common.exchange";
+ @Autowired
+ RabbitTemplate rabbitTemplate;
+ @Resource
+ RabbitAdmin rabbitAdmin;
+
+ /**
+ * 发送死信队列,过期后进入死信交换机,进入死信队列
+ *
+ * @param queueName 队列名称
+ * @param deadQueueName 死信队列名称
+ * @param params 消息内容
+ * @param expiration 过期时间 毫秒
+ */
+ public void sendDLXQueue(String queueName, String deadQueueName, Object params, Integer expiration) {
+ /**
+ * ----------------------------------先创建一个ttl队列和死信队列--------------------------------------------
+ */
+ Map map = new HashMap<>();
+ // 队列设置存活时间,单位ms, 必须是整形数据。
+ map.put("x-message-ttl", expiration);
+ // 设置死信交换机
+ map.put("x-dead-letter-exchange", DEAD_EXCHANGE);
+ // 设置死信交换器路由
+ map.put("x-dead-letter-routing-key", DEAD_ROUTING_KEY);
+ /*参数1:队列名称 参数2:持久化 参数3:是否排他 参数4:自动删除队列 参数5:队列参数*/
+ Queue queue = new Queue(queueName, true, false, false, map);
+ rabbitAdmin.declareQueue(queue);
+ /**
+ * ---------------------------------创建交换机---------------------------------------------
+ */
+ DirectExchange directExchange = new DirectExchange(EXCHANGE, true, false);
+ rabbitAdmin.declareExchange(directExchange);
+ /**
+ * ---------------------------------队列绑定交换机---------------------------------------------
+ */
+ Binding binding = BindingBuilder.bind(queue).to(directExchange).with(ROUTING_KEY);
+ rabbitAdmin.declareBinding(binding);
+ /**
+ * ---------------------------------在创建一个死信交换机和队列,接收死信队列---------------------------------------------
+ */
+ DirectExchange deadExchange = new DirectExchange(DEAD_EXCHANGE, true, false);
+ rabbitAdmin.declareExchange(deadExchange);
+
+ Queue deadQueue = new Queue(deadQueueName, true, false, false);
+ rabbitAdmin.declareQueue(deadQueue);
+ /**
+ * ---------------------------------队列绑定死信交换机---------------------------------------------
+ */
+ // 将队列和交换机绑定
+ Binding deadbinding = BindingBuilder.bind(deadQueue).to(deadExchange).with(DEAD_ROUTING_KEY);
+ rabbitAdmin.declareBinding(deadbinding);
+ // 发送消息
+ rabbitTemplate.convertAndSend(EXCHANGE, ROUTING_KEY, params);
+ }
+}
diff --git a/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DelayedQueue.java b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DelayedQueue.java
new file mode 100644
index 0000000..5e97cde
--- /dev/null
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/DelayedQueue.java
@@ -0,0 +1,79 @@
+package com.xsnb.common.utils.mqUtile;
+
+import org.springframework.amqp.core.Binding;
+import org.springframework.amqp.core.BindingBuilder;
+import org.springframework.amqp.core.CustomExchange;
+import org.springframework.amqp.core.Queue;
+import org.springframework.amqp.rabbit.core.RabbitAdmin;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.UUID;
+
+/**
+ * 发送延迟队列的工具类
+ */
+@Component
+public class DelayedQueue {
+
+ // routingKey
+ private static final String DELAYED_ROUTING_KEY = "delayed.routingkey";
+
+ // 延迟队列交换机
+ private static final String DELAYED_EXCHANGE = "delayed.exchange";
+
+ @Autowired
+ RabbitTemplate rabbitTemplate;
+
+ @Resource
+ RabbitAdmin rabbitAdmin;
+
+ /**
+ * 发送延迟队列
+ *
+ * @param queueName 队列名称
+ * @param params 消息内容
+ * @param expiration 延迟时间 毫秒
+ */
+ public void sendDelayedQueue(String queueName, Object params, Integer expiration) {
+ // 先创建一个队列
+ Queue queue = new Queue(queueName);
+ rabbitAdmin.declareQueue(queue);
+
+ // 创建延迟队列交换机
+ CustomExchange customExchange = createCustomExchange();
+ rabbitAdmin.declareExchange(customExchange);
+
+ // 将队列和交换机绑定
+ Binding binding = BindingBuilder.bind(queue).to(customExchange).with(DELAYED_ROUTING_KEY).noargs();
+ rabbitAdmin.declareBinding(binding);
+
+ // 发送延迟消息
+ rabbitTemplate.convertAndSend(DELAYED_EXCHANGE, DELAYED_ROUTING_KEY, params, msg -> {
+ // 发送消息的时候 延迟时长
+ msg.getMessageProperties().setMessageId(UUID.randomUUID().toString().replaceAll("-", ""));
+ msg.getMessageProperties().setDelay(expiration);
+ return msg;
+ });
+ }
+
+ private CustomExchange createCustomExchange() {
+ Map arguments = new HashMap<>();
+ /**
+ * 参数说明:
+ * 1.交换机的名称
+ * 2.交换机的类型
+ * 3.是否需要持久化
+ * 4.是否自动删除
+ * 5.其它参数
+ */
+ arguments.put("x-delayed-type", "direct");
+ return new CustomExchange(DELAYED_EXCHANGE, "x-delayed-message", true, false, arguments);
+ }
+
+}
+
diff --git a/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/RabbitMQ.java b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/RabbitMQ.java
new file mode 100644
index 0000000..bd2448c
--- /dev/null
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/RabbitMQ.java
@@ -0,0 +1,8 @@
+package com.xsnb.common.utils.mqUtile;
+
+import lombok.Data;
+
+@Data
+public class RabbitMQ {
+ public static final String SEND_CODE_QUEUE = "send_code_queue";
+}
diff --git a/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/TtlQueue.java b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/TtlQueue.java
new file mode 100644
index 0000000..54d7025
--- /dev/null
+++ b/xsnb-common/src/main/java/com/xsnb/common/utils/mqUtile/TtlQueue.java
@@ -0,0 +1,66 @@
+package com.xsnb.common.utils.mqUtile;
+
+import org.springframework.amqp.core.Binding;
+import org.springframework.amqp.core.BindingBuilder;
+import org.springframework.amqp.core.DirectExchange;
+import org.springframework.amqp.core.Queue;
+import org.springframework.amqp.rabbit.core.RabbitAdmin;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * 发送TTL队列 设置 消息的存活时间 如果超过了存活时间
+ * 该条消息还没有被消费 则自动从队列中消息 ,如果配置了死信队列则消息会进入死信队列
+ */
+@Component
+public class TtlQueue {
+ // routingKey
+ private static final String TTL_KEY = "ttl.routingkey";
+ private static final String TTL_EXCHANGE = "ttl.exchange";
+
+ @Autowired
+ RabbitTemplate rabbitTemplate;
+
+ @Resource
+ RabbitAdmin rabbitAdmin;
+
+ /**
+ * 发送TTL队列
+ *
+ * @param queueName 队列名称
+ * @param params 消息内容
+ * @param expiration 过期时间 毫秒
+ */
+ public void sendTtlQueue(String queueName, Object params, Integer expiration) {
+ /**
+ * ----------------------------------先创建一个ttl队列--------------------------------------------
+ */
+ Map map = new HashMap<>();
+ // 队列设置存活时间,单位ms,必须是整形数据。
+ map.put("x-message-ttl", expiration);
+ /*参数1:队列名称 参数2:持久化 参数3:是否排他 参数4:自动删除队列 参数5:队列参数*/
+ Queue queue = new Queue(queueName, true, false, false, map);
+ rabbitAdmin.declareQueue(queue);
+
+ /**
+ * ---------------------------------创建交换机---------------------------------------------
+ */
+ DirectExchange directExchange = new DirectExchange(TTL_EXCHANGE, true, false);
+ rabbitAdmin.declareExchange(directExchange);
+ /**
+ * ---------------------------------队列绑定交换机---------------------------------------------
+ */
+ // 将队列和交换机绑定
+ Binding binding = BindingBuilder.bind(queue).to(directExchange).with(TTL_KEY);
+ rabbitAdmin.declareBinding(binding);
+
+ // 发送消息
+ rabbitTemplate.convertAndSend(TTL_EXCHANGE, TTL_KEY, params);
+ }
+}
+
diff --git a/zhn-common/src/main/resources/date.txt b/xsnb-common/src/main/resources/date.txt
similarity index 100%
rename from zhn-common/src/main/resources/date.txt
rename to xsnb-common/src/main/resources/date.txt
diff --git a/xsnb-gateway/Dockerfile b/xsnb-gateway/Dockerfile
new file mode 100644
index 0000000..37ded97
--- /dev/null
+++ b/xsnb-gateway/Dockerfile
@@ -0,0 +1,15 @@
+# 基础镜像
+FROM openjdk:8-jre
+# author
+MAINTAINER ex_weilingfeng@163.com
+
+# 挂载目录
+VOLUME /home/xsnb
+# 创建目录
+RUN mkdir -p /home/xsnb
+# 指定路径
+WORKDIR /home/xsnb
+# 复制jar文件到路径
+COPY xsnb-gateway/target/xsnb-gateway.jar /home/xsnb/xsnb-gateway.jar
+# 启动网关服务
+ENTRYPOINT ["java","-jar","xsnb-gateway.jar"]
diff --git a/zhn-gateway/pom.xml b/xsnb-gateway/pom.xml
similarity index 73%
rename from zhn-gateway/pom.xml
rename to xsnb-gateway/pom.xml
index 8429d15..b08e5d5 100644
--- a/zhn-gateway/pom.xml
+++ b/xsnb-gateway/pom.xml
@@ -3,19 +3,29 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- zhn-dev
- com.zhn
+ xsnb-dev
+ com.xsnb
1.0.0
4.0.0
- zhn-gateway
+ xsnb-gateway
- com.zhn
- zhn-common
+ com.xsnb
+ xsnb-common
+
+
+ com.baomidou
+ mybatis-plus
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+
+
diff --git a/zhn-gateway/src/main/java/com/zhn/gateway/GatewayMian.java b/xsnb-gateway/src/main/java/com/xsnb/gateway/GatewayMian.java
similarity index 91%
rename from zhn-gateway/src/main/java/com/zhn/gateway/GatewayMian.java
rename to xsnb-gateway/src/main/java/com/xsnb/gateway/GatewayMian.java
index 8752176..99e205a 100644
--- a/zhn-gateway/src/main/java/com/zhn/gateway/GatewayMian.java
+++ b/xsnb-gateway/src/main/java/com/xsnb/gateway/GatewayMian.java
@@ -1,4 +1,5 @@
-package com.zhn.gateway;
+package com.xsnb.gateway;
+
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -6,6 +7,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author zhang
*/
+
@SpringBootApplication
public class GatewayMian {
public static void main(String[] args) {
diff --git a/zhn-gateway/src/main/java/com/zhn/gateway/config/IgnoreWhiteConfig.java b/xsnb-gateway/src/main/java/com/xsnb/gateway/config/IgnoreWhiteConfig.java
similarity index 94%
rename from zhn-gateway/src/main/java/com/zhn/gateway/config/IgnoreWhiteConfig.java
rename to xsnb-gateway/src/main/java/com/xsnb/gateway/config/IgnoreWhiteConfig.java
index 54d7f1f..da647a8 100644
--- a/zhn-gateway/src/main/java/com/zhn/gateway/config/IgnoreWhiteConfig.java
+++ b/xsnb-gateway/src/main/java/com/xsnb/gateway/config/IgnoreWhiteConfig.java
@@ -1,4 +1,4 @@
-package com.zhn.gateway.config;
+package com.xsnb.gateway.config;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@@ -12,7 +12,7 @@ import java.util.List;
/**
* @description: 放行白名单配置
- * @author zhn
+ * @author xsnb
*/
@Configuration
@RefreshScope
diff --git a/xsnb-gateway/src/main/java/com/xsnb/gateway/constants/Constants.java b/xsnb-gateway/src/main/java/com/xsnb/gateway/constants/Constants.java
new file mode 100644
index 0000000..f0b59d9
--- /dev/null
+++ b/xsnb-gateway/src/main/java/com/xsnb/gateway/constants/Constants.java
@@ -0,0 +1,4 @@
+package com.xsnb.gateway.constants;
+
+public class Constants {
+}
diff --git a/zhn-gateway/src/main/java/com/zhn/gateway/filters/AuthFilters.java b/xsnb-gateway/src/main/java/com/xsnb/gateway/filters/AuthFilters.java
similarity index 88%
rename from zhn-gateway/src/main/java/com/zhn/gateway/filters/AuthFilters.java
rename to xsnb-gateway/src/main/java/com/xsnb/gateway/filters/AuthFilters.java
index a0b50a7..e2d726a 100644
--- a/zhn-gateway/src/main/java/com/zhn/gateway/filters/AuthFilters.java
+++ b/xsnb-gateway/src/main/java/com/xsnb/gateway/filters/AuthFilters.java
@@ -1,14 +1,14 @@
-package com.zhn.gateway.filters;
+package com.xsnb.gateway.filters;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
-import com.zhn.common.constants.TokenConstants;
-import com.zhn.common.domain.User;
-import com.zhn.common.utils.JwtUtils;
-import com.zhn.common.utils.StringUtils;
-import com.zhn.gateway.config.IgnoreWhiteConfig;
-import com.zhn.gateway.utils.GatewayUtils;
+import com.xsnb.common.constants.TokenConstants;
+import com.xsnb.common.domain.User;
+import com.xsnb.common.utils.JwtUtils;
+import com.xsnb.common.utils.StringUtils;
+import com.xsnb.gateway.config.IgnoreWhiteConfig;
+import com.xsnb.gateway.utils.GatewayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.gateway.filter.GatewayFilterChain;
import org.springframework.cloud.gateway.filter.GlobalFilter;
@@ -56,6 +56,7 @@ public class AuthFilters implements GlobalFilter, Ordered {
}
String jsonStr = redisTemplate.opsForValue().get(TokenConstants.LOGIN_TOKEN_KEY + userKey);
User user = JSONObject.parseObject(jsonStr, User.class);
+ user.setLastLoginTime(new Date());
Date lastLoginTime = user.getLastLoginTime();
long between = DateUtil.between(lastLoginTime, new Date(), DateUnit.MINUTE);
if (between >= 10) {
diff --git a/zhn-gateway/src/main/java/com/zhn/gateway/utils/GatewayUtils.java b/xsnb-gateway/src/main/java/com/xsnb/gateway/utils/GatewayUtils.java
similarity index 96%
rename from zhn-gateway/src/main/java/com/zhn/gateway/utils/GatewayUtils.java
rename to xsnb-gateway/src/main/java/com/xsnb/gateway/utils/GatewayUtils.java
index bfa7346..099059b 100644
--- a/zhn-gateway/src/main/java/com/zhn/gateway/utils/GatewayUtils.java
+++ b/xsnb-gateway/src/main/java/com/xsnb/gateway/utils/GatewayUtils.java
@@ -1,8 +1,8 @@
-package com.zhn.gateway.utils;
+package com.xsnb.gateway.utils;
import com.alibaba.fastjson.JSONObject;
-import com.zhn.common.result.Result;
-import com.zhn.common.utils.StringUtils;
+import com.xsnb.common.result.Result;
+import com.xsnb.common.utils.StringUtils;
import lombok.extern.log4j.Log4j2;
import org.springframework.core.io.buffer.DataBuffer;
import org.springframework.http.HttpHeaders;
@@ -13,7 +13,7 @@ import org.springframework.web.server.ServerWebExchange;
import reactor.core.publisher.Mono;
/**
- * @author zhn
+ * @author xsnb
* @description: 网关处理工具类
*/
@Log4j2
diff --git a/zhn-gateway/src/main/resources/bootstrap.yml b/xsnb-gateway/src/main/resources/bootstrap.yml
similarity index 85%
rename from zhn-gateway/src/main/resources/bootstrap.yml
rename to xsnb-gateway/src/main/resources/bootstrap.yml
index ea9921e..9bd5ea6 100644
--- a/zhn-gateway/src/main/resources/bootstrap.yml
+++ b/xsnb-gateway/src/main/resources/bootstrap.yml
@@ -5,7 +5,7 @@ server:
spring:
application:
# 应用名称
- name: zhn-gateway
+ name: xsnb-gateway
profiles:
# 环境配置
active: dev
@@ -18,10 +18,10 @@ spring:
nacos:
discovery:
# 服务注册地址
- server-addr: 192.168.2.51:8848
+ server-addr: 127.0.0.1:8848
config:
# 配置中心地址
- server-addr: 192.168.2.51:8848
+ server-addr: 127.0.0.1:8848
# 配置文件格式
file-extension: yml
# 共享配置
diff --git a/zhn-modules/pom.xml b/xsnb-modules/pom.xml
similarity index 71%
rename from zhn-modules/pom.xml
rename to xsnb-modules/pom.xml
index cba07cf..7346441 100644
--- a/zhn-modules/pom.xml
+++ b/xsnb-modules/pom.xml
@@ -3,17 +3,17 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- zhn-dev
- com.zhn
+ xsnb-dev
+ com.xsnb
1.0.0
4.0.0
- zhn-modules
+ xsnb-modules
pom
- zhn-system
+ xsnb-system
-
\ No newline at end of file
+
diff --git a/xsnb-modules/xsnb-system/Dockerfile b/xsnb-modules/xsnb-system/Dockerfile
new file mode 100644
index 0000000..178916a
--- /dev/null
+++ b/xsnb-modules/xsnb-system/Dockerfile
@@ -0,0 +1,15 @@
+# 基础镜像
+FROM openjdk:8-jre
+# author
+MAINTAINER ex_weilingfeng
+
+# 挂载目录
+VOLUME /home/xsnb
+# 创建目录
+RUN mkdir -p /home/xsnb
+# 指定路径
+WORKDIR /home/xsnb
+# 复制jar文件到路径
+COPY xsnb-modules/xsnb-system/target/xsnb-modules-system.jar /home/xsnb/xsnb-modules-system.jar
+# 启动系统服务
+ENTRYPOINT ["java","-jar","xsnb-modules-system.jar"]
diff --git a/zhn-modules/zhn-system/pom.xml b/xsnb-modules/xsnb-system/pom.xml
similarity index 85%
rename from zhn-modules/zhn-system/pom.xml
rename to xsnb-modules/xsnb-system/pom.xml
index b655529..0b49d66 100644
--- a/zhn-modules/zhn-system/pom.xml
+++ b/xsnb-modules/xsnb-system/pom.xml
@@ -3,19 +3,19 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- zhn-modules
- com.zhn
+ xsnb-modules
+ com.xsnb
1.0.0
4.0.0
- zhn-system
+ xsnb-system
- com.zhn
- zhn-common
+ com.xsnb
+ xsnb-common
@@ -77,6 +77,18 @@
org.springframework.boot
spring-boot-starter-websocket
+
+ io.minio
+ minio
+ 8.5.3
+
+
+
+ com.squareup.okhttp3
+ okhttp
+ 4.10.0
+
+
diff --git a/zhn-modules/zhn-system/src/main/java/com/zhn/system/SystemMian.java b/xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/SystemMian.java
similarity index 80%
rename from zhn-modules/zhn-system/src/main/java/com/zhn/system/SystemMian.java
rename to xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/SystemMian.java
index b41b75c..be92bf4 100644
--- a/zhn-modules/zhn-system/src/main/java/com/zhn/system/SystemMian.java
+++ b/xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/SystemMian.java
@@ -1,5 +1,6 @@
-package com.zhn.system;
+package com.xsnb.system;
+import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
@@ -8,6 +9,7 @@ import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableFeignClients
@EnableScheduling
+@MapperScan("com.xsnb.**.mapper")
public class SystemMian {
public static void main(String[] args) {
SpringApplication.run(SystemMian.class, args);
diff --git a/xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/config/MailSender.java b/xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/config/MailSender.java
new file mode 100644
index 0000000..d12a477
--- /dev/null
+++ b/xsnb-modules/xsnb-system/src/main/java/com/xsnb/system/config/MailSender.java
@@ -0,0 +1,48 @@
+package com.xsnb.system.config;
+
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.mail.javamail.JavaMailSender;
+import org.springframework.mail.javamail.JavaMailSenderImpl;
+
+import java.util.Properties;
+
+/**
+ * FileName: MailSender
+ * Author: 张海宁
+ * Date: 2024/3/4 14:41
+ * Description:
+ * History:
+ *