feat: 逻辑调整
This commit is contained in:
@ -44,7 +44,7 @@ export const fetchBindPhone = (params = {}) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 根据id获取企业信息
|
// 根据id获取企业信息
|
||||||
export const fetchEnterpriseInfo = (id: number) => {
|
export const fetchEnterpriseInfo = (id: number | string) => {
|
||||||
return Http.get(`/v1/enterprises/${id}`);
|
return Http.get(`/v1/enterprises/${id}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
12
src/assets/svg/svg-organization.svg
Normal file
12
src/assets/svg/svg-organization.svg
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none">
|
||||||
|
<g clip-path="url(#clip0_214_27738)">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd"
|
||||||
|
d="M7.52856 0.834838C7.77656 0.705717 8.07585 0.725097 8.30493 0.885375L12.0549 3.51037C12.2554 3.65073 12.375 3.88017 12.375 4.12488V8.61389L14.6858 10.2648C14.8828 10.4056 15 10.6327 15 10.8749V15.7499H16.5C16.9142 15.7499 17.25 16.0857 17.25 16.4999C17.2499 16.914 16.9142 17.2499 16.5 17.2499H1.5C1.08583 17.2499 0.750066 16.914 0.75 16.4999C0.75 16.0857 1.08579 15.7499 1.5 15.7499H3.375V7.49988C3.375 7.25517 3.49461 7.02572 3.69507 6.88537L7.125 4.48376V1.49988L7.13232 1.39661C7.16541 1.15837 7.31155 0.947913 7.52856 0.834838ZM4.875 7.89026V15.7499H7.125V6.31482L4.875 7.89026ZM8.625 15.7499H13.5V11.2601L11.1892 9.60998C10.9922 9.46923 10.875 9.24203 10.875 8.99988V4.51526L8.625 2.93982V15.7499Z"
|
||||||
|
fill="currentColor"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_214_27738">
|
||||||
|
<rect width="18" height="18" rx="3.6" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 548 B |
@ -1,13 +1,22 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="right-wrap">
|
<div class="right-wrap">
|
||||||
<!-- 任务中心 -->
|
<!-- 任务中心 -->
|
||||||
<div class="relative p-6px rounded-30px flex items-center justify-center task-icon" @click="setUnread" v-if="hasOpenEnterprise">
|
<div
|
||||||
|
class="relative p-6px rounded-30px flex items-center justify-center task-icon"
|
||||||
|
@click="setUnread"
|
||||||
|
v-if="hasOpenEnterprise"
|
||||||
|
>
|
||||||
<SvgIcon name="svg-taskCenter" size="20" class="color-#737478" @click="openDownloadCenter" />
|
<SvgIcon name="svg-taskCenter" size="20" class="color-#737478" @click="openDownloadCenter" />
|
||||||
<div class="w-6px h-6px rounded-50% bg-#F64B31 absolute top-6px right-6px" v-if="hasUnreadInfo"></div>
|
<div class="w-6px h-6px rounded-50% bg-#F64B31 absolute top-6px right-6px" v-if="hasUnreadInfo"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 灵机空间入口 -->
|
<!-- 灵机空间入口 -->
|
||||||
<div class="agent-entry mx-16px" :class="isAgentRoute ? 'agent' : ''" @click="handleAgentClick" v-if="hasOpenEnterprise"></div>
|
<div
|
||||||
|
class="agent-entry mx-16px"
|
||||||
|
:class="isAgentRoute ? 'agent' : ''"
|
||||||
|
@click="handleAgentClick"
|
||||||
|
v-if="hasOpenEnterprise"
|
||||||
|
></div>
|
||||||
|
|
||||||
<!-- 头像设置 -->
|
<!-- 头像设置 -->
|
||||||
<Dropdown trigger="click" overlayClassName="layout-avatar-dropdown">
|
<Dropdown trigger="click" overlayClassName="layout-avatar-dropdown">
|
||||||
@ -23,7 +32,7 @@
|
|||||||
<icon-right size="12" />
|
<icon-right size="12" />
|
||||||
</div>
|
</div>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem v-if="hasOpenEnterprise">
|
<MenuItem v-if="enterprises.length > 0">
|
||||||
<SubMenu value="option-1" position="lt" trigger="hover" popupClassName="enterprises-dsubmenu">
|
<SubMenu value="option-1" position="lt" trigger="hover" popupClassName="enterprises-dsubmenu">
|
||||||
<template #title>
|
<template #title>
|
||||||
<div class="flex justify-between w-100% h-full items-center">
|
<div class="flex justify-between w-100% h-full items-center">
|
||||||
@ -34,11 +43,11 @@
|
|||||||
<icon-right size="12" />
|
<icon-right size="12" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
<div v-for="(item, index) in enterprises" :key="index">
|
||||||
<MenuItem
|
<MenuItem
|
||||||
v-for="(item, index) in enterprises"
|
|
||||||
:key="index"
|
|
||||||
class="rounded-8px hover:bg-#F2F3F5"
|
class="rounded-8px hover:bg-#F2F3F5"
|
||||||
@click="onEnterpriseItemClick(item)"
|
@click="onEnterpriseItemClick(item)"
|
||||||
|
v-if="!primary_enterprise || item.id !== primary_enterprise.id"
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
class="flex items-center w-100% justify-between"
|
class="flex items-center w-100% justify-between"
|
||||||
@ -48,6 +57,54 @@
|
|||||||
<icon-check v-if="enterpriseInfo?.id === item.id" size="16" />
|
<icon-check v-if="enterpriseInfo?.id === item.id" size="16" />
|
||||||
</div>
|
</div>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
|
||||||
|
<template v-else>
|
||||||
|
<template v-if="item.audit_status === 1">
|
||||||
|
<div class="w-full h-1px bg-#E6E6E8 mb-8px" v-if="enterprises.length > 0"></div>
|
||||||
|
<MenuItem class="rounded-8px hover:bg-#F2F3F5 h-36px !mb-0" @click="onCreate(item)">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<SvgIcon size="16.5" name="svg-organization" class="color-#737478 mr-8px" />
|
||||||
|
<span class="color-#211F24 mr-4px">创建企业账号</span>
|
||||||
|
<div class="px-8px h-20px rounded-2px bg-#FFF7E5 flex items-center">
|
||||||
|
<span class="color-#FFAE00 !text-12px !lh-20px font-400">申请中</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</MenuItem>
|
||||||
|
</template>
|
||||||
|
<div v-else>
|
||||||
|
<MenuItem class="rounded-8px hover:bg-#F2F3F5" @click="onEnterpriseItemClick(item)">
|
||||||
|
<div class="flex justify-between items-center overflow-hidden">
|
||||||
|
<div
|
||||||
|
class="flex items-center w-100% flex-1 overflow-hidden"
|
||||||
|
:class="enterpriseInfo?.id === item.id ? '!color-#6D4CFE' : ''"
|
||||||
|
>
|
||||||
|
<TextoverTips :context="item.name" />
|
||||||
|
<img :src="icon4" width="12" height="12" class="ml-4px" />
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="px-8px h-20px rounded-2px flex items-center flex-shrink-0 ml-4px"
|
||||||
|
:class="_map.get(item.subscribe_status)?.bg"
|
||||||
|
v-if="[2, 3].includes(item.subscribe_status)"
|
||||||
|
>
|
||||||
|
<span class="!text-12px !lh-20px font-400" :class="_map.get(item.subscribe_status)?.color">{{
|
||||||
|
_map.get(item.subscribe_status)?.label
|
||||||
|
}}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</MenuItem>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<template v-if="!primary_enterprise">
|
||||||
|
<div class="w-full h-1px bg-#E6E6E8 mb-8px" v-if="enterprises?.length > 0"></div>
|
||||||
|
<MenuItem class="rounded-8px hover:bg-#F2F3F5 h-36px !mb-0" @click="onCreate(null)">
|
||||||
|
<div class="flex items-center">
|
||||||
|
<SvgIcon size="16.5" name="svg-organization" class="color-#737478 mr-8px" />
|
||||||
|
<span class="color-#211F24 mr-4px">创建企业账号</span>
|
||||||
|
</div>
|
||||||
|
</MenuItem>
|
||||||
|
</template>
|
||||||
</SubMenu>
|
</SubMenu>
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
<MenuItem>
|
<MenuItem>
|
||||||
@ -70,8 +127,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { Dropdown, Menu, MenuItem, SubMenu } from 'ant-design-vue';
|
import { Dropdown, Menu, MenuItem, SubMenu } from 'ant-design-vue';
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from 'vue-router'; // import router from '@/router';
|
||||||
// import router from '@/router';
|
|
||||||
import { useEnterpriseStore } from '@/stores/modules/enterprise';
|
import { useEnterpriseStore } from '@/stores/modules/enterprise';
|
||||||
import { useSidebarStore } from '@/stores/modules/side-bar';
|
import { useSidebarStore } from '@/stores/modules/side-bar';
|
||||||
import { useUserStore } from '@/stores';
|
import { useUserStore } from '@/stores';
|
||||||
@ -83,6 +139,8 @@ import DownloadCenterModal from '../task-center-modal';
|
|||||||
import icon1 from '@/assets/option.svg';
|
import icon1 from '@/assets/option.svg';
|
||||||
import icon2 from '@/assets/exit.svg';
|
import icon2 from '@/assets/exit.svg';
|
||||||
import icon3 from '@/assets/change.svg';
|
import icon3 from '@/assets/change.svg';
|
||||||
|
import icon4 from './img/admin.png';
|
||||||
|
import TextoverTips from '@/components/text-over-tips/index.vue';
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
isAgentRoute: {
|
isAgentRoute: {
|
||||||
@ -91,18 +149,23 @@ const props = defineProps({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const _map = new Map([
|
||||||
|
[2, { label: '试用中', bg: 'bg-#F0EDFF', color: 'color-#6D4CFE' }],
|
||||||
|
[3, { label: '已到期', bg: 'bg-#F2F3F5', color: 'color-#55585F' }],
|
||||||
|
]);
|
||||||
|
|
||||||
const enterpriseStore = useEnterpriseStore();
|
const enterpriseStore = useEnterpriseStore();
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const sideBarStore = useSidebarStore();
|
const sideBarStore = useSidebarStore();
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
|
|
||||||
const hasUnreadInfo = computed(() => sideBarStore.unreadInfo.length);
|
|
||||||
const hasOpenEnterprise = computed(() => enterpriseStore.isOpenEnterprise);
|
|
||||||
|
|
||||||
const exitAccountModalRef = ref(null);
|
const exitAccountModalRef = ref(null);
|
||||||
const downloadCenterModalRef = ref(null);
|
const downloadCenterModalRef = ref(null);
|
||||||
|
|
||||||
|
const hasUnreadInfo = computed(() => sideBarStore.unreadInfo.length);
|
||||||
|
const hasOpenEnterprise = computed(() => enterpriseStore.isOpenEnterprise);
|
||||||
|
const primary_enterprise = computed(() => userStore.userInfo?.primary_enterprise);
|
||||||
const enterprises = computed(() => {
|
const enterprises = computed(() => {
|
||||||
return userStore.userInfo?.enterprises ?? [];
|
return userStore.userInfo?.enterprises ?? [];
|
||||||
});
|
});
|
||||||
@ -131,6 +194,12 @@ const setUnread = () => {
|
|||||||
const handleAgentClick = () => {
|
const handleAgentClick = () => {
|
||||||
props.isAgentRoute ? handleUserHome() : router.push({ name: 'AgentIndex' });
|
props.isAgentRoute ? handleUserHome() : router.push({ name: 'AgentIndex' });
|
||||||
};
|
};
|
||||||
|
const onCreate = (item) => {
|
||||||
|
if (item && item.id === primary_enterprise.value.id) {
|
||||||
|
enterpriseStore.setEnterpriseInfo(item);
|
||||||
|
}
|
||||||
|
router.push({ name: 'Trial' });
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
@ -144,32 +213,45 @@ const handleAgentClick = () => {
|
|||||||
border: 1px solid var(--BG-300, #e6e6e8);
|
border: 1px solid var(--BG-300, #e6e6e8);
|
||||||
background: var(--BG-white, #fff);
|
background: var(--BG-white, #fff);
|
||||||
padding: 12px 0px;
|
padding: 12px 0px;
|
||||||
|
|
||||||
.ant-dropdown-menu-item {
|
.ant-dropdown-menu-item {
|
||||||
padding: 0 12px;
|
padding: 0 12px;
|
||||||
margin-bottom: 4px;
|
margin-bottom: 8px;
|
||||||
|
font-family: $font-family-regular;
|
||||||
|
color: var(--Text-1, #211f24);
|
||||||
|
font-size: 14px;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
line-height: 22px;
|
||||||
|
|
||||||
.ant-dropdown-menu-title-content {
|
.ant-dropdown-menu-title-content {
|
||||||
display: flex;
|
display: flex;
|
||||||
height: 40px;
|
height: 32px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 10px 24px;
|
padding: 10px 24px;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
.ant-dropdown-menu-submenu {
|
.ant-dropdown-menu-submenu {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
.ant-dropdown-menu-submenu-title {
|
.ant-dropdown-menu-submenu-title {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: none;
|
background: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ant-dropdown-menu-title-content {
|
.ant-dropdown-menu-title-content {
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.ant-dropdown-menu-submenu-arrow {
|
.ant-dropdown-menu-submenu-arrow {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.menu-item-text {
|
.menu-item-text {
|
||||||
color: var(--Text-2, #3c4043);
|
color: var(--Text-2, #3c4043);
|
||||||
font-family: $font-family-regular;
|
font-family: $font-family-regular;
|
||||||
@ -178,11 +260,14 @@ const handleAgentClick = () => {
|
|||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
line-height: 22px;
|
line-height: 22px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ant-dropdown-menu-title-content {
|
.ant-dropdown-menu-title-content {
|
||||||
border-radius: 8px !important;
|
border-radius: 8px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:not(.ant-dropdown-menu-item):hover {
|
&:not(.ant-dropdown-menu-item):hover {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
|
|
||||||
.ant-dropdown-menu-title-content {
|
.ant-dropdown-menu-title-content {
|
||||||
background: var(--BG-200, #f2f3f5);
|
background: var(--BG-200, #f2f3f5);
|
||||||
}
|
}
|
||||||
@ -190,21 +275,28 @@ const handleAgentClick = () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.layout-avatar-dropdown,
|
.layout-avatar-dropdown,
|
||||||
.enterprises-dsubmenu {
|
.enterprises-dsubmenu {
|
||||||
width: 200px;
|
width: 200px;
|
||||||
|
|
||||||
.ant-dropdown-menu {
|
.ant-dropdown-menu {
|
||||||
padding: 12px 4px;
|
padding: 8px 4px;
|
||||||
|
margin: 0;
|
||||||
|
|
||||||
.ant-dropdown-menu-item {
|
.ant-dropdown-menu-item {
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
|
|
||||||
.ant-dropdown-menu-title-content {
|
.ant-dropdown-menu-title-content {
|
||||||
padding: 0 12px !important;
|
padding: 0 12px !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.ant-dropdown-option-suffix {
|
.ant-dropdown-option-suffix {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
// .enterprises-doption {
|
// .enterprises-doption {
|
||||||
// .ant-dropdown-menu-title-content {
|
// .ant-dropdown-menu-title-content {
|
||||||
// padding: 0 !important;
|
// padding: 0 !important;
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
import router from '@/router';
|
|
||||||
import { defineStore } from 'pinia';
|
import { defineStore } from 'pinia';
|
||||||
import { fetchProfileInfo } from '@/api/all/login';
|
import { fetchProfileInfo } from '@/api/all/login';
|
||||||
// import { useSidebarStore } from '@/stores/modules/side-bar';
|
// import { useSidebarStore } from '@/stores/modules/side-bar';
|
||||||
import { glsWithCatch, slsWithCatch, rlsWithCatch } from '@/utils/stroage';
|
import { glsWithCatch, rlsWithCatch, slsWithCatch } from '@/utils/stroage';
|
||||||
|
import { useEnterpriseStore } from '@/stores/modules/enterprise';
|
||||||
|
|
||||||
interface UserInfo {
|
interface UserInfo {
|
||||||
id: number;
|
id: number;
|
||||||
@ -12,6 +12,7 @@ interface UserInfo {
|
|||||||
mobile: string;
|
mobile: string;
|
||||||
primary_enterprise: any; // 主企业信息
|
primary_enterprise: any; // 主企业信息
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
|
|
||||||
// 添加其他用户属性...
|
// 添加其他用户属性...
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,9 +70,18 @@ export const useUserStore = defineStore('user', {
|
|||||||
|
|
||||||
// 获取用户信息
|
// 获取用户信息
|
||||||
async getUserInfo() {
|
async getUserInfo() {
|
||||||
|
const enterpriseStore = useEnterpriseStore();
|
||||||
|
|
||||||
const { code, data } = await fetchProfileInfo();
|
const { code, data } = await fetchProfileInfo();
|
||||||
if (code === 200) {
|
if (code === 200) {
|
||||||
this.setUserInfo(data);
|
this.setUserInfo(data);
|
||||||
|
|
||||||
|
const { primary_enterprise } = data;
|
||||||
|
|
||||||
|
if (!enterpriseStore.enterpriseInfo && !isEmpty(primary_enterprise)) {
|
||||||
|
console.log('setEnterpriseInfo');
|
||||||
|
enterpriseStore.setEnterpriseInfo(primary_enterprise);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// clearUserAllowAccessRoutes() {
|
// clearUserAllowAccessRoutes() {
|
||||||
|
|||||||
@ -18,7 +18,6 @@ export function goUserLogin(query?: any) {
|
|||||||
// 首页
|
// 首页
|
||||||
export function handleUserHome(params?: any) {
|
export function handleUserHome(params?: any) {
|
||||||
const enterpriseStore = useEnterpriseStore();
|
const enterpriseStore = useEnterpriseStore();
|
||||||
console.log(enterpriseStore.enterpriseInfo);
|
|
||||||
// 已开通
|
// 已开通
|
||||||
if (enterpriseStore.isOpenEnterprise) {
|
if (enterpriseStore.isOpenEnterprise) {
|
||||||
router.push({ name: 'Home', params });
|
router.push({ name: 'Home', params });
|
||||||
@ -31,7 +30,7 @@ export const getUserEnterpriseInfo = async () => {
|
|||||||
const enterpriseStore = useEnterpriseStore();
|
const enterpriseStore = useEnterpriseStore();
|
||||||
// const sidebarStore = useSidebarStore();
|
// const sidebarStore = useSidebarStore();
|
||||||
// const userStore = useUserStore();
|
// const userStore = useUserStore();
|
||||||
|
console.log('getUserEnterpriseInfo');
|
||||||
await enterpriseStore.getEnterpriseInfo(); // 初始化企业信息
|
await enterpriseStore.getEnterpriseInfo(); // 初始化企业信息
|
||||||
// sidebarStore.getUserNavbarMenuList(); // 初始化navbar菜单
|
// sidebarStore.getUserNavbarMenuList(); // 初始化navbar菜单
|
||||||
// userStore.getUserAllowAccessRoutes(); // 初始化允许访问的路由
|
// userStore.getUserAllowAccessRoutes(); // 初始化允许访问的路由
|
||||||
@ -45,13 +44,13 @@ export async function initApp() {
|
|||||||
|
|
||||||
await userStore.getUserInfo(); // 初始化用户信息
|
await userStore.getUserInfo(); // 初始化用户信息
|
||||||
|
|
||||||
if (!enterpriseStore.isOpenEnterprise) return;
|
if (enterpriseStore.isOpenEnterprise) {
|
||||||
|
await getUserEnterpriseInfo(); // 初始化企业信息
|
||||||
await getUserEnterpriseInfo(); // 初始化企业信息、navbar菜单、允许访问的路由
|
await chatStore.getAgentInfo(); // 初始化智能体信息
|
||||||
// await chatStore.getAgentInfo(); // 初始化智能体信息
|
|
||||||
|
|
||||||
sidebarStore.startUnreadInfoPolling(); // 初始化未读信息
|
sidebarStore.startUnreadInfoPolling(); // 初始化未读信息
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 登录处理
|
// 登录处理
|
||||||
export async function handleUserLogin() {
|
export async function handleUserLogin() {
|
||||||
|
|||||||
@ -118,10 +118,12 @@ const { TabPane } = Tabs;
|
|||||||
|
|
||||||
const setPageType = inject('setPageType');
|
const setPageType = inject('setPageType');
|
||||||
|
|
||||||
const formRef = ref();
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
|
const router = useRouter();
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const enterpriseStore = useEnterpriseStore();
|
const enterpriseStore = useEnterpriseStore();
|
||||||
|
|
||||||
|
const formRef = ref();
|
||||||
const countdown = ref(0);
|
const countdown = ref(0);
|
||||||
let timer = ref();
|
let timer = ref();
|
||||||
const isLogin = ref(true);
|
const isLogin = ref(true);
|
||||||
@ -276,6 +278,8 @@ const getProfileInfo = async () => {
|
|||||||
// 多个企业时候需要弹窗让用户选择企业
|
// 多个企业时候需要弹窗让用户选择企业
|
||||||
selectAccountModalRef.value.open();
|
selectAccountModalRef.value.open();
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
router.push({ name: 'Trial' });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@ -112,10 +112,12 @@ const { TabPane } = Tabs;
|
|||||||
const setPageType = inject('setPageType');
|
const setPageType = inject('setPageType');
|
||||||
const pageType = inject('pageType');
|
const pageType = inject('pageType');
|
||||||
|
|
||||||
const formRef = ref();
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
|
const router = useRouter();
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const enterpriseStore = useEnterpriseStore();
|
const enterpriseStore = useEnterpriseStore();
|
||||||
|
|
||||||
|
const formRef = ref();
|
||||||
const countdown = ref(0);
|
const countdown = ref(0);
|
||||||
let timer = ref();
|
let timer = ref();
|
||||||
const isLogin = ref(true);
|
const isLogin = ref(true);
|
||||||
@ -299,6 +301,8 @@ const getProfileInfo = async () => {
|
|||||||
} else {
|
} else {
|
||||||
selectAccountModalRef.value.open();
|
selectAccountModalRef.value.open();
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
router.push({ name: 'Trial' });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@ -233,7 +233,12 @@ const handleSubmit = async () => {
|
|||||||
.then(async () => {
|
.then(async () => {
|
||||||
const { code } = await postCreateEnterprises(formData.value);
|
const { code } = await postCreateEnterprises(formData.value);
|
||||||
if (code === 200) {
|
if (code === 200) {
|
||||||
userStore.getUserInfo();
|
await userStore.getUserInfo();
|
||||||
|
|
||||||
|
const { primary_enterprise } = userStore.userInfo;
|
||||||
|
if (primary_enterprise) {
|
||||||
|
enterpriseStore.setEnterpriseInfo(primary_enterprise);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.finally(() => {
|
.finally(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user