Skip to content

Commit 1476821

Browse files
committed
feat: Shared knowledge permission
1 parent 1c96897 commit 1476821

File tree

4 files changed

+152
-30
lines changed

4 files changed

+152
-30
lines changed

ui/src/permission/knowledge/system-manage.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ const workspace = {
1313
'OR',
1414
),
1515
create: () => false,
16-
single: () => false,
1716
sync: () => false,
1817
vector: () => false,
1918
generate: () => false,

ui/src/permission/knowledge/system-share.ts

Lines changed: 144 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,152 @@ import { ComplexPermission } from '@/utils/permission/type'
33
import { EditionConst, PermissionConst, RoleConst } from '@/utils/permission/data'
44
const share = {
55
is_share: () => false,
6-
create: () => false,
7-
single: () => false,
8-
sync: () => false,
9-
vector: () => false,
10-
generate: () => false,
11-
setting: () => false,
12-
export: () => false,
13-
delete: () => false,
6+
create: () =>
7+
hasPermission (
8+
[
9+
RoleConst.ADMIN,
10+
PermissionConst.SHARED_KNOWLEDGE_CREATE
11+
],
12+
'OR'
13+
),
14+
sync: () =>
15+
hasPermission (
16+
[
17+
RoleConst.ADMIN,
18+
PermissionConst.SHARED_KNOWLEDGE_SYNC
19+
],
20+
'OR'
21+
),
22+
vector: () =>
23+
hasPermission (
24+
[
25+
RoleConst.ADMIN,
26+
PermissionConst.SHARED_KNOWLEDGE_VECTOR
27+
],
28+
'OR'
29+
),
30+
generate: () =>
31+
hasPermission (
32+
[
33+
RoleConst.ADMIN,
34+
PermissionConst.SHARED_KNOWLEDGE_GENERATE
35+
],
36+
'OR'
37+
),
38+
setting: () =>
39+
hasPermission (
40+
[
41+
RoleConst.ADMIN,
42+
PermissionConst.SHARED_KNOWLEDGE_EDIT
43+
],
44+
'OR'
45+
),
46+
export: () =>
47+
hasPermission (
48+
[
49+
RoleConst.ADMIN,
50+
PermissionConst.SHARED_KNOWLEDGE_EXPORT
51+
],
52+
'OR'
53+
),
54+
delete: () =>
55+
hasPermission (
56+
[
57+
RoleConst.ADMIN,
58+
PermissionConst.SHARED_KNOWLEDGE_DELETE
59+
],
60+
'OR'
61+
),
1462

15-
doc_create: () => false,
16-
doc_vector: () => false,
17-
doc_generate: () => false,
18-
doc_migrate: () => false,
19-
doc_edit: () => false,
20-
doc_sync: () => false,
21-
doc_delete: () => false,
22-
doc_export: () => false,
63+
doc_create: () =>
64+
hasPermission (
65+
[
66+
RoleConst.ADMIN,
67+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_CREATE
68+
],
69+
'OR'
70+
),
71+
doc_vector: () =>
72+
hasPermission (
73+
[
74+
RoleConst.ADMIN,
75+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_VECTOR
76+
],
77+
'OR'
78+
),
79+
doc_generate: () =>
80+
hasPermission (
81+
[
82+
RoleConst.ADMIN,
83+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_GENERATE
84+
],
85+
'OR'
86+
),
87+
doc_migrate: () =>
88+
hasPermission (
89+
[
90+
RoleConst.ADMIN,
91+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_MIGRATE
92+
],
93+
'OR'
94+
),
95+
doc_edit: () =>
96+
hasPermission (
97+
[
98+
RoleConst.ADMIN,
99+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_EDIT
100+
],
101+
'OR'
102+
),
103+
doc_sync: () =>
104+
hasPermission (
105+
[
106+
RoleConst.ADMIN,
107+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_SYNC
108+
],
109+
'OR'
110+
),
111+
doc_delete: () =>
112+
hasPermission (
113+
[
114+
RoleConst.ADMIN,
115+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_DELETE
116+
],
117+
'OR'
118+
),
119+
doc_export: () =>
120+
hasPermission (
121+
[
122+
RoleConst.ADMIN,
123+
PermissionConst.SHARED_KNOWLEDGE_DOCUMENT_EXPORT
124+
],
125+
'OR'
126+
),
23127

24-
problem_create: () => false,
25-
problem_relate: () => false,
26-
problem_delete: () => false,
128+
problem_create: () =>
129+
hasPermission (
130+
[
131+
RoleConst.ADMIN,
132+
PermissionConst.SHARED_KNOWLEDGE_PROBLEM_CREATE
133+
],
134+
'OR'
135+
),
136+
problem_relate: () =>
137+
hasPermission (
138+
[
139+
RoleConst.ADMIN,
140+
PermissionConst.SHARED_KNOWLEDGE_PROBLEM_READ
141+
],
142+
'OR'
143+
),
144+
problem_delete: () =>
145+
hasPermission (
146+
[
147+
RoleConst.ADMIN,
148+
PermissionConst.SHARED_KNOWLEDGE_PROBLEM_DELETE
149+
],
150+
'OR'
151+
),
27152

28153
}
29154
export default share

ui/src/permission/knowledge/workspace.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,6 @@ const workspace = {
2323
],
2424
'OR',
2525
),
26-
single: (source_id:string) =>
27-
hasPermission(
28-
[
29-
RoleConst.ADMIN,
30-
RoleConst.WORKSPACE_MANAGE.getWorkspaceRole,
31-
PermissionConst.KNOWLEDGE_READ.getKnowledgeWorkspaceResourcePermission(source_id),
32-
PermissionConst.KNOWLEDGE_READ.getWorkspacePermissionWorkspaceManageRole,
33-
],
34-
'OR',
35-
),
3626
sync: (source_id:string) =>
3727
hasPermission(
3828
[

ui/src/router/modules/system.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,14 @@ const systemRouter = {
134134
activeMenu: '/system',
135135
parentPath: '/system',
136136
parentName: 'system',
137+
permission: [
138+
new ComplexPermission(
139+
[RoleConst.ADMIN],
140+
[PermissionConst.SHARED_KNOWLEDGE_READ],
141+
[EditionConst.IS_EE],
142+
'OR'
143+
)
144+
]
137145
},
138146
component: () => import('@/views/system-shared/KnowLedgeSharedIndex.vue'),
139147
},

0 commit comments

Comments
 (0)