Skip to content

Commit 64e9a29

Browse files
committed
feat: Search application chat log by user
1 parent 89c8821 commit 64e9a29

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

apps/application/api/application_chat.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,12 @@ def get_parameters():
6565
type=OpenApiTypes.STR,
6666
required=False,
6767
),
68+
OpenApiParameter(
69+
name="username",
70+
description="username",
71+
type=OpenApiTypes.STR,
72+
required=False,
73+
),
6874
OpenApiParameter(
6975
name="min_star",
7076
description=_("Minimum number of likes"),

apps/application/serializers/application_chat.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ class ApplicationChatRecordExportRequest(serializers.Serializer):
5151
class ApplicationChatQuerySerializers(serializers.Serializer):
5252
workspace_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_("Workspace ID"))
5353
abstract = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_("summary"))
54+
username = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_("username"))
5455
start_time = serializers.DateField(format='%Y-%m-%d', label=_("Start time"))
5556
end_time = serializers.DateField(format='%Y-%m-%d', label=_("End time"))
5657
application_id = serializers.UUIDField(required=True, label=_("Application ID"))
@@ -86,6 +87,7 @@ def get_query_set(self, select_ids=None):
8687
query_set = QuerySet(model=get_dynamics_model(
8788
{'application_chat.application_id': models.CharField(),
8889
'application_chat.abstract': models.CharField(),
90+
'application_chat.asker': models.JSONField(),
8991
"star_num": models.IntegerField(),
9092
'trample_num': models.IntegerField(),
9193
'comparer': models.CharField(),
@@ -98,6 +100,9 @@ def get_query_set(self, select_ids=None):
98100
}
99101
if 'abstract' in self.data and self.data.get('abstract') is not None:
100102
base_query_dict['application_chat.abstract__icontains'] = self.data.get('abstract')
103+
if 'username' in self.data and self.data.get('username') is not None:
104+
base_query_dict['application_chat.asker__username'] = self.data.get('username')
105+
101106

102107
if select_ids is not None and len(select_ids) > 0:
103108
base_query_dict['application_chat.id__in'] = select_ids

0 commit comments

Comments
 (0)