Skip to content

Commit e81a796

Browse files
committed
fix: add scope field to knowledge serializers and update related SQL queries
1 parent babd6d5 commit e81a796

File tree

5 files changed

+14
-1
lines changed

5 files changed

+14
-1
lines changed

apps/knowledge/serializers/knowledge.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ class Query(serializers.Serializer):
109109
desc = serializers.CharField(required=False, label=_('knowledge description'), allow_null=True,
110110
allow_blank=True, max_length=256, min_length=1)
111111
user_id = serializers.UUIDField(required=False, label=_('user id'), allow_null=True)
112+
scope = serializers.CharField(required=False, label=_('knowledge scope'), allow_null=True)
112113

113114
@staticmethod
114115
def is_x_pack_ee():
@@ -127,7 +128,8 @@ def get_query_set(self):
127128
'temp.user_id': models.CharField(),
128129
'temp.workspace_id': models.CharField(),
129130
'temp.folder_id': models.CharField(),
130-
'temp.id': models.CharField()
131+
'temp.id': models.CharField(),
132+
'temp.scope': models.CharField(),
131133
}))
132134
folder_query_set = QuerySet(KnowledgeFolder)
133135

@@ -146,6 +148,8 @@ def get_query_set(self):
146148
if "folder_id" in self.data and self.data.get('folder_id') is not None:
147149
query_set = query_set.filter(**{'temp.folder_id': self.data.get("folder_id")})
148150
folder_query_set = folder_query_set.filter(**{'parent_id': self.data.get("folder_id")})
151+
if "scope" in self.data and self.data.get('scope') is not None:
152+
query_set = query_set.filter(**{'temp.scope': self.data.get("scope")})
149153
query_set = query_set.order_by("-temp.create_time", "temp.id")
150154
query_set_dict['default_sql'] = query_set
151155

apps/knowledge/sql/list_knowledge.sql

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
1010
"temp_knowledge".update_time,
1111
"temp_knowledge".file_size_limit,
1212
"temp_knowledge".file_count_limit,
13+
"temp_knowledge"."scope",
1314
"document_temp"."char_length",
1415
CASE
1516
WHEN
@@ -38,6 +39,7 @@ FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
3839
"update_time",
3940
0 as file_size_limit,
4041
0 as file_count_limit,
42+
'WORKSPACE' as "scope",
4143
0 as char_length,
4244
0 as application_mapping_count,
4345
0 as document_count

apps/knowledge/sql/list_knowledge_user.sql

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
1010
"temp_knowledge".update_time,
1111
"temp_knowledge".file_size_limit,
1212
"temp_knowledge".file_count_limit,
13+
"temp_knowledge"."scope",
1314
"document_temp"."char_length",
1415
CASE
1516
WHEN
@@ -42,6 +43,7 @@ FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
4243
"update_time",
4344
0 as file_size_limit,
4445
0 as file_count_limit,
46+
'WORKSPACE' as "scope",
4547
0 as char_length,
4648
0 as application_mapping_count,
4749
0 as document_count

apps/knowledge/sql/list_knowledge_user_ee.sql

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
1010
"temp_knowledge".update_time,
1111
"temp_knowledge".file_size_limit,
1212
"temp_knowledge".file_count_limit,
13+
"temp_knowledge"."scope",
1314
"document_temp"."char_length",
1415
CASE
1516
WHEN
@@ -51,6 +52,7 @@ FROM (SELECT "temp_knowledge".id::text, "temp_knowledge".name,
5152
"update_time",
5253
0 as file_size_limit,
5354
0 as file_count_limit,
55+
'WORKSPACE' as "scope",
5456
0 as char_length,
5557
0 as application_mapping_count,
5658
0 as document_count

apps/knowledge/views/knowledge.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
from knowledge.api.knowledge import KnowledgeBaseCreateAPI, KnowledgeWebCreateAPI, KnowledgeTreeReadAPI, \
1212
KnowledgeEditAPI, KnowledgeReadAPI, KnowledgePageAPI, SyncWebAPI, GenerateRelatedAPI, HitTestAPI, EmbeddingAPI, \
1313
GetModelAPI, KnowledgeExportAPI
14+
from knowledge.models import KnowledgeScope
1415
from knowledge.serializers.common import get_knowledge_operation_object
1516
from knowledge.serializers.knowledge import KnowledgeSerializer
1617
from models_provider.serializers.model_serializer import ModelSerializer
@@ -39,6 +40,7 @@ def get(self, request: Request, workspace_id: str):
3940
'folder_id': request.query_params.get('folder_id'),
4041
'name': request.query_params.get('name'),
4142
'desc': request.query_params.get("desc"),
43+
'scope': KnowledgeScope.WORKSPACE,
4244
'user_id': request.query_params.get('user_id')
4345
}
4446
).list())
@@ -135,6 +137,7 @@ def get(self, request: Request, workspace_id: str, current_page: int, page_size:
135137
'folder_id': request.query_params.get('folder_id'),
136138
'name': request.query_params.get('name'),
137139
'desc': request.query_params.get("desc"),
140+
'scope': KnowledgeScope.WORKSPACE,
138141
'user_id': request.user.id
139142
}
140143
).page(current_page, page_size))

0 commit comments

Comments
 (0)