From 0ac3181dcd83e3caab600e42ca27fecd344ae674 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=90=B4=E5=85=88=E7=94=9F?= <1780089502@qq.com>
Date: Fri, 14 Jul 2023 13:21:01 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/layout/index.vue | 5 +-
src/views/login/index.vue | 105 +++++++++++++++++++++++++++++--------
vite.config.js | 4 +-
3 files changed, 87 insertions(+), 27 deletions(-)
diff --git a/src/views/layout/index.vue b/src/views/layout/index.vue
index 8bbe765..690717f 100644
--- a/src/views/layout/index.vue
+++ b/src/views/layout/index.vue
@@ -67,14 +67,13 @@
-
-
+
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 44819be..d938a89 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -11,6 +11,7 @@
size="medium"
ref="formRef"
@keyup.enter.native="handleSubmit"
+ v-if="formPhoneIf"
>
登 录
+
+ 验证码已发送至手机为({{ phone }})
+
+
+
+
+ 提 交
+
+
{
slideVerifyShow.value = false;
loading.value = true;
var params = {
- user: encrypt(data.user),
+ loginName: encrypt(data.user),
password: encrypt(data.password),
};
http.post("/api/auth/login", params).then((resp) => {
if (resp.code == 200) {
- var user = {
- token: resp.data.token,
- name: resp.data.name,
- menus: resp.data.menus,
- buttons: resp.data.buttons,
- accountType: resp.data.accountType,
- };
- tools.data.set("user", user);
-
- if (remembIf) {
- tools.data.set("params", {
- user: data.user,
- password: data.password,
- });
- } else {
- tools.data.remove("params");
- }
- ElMessage.success("登录成功");
- //loading.value = false;
- Router.push("/");
- // 跳转到 首页路由
+ console.log(resp.data.loginAuthCode);
+ phone.value = resp.data.phone;
+ postPhoneCode(resp.data.loginAuthCode);
} else {
ElMessage.error(resp.message);
loading.value = false;
@@ -126,6 +141,52 @@ const handleSubmit = async () => {
}
});
};
+
+const postPhoneCode = (loginAuthCode) => {
+ var formData = new FormData();
+ dataPhone.value.loginAuthCode = loginAuthCode;
+ formData.append("loginAuthCode", loginAuthCode);
+ http.post("/api/auth/phone_code", formData).then((resp) => {
+ if (resp.code == 200) {
+ dataPhone.value.smsAuthCode = resp.data.smsAuthCode;
+ formPhoneIf.value = false;
+ }
+ });
+};
+
+const formPhoneIf = ref(true);
+
+const formPhoneCodeRef = ref(null);
+const rules = reactive({
+ phoneCode: [{ required: true, message: "请输入验证码", trigger: "blur" }],
+});
+
+const handlePhoneSubmit = (formEl) => {
+ if (!formEl) return;
+ formEl.validate((valid, fields) => {
+ if (valid) {
+ http.post("/api/auth/token", dataPhone.value).then((resp) => {
+ if (resp.code == 200) {
+ var user = {
+ token: resp.data.token,
+ name: resp.data.userInfo.userName,
+ menus: resp.data.menuList,
+ permissions: resp.data.permissions,
+ };
+ tools.data.set("user", user);
+ ElMessage.success("登录成功");
+ //loading.value = false;
+ Router.push("/");
+ // 跳转到 首页路由
+ } else {
+ ElMessage.error(resp.message);
+ }
+ });
+ } else {
+ console.log("error submit!", fields);
+ }
+ });
+};