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);
});
});
- }
- }
+ },
+ },
};