account/responses page

This commit is contained in:
2025-05-26 12:15:32 +03:00
parent 50e6da10f1
commit c761c60818
8 changed files with 252 additions and 11 deletions

View File

@@ -12,9 +12,9 @@ from django.db import models
from api.auth.serializers import UserResponseSerializer
from api.models import UserProfile
from api.utils.decorators import handle_exceptions
from routes.models import Route, City, Country
from routes.models import Route, City, Country, Leads
from sitemanagement.models import Pricing
from .serializers import RouteSerializer, CreateRouteSerializer, CitySerializer, CountrySerializer, PlanChangeSerializer, PricingSerializer, LeadSerializer
from .serializers import RouteSerializer, CreateRouteSerializer, CitySerializer, CountrySerializer, PlanChangeSerializer, PricingSerializer, LeadSerializer, LeadResponseSerializer
class UserDataView(ViewSet):
"""Эндпоинт для наполнения стора фронта данными"""
@@ -259,4 +259,21 @@ class LeadViewSet(ViewSet):
},
status=status.HTTP_400_BAD_REQUEST
)
@action(detail=False, methods=['get'])
@handle_exceptions
def get_leads(self, request):
"""Получаем список заявок на перевозку"""
leads = Leads.objects.select_related(
'route',
'route__from_city',
'route__to_city',
'route__from_city__country',
'route__to_city__country',
'route__owner'
).filter(moving_user=request.user).order_by('-created_at')
return Response(
LeadResponseSerializer(leads, many=True).data,
status=status.HTTP_200_OK
)