feat / AEB-64 docs fix

This commit is contained in:
Timofey
2025-10-07 15:30:22 +03:00
parent 6e43a8afed
commit d0f1ae26a9

View File

@@ -1,7 +1,8 @@
from rest_framework import status
from rest_framework.viewsets import ViewSet
from rest_framework.permissions import IsAuthenticated
from drf_spectacular.utils import extend_schema, OpenApiResponse, OpenApiExample
from drf_spectacular.utils import extend_schema, OpenApiResponse, OpenApiExample, inline_serializer
from rest_framework import serializers
from rest_framework.decorators import action
from rest_framework.response import Response
from django.http import HttpResponse
@@ -84,20 +85,23 @@ class AlertView(ViewSet):
@extend_schema(tags=['Репорты'])
class ReportView(ViewSet):
# permission_classes = [IsAuthenticated]
permission_classes = [IsAuthenticated]
@extend_schema(
summary="Генерация отчета",
description="Генерирует отчет в выбранном формате (PDF или CSV)",
request={'application/json': {'type': 'object', 'properties': {'report_format': {'type': 'string', 'enum': ['pdf', 'csv']}}}},
methods=['POST'],
responses={
200: OpenApiResponse(response=AlertSerializer(many=True), description="Список репортов успешно получен",
examples=[OpenApiExample(
'Успешный ответ',
value=[{
"message" : "Отчет успешно сгенерирован"
}]
)]),
200: OpenApiResponse(
response=inline_serializer(
name='BinaryFile',
fields={
'file': serializers.FileField()
}
),
description="Файл отчета для скачивания в формате PDF или CSV"
),
400: OpenApiResponse(
response=ErrorResponseSerializer,
description="Неверный формат",