From a32100e31b93bc378b11ab93617a9c40b081ad70 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期三, 15 四月 2026 16:44:03 +0800
Subject: [PATCH] 移除核验部分+登录注册接口对接
---
src/views/main/components/MyHeader.vue | 53 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 44 insertions(+), 9 deletions(-)
diff --git a/src/views/main/components/MyHeader.vue b/src/views/main/components/MyHeader.vue
index 16ff088..745435d 100644
--- a/src/views/main/components/MyHeader.vue
+++ b/src/views/main/components/MyHeader.vue
@@ -2,21 +2,21 @@
<div class="custom-header">
<el-row class="content" justify="space-between">
<el-text class="text-white text-2xl font-bold">骞夸笢鐪佹妧鑳戒汉鎵嶈瘎浠疯�冨姟绠$悊骞冲彴</el-text>
- <el-dropdown v-if="!userInfo.id" placement="bottom">
+ <el-dropdown v-if="userInfo.id" placement="bottom">
<el-row align="middle">
<Icon icon="fa:user-circle" width="22" height="22" class="mr-2" style="color: #fff" />
- <el-text class="text-white cursor-p text-lg font-bold">榛勫┓濠�</el-text>
+ <el-text class="text-white cursor-p text-lg font-bold">{{ userInfo.nickname }}</el-text>
<Icon icon="flowbite:caret-down-solid" width="22" height="22" class="ml-2" style="color: #fff" />
</el-row>
<template #dropdown>
<el-dropdown-menu>
- <el-dropdown-item>涓汉涓績</el-dropdown-item>
- <el-dropdown-item>閫�鍑虹櫥褰�</el-dropdown-item>
+ <el-dropdown-item @click="gotoCenter()">涓汉涓績</el-dropdown-item>
+ <el-dropdown-item @click="logout()">閫�鍑虹櫥褰�</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
- <el-button v-else color="#007AFF">
- <el-text class="text-white cursor-p text-lg font-bold" @click="login">鐧� 褰�</el-text>
+ <el-button @click="login" v-else color="#007AFF">
+ <el-text class="text-white cursor-p text-lg font-bold">鐧� 褰�</el-text>
</el-button>
</el-row>
</div>
@@ -26,21 +26,56 @@
import { useSessionStore } from '@/stores/session.js'
import { useLoginStore } from '@/stores/login.js'
import { storeToRefs } from 'pinia';
-
+import { tokenUtils } from '@/utils/axios.js'
export default {
setup() {
const { loginDialogVisible } = storeToRefs(useLoginStore())
+ const { setUserInfo } = useSessionStore()
const { userInfo } = storeToRefs(useSessionStore())
- return { loginDialogVisible, userInfo }
+ return { loginDialogVisible, userInfo, setUserInfo }
},
data() {
return {
-
+ }
+ },
+ created() {
+ if (tokenUtils.getAccessToken()) {
+ this.getUserInfo()
+ } else {
+ this.$emit('getUserInfoFlag')
}
},
methods: {
login() {
this.loginDialogVisible = true
+ },
+ getUserInfo() {
+ this.$axios.get('/system/kw/examinee/profile').then(res => {
+ if (res.data.code == 0) {
+ const resData = res.data.data || {}
+ this.setUserInfo(resData)
+ } else {
+ this.$message.error(res.data.msg)
+ }
+ }).finally(() => {
+ this.$emit('getUserInfoFlag')
+ })
+ },
+ gotoCenter() {
+ this.$router.push('/main/center')
+ },
+ logout() {
+ this.$messageBox.confirm('纭畾瑕侀��鍑虹櫥褰曞悧', '鎻愮ず',
+ { confirmButtonText: '纭畾', cancelButtonText: '鍙栨秷', type: 'error' }).then(res => {
+ if (res == 'confirm') {
+ tokenUtils.clearTokens()
+ this.setUserInfo({})
+ this.$message.success('閫�鍑虹櫥褰�')
+ if (this.$route.meta.loginRequired) {
+ this.$router.replace('/main/home')
+ }
+ }
+ })
}
}
}
--
Gitblit v1.8.0