70 lines
2.1 KiB
TypeScript
70 lines
2.1 KiB
TypeScript
/*
|
|
* @Author: RenXiaoDong
|
|
* @Date: 2025-06-20 05:32:19
|
|
*/
|
|
import router from '@/router';
|
|
|
|
import { useUserStore } from '@/stores';
|
|
import { useEnterpriseStore } from '@/stores/modules/enterprise';
|
|
import { useSidebarStore } from '@/stores/modules/side-bar';
|
|
import { useChatStore } from '@/stores/modules/chat';
|
|
|
|
// 登录
|
|
export function goUserLogin(query?: any) {
|
|
router.push({ name: 'UserLogin', query });
|
|
}
|
|
|
|
export const getUserEnterpriseInfo = async () => {
|
|
const enterpriseStore = useEnterpriseStore();
|
|
// const sidebarStore = useSidebarStore();
|
|
// const userStore = useUserStore();
|
|
|
|
await enterpriseStore.getEnterpriseInfo(); // 初始化企业信息
|
|
// sidebarStore.getUserNavbarMenuList(); // 初始化navbar菜单
|
|
// userStore.getUserAllowAccessRoutes(); // 初始化允许访问的路由
|
|
};
|
|
|
|
export async function initApp() {
|
|
const userStore = useUserStore();
|
|
const chatStore = useChatStore();
|
|
|
|
await chatStore.getAgentInfo(); // 初始化智能体信息
|
|
await userStore.getUserInfo(); // 初始化用户信息
|
|
await getUserEnterpriseInfo(); // 初始化企业信息、navbar菜单、允许访问的路由
|
|
}
|
|
|
|
// 登录处理
|
|
export async function handleUserLogin() {
|
|
const sidebarStore = useSidebarStore();
|
|
|
|
await initApp();
|
|
|
|
sidebarStore.startUnreadInfoPolling(); // 初始化未读信息
|
|
|
|
handleUserHome();
|
|
}
|
|
|
|
// 首页
|
|
export function handleUserHome(params?: any) {
|
|
router.push({ name: 'Home', params });
|
|
}
|
|
|
|
// 登出处理
|
|
export function handleUserLogout() {
|
|
const userStore = useUserStore();
|
|
const enterpriseStore = useEnterpriseStore();
|
|
const sidebarStore = useSidebarStore();
|
|
const chatStore = useChatStore();
|
|
|
|
chatStore.clearAgentInfo(); // 清除智能体信息
|
|
userStore.clearUserInfo(); // 清除用户信息
|
|
userStore.clearToken(); // 清除token
|
|
enterpriseStore.clearUserEnterpriseInfo(); // 清除企业信息
|
|
// userStore.clearUserAllowAccessRoutes(); // 清除权限路由列表
|
|
sidebarStore.stopUnreadInfoPolling(); // 清除未读消息
|
|
sidebarStore.clearActiveMenuKey(); // 清除active菜单id
|
|
sidebarStore.clearMenuCollapse(); // 清除active菜单id
|
|
|
|
goUserLogin();
|
|
}
|