From 3c0f2cd6720032f83ab34daff947bf31f3bb96b3 Mon Sep 17 00:00:00 2001
From: yangyin <1850366751@qq.com>
Date: 星期五, 29 十一月 2024 13:32:52 +0800
Subject: [PATCH] 优化手机扫码

---
 src/layout/component/sidebar/components/MenuList.vue |  113 ++++++++++++++++++++------------------------------------
 1 files changed, 40 insertions(+), 73 deletions(-)

diff --git a/src/layout/component/sidebar/components/MenuList.vue b/src/layout/component/sidebar/components/MenuList.vue
index cd97b4f..2bbf11c 100644
--- a/src/layout/component/sidebar/components/MenuList.vue
+++ b/src/layout/component/sidebar/components/MenuList.vue
@@ -21,14 +21,14 @@
 					><span class="user_name"> {{ userName }} </span></span
 				><span ref="toggleExitLoginBtnRef"
 					><span
-						class="ywicon text-white"
-						:class="{ 'icon-fold': !state.isShowExitLogin, 'icon-unfold': state.isShowExitLogin }"
+						class="ywifont text-white"
+						:class="{ 'ywicon-fold': !state.isShowExitLogin, 'ywicon-unfold': state.isShowExitLogin }"
 						@click="toggleShowExitLogin"
 					></span
 				></span>
 			</div>
 			<div class="pop_up actived" v-show="state.isShowExitLogin">
-				<div class="exit" @click="logoutClick"><i class="ywicon icon-tuichu"></i> 閫�鍑虹櫥褰�</div>
+				<div class="exit" @click="logoutClick"><i class="ywifont ywicon-tuichu"></i> 閫�鍑虹櫥褰�</div>
 			</div>
 		</div>
 		<div v-else class="user_login">
@@ -37,65 +37,42 @@
 			</div>
 		</div>
 	</div>
-	<div class="pc-login items-center justify-center" style="display: flex" v-show="state.isShowLogin">
-		<div class="login_box">
-			<div class="sign_in">
-				<i class="ywicon icon-guanbi closes" @click="handleClose"></i>
-				<h1><span>鐧诲綍 WI 姘村姟</span></h1>
-				<el-form ref="loginFormRef" :model="state.loginForm" :rules="loginRules" class="demo-ruleForm mt-[24px]" size="large">
-					<el-form-item label="璐﹀彿" prop="account">
-						<el-input v-model="state.loginForm.account" clearable />
-					</el-form-item>
-					<el-form-item label="瀵嗙爜" prop="pwd">
-						<el-input v-model="state.loginForm.pwd" type="password" autocomplete="off" clearable />
-					</el-form-item>
-				</el-form>
-				<div class="mt-[24px]">
-					<el-button type="primary" @click="onSubmit" class="set-login_btn">鐧诲綍</el-button>
-				</div>
-			</div>
-		</div>
-	</div>
 </template>
 
 <script setup lang="ts">
-import type { FormInstance } from 'element-plus';
 import { computed, onMounted, reactive, ref, watchEffect } from 'vue';
-import { PostLogin } from '/@/api/ai/user';
 import router from '/@/router';
-import emitter from '/@/utils/mitt';
+import { isLoginStatus, isSharePage, isShowLogin } from '/@/stores/chatRoom';
 import { accessSessionKey, userNameKey } from '/@/utils/request';
 import { gotoRoute } from '/@/utils/route';
-import { Local } from '/@/utils/storage';
-
-const loginFormRef = ref<FormInstance>(null);
-const isLoginStatus = ref(!!Local.get(accessSessionKey));
-
+import { Local, LoginInfo } from '/@/utils/storage';
+import emitter from '/@/utils/mitt';
 const userName = ref('');
 const firstUserCharacter = computed(() => userName.value?.[0]?.toUpperCase());
+isLoginStatus.value = !!Local.get(accessSessionKey);
 watchEffect(() => {
 	if (!isLoginStatus.value) return;
 	userName.value = Local.get(userNameKey);
 });
 let state = reactive({
 	asideTitleList: [
-		{
-			id: 1,
-			icon: '/static/images/wave/AsideIcon.png',
-			title: '搴旂敤鍦烘櫙',
-			routerName: 'AllScenario',
-		},
-		{
-			id: 2,
-			icon: '/static/images/wave/AsideIcon.png',
-			title: '甯姪涓績',
-			// routerName:'Scenario',
-		},
-		{
-			id: 3,
-			icon: '/static/images/wave/AsideIcon.png',
-			title: '涓汉璁剧疆',
-		},
+		// {
+		// 	id: 1,
+		// 	icon: '/static/images/wave/AsideIcon.png',
+		// 	title: '搴旂敤鍦烘櫙',
+		// 	routerName: 'AllScenario',
+		// },
+		// {
+		// 	id: 2,
+		// 	icon: '/static/images/wave/AsideIcon.png',
+		// 	title: '甯姪涓績',
+		// 	// routerName:'Scenario',
+		// },
+		// {
+		// 	id: 3,
+		// 	icon: '/static/images/wave/AsideIcon.png',
+		// 	title: '涓汉璁剧疆',
+		// },
 		{
 			id: 4,
 			icon: '/static/images/wave/AsideIcon.png',
@@ -103,40 +80,27 @@
 			routerName: 'AboutUs',
 		},
 	],
-	isShowLogin: false,
 	isShowExitLogin: false,
 	loginForm: {
 		account: '',
 		pwd: '',
 	},
-});
-const loginRules = reactive({
-	account: [{ required: true, message: '璇疯緭鍏ヨ处鍙�', trigger: 'blur' }],
-	pwd: [{ required: true, message: '璇疯緭鍏ュ瘑鐮�', trigger: 'blur' }],
+	loginPhoneForm: {
+		phoneUser: '',
+		verifyCode: '',
+	},
+	activeLoginName: 'accountUser',
 });
 const handleClick = (item) => {
+	if (!item.routerName) return;
 	gotoRoute({ name: item.routerName });
 };
+
 //鐧诲綍
 const openLoginDlg = async () => {
-	state.isShowLogin = true;
-};
-const handleClose = () => {
-	state.isShowLogin = false;
-};
-//鐧诲綍
-const onSubmit = async () => {
-	const isValid = await loginFormRef.value.validate().catch(() => {});
-	if (!isValid) return;
-	const res = await PostLogin({
-		user: state.loginForm.account,
-		pass: state.loginForm.pwd,
-	});
-	Local.set(accessSessionKey, res.hswatersession);
-	Local.set(userNameKey, state.loginForm.account);
-	state.isShowLogin = false;
-	isLoginStatus.value = true;
-	window.location.reload();
+	// 鍒嗕韩椤典笉闇�瑕�
+	if (isSharePage.value) return;
+	isShowLogin.value = true;
 };
 
 const currentRoute = router.currentRoute;
@@ -149,7 +113,7 @@
 const logoutClick = () => {
 	state.isShowExitLogin = false;
 	isLoginStatus.value = false;
-	Local.remove(accessSessionKey);
+	LoginInfo.remove();
 };
 const toggleExitLoginBtnRef = ref<HTMLDivElement>(null);
 
@@ -161,14 +125,13 @@
 
 onMounted(() => {
 	emitter.on('openLoginDlg', () => {
-		if (state.isShowLogin || isLoginStatus.value) return;
+		if (isShowLogin.value || isLoginStatus.value) return;
 		openLoginDlg();
 	});
 
 	emitter.on('logout', () => {
 		logoutClick();
 	});
-
 	document.addEventListener('click', listenClickOtherExit);
 });
 </script>
@@ -343,6 +306,7 @@
 	-ms-flex-pack: center;
 	justify-content: center;
 }
+
 .pc-login {
 	position: fixed;
 	top: 0;
@@ -405,6 +369,9 @@
 					background-color: #fff;
 					border-radius: 5px;
 				}
+				:deep(.el-form-item--large .el-form-item__error) {
+					padding: unset !important;
+				}
 			}
 			.set-pwd {
 				text-align: right;

--
Gitblit v1.9.3