From 8c3d15eae99d51193e20ff222dedf96cdba57b33 Mon Sep 17 00:00:00 2001 From: tanghaolin <1723298894@qq.com> Date: 星期二, 15 四月 2025 09:21:43 +0800 Subject: [PATCH] 删除多余照片 --- src/views/Login.vue | 68 ++++++++++++++++++++++++++++------ 1 files changed, 56 insertions(+), 12 deletions(-) diff --git a/src/views/Login.vue b/src/views/Login.vue index 5967d41..ed56c53 100644 --- a/src/views/Login.vue +++ b/src/views/Login.vue @@ -1,5 +1,5 @@ <template> - <div class="login-container min-h-screen flex items-center justify-center"> + <div class="login-container min-h-screen flex items-center justify-center" v-loading="loading"> <div class="login-background"></div> <div class="login-content max-w-md w-full relative z-10"> <!-- 鐧诲綍琛ㄥ崟 --> @@ -26,7 +26,7 @@ /> </el-form-item> - <el-form-item prop="captcha" class="flex space-x-4 mb-2"> + <!-- <el-form-item prop="captcha" class="flex space-x-4 mb-2"> <el-input v-model="loginForm.captcha" placeholder="璇疯緭鍏ュ浘鐗囬獙璇佺爜" @@ -35,7 +35,7 @@ class="custom-input flex-1 mr-2" /> <img src="@/assets/login/captcha.png" alt="楠岃瘉鐮�" class="h-[40px] w-[100px] cursor-pointer" @click="refreshCaptcha" /> - </el-form-item> + </el-form-item> --> <div class="flex items-center justify-between mb-4"> <el-checkbox v-model="loginForm.remember">璁颁綇璐﹀彿</el-checkbox> @@ -45,8 +45,8 @@ <el-button type="primary" class="w-full" size="large" @click="handleLogin">鐧� 褰�</el-button> <div class="mt-4 text-center space-x-2"> - <router-link to="/register" class="text-[#40a9ff]">绔嬪嵆娉ㄥ唽</router-link> - <span class="text-gray-300">路</span> + <!-- <router-link to="/register" class="text-[#40a9ff]">绔嬪嵆娉ㄥ唽</router-link> + <span class="text-gray-300">路</span> --> <router-link to="/" class="text-[#40a9ff]">杩斿洖棣栭〉</router-link> </div> </el-form> @@ -59,11 +59,14 @@ import { Key, Lock, User } from '@element-plus/icons-vue'; import { ElMessage } from 'element-plus'; import { reactive, ref } from 'vue'; +import { useLogin } from '@/stores/useLogin'; +import { useRoute } from 'vue-router'; import { useRouter } from 'vue-router'; - +import { login } from '@/api/login'; const router = useRouter(); +const route = useRoute(); const formRef = ref(); - +const loginStore = useLogin(); const loginForm = reactive({ username: '', password: '', @@ -74,19 +77,60 @@ const rules = { username: [{ required: true, message: '璇疯緭鍏ョ敤鎴峰悕', trigger: 'blur' }], password: [{ required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur' }], - captcha: [{ required: true, message: '璇疯緭鍏ラ獙璇佺爜', trigger: 'blur' }], + // captcha: [{ required: true, message: '璇疯緭鍏ラ獙璇佺爜', trigger: 'blur' }], }; +const loading = ref(false); + +const logingTipsEmun= { + "-1": "璐︽埛涓嶅瓨鍦�", + "-2": "瀵嗙爜閿欒 ", + "-3": "璐﹀彿灏佸仠", + "-4": "璐﹀彿鏈粦瀹�", + "1": "姝e父", + } const handleLogin = () => { formRef.value.validate((valid: boolean) => { if (valid) { - // 杩欓噷娣诲姞鐧诲綍閫昏緫 - ElMessage.success('鐧诲綍鎴愬姛'); - router.push('/'); + submitLogin(); } else { return false; } }); +}; +const submitLogin = () => { + let form_data = { + UserType: 0, + LoginName:'demo', + PassWord: '123456', + }; + loading.value = true; + login(form_data) + .then((res) => { + loading.value = false; + let data = res.data.Data; + if (res.data.Code !== 0) { + ElMessage.error(res.data.Message); + return; + } + if(data.Status !== 1){ + ElMessage.error(logingTipsEmun[data.Status]); + return; + } + let { redirectPath } = route.query; + let redirect = '/'; + if (redirectPath != null) { + redirect = redirectPath; + } + //瀛樺偍鐧诲綍鎴愬姛鍚庣殑鐢ㄦ埛淇℃伅 + loginStore.init(data.User); + ElMessage.success('鐧诲綍鎴愬姛'); + router.replace(redirect); + }) + .catch((err) => { + loading.value = false; + ElMessage.error(err); + }); }; const refreshCaptcha = () => { @@ -107,7 +151,7 @@ left: 0; right: 0; bottom: 0; - background-image: url('@/assets/images/login-bg.png'); + /* background-image: url('@/assets/images/login-bg.png'); */ background-size: cover; background-position: center; opacity: 0.1; -- Gitblit v1.9.3