add vid_type filter for download list view

This commit is contained in:
Simon
2025-07-06 16:01:55 +07:00
parent 28ac0ba620
commit 8d9cb9261e
4 changed files with 40 additions and 3 deletions

View File

@@ -42,6 +42,9 @@ class DownloadListQuerySerializer(
filter = serializers.ChoiceField(
choices=["pending", "ignore"], required=False
)
vid_type = serializers.ChoiceField(
choices=VideoTypeEnum.values_known(), required=False
)
channel = serializers.CharField(required=False, help_text="channel ID")
page = serializers.IntegerField(required=False)

View File

@@ -65,6 +65,12 @@ class DownloadApiListView(ApiBaseView):
{"term": {"channel_id": {"value": filter_channel}}}
)
vid_type_filter = validated_data.get("vid_type")
if vid_type_filter:
must_list.append(
{"term": {"vid_type": {"value": vid_type_filter}}}
)
self.data["query"] = {"bool": {"must": must_list}}
self.get_document_list(request)