feat(layout): 添加企业邀请码加入功能

- 在 Basic.vue 中添加 JoinModal 组件,用于展示加入企业的模态框
- 添加 checkHasInviteCode 方法,在页面加载时检查邀请码
- 新增 getQueryParam 工具函数,用于获取 URL 参数
- 添加加入企业的相关 API 接口
- 实现 JoinModal 组件,包含加入企业的逻辑和界面
This commit is contained in:
2025-06-20 18:16:40 +08:00
parent 87ef27759f
commit c83eadcbed
4 changed files with 76 additions and 1 deletions

View File

@ -1,7 +1,11 @@
<script setup lang="ts">
import { useAppStore } from '@/stores';
import { useResponsive } from '@/hooks';
import JoinModal from '@/components/join-modal.vue';
import { getQueryParam } from '@/utils/helper';
import { ref, onMounted } from 'vue';
const joinEnterpriseVisible = ref(false);
const appStore = useAppStore();
const router = useRouter();
@ -27,11 +31,19 @@ const route = useRoute();
// onMounted(() => {
// showSidebar.value = route.meta.requiresSidebar == true;
// });
onMounted(() => {
checkHasInviteCode();
});
const setCollapsed = (val: boolean) => {
appStore.updateSettings({ menuCollapse: val });
};
const checkHasInviteCode = () => {
const inviteCode = getQueryParam('invite_code');
if (inviteCode) {
joinEnterpriseVisible.value = true;
}
};
const drawerVisible = ref(false);
const drawerCancel = () => {
drawerVisible.value = false;
@ -43,6 +55,7 @@ provide('toggleDrawerMenu', () => {
<template>
<a-layout :class="['layout', { mobile: appStore.hideMenu }]">
<JoinModal v-model:visible="joinEnterpriseVisible" />
<div v-if="navbar" class="layout-navbar">
<base-navbar />
</div>