feat: Search application chat log by user
parent
89c8821dce
commit
64e9a29a60
|
|
@ -65,6 +65,12 @@ class ApplicationChatQueryAPI(APIMixin):
|
||||||
type=OpenApiTypes.STR,
|
type=OpenApiTypes.STR,
|
||||||
required=False,
|
required=False,
|
||||||
),
|
),
|
||||||
|
OpenApiParameter(
|
||||||
|
name="username",
|
||||||
|
description="username",
|
||||||
|
type=OpenApiTypes.STR,
|
||||||
|
required=False,
|
||||||
|
),
|
||||||
OpenApiParameter(
|
OpenApiParameter(
|
||||||
name="min_star",
|
name="min_star",
|
||||||
description=_("Minimum number of likes"),
|
description=_("Minimum number of likes"),
|
||||||
|
|
|
||||||
|
|
@ -51,6 +51,7 @@ class ApplicationChatRecordExportRequest(serializers.Serializer):
|
||||||
class ApplicationChatQuerySerializers(serializers.Serializer):
|
class ApplicationChatQuerySerializers(serializers.Serializer):
|
||||||
workspace_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_("Workspace ID"))
|
workspace_id = serializers.CharField(required=False, allow_null=True, allow_blank=True, label=_("Workspace ID"))
|
||||||
abstract = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_("summary"))
|
abstract = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_("summary"))
|
||||||
|
username = serializers.CharField(required=False, allow_blank=True, allow_null=True, label=_("username"))
|
||||||
start_time = serializers.DateField(format='%Y-%m-%d', label=_("Start time"))
|
start_time = serializers.DateField(format='%Y-%m-%d', label=_("Start time"))
|
||||||
end_time = serializers.DateField(format='%Y-%m-%d', label=_("End time"))
|
end_time = serializers.DateField(format='%Y-%m-%d', label=_("End time"))
|
||||||
application_id = serializers.UUIDField(required=True, label=_("Application ID"))
|
application_id = serializers.UUIDField(required=True, label=_("Application ID"))
|
||||||
|
|
@ -86,6 +87,7 @@ class ApplicationChatQuerySerializers(serializers.Serializer):
|
||||||
query_set = QuerySet(model=get_dynamics_model(
|
query_set = QuerySet(model=get_dynamics_model(
|
||||||
{'application_chat.application_id': models.CharField(),
|
{'application_chat.application_id': models.CharField(),
|
||||||
'application_chat.abstract': models.CharField(),
|
'application_chat.abstract': models.CharField(),
|
||||||
|
'application_chat.asker': models.JSONField(),
|
||||||
"star_num": models.IntegerField(),
|
"star_num": models.IntegerField(),
|
||||||
'trample_num': models.IntegerField(),
|
'trample_num': models.IntegerField(),
|
||||||
'comparer': models.CharField(),
|
'comparer': models.CharField(),
|
||||||
|
|
@ -98,6 +100,9 @@ class ApplicationChatQuerySerializers(serializers.Serializer):
|
||||||
}
|
}
|
||||||
if 'abstract' in self.data and self.data.get('abstract') is not None:
|
if 'abstract' in self.data and self.data.get('abstract') is not None:
|
||||||
base_query_dict['application_chat.abstract__icontains'] = self.data.get('abstract')
|
base_query_dict['application_chat.abstract__icontains'] = self.data.get('abstract')
|
||||||
|
if 'username' in self.data and self.data.get('username') is not None:
|
||||||
|
base_query_dict['application_chat.asker__username'] = self.data.get('username')
|
||||||
|
|
||||||
|
|
||||||
if select_ids is not None and len(select_ids) > 0:
|
if select_ids is not None and len(select_ids) > 0:
|
||||||
base_query_dict['application_chat.id__in'] = select_ids
|
base_query_dict['application_chat.id__in'] = select_ids
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue