From c7f3fd5215399b37d0511b3bd555150ff1b13507 Mon Sep 17 00:00:00 2001
From: charles <981744753@qq.com>
Date: 星期一, 29 四月 2024 10:39:30 +0800
Subject: [PATCH] fix:回退原先版本

---
 src/views/login/loginView.vue |   59 ++++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 42 insertions(+), 17 deletions(-)

diff --git a/src/views/login/loginView.vue b/src/views/login/loginView.vue
index 2c768ed..7716227 100644
--- a/src/views/login/loginView.vue
+++ b/src/views/login/loginView.vue
@@ -4,7 +4,7 @@
       <div class="card-top">
         <img src="@/assets/images/logo.png" />
       </div>
-      <p>鏅鸿兘鎶ュ伐绯荤粺</p>
+      <p>鏅鸿兘璐ㄦ绯荤粺</p>
       <div class="card_bottom">
         <el-form ref="ruleFormRef" :model="ruleForm" status-icon :rules="rules" label-width="25%" class="demo-ruleForm">
           <el-form-item label="" prop="accountNumber">
@@ -20,8 +20,12 @@
             />
           </el-form-item>
           <el-form-item label="" prop="code">
-            <el-input v-model="ruleForm.code" autocomplete="off" style="width: 70%"> </el-input>
-            <img class="login-code" :src="captcha" @click="getCaptchaData" />
+            <el-input v-model="ruleForm.code" placeholder="楠岃瘉鐮�" autocomplete="off" style="width: 70%">
+              <template #append>
+                <img class="login-code" :src="captcha" @click="getCaptchaData" />
+              </template>
+            </el-input>
+            <!-- <img class="login-code" :src="captcha" @click="getCaptchaData" /> -->
           </el-form-item>
           <el-form-item>
             <el-button type="primary" @click="submitForm(ruleFormRef)">鐧诲綍</el-button>
@@ -35,7 +39,10 @@
 <script setup lang="ts">
 import { ref, reactive, onMounted } from 'vue'
 import type { FormInstance, FormRules } from 'element-plus'
-import { getCaptcha } from '@/api'
+import { getCaptcha, login } from '@/api'
+import { setToken, getToken } from '@/common/utils/index'
+import { ElMessage } from 'element-plus'
+import { useRouter } from 'vue-router'
 
 const ruleFormRef = ref<FormInstance>()
 
@@ -72,23 +79,17 @@
 })
 
 const captcha = ref('')
+const captchaId = ref('')
 
 const getCaptchaData = () => {
-  getCaptcha().then((rsp) => {
-    if (rsp.code == 200) {
-      this.captchaId = rsp.data.captchaId
-      this.captcha = rsp.data.picPath
-    }
+  getCaptcha().then((rsp: any) => {
+    captcha.value = rsp?.data?.picPath
+    captchaId.value = rsp?.data?.captchaId
   })
 }
 onMounted(() => {
   // 鑾峰彇楠岃瘉鐮�
-  getCaptcha().then((rsp) => {
-    if (rsp.code == 200) {
-      this.captchaId = rsp.data.captchaId
-      this.captcha = rsp.data.picPath
-    }
-  })
+  getCaptchaData()
 })
 
 const rules = reactive<FormRules<typeof ruleForm>>({
@@ -97,11 +98,29 @@
   accountNumber: [{ validator: checkAge, trigger: 'blur' }]
 })
 
+const router = useRouter()
+
 const submitForm = (formEl: FormInstance | undefined) => {
   if (!formEl) return
   formEl.validate((valid) => {
     if (valid) {
-      console.log('submit!')
+      login({
+        username: ruleForm.accountNumber,
+        password: ruleForm.pass,
+        captcha: ruleForm.code,
+        captchaId: captchaId.value
+      }).then((rsp: any) => {
+        console.log(rsp)
+        setToken(rsp?.data?.token)
+        ElMessage({
+          message: '鐧诲綍鎴愬姛锛�',
+          type: 'success'
+        })
+        ruleForm.accountNumber = ''
+        ruleForm.pass = ''
+        ruleForm.code = ''
+        router.push('/')
+      })
     } else {
       console.log('error submit!')
       return false
@@ -166,7 +185,13 @@
     }
   }
 }
-
+.login-code {
+  height: 40px - 2px;
+  display: block;
+  margin: 0px -20px;
+  border-top-right-radius: 2px;
+  border-bottom-right-radius: 2px;
+}
 ::v-deep .el-form-item__content {
   display: flex;
   align-items: center;

--
Gitblit v1.8.0