From c32c0628f6fe50a2a524eb5228c0786ebbf5bc06 Mon Sep 17 00:00:00 2001 From: MO <448233645@qq.com> Date: Wed, 8 Nov 2023 14:46:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=99=BB=E5=BD=95=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/modules/user.js | 4 + src/views/login.vue | 236 ++++++++++++++++++++++++++------------ 2 files changed, 164 insertions(+), 76 deletions(-) diff --git a/src/store/modules/user.js b/src/store/modules/user.js index f0d4e236..65d3d64f 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -78,6 +78,10 @@ const user = { const socialType = userInfo.socialType return new Promise((resolve, reject) => { login(username, password, captchaVerification, socialType, socialCode, socialState).then(res => { + console.log(res) + if(res.result){ + alert(res.result) + } res = res.data; // 设置 token setToken(res) diff --git a/src/views/login.vue b/src/views/login.vue index a3c5f675..c7a1a83d 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -2,42 +2,89 @@
- +
@@ -56,21 +108,27 @@ import { SystemUserSocialTypeEnum } from "@/utils/constants"; import { getCaptchaEnable, getTenantEnable } from "@/utils/ruoyi"; import { getPassword, - getRememberMe, getTenantName, + getRememberMe, + getTenantName, getUsername, - removePassword, removeRememberMe, removeTenantName, + removePassword, + removeRememberMe, + removeTenantName, removeUsername, - setPassword, setRememberMe, setTenantId, setTenantName, - setUsername + setPassword, + setRememberMe, + setTenantId, + setTenantName, + setUsername, } from "@/utils/auth"; -import Verify from '@/components/Verifition/Verify'; +import Verify from "@/components/Verifition/Verify"; import { resetUserPwd } from "@/api/system/user"; export default { name: "Login", components: { - Verify + Verify, }, data() { return { @@ -91,10 +149,10 @@ export default { scene: 21, loginRules: { username: [ - { required: true, trigger: "blur", message: "请输入您的账号" } + { required: true, trigger: "blur", message: "请输入您的账号" }, ], password: [ - { required: true, trigger: "blur", message: "请输入您的密码" } + { required: true, trigger: "blur", message: "请输入您的密码" }, ], code: [{ required: true, trigger: "change", message: "请输入验证码" }], tenantName: [ @@ -102,20 +160,20 @@ export default { { validator: (rule, value, callback) => { // debugger - getTenantIdByName(value).then(res => { + getTenantIdByName(value).then((res) => { const tenantId = res.data.id; if (tenantId && tenantId >= 0) { // 设置租户 - setTenantId(tenantId) + setTenantId(tenantId); callback(); } else { - callback('单位不存在'); + callback("单位不存在"); } }); }, - trigger: 'blur' - } - ] + trigger: "blur", + }, + ], }, loading: false, redirect: undefined, @@ -127,35 +185,38 @@ export default { // 租户开关 this.tenantEnable = getTenantEnable(); if (this.tenantEnable) { - getTenantIdByName(this.loginForm.tenantName).then(res => { // 设置租户 + getTenantIdByName(this.loginForm.tenantName).then((res) => { + // 设置租户 const tenantId = res.data.id; - window.localStorage.setItem('cn', res.data.name) + window.localStorage.setItem("cn", res.data.name); if (tenantId && tenantId >= 0) { - setTenantId(tenantId) + setTenantId(tenantId); } }); } // 验证码开关 this.captchaEnable = getCaptchaEnable(); // 重定向地址 - this.redirect = this.$route.query.redirect ? decodeURIComponent(this.$route.query.redirect) : undefined; - console.log('this.redirect', this.redirect); + this.redirect = this.$route.query.redirect + ? decodeURIComponent(this.$route.query.redirect) + : undefined; + console.log("this.redirect", this.redirect); this.getCookie(); }, methods: { handleToRepass() { - this.$router.push("/rePassword") + this.$router.push("/rePassword"); }, getCode() { // 情况一,未开启:则直接登录 if (!this.captchaEnable) { - this.handleLogin({}) + this.handleLogin({}); return; } // 情况二,已开启:则展示验证码;只有完成验证码的情况,才进行登录 // 弹出验证码 - this.$refs.verify.show() + this.$refs.verify.show(); }, getCookie() { const username = getUsername(); @@ -171,31 +232,37 @@ export default { }; }, handleLogin(captchaParams) { - console.log('151131', captchaParams); - this.$refs.loginForm.validate(valid => { + // console.log("151131", captchaParams); + this.$refs.loginForm.validate((valid) => { if (valid) { this.loading = true; // 设置 Cookie if (this.loginForm.rememberMe) { - setUsername(this.loginForm.username) - setPassword(this.loginForm.password) - setRememberMe(this.loginForm.rememberMe) - setTenantName(this.loginForm.tenantName) + setUsername(this.loginForm.username); + setPassword(this.loginForm.password); + setRememberMe(this.loginForm.rememberMe); + setTenantName(this.loginForm.tenantName); } else { - removeUsername() - removePassword() - removeRememberMe() - removeTenantName() + removeUsername(); + removePassword(); + removeRememberMe(); + removeTenantName(); } - this.loginForm.captchaVerification = captchaParams.captchaVerification + this.loginForm.captchaVerification = + captchaParams.captchaVerification; // 发起登陆 // console.log("发起登录", this.loginForm); - this.$store.dispatch(this.loginForm.loginType === "sms" ? "SmsLogin" : "Login", this.loginForm).then(() => { - this.$router.push({ path: this.redirect || "/" }).catch(() => { + this.$store + .dispatch( + this.loginForm.loginType === "sms" ? "SmsLogin" : "Login", + this.loginForm + ) + .then(() => { + this.$router.push({ path: this.redirect || "/" }).catch(() => {}); + }) + .catch(() => { + this.loading = false; }); - }).catch(() => { - this.loading = false; - }); } }); }, @@ -204,35 +271,47 @@ export default { this.loading = true; let tenant = false; if (this.tenantEnable) { - await this.$prompt('请输入租户名称', "提示", { + await this.$prompt("请输入租户名称", "提示", { confirmButtonText: "确定", - cancelButtonText: "取消" - }).then(async ({ value }) => { - await getTenantIdByName(value).then(res => { - const tenantId = res.data.id; - window.localStorage.setItem('cn', res.data.name) - tenant = true - if (tenantId && tenantId >= 0) { - setTenantId(tenantId) - } - }); - }).catch(() => { - // 取消登录按钮 loading状态 - this.loading = false; + cancelButtonText: "取消", + }) + .then(async ({ value }) => { + await getTenantIdByName(value).then((res) => { + const tenantId = res.data.id; + window.localStorage.setItem("cn", res.data.name); + tenant = true; + if (tenantId && tenantId >= 0) { + setTenantId(tenantId); + } + }); + }) + .catch(() => { + // 取消登录按钮 loading状态 + this.loading = false; - return false - }); + return false; + }); } else { - tenant = true + tenant = true; } if (tenant) { // 计算 redirectUri - const redirectUri = location.origin + '/social-login?' - + encodeURIComponent('type=' + socialTypeEnum.type + '&redirect=' + (this.redirect || "/")); // 重定向不能丢 + const redirectUri = + location.origin + + "/social-login?" + + encodeURIComponent( + "type=" + + socialTypeEnum.type + + "&redirect=" + + (this.redirect || "/") + ); // 重定向不能丢 // const redirectUri = 'http://127.0.0.1:48080/api/gitee/callback'; // const redirectUri = 'http://127.0.0.1:48080/api/dingtalk/callback'; // 进行跳转 - socialAuthRedirect(socialTypeEnum.type, encodeURIComponent(redirectUri)).then((res) => { + socialAuthRedirect( + socialTypeEnum.type, + encodeURIComponent(redirectUri) + ).then((res) => { // console.log(res.url); window.location.href = res.data; }); @@ -241,10 +320,15 @@ export default { /** ========== 以下为升级短信登录 ========== */ getSmsCode() { if (this.mobileCodeTimer > 0) return; - this.$refs.loginForm.validate(valid => { + this.$refs.loginForm.validate((valid) => { if (!valid) return; - sendSmsCode(this.loginForm.mobile, this.scene, this.loginForm.uuid, this.loginForm.code).then(res => { - this.$modal.msgSuccess("获取验证码成功") + sendSmsCode( + this.loginForm.mobile, + this.scene, + this.loginForm.uuid, + this.loginForm.code + ).then((res) => { + this.$modal.msgSuccess("获取验证码成功"); this.mobileCodeTimer = 60; let msgTimer = setInterval(() => { this.mobileCodeTimer = this.mobileCodeTimer - 1; @@ -254,10 +338,10 @@ export default { }, 1000); }); }); - } - } + }, + }, };