57 lines
2.5 KiB
TypeScript
57 lines
2.5 KiB
TypeScript
import { Building2, KeyRound, Settings, ShieldCheck, Users } from '@lucide/vue'
|
|
import type { ClientModuleManifest } from '../types.ts'
|
|
|
|
export const tenantManagementModule = {
|
|
key: 'company',
|
|
navigationGroup: { title: '企业管理', icon: Settings, dividerBefore: true },
|
|
routes: [
|
|
{
|
|
path: 'company/profile/edit', name: 'company-profile-edit',
|
|
component: () => import('./views/CompanyProfileEditView.vue'), release: 'active',
|
|
meta: { title: '编辑企业资料', permission: 'company:profile:edit', keepAlive: false },
|
|
},
|
|
{
|
|
path: 'organization/members/create', name: 'member-create',
|
|
component: () => import('./views/MemberEditorView.vue'), release: 'active',
|
|
meta: { title: '新增成员', permission: 'company:member:create', keepAlive: false },
|
|
},
|
|
{
|
|
path: 'organization/members/:memberId/edit', name: 'member-edit', props: true,
|
|
component: () => import('./views/MemberEditorView.vue'), release: 'active',
|
|
meta: { title: '编辑成员', permission: 'company:member:edit', keepAlive: false },
|
|
},
|
|
{
|
|
path: 'company/profile',
|
|
name: 'company-profile',
|
|
component: () => import('./views/CompanyProfileView.vue'),
|
|
release: 'active',
|
|
meta: { title: '企业资料', description: '维护企业基本信息、联系人和资质文件', permission: 'company:profile:view' },
|
|
navigation: { key: 'company-profile', icon: Building2 },
|
|
},
|
|
{
|
|
path: 'organization/members',
|
|
name: 'members',
|
|
component: () => import('./views/MembersView.vue'),
|
|
release: 'active',
|
|
meta: { title: '企业成员', description: '管理本企业成员账号、状态和角色', permission: 'company:member:list' },
|
|
navigation: { key: 'company-members', icon: Users },
|
|
},
|
|
{
|
|
path: 'organization/roles',
|
|
name: 'roles',
|
|
component: () => import('./views/RolesView.vue'),
|
|
release: 'active',
|
|
meta: { title: '角色管理', description: '建立符合企业分工的成员角色', permission: 'company:role:list' },
|
|
navigation: { key: 'company-roles', icon: ShieldCheck },
|
|
},
|
|
{
|
|
path: 'organization/permissions',
|
|
name: 'permissions',
|
|
component: () => import('./views/PermissionsView.vue'),
|
|
release: 'active',
|
|
meta: { title: '菜单权限', description: '为本企业角色分配菜单及操作权限', permission: 'company:permission:list' },
|
|
navigation: { key: 'company-permissions', icon: KeyRound },
|
|
},
|
|
],
|
|
} satisfies ClientModuleManifest
|