feat: 登录调整完成

pull/1/head
刘释隆 1 year ago
parent e0f732a531
commit 54e3296fc6

@ -1,5 +1,5 @@
<script lang="ts" setup> <script lang="ts" setup>
import { computed, reactive, ref } from "vue"; import { computed, onMounted, reactive, ref } from "vue";
import { useRoute, useRouter } from "vue-router"; import { useRoute, useRouter } from "vue-router";
import { useMessage } from "naive-ui"; import { useMessage } from "naive-ui";
@ -34,19 +34,18 @@ const route = useRoute();
const show = ref(false); const show = ref(false);
const flag = ref(true); const flag = ref(true);
const loginSuccess = ref(true); const loginSuccess = ref(true);
const loginRejectMessge = ref(''); const loginRejectMessge = ref("");
const formInline: FormState = reactive({ let formInline: FormState = reactive({
enterprisecode: "演示公司", // enterprisecode: "",
username: "yanshi01", // username: "yanshi01",
password: "123456", // password: "123456",
enterprisecode: "",
// enterprisecode: "", username: "",
// username: "", password: ""
// password: ""
}); });
const formSms: FormSms = reactive({ let formSms: FormSms = reactive({
agentcode: "", agentcode: "",
phone: "", phone: "",
phonecode: "", phonecode: "",
@ -54,7 +53,23 @@ const formSms: FormSms = reactive({
const tab = ref(0); const tab = ref(0);
const countTime = ref("获取验证码"); const countTime = ref("获取验证码");
const rules = { const rules = {
enterprisecode: [{ required: true, message: "请输入企业编码", trigger: "blur" },{ enterprisecode: [
{ required: true, message: "请输入企业编码", trigger: "blur" },
{
trigger: ["blur"],
level: "error",
validator(_rule, value) {
if (loginSuccess.value) {
return true;
} else {
return new Error(loginRejectMessge.value);
}
},
},
],
agentcode: [
{ required: true, message: "请输入企业编码", trigger: "blur" },
{
trigger: ["blur"], trigger: ["blur"],
level: "error", level: "error",
validator(_rule, value) { validator(_rule, value) {
@ -64,8 +79,8 @@ const rules = {
return new Error(loginRejectMessge.value); return new Error(loginRejectMessge.value);
} }
}, },
},], },
agentcode: { required: true, message: "请输入企业编码", trigger: "blur" }, ],
phone: { required: true, message: "请输入手机号", trigger: "blur" }, phone: { required: true, message: "请输入手机号", trigger: "blur" },
phonecode: [ phonecode: [
{ required: true, message: "请输入验证码", trigger: "blur" }, { required: true, message: "请输入验证码", trigger: "blur" },
@ -84,7 +99,20 @@ const rules = {
}, },
}, },
], ],
username: { required: true, message: "请输入用户名", trigger: "blur" }, username: [
{ required: true, message: "请输入用户名", trigger: "blur" },
{
trigger: ["blur"],
level: "error",
validator(_rule, value) {
if (loginSuccess.value) {
return true;
} else {
return new Error(loginRejectMessge.value);
}
},
},
],
password: { required: true, message: "请输入密码", trigger: "blur" }, password: { required: true, message: "请输入密码", trigger: "blur" },
captcha: { required: true, message: "请输入验证码", trigger: "blur" }, captcha: { required: true, message: "请输入验证码", trigger: "blur" },
}; };
@ -107,6 +135,12 @@ function handleSubmit(e) {
const { code, message: msg } = await userStore.login(params); const { code, message: msg } = await userStore.login(params);
loginRejectMessge.value = msg; loginRejectMessge.value = msg;
if (code === ResultEnum.SUCCESS) { if (code === ResultEnum.SUCCESS) {
//
if (autoLogin.value) {
localStorage.setItem("LOGIN_FORM_PASS", JSON.stringify(formInline));
} else {
localStorage.removeItem("LOGIN_FORM_PASS");
}
loginSuccess.value = true; loginSuccess.value = true;
await userStore.getInformation(); await userStore.getInformation();
message.destroyAll(); message.destroyAll();
@ -128,6 +162,25 @@ function handleSubmit(e) {
}); });
} }
onMounted(() => {
let data:any = localStorage.getItem("LOGIN_FORM_SMS");
if (data) {
data = JSON.parse(data) as any
formSms.agentcode = data.agentcode;
formSms.phone = data.phone;
formSms.phonecode = "";
autoLogin.value = true;
}
data = localStorage.getItem("LOGIN_FORM_PASS");
if (data) {
data = JSON.parse(data) as any;
formInline.username = data.username;
formInline.password = data.password;
formInline.enterprisecode = data.enterprisecode;
autoLogin.value = true;
}
});
function handleSmsSubmit(e) { function handleSmsSubmit(e) {
e.preventDefault(); e.preventDefault();
formRefSms.value.validate(async (errors) => { formRefSms.value.validate(async (errors) => {
@ -143,11 +196,17 @@ function handleSmsSubmit(e) {
phonecode, phonecode,
}); });
const { code, message: msg } = res; const { code, message: msg } = res;
loginRejectMessge.value = msg;
if (code === ResultEnum.SUCCESS) { if (code === ResultEnum.SUCCESS) {
//
if (autoLogin.value) {
localStorage.setItem("LOGIN_FORM_SMS", JSON.stringify(formSms));
} else {
localStorage.removeItem("LOGIN_FORM_SMS");
}
loginSuccess.value = true; loginSuccess.value = true;
// const { code, message: msg } = await userStore.login(params) // const { code, message: msg } = await userStore.login(params)
await userStore.getInformation(); await userStore.getInformation();
message.destroyAll(); message.destroyAll();
const toPath = decodeURIComponent((route.query?.redirect || "/") as string); const toPath = decodeURIComponent((route.query?.redirect || "/") as string);
message.success("登录成功,即将进入系统"); message.success("登录成功,即将进入系统");
@ -338,6 +397,7 @@ function forget() {
v-model:value="formSms.phone" v-model:value="formSms.phone"
class="item-input" class="item-input"
placeholder="请输入手机号" placeholder="请输入手机号"
maxlength="11"
> >
<template #prefix> <template #prefix>
<img <img

Loading…
Cancel
Save