Skip to content

Commit e24f211

Browse files
committed
feat: add optional user_id parameter to tool queries and serializers
1 parent 74fac81 commit e24f211

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

apps/knowledge/serializers/knowledge_folder.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@ def get_children(self, obj):
1515

1616

1717
class KnowledgeFolderFlatSerializer(serializers.ModelSerializer):
18-
children = serializers.SerializerMethodField()
19-
2018
class Meta:
2119
model = KnowledgeFolder
2220
fields = ['id', 'name', 'desc', 'user_id', 'workspace_id', 'parent_id']

apps/tools/api/tool.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,13 @@ def get_parameters():
194194
location='query',
195195
required=True,
196196
),
197+
OpenApiParameter(
198+
name="user_id",
199+
description="创建者id",
200+
type=OpenApiTypes.STR,
201+
location='query',
202+
required=False,
203+
),
197204
OpenApiParameter(
198205
name="tool_type",
199206
description="工具类型",

apps/tools/serializers/tool.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -392,6 +392,7 @@ class Query(serializers.Serializer):
392392
workspace_id = serializers.CharField(required=True, label=_('workspace id'))
393393
folder_id = serializers.CharField(required=True, label=_('folder id'))
394394
name = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_('tool name'))
395+
user_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_('user id'))
395396
tool_type = serializers.CharField(required=True, label=_('tool type'))
396397

397398
def page_tool(self, current_page: int, page_size: int):
@@ -408,10 +409,12 @@ def page_tool(self, current_page: int, page_size: int):
408409
tools = QuerySet(Tool).filter(Q(workspace_id=self.data.get('workspace_id')) &
409410
Q(folder_id__in=all_folders) &
410411
Q(tool_type=self.data.get('tool_type')) &
412+
Q(user_id=self.data.get('user_id')) &
411413
Q(name__contains=self.data.get('name')))
412414
else:
413415
tools = QuerySet(Tool).filter(Q(workspace_id=self.data.get('workspace_id')) &
414416
Q(folder_id__in=all_folders) &
417+
Q(user_id=self.data.get('user_id')) &
415418
Q(tool_type=self.data.get('tool_type')))
416419
return page_search(current_page, page_size, tools, lambda record: ToolModelSerializer(record).data)
417420

0 commit comments

Comments
 (0)