feat: Knowledge permission list
This commit is contained in:
parent
66bb8f605d
commit
69e60b5800
@ -6,21 +6,33 @@ const workspace = {
|
|||||||
hasPermission(
|
hasPermission(
|
||||||
new ComplexPermission(
|
new ComplexPermission(
|
||||||
[RoleConst.ADMIN],
|
[RoleConst.ADMIN],
|
||||||
[PermissionConst.SHARED_TOOL_READ],
|
[PermissionConst.SHARED_KNOWLEDGE_READ],
|
||||||
[EditionConst.IS_EE],
|
[EditionConst.IS_EE],
|
||||||
'OR',
|
'OR',
|
||||||
),
|
),
|
||||||
'OR',
|
'OR',
|
||||||
),
|
),
|
||||||
delete: () =>
|
create: () => false,
|
||||||
hasPermission(
|
single: () => false,
|
||||||
[
|
sync: () => false,
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
vector: () => false,
|
||||||
RoleConst.USER.getWorkspaceRole,
|
generate: () => false,
|
||||||
PermissionConst.TOOL_DELETE.getWorkspacePermission,
|
setting: () => false,
|
||||||
],
|
export: () => false,
|
||||||
'OR',
|
delete: () => false,
|
||||||
),
|
|
||||||
|
doc_create: () => false,
|
||||||
|
doc_vector: () => false,
|
||||||
|
doc_generate: () => false,
|
||||||
|
doc_migrate: () => false,
|
||||||
|
doc_edit: () => false,
|
||||||
|
doc_sync: () => false,
|
||||||
|
doc_delete: () => false,
|
||||||
|
doc_export: () => false,
|
||||||
|
|
||||||
|
problem_create: () => false,
|
||||||
|
problem_relate: () => false,
|
||||||
|
problem_delete: () => false,
|
||||||
}
|
}
|
||||||
|
|
||||||
export default workspace
|
export default workspace
|
||||||
|
|||||||
@ -3,5 +3,24 @@ import { ComplexPermission } from '@/utils/permission/type'
|
|||||||
import { EditionConst, PermissionConst, RoleConst } from '@/utils/permission/data'
|
import { EditionConst, PermissionConst, RoleConst } from '@/utils/permission/data'
|
||||||
const share = {
|
const share = {
|
||||||
is_share: () => false,
|
is_share: () => false,
|
||||||
|
create: () => false,
|
||||||
|
single: () => false,
|
||||||
|
sync: () => false,
|
||||||
|
vector: () => false,
|
||||||
|
generate: () => false,
|
||||||
|
setting: () => false,
|
||||||
|
export: () => false,
|
||||||
|
delete: () => false,
|
||||||
|
|
||||||
|
doc_create: () => false,
|
||||||
|
doc_vector: () => false,
|
||||||
|
doc_generate: () => false,
|
||||||
|
doc_migrate: () => false,
|
||||||
|
doc_edit: () => false,
|
||||||
|
doc_sync: () => false,
|
||||||
|
doc_delete: () => false,
|
||||||
|
doc_export: () => false,
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
export default share
|
export default share
|
||||||
|
|||||||
@ -6,12 +6,173 @@ const workspace = {
|
|||||||
hasPermission(
|
hasPermission(
|
||||||
new ComplexPermission(
|
new ComplexPermission(
|
||||||
[RoleConst.ADMIN],
|
[RoleConst.ADMIN],
|
||||||
[PermissionConst.SHARED_TOOL_READ],
|
[PermissionConst.SHARED_KNOWLEDGE_READ],
|
||||||
[EditionConst.IS_EE],
|
[EditionConst.IS_EE],
|
||||||
'OR',
|
'OR',
|
||||||
),
|
),
|
||||||
'OR',
|
'OR',
|
||||||
),
|
),
|
||||||
|
create: () =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.USER.getWorkspaceRole,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_CREATE.getWorkspacePermission,
|
||||||
|
PermissionConst.KNOWLEDGE_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
single: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_READ.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_READ.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
sync: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
vector: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
generate: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_GENERATE.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_GENERATE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
setting: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_EDIT.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_EDIT.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
export: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_EXPORT.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_EXPORT.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
delete: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DELETE.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DELETE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_create: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_vector: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_generate: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_GENERATE.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_GENERATE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_migrate: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_MIGRATE.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_MIGRATE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_edit: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_sync: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_delete: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_DELETE.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_DELETE.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
|
doc_export: (source_id:string) =>
|
||||||
|
hasPermission(
|
||||||
|
[
|
||||||
|
RoleConst.ADMIN,
|
||||||
|
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_EXPORT.getKnowledgeWorkspaceResourcePermission(source_id),
|
||||||
|
PermissionConst.KNOWLEDGE_DOCUMENT_EXPORT.getWorkspacePermissionWorkspaceManageRole,
|
||||||
|
],
|
||||||
|
'OR',
|
||||||
|
),
|
||||||
}
|
}
|
||||||
|
|
||||||
export default workspace
|
export default workspace
|
||||||
|
|||||||
@ -19,12 +19,6 @@ const DocumentRouter = {
|
|||||||
active: 'document',
|
active: 'document',
|
||||||
parentPath: '/knowledge/:id/:folderId',
|
parentPath: '/knowledge/:id/:folderId',
|
||||||
parentName: 'KnowledgeDetail',
|
parentName: 'KnowledgeDetail',
|
||||||
permission: [
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_READ.getWorkspacePermission,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_READ.getWorkspacePermissionWorkspaceManageRole
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
component: () => import('@/views/document/index.vue'),
|
component: () => import('@/views/document/index.vue'),
|
||||||
},
|
},
|
||||||
@ -38,12 +32,6 @@ const DocumentRouter = {
|
|||||||
active: 'problem',
|
active: 'problem',
|
||||||
parentPath: '/knowledge/:id/:folderId',
|
parentPath: '/knowledge/:id/:folderId',
|
||||||
parentName: 'KnowledgeDetail',
|
parentName: 'KnowledgeDetail',
|
||||||
permission: [
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_PROBLEM_READ.getWorkspacePermission,
|
|
||||||
PermissionConst.KNOWLEDGE_PROBLEM_READ.getWorkspacePermissionWorkspaceManageRole
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
component: () => import('@/views/problem/index.vue'),
|
component: () => import('@/views/problem/index.vue'),
|
||||||
},
|
},
|
||||||
@ -70,12 +58,6 @@ const DocumentRouter = {
|
|||||||
parentPath: '/knowledge/:id/:folderId',
|
parentPath: '/knowledge/:id/:folderId',
|
||||||
parentName: 'KnowledgeDetail',
|
parentName: 'KnowledgeDetail',
|
||||||
resourceType: ChatUserResourceEnum.KNOWLEDGE,
|
resourceType: ChatUserResourceEnum.KNOWLEDGE,
|
||||||
permission: [
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.WORKSPACE_CHAT_USER_READ.getWorkspacePermission,
|
|
||||||
PermissionConst.WORKSPACE_CHAT_USER_READ.getWorkspacePermissionWorkspaceManageRole
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
component: () => import('@/views/chat-user/index.vue'),
|
component: () => import('@/views/chat-user/index.vue'),
|
||||||
},
|
},
|
||||||
@ -89,13 +71,6 @@ const DocumentRouter = {
|
|||||||
active: 'setting',
|
active: 'setting',
|
||||||
parentPath: '/knowledge/:id/:folderId',
|
parentPath: '/knowledge/:id/:folderId',
|
||||||
parentName: 'KnowledgeDetail',
|
parentName: 'KnowledgeDetail',
|
||||||
permission: [
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_EDIT.getWorkspacePermission,
|
|
||||||
PermissionConst.KNOWLEDGE_EDIT.getWorkspacePermissionWorkspaceManageRole
|
|
||||||
]
|
|
||||||
|
|
||||||
},
|
},
|
||||||
component: () => import('@/views/knowledge/KnowledgeSetting.vue'),
|
component: () => import('@/views/knowledge/KnowledgeSetting.vue'),
|
||||||
},
|
},
|
||||||
|
|||||||
@ -89,6 +89,7 @@ const PermissionConst = {
|
|||||||
KNOWLEDGE_EDIT: new Permission('KNOWLEDGE:READ+EDIT'),
|
KNOWLEDGE_EDIT: new Permission('KNOWLEDGE:READ+EDIT'),
|
||||||
KNOWLEDGE_EXPORT: new Permission('KNOWLEDGE:READ+EXPORT'),
|
KNOWLEDGE_EXPORT: new Permission('KNOWLEDGE:READ+EXPORT'),
|
||||||
KNOWLEDGE_DELETE: new Permission('KNOWLEDGE:READ+DELETE'),
|
KNOWLEDGE_DELETE: new Permission('KNOWLEDGE:READ+DELETE'),
|
||||||
|
KNOWLEDGE_GENERATE: new Permission('KNOWLEDGE:READ+GENERATE'),
|
||||||
|
|
||||||
KNOWLEDGE_DOCUMENT_READ:new Permission('KNOWLEDGE_DOCUMENT:READ'),
|
KNOWLEDGE_DOCUMENT_READ:new Permission('KNOWLEDGE_DOCUMENT:READ'),
|
||||||
KNOWLEDGE_DOCUMENT_CREATE:new Permission('KNOWLEDGE_DOCUMENT:READ+CREATE'),
|
KNOWLEDGE_DOCUMENT_CREATE:new Permission('KNOWLEDGE_DOCUMENT:READ+CREATE'),
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
import useStore from '@/stores'
|
import useStore from '@/stores'
|
||||||
|
import { useRoute } from 'vue-router'
|
||||||
export type PF = () => Role | string | Permission | ComplexPermission
|
export type PF = () => Role | string | Permission | ComplexPermission
|
||||||
export type CRF = () => Role | string
|
export type CRF = () => Role | string
|
||||||
export type CPF = () => Permission | string
|
export type CPF = () => Permission | string
|
||||||
@ -69,6 +70,12 @@ export class Permission {
|
|||||||
getKnowledgeWorkspaceResourcePermission = (resource_id: string) => {
|
getKnowledgeWorkspaceResourcePermission = (resource_id: string) => {
|
||||||
return this.getWorkspaceResourcePermission('KNOWLEDGE', resource_id)
|
return this.getWorkspaceResourcePermission('KNOWLEDGE', resource_id)
|
||||||
}
|
}
|
||||||
|
getTest=()=>{
|
||||||
|
const route=useRoute()
|
||||||
|
debugger
|
||||||
|
console.log(route)
|
||||||
|
return ""
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param resource_id 资源id
|
* @param resource_id 资源id
|
||||||
|
|||||||
@ -7,73 +7,51 @@
|
|||||||
<div class="flex-between">
|
<div class="flex-between">
|
||||||
<div>
|
<div>
|
||||||
<el-button
|
<el-button
|
||||||
v-if="knowledgeDetail.type === 0"
|
v-if="knowledgeDetail.type === 0 &&
|
||||||
type="primary"
|
permissionPrecise.doc_create(id)
|
||||||
|
"
|
||||||
|
type="danger"
|
||||||
@click="
|
@click="
|
||||||
router.push({ path: `/knowledge/document/upload/${folderId}`, query: { id: id } })
|
router.push({ path: `/knowledge/document/upload/${folderId}`, query: { id: id } })
|
||||||
"
|
"
|
||||||
v-hasPermission="[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getKnowledgeWorkspaceResourcePermission(id),
|
|
||||||
]"
|
|
||||||
>{{ $t('views.document.uploadDocument') }}
|
>{{ $t('views.document.uploadDocument') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
v-if="knowledgeDetail.type === 1"
|
v-if="knowledgeDetail.type === 1 &&
|
||||||
|
permissionPrecise.doc_create(id)
|
||||||
|
"
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="importDoc"
|
@click="importDoc"
|
||||||
v-hasPermission="[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getKnowledgeWorkspaceResourcePermission(id),
|
|
||||||
]"
|
|
||||||
>{{ $t('views.document.importDocument') }}
|
>{{ $t('views.document.importDocument') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
v-if="knowledgeDetail.type === 2"
|
v-if="knowledgeDetail.type === 2 &&
|
||||||
|
permissionPrecise.doc_create(id)
|
||||||
|
"
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="
|
@click="
|
||||||
router.push({
|
router.push({
|
||||||
path: `/knowledge/import`,
|
path: `/knowledge/import`,
|
||||||
query: { id: id, folder_token: knowledgeDetail.meta.folder_token },
|
query: { id: id, folder_token: knowledgeDetail.meta.folder_token },
|
||||||
})"
|
})"
|
||||||
v-hasPermission="[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getKnowledgeWorkspaceResourcePermission(id),
|
|
||||||
]"
|
|
||||||
>{{ $t('views.document.importDocument') }}
|
>{{ $t('views.document.importDocument') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
@click="batchRefresh"
|
@click="batchRefresh"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_vector(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getKnowledgeWorkspaceResourcePermission(id),
|
|
||||||
]"
|
|
||||||
>{{ $t('views.knowledge.setting.vectorization') }}
|
>{{ $t('views.knowledge.setting.vectorization') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
@click="openGenerateDialog()"
|
@click="openGenerateDialog()"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_generate(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_GENERATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_GENERATE.getKnowledgeWorkspaceResourcePermission(id),
|
|
||||||
]"
|
|
||||||
>{{ $t('views.document.generateQuestion.title') }}
|
>{{ $t('views.document.generateQuestion.title') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
@click="openknowledgeDialog()"
|
@click="openknowledgeDialog()"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_migrate(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_MIGRATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_MIGRATE.getKnowledgeWorkspaceResourcePermission(id),
|
|
||||||
]"
|
|
||||||
>{{ $t('views.document.setting.migration') }}
|
>{{ $t('views.document.setting.migration') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-dropdown>
|
<el-dropdown>
|
||||||
@ -87,10 +65,7 @@
|
|||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
@click="openBatchEditDocument"
|
@click="openBatchEditDocument"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-if="hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
v-if="permissionPrecise.doc_edit(id)"
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getKnowledgeWorkspaceResourcePermission(id)],'OR')"
|
|
||||||
>
|
>
|
||||||
{{ $t('common.setting') }}
|
{{ $t('common.setting') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
@ -98,11 +73,9 @@
|
|||||||
divided
|
divided
|
||||||
@click="syncMulDocument"
|
@click="syncMulDocument"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-if="knowledgeDetail.type === 1 &&
|
v-if="
|
||||||
hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
permissionPrecise.doc_sync(id)
|
||||||
RoleConst.ADMIN,
|
"
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getWorkspacePermission,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getKnowledgeWorkspaceResourcePermission(id)],'OR')"
|
|
||||||
>{{ $t('views.document.syncDocument') }}
|
>{{ $t('views.document.syncDocument') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
@ -110,10 +83,8 @@
|
|||||||
@click="syncLarkMulDocument"
|
@click="syncLarkMulDocument"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-if="knowledgeDetail.type === 2 &&
|
v-if="knowledgeDetail.type === 2 &&
|
||||||
hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
permissionPrecise.doc_sync(id)
|
||||||
RoleConst.ADMIN,
|
"
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getWorkspacePermission,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getKnowledgeWorkspaceResourcePermission(id)],'OR')"
|
|
||||||
>{{ $t('views.document.syncDocument') }}
|
>{{ $t('views.document.syncDocument') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
||||||
@ -122,10 +93,7 @@
|
|||||||
@click="deleteMulDocument"
|
@click="deleteMulDocument"
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
permissionPrecise.doc_delete(id)
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_DELETE.getWorkspacePermission,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_DELETE.getKnowledgeWorkspaceResourcePermission(id)],'OR')
|
|
||||||
"
|
"
|
||||||
>{{ $t('common.delete') }}
|
>{{ $t('common.delete') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
@ -148,10 +116,8 @@
|
|||||||
class="mt-16"
|
class="mt-16"
|
||||||
:data="documentData"
|
:data="documentData"
|
||||||
:pagination-config="paginationConfig"
|
:pagination-config="paginationConfig"
|
||||||
:quick-create="knowledgeDetail.type === 0&&hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
:quick-create="knowledgeDetail.type === 0 &&
|
||||||
RoleConst.USER.getWorkspaceRole,
|
permissionPrecise.doc_create(id)"
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_CREATE.getWorkspacePermission],'OR')"
|
|
||||||
@sizeChange="handleSizeChange"
|
@sizeChange="handleSizeChange"
|
||||||
@changePage="getList"
|
@changePage="getList"
|
||||||
@cell-mouse-enter="cellMouseEnter"
|
@cell-mouse-enter="cellMouseEnter"
|
||||||
@ -395,6 +361,7 @@
|
|||||||
size="small"
|
size="small"
|
||||||
v-model="row.is_active"
|
v-model="row.is_active"
|
||||||
:before-change="() => changeState(row)"
|
:before-change="() => changeState(row)"
|
||||||
|
v-if="permissionPrecise.doc_edit(id)"
|
||||||
/>
|
/>
|
||||||
</span>
|
</span>
|
||||||
<el-divider direction="vertical" />
|
<el-divider direction="vertical" />
|
||||||
@ -412,10 +379,7 @@
|
|||||||
text
|
text
|
||||||
@click.stop="cancelTask(row, TaskType.EMBEDDING)"
|
@click.stop="cancelTask(row, TaskType.EMBEDDING)"
|
||||||
:title="$t('views.document.setting.cancelVectorization')"
|
:title="$t('views.document.setting.cancelVectorization')"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_vector(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-close" style="font-size: 16px"></AppIcon>
|
<AppIcon iconName="app-close" style="font-size: 16px"></AppIcon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -426,10 +390,7 @@
|
|||||||
text
|
text
|
||||||
@click.stop="refreshDocument(row)"
|
@click.stop="refreshDocument(row)"
|
||||||
:title="$t('views.knowledge.setting.vectorization')"
|
:title="$t('views.knowledge.setting.vectorization')"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_vector(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-document-refresh" style="font-size: 16px"></AppIcon>
|
<AppIcon iconName="app-document-refresh" style="font-size: 16px"></AppIcon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -440,10 +401,7 @@
|
|||||||
text
|
text
|
||||||
@click.stop="settingDoc(row)"
|
@click.stop="settingDoc(row)"
|
||||||
:title="$t('common.setting')"
|
:title="$t('common.setting')"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_edit(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<el-icon><Setting /></el-icon>
|
<el-icon><Setting /></el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -453,10 +411,6 @@
|
|||||||
<el-button
|
<el-button
|
||||||
text
|
text
|
||||||
type="primary"
|
type="primary"
|
||||||
v-hasPermission="[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<el-icon><MoreFilled /></el-icon>
|
<el-icon><MoreFilled /></el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -467,51 +421,38 @@
|
|||||||
([State.STARTED, State.PENDING] as Array<string>).includes(
|
([State.STARTED, State.PENDING] as Array<string>).includes(
|
||||||
getTaskState(row.status, TaskType.GENERATE_PROBLEM),
|
getTaskState(row.status, TaskType.GENERATE_PROBLEM),
|
||||||
)&&
|
)&&
|
||||||
hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
permissionPrecise.doc_generate(id)"
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_PROBLEM_CREATE.getWorkspacePermission],'OR')
|
|
||||||
"
|
|
||||||
@click="cancelTask(row, TaskType.GENERATE_PROBLEM)"
|
@click="cancelTask(row, TaskType.GENERATE_PROBLEM)"
|
||||||
>
|
>
|
||||||
<el-icon><Connection /></el-icon>
|
<el-icon><Connection /></el-icon>
|
||||||
{{ $t('views.document.setting.cancelGenerateQuestion') }}
|
{{ $t('views.document.setting.cancelGenerateQuestion') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item v-else @click="openGenerateDialog(row)"
|
<el-dropdown-item v-else @click="openGenerateDialog(row)"
|
||||||
v-if="hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
v-if="permissionPrecise.doc_generate(id)"
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_PROBLEM_CREATE.getWorkspacePermission],'OR')"
|
|
||||||
>
|
>
|
||||||
<el-icon><Connection /></el-icon>
|
<el-icon><Connection /></el-icon>
|
||||||
{{ $t('views.document.generateQuestion.title') }}
|
{{ $t('views.document.generateQuestion.title') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item @click="openknowledgeDialog(row)"
|
<el-dropdown-item @click="openknowledgeDialog(row)"
|
||||||
v-if="hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
v-if="permissionPrecise.doc_migrate(id)"
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_MIGRATE.getWorkspacePermission],'OR')"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-migrate"></AppIcon>
|
<AppIcon iconName="app-migrate"></AppIcon>
|
||||||
{{ $t('views.document.setting.migration') }}
|
{{ $t('views.document.setting.migration') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item @click="exportDocument(row)"
|
<el-dropdown-item @click="exportDocument(row)"
|
||||||
v-if="hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
v-if="permissionPrecise.doc_export(id)"
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EXPORT.getWorkspacePermission],'OR')"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-export"></AppIcon>
|
<AppIcon iconName="app-export"></AppIcon>
|
||||||
{{ $t('views.document.setting.export') }} Excel
|
{{ $t('views.document.setting.export') }} Excel
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item @click="exportDocumentZip(row)"
|
<el-dropdown-item @click="exportDocumentZip(row)"
|
||||||
v-if="hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
v-if="permissionPrecise.doc_export(id)"
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EXPORT.getWorkspacePermission],'OR')"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-export"></AppIcon>
|
<AppIcon iconName="app-export"></AppIcon>
|
||||||
{{ $t('views.document.setting.export') }} Zip
|
{{ $t('views.document.setting.export') }} Zip
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item icon="Delete" @click.stop="deleteDocument(row)"
|
<el-dropdown-item icon="Delete" @click.stop="deleteDocument(row)"
|
||||||
v-if="hasPermission([RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
v-if="permissionPrecise.doc_delete(id)"
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_DELETE.getWorkspacePermission],'OR')"
|
|
||||||
>
|
>
|
||||||
{{ $t('common.delete') }}</el-dropdown-item
|
{{ $t('common.delete') }}</el-dropdown-item
|
||||||
>
|
>
|
||||||
@ -527,10 +468,7 @@
|
|||||||
text
|
text
|
||||||
@click.stop="syncDocument(row)"
|
@click.stop="syncDocument(row)"
|
||||||
:title="$t('views.knowledge.setting.sync')"
|
:title="$t('views.knowledge.setting.sync')"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.sync(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_SYNC.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<el-icon><Refresh /></el-icon>
|
<el-icon><Refresh /></el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -540,16 +478,13 @@
|
|||||||
v-if="
|
v-if="
|
||||||
([State.STARTED, State.PENDING] as Array<string>).includes(
|
([State.STARTED, State.PENDING] as Array<string>).includes(
|
||||||
getTaskState(row.status, TaskType.EMBEDDING),
|
getTaskState(row.status, TaskType.EMBEDDING),
|
||||||
)
|
) &&
|
||||||
|
permissionPrecise.doc_vector(id)
|
||||||
"
|
"
|
||||||
type="primary"
|
type="primary"
|
||||||
text
|
text
|
||||||
@click.stop="cancelTask(row, TaskType.EMBEDDING)"
|
@click.stop="cancelTask(row, TaskType.EMBEDDING)"
|
||||||
:title="$t('views.document.setting.cancelVectorization')"
|
:title="$t('views.document.setting.cancelVectorization')"
|
||||||
v-hasPermission="[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-close" style="font-size: 16px"></AppIcon>
|
<AppIcon iconName="app-close" style="font-size: 16px"></AppIcon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -560,10 +495,7 @@
|
|||||||
text
|
text
|
||||||
@click.stop="refreshDocument(row)"
|
@click.stop="refreshDocument(row)"
|
||||||
:title="$t('views.knowledge.setting.vectorization')"
|
:title="$t('views.knowledge.setting.vectorization')"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.vector(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-document-refresh" style="font-size: 16px"></AppIcon>
|
<AppIcon iconName="app-document-refresh" style="font-size: 16px"></AppIcon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -574,10 +506,6 @@
|
|||||||
<el-button
|
<el-button
|
||||||
text
|
text
|
||||||
type="primary"
|
type="primary"
|
||||||
v-hasPermission="[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_EDIT.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<el-icon><MoreFilled /></el-icon>
|
<el-icon><MoreFilled /></el-icon>
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -631,20 +559,14 @@
|
|||||||
<el-button
|
<el-button
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
@click="cancelTaskHandle(1)"
|
@click="cancelTaskHandle(1)"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_vector(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
{{ $t('views.document.setting.cancelVectorization') }}
|
{{ $t('views.document.setting.cancelVectorization') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
:disabled="multipleSelection.length === 0"
|
:disabled="multipleSelection.length === 0"
|
||||||
@click="cancelTaskHandle(2)"
|
@click="cancelTaskHandle(2)"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.doc_generate(id)"
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,RoleConst.USER.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_GENERATE.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
{{ $t('views.document.setting.cancelGenerate') }}
|
{{ $t('views.document.setting.cancelGenerate') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -686,9 +608,26 @@ import { TaskType, State } from '@/utils/status'
|
|||||||
import { t } from '@/locales'
|
import { t } from '@/locales'
|
||||||
import { PermissionConst, RoleConst } from '@/utils/permission/data'
|
import { PermissionConst, RoleConst } from '@/utils/permission/data'
|
||||||
import { hasPermission } from '@/utils/permission/index'
|
import { hasPermission } from '@/utils/permission/index'
|
||||||
|
import permissionMap from '@/permission'
|
||||||
|
|
||||||
|
|
||||||
|
const route = useRoute()
|
||||||
|
const { folder, user } = useStore()
|
||||||
|
|
||||||
|
const type = computed(() => {
|
||||||
|
if (route.path.includes('shared')) {
|
||||||
|
return 'systemShare'
|
||||||
|
} else if (route.path.includes('resource-management')) {
|
||||||
|
return 'systemManage'
|
||||||
|
} else {
|
||||||
|
return 'workspace'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
const permissionPrecise = computed(() => {
|
||||||
|
return permissionMap['knowledge'][type.value]
|
||||||
|
})
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const route = useRoute()
|
|
||||||
const {
|
const {
|
||||||
params: { id, folderId }, // id为knowledgeID
|
params: { id, folderId }, // id为knowledgeID
|
||||||
} = route as any
|
} = route as any
|
||||||
|
|||||||
@ -8,7 +8,8 @@
|
|||||||
:currentNodeKey="currentFolder?.id"
|
:currentNodeKey="currentFolder?.id"
|
||||||
@handleNodeClick="folderClickHandel"
|
@handleNodeClick="folderClickHandel"
|
||||||
class="p-8"
|
class="p-8"
|
||||||
showShared
|
:shareTitle="$t('views.system.share_knowledge')"
|
||||||
|
:showShared="permissionPrecise['is_share']()"
|
||||||
@refreshTree="refreshFolder"
|
@refreshTree="refreshFolder"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
@ -48,13 +49,7 @@
|
|||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
class="ml-8"
|
class="ml-8"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.create()"
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.USER.getWorkspaceRole,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_CREATE.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_CREATE.getWorkspacePermission,
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
{{ $t('common.create') }}
|
{{ $t('common.create') }}
|
||||||
<el-icon class="el-icon--right">
|
<el-icon class="el-icon--right">
|
||||||
@ -198,15 +193,7 @@
|
|||||||
@click="
|
@click="
|
||||||
router.push({ path: `/knowledge/${item.id}/${currentFolder.id}/document` })
|
router.push({ path: `/knowledge/${item.id}/${currentFolder.id}/document` })
|
||||||
"
|
"
|
||||||
v-hasPermission="[
|
v-if="permissionPrecise.single(item.id)"
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_READ
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DOCUMENT_READ.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
]"
|
|
||||||
>
|
>
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<KnowledgeIcon :type="item.type" />
|
<KnowledgeIcon :type="item.type" />
|
||||||
@ -252,38 +239,15 @@
|
|||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
icon="Refresh"
|
icon="Refresh"
|
||||||
@click.stop="syncKnowledge(item)"
|
@click.stop="syncKnowledge(item)"
|
||||||
v-if="
|
v-if="item.type === 1 &&
|
||||||
item.type === 1 &&
|
permissionPrecise.sync(item.id)
|
||||||
hasPermission(
|
|
||||||
[
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
PermissionConst.KNOWLEDGE_SYNC
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_SYNC.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>{{ $t('views.knowledge.setting.sync') }}
|
>{{ $t('views.knowledge.setting.sync') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
@click.stop="reEmbeddingKnowledge(item)"
|
@click.stop="reEmbeddingKnowledge(item)"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission(
|
permissionPrecise.vector(item.id)
|
||||||
[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_VECTOR
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_VECTOR.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-vectorization"></AppIcon>
|
<AppIcon iconName="app-vectorization"></AppIcon>
|
||||||
@ -294,18 +258,7 @@
|
|||||||
icon="Connection"
|
icon="Connection"
|
||||||
@click.stop="openGenerateDialog(item)"
|
@click.stop="openGenerateDialog(item)"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission(
|
permissionPrecise.doc_generate(item.id)
|
||||||
[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_PROBLEM_CREATE
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_PROBLEM_CREATE.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>{{ $t('views.document.generateQuestion.title') }}
|
>{{ $t('views.document.generateQuestion.title') }}
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
@ -317,18 +270,7 @@
|
|||||||
})
|
})
|
||||||
"
|
"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission(
|
permissionPrecise.setting(item.id)
|
||||||
[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_EDIT
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_EDIT.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
{{ $t('common.setting') }}
|
{{ $t('common.setting') }}
|
||||||
@ -336,18 +278,7 @@
|
|||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
@click.stop="exportKnowledge(item)"
|
@click.stop="exportKnowledge(item)"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission(
|
permissionPrecise.export(item.id)
|
||||||
[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_EXPORT
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_EXPORT.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-export"></AppIcon
|
<AppIcon iconName="app-export"></AppIcon
|
||||||
@ -356,18 +287,7 @@
|
|||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
@click.stop="exportZipKnowledge(item)"
|
@click.stop="exportZipKnowledge(item)"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission(
|
permissionPrecise.export(item.id)
|
||||||
[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_EXPORT
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_EXPORT.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<AppIcon iconName="app-export"></AppIcon
|
<AppIcon iconName="app-export"></AppIcon
|
||||||
@ -378,18 +298,7 @@
|
|||||||
type="danger"
|
type="danger"
|
||||||
@click.stop="deleteKnowledge(item)"
|
@click.stop="deleteKnowledge(item)"
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission(
|
permissionPrecise.delete(item.id)
|
||||||
[
|
|
||||||
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
|
|
||||||
RoleConst.ADMIN,
|
|
||||||
PermissionConst.KNOWLEDGE_DELETE
|
|
||||||
.getWorkspacePermissionWorkspaceManageRole,
|
|
||||||
PermissionConst.KNOWLEDGE_DELETE.getKnowledgeWorkspaceResourcePermission(
|
|
||||||
item.id,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
'OR',
|
|
||||||
)
|
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
{{ $t('common.delete') }}</el-dropdown-item
|
{{ $t('common.delete') }}</el-dropdown-item
|
||||||
@ -433,9 +342,27 @@ import { FolderSource } from '@/enums/common'
|
|||||||
import { PermissionConst, RoleConst } from '@/utils/permission/data'
|
import { PermissionConst, RoleConst } from '@/utils/permission/data'
|
||||||
import { hasPermission } from '@/utils/permission/index'
|
import { hasPermission } from '@/utils/permission/index'
|
||||||
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
|
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
|
||||||
|
import { useRoute } from 'vue-router'
|
||||||
|
import permissionMap from '@/permission'
|
||||||
|
|
||||||
|
|
||||||
|
const route = useRoute()
|
||||||
|
const { folder, user } = useStore()
|
||||||
|
|
||||||
|
const type = computed(() => {
|
||||||
|
if (route.path.includes('shared')) {
|
||||||
|
return 'systemShare'
|
||||||
|
} else if (route.path.includes('resource-management')) {
|
||||||
|
return 'systemManage'
|
||||||
|
} else {
|
||||||
|
return 'workspace'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
const permissionPrecise = computed(() => {
|
||||||
|
return permissionMap['knowledge'][type.value]
|
||||||
|
})
|
||||||
|
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const { folder, user } = useStore()
|
|
||||||
|
|
||||||
const loading = ref(false)
|
const loading = ref(false)
|
||||||
|
|
||||||
|
|||||||
@ -43,10 +43,12 @@
|
|||||||
class="mt-16"
|
class="mt-16"
|
||||||
:data="problemData"
|
:data="problemData"
|
||||||
:pagination-config="paginationConfig"
|
:pagination-config="paginationConfig"
|
||||||
quick-create
|
:quick-create="permissionPrecise.doc_create(id)""
|
||||||
|
|
||||||
:quickCreateName="$t('views.problem.quickCreateName')"
|
:quickCreateName="$t('views.problem.quickCreateName')"
|
||||||
:quickCreatePlaceholder="$t('views.problem.quickCreateProblem')"
|
:quickCreatePlaceholder="$t('views.problem.quickCreateProblem')"
|
||||||
:quickCreateMaxlength="256"
|
:quickCreateMaxlength="256"
|
||||||
|
|
||||||
@sizeChange="handleSizeChange"
|
@sizeChange="handleSizeChange"
|
||||||
@changePage="getList"
|
@changePage="getList"
|
||||||
@cell-mouse-enter="cellMouseEnter"
|
@cell-mouse-enter="cellMouseEnter"
|
||||||
@ -167,8 +169,24 @@ import useStore from '@/stores'
|
|||||||
import { t } from '@/locales'
|
import { t } from '@/locales'
|
||||||
import { PermissionConst, RoleConst } from '@/utils/permission/data'
|
import { PermissionConst, RoleConst } from '@/utils/permission/data'
|
||||||
import { hasPermission } from '@/utils/permission/index'
|
import { hasPermission } from '@/utils/permission/index'
|
||||||
|
import permissionMap from '@/permission'
|
||||||
|
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
|
const { folder, user } = useStore()
|
||||||
|
|
||||||
|
const type = computed(() => {
|
||||||
|
if (route.path.includes('shared')) {
|
||||||
|
return 'systemShare'
|
||||||
|
} else if (route.path.includes('resource-management')) {
|
||||||
|
return 'systemManage'
|
||||||
|
} else {
|
||||||
|
return 'workspace'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
const permissionPrecise = computed(() => {
|
||||||
|
return permissionMap['knowledge'][type.value]
|
||||||
|
})
|
||||||
const {
|
const {
|
||||||
params: { id }, // 知识库id
|
params: { id }, // 知识库id
|
||||||
} = route as any
|
} = route as any
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user