Files
lingji-work-fe/src/utils/user.ts

79 lines
2.4 KiB
TypeScript
Raw Normal View History

2025-06-20 06:10:15 -04:00
/*
* @Author: RenXiaoDong
* @Date: 2025-06-20 05:32:19
*/
import router from '@/router';
import { useUserStore } from '@/stores';
import { useEnterpriseStore } from '@/stores/modules/enterprise';
2025-06-23 23:59:08 -04:00
import { useSidebarStore } from '@/stores/modules/side-bar';
2025-08-28 12:03:52 +08:00
import { useChatStore } from '@/stores/modules/chat';
2025-06-20 06:10:15 -04:00
// 登录
export function goUserLogin(query?: any) {
2025-09-11 11:26:51 +08:00
// console.log('goUserLogin', router)
2025-06-20 06:10:15 -04:00
router.push({ name: 'UserLogin', query });
}
2025-07-18 17:10:12 +08:00
2025-09-11 12:04:54 +08:00
// 首页
export function handleUserHome(params?: any) {
const enterpriseStore = useEnterpriseStore();
// 已开通
if (enterpriseStore.isOpenEnterprise) {
router.push({ name: 'Home', params });
} else {
router.push({ name: 'Trial' });
}
}
export const getUserEnterpriseInfo = async () => {
const enterpriseStore = useEnterpriseStore();
// const sidebarStore = useSidebarStore();
2025-08-28 12:03:52 +08:00
// const userStore = useUserStore();
2025-07-18 17:10:12 +08:00
await enterpriseStore.getEnterpriseInfo(); // 初始化企业信息
// sidebarStore.getUserNavbarMenuList(); // 初始化navbar菜单
// userStore.getUserAllowAccessRoutes(); // 初始化允许访问的路由
};
2025-06-20 06:10:15 -04:00
2025-08-28 12:03:52 +08:00
export async function initApp() {
2025-07-08 16:55:04 +08:00
const userStore = useUserStore();
2025-08-28 12:03:52 +08:00
const chatStore = useChatStore();
2025-09-10 17:57:42 +08:00
const sidebarStore = useSidebarStore();
2025-09-11 12:04:54 +08:00
const enterpriseStore = useEnterpriseStore();
2025-07-08 16:55:04 +08:00
await userStore.getUserInfo(); // 初始化用户信息
2025-09-10 17:57:42 +08:00
2025-09-11 16:08:28 +08:00
if (enterpriseStore.isOpenEnterprise) {
await getUserEnterpriseInfo(); // 初始化企业信息
2025-09-12 15:09:44 +08:00
chatStore.getAgentInfo(); // 初始化智能体信息
2025-09-10 17:57:42 +08:00
2025-09-11 16:08:28 +08:00
sidebarStore.startUnreadInfoPolling(); // 初始化未读信息
}
2025-08-28 12:03:52 +08:00
}
// 登录处理
export async function handleUserLogin() {
await initApp();
2025-06-20 06:10:15 -04:00
handleUserHome();
}
2025-07-18 17:10:12 +08:00
// 登出处理
2025-06-20 06:10:15 -04:00
export function handleUserLogout() {
2025-09-11 12:04:54 +08:00
goUserLogin();
2025-06-20 06:10:15 -04:00
const userStore = useUserStore();
2025-06-23 23:59:08 -04:00
const enterpriseStore = useEnterpriseStore();
const sidebarStore = useSidebarStore();
2025-08-28 12:03:52 +08:00
const chatStore = useChatStore();
2025-08-28 12:03:52 +08:00
chatStore.clearAgentInfo(); // 清除智能体信息
2025-07-18 17:10:12 +08:00
userStore.clearUserInfo(); // 清除用户信息
userStore.clearToken(); // 清除token
enterpriseStore.clearUserEnterpriseInfo(); // 清除企业信息
// userStore.clearUserAllowAccessRoutes(); // 清除权限路由列表
2025-07-18 17:10:12 +08:00
sidebarStore.stopUnreadInfoPolling(); // 清除未读消息
2025-08-18 17:22:11 +08:00
sidebarStore.clearActiveMenuKey(); // 清除active菜单id
sidebarStore.clearMenuCollapse(); // 清除active菜单id
2025-06-20 06:10:15 -04:00
}