Skip to content

Commit a725783

Browse files
committed
feat: Morefiled of folder and knowledge
1 parent e85d5b9 commit a725783

File tree

4 files changed

+38
-19
lines changed

4 files changed

+38
-19
lines changed

ui/src/components/folder-tree/index.vue

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,9 @@
5454
class="mr-16"
5555
>
5656
<el-dropdown trigger="click" :teleported="false">
57-
<el-button text class="w-full">
57+
<el-button text class="w-full"
58+
v-if="MoreFilledPermission(node)"
59+
>
5860
<el-icon><MoreFilled /></el-icon>
5961
</el-button>
6062
<template #dropdown>
@@ -156,6 +158,14 @@ const permissionPrecise = computed(() => {
156158
return permissionMap[resourceType.value!]['workspace']
157159
})
158160
161+
const MoreFilledPermission = (node: any) =>{
162+
return (
163+
(node.level !== 3 && permissionPrecise.value.folderCreate()) ||
164+
permissionPrecise.value.folderEdit() ||
165+
permissionPrecise.value.folderDelete()
166+
)
167+
}
168+
159169
const { folder } = useStore()
160170
onBeforeRouteLeave((to, from) => {
161171
folder.setCurrentFolder({})

ui/src/permission/knowledge/workspace.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ const workspace = {
3535
[
3636
new ComplexPermission([RoleConst.USER],[PermissionConst.KNOWLEDGE.getKnowledgeWorkspaceResourcePermission(source_id)],[],'AND'),
3737
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
38-
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getKnowledgeWorkspaceResourcePermission(source_id),
39-
PermissionConst.KNOWLEDGE_DOCUMENT_SYNC.getWorkspacePermissionWorkspaceManageRole,
38+
PermissionConst.KNOWLEDGE_SYNC.getKnowledgeWorkspaceResourcePermission(source_id),
39+
PermissionConst.KNOWLEDGE_SYNC.getWorkspacePermissionWorkspaceManageRole,
4040
],
4141
'OR',
4242
),
@@ -45,8 +45,8 @@ const workspace = {
4545
[
4646
new ComplexPermission([RoleConst.USER],[PermissionConst.KNOWLEDGE.getKnowledgeWorkspaceResourcePermission(source_id)],[],'AND'),
4747
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
48-
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getKnowledgeWorkspaceResourcePermission(source_id),
49-
PermissionConst.KNOWLEDGE_DOCUMENT_VECTOR.getWorkspacePermissionWorkspaceManageRole,
48+
PermissionConst.KNOWLEDGE_VECTOR.getKnowledgeWorkspaceResourcePermission(source_id),
49+
PermissionConst.KNOWLEDGE_VECTOR.getWorkspacePermissionWorkspaceManageRole,
5050
],
5151
'OR',
5252
),

ui/src/router/modules/system.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,18 @@ const systemRouter = {
363363
[EditionConst.IS_EE],
364364
'OR',
365365
),
366+
new ComplexPermission(
367+
[RoleConst.ADMIN],
368+
[PermissionConst.SHARED_TOOL_READ],
369+
[EditionConst.IS_EE],
370+
'OR',
371+
),
372+
new ComplexPermission(
373+
[RoleConst.ADMIN],
374+
[PermissionConst.SHARED_MODEL_READ],
375+
[EditionConst.IS_EE],
376+
'OR',
377+
),
366378
],
367379
},
368380
children: [
@@ -381,18 +393,6 @@ const systemRouter = {
381393
[EditionConst.IS_EE],
382394
'OR',
383395
),
384-
new ComplexPermission(
385-
[RoleConst.ADMIN],
386-
[PermissionConst.SHARED_TOOL_READ],
387-
[EditionConst.IS_EE],
388-
'OR',
389-
),
390-
new ComplexPermission(
391-
[RoleConst.ADMIN],
392-
[PermissionConst.SHARED_MODEL_READ],
393-
[EditionConst.IS_EE],
394-
'OR',
395-
),
396396
],
397397
},
398398
component: () => import('@/views/system-shared/KnowLedgeSharedIndex.vue'),

ui/src/views/knowledge/component/KnowledgeListContainer.vue

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,9 @@
219219
<template #mouseEnter>
220220
<div @click.stop v-if="!isShared">
221221
<el-dropdown trigger="click">
222-
<el-button text @click.stop>
222+
<el-button text @click.stop
223+
v-if="MoreFilledPermission(item)"
224+
>
223225
<el-icon>
224226
<MoreFilled />
225227
</el-icon>
@@ -243,7 +245,7 @@
243245
<el-dropdown-item
244246
icon="Connection"
245247
@click.stop="openGenerateDialog(item)"
246-
v-if="permissionPrecise.doc_generate(item.id)"
248+
v-if="permissionPrecise.generate(item.id)"
247249
>{{ $t('views.document.generateQuestion.title') }}
248250
</el-dropdown-item>
249251
<el-dropdown-item
@@ -373,6 +375,13 @@ const isSystemShare = computed(() => {
373375
return apiType.value === 'systemShare'
374376
})
375377
378+
const MoreFilledPermission = (item: any) => {
379+
return (item.type === 1 && permissionPrecise.value.sync(item.id)) ||
380+
permissionPrecise.value.vector(item.id) || permissionPrecise.value.generate(item.id) ||
381+
permissionPrecise.value.edit(item.id) && apiType.value === 'workspace' ||
382+
permissionPrecise.value.export(item.id) || permissionPrecise.value.delete(item.id) || isSystemShare.value
383+
}
384+
376385
const loading = ref(false)
377386
378387
const search_type = ref('name')

0 commit comments

Comments
 (0)