Modellarga o'zgartirish kiritildi va filters qo'shildi

This commit is contained in:
2025-09-20 13:06:19 +05:00
parent d160410cd9
commit 7a2ea48a8e
39 changed files with 446 additions and 29 deletions

View File

@@ -1,3 +1,4 @@
from .badge import * # noqa
from .extra_services import * # noqa
from .hotel import * # noqa
from .tariff import * # noqa

View File

@@ -0,0 +1 @@
from .badge import * # noqa

View File

@@ -0,0 +1,29 @@
from rest_framework import serializers
from core.apps.tickets.models import BadgeModel
class BaseBadgeSerializer(serializers.ModelSerializer):
class Meta:
model = BadgeModel
fields = [
"id",
"name",
"color",
]
class ListBadgeSerializer(BaseBadgeSerializer):
class Meta(BaseBadgeSerializer.Meta): ...
class RetrieveBadgeSerializer(BaseBadgeSerializer):
class Meta(BaseBadgeSerializer.Meta): ...
class CreateBadgeSerializer(BaseBadgeSerializer):
class Meta(BaseBadgeSerializer.Meta):
fields = [
"id",
"name",
]

View File

@@ -8,7 +8,6 @@ class BaseTicketorderSerializer(serializers.ModelSerializer):
model = TicketorderModel
fields = [
"id",
"name",
]
@@ -24,5 +23,4 @@ class CreateTicketorderSerializer(BaseTicketorderSerializer):
class Meta(BaseTicketorderSerializer.Meta):
fields = [
"id",
"name",
]

View File

@@ -3,9 +3,10 @@ from core.apps.tickets.models import TicketsModel, TicketsImagesModel, TicketsAm
TicketsIncludedServicesModel, TicketsItineraryModel, TicketsItineraryImagesModel, TicketsItineraryDestinationsModel, \
TicketsHotelMealsModel, TicketsCommentsModel
from core.apps.accounts.models import User
from core.apps.accounts.serializers.user import UserSerializer
from core.apps.tickets.models.tariff import TariffModel
from core.apps.tickets.serializers.badge.badge import ListBadgeSerializer
class TicketsTariffSerializer(serializers.ModelSerializer):
@@ -108,7 +109,34 @@ class BaseTicketsSerializer(serializers.ModelSerializer):
class ListTicketsSerializer(BaseTicketsSerializer):
class Meta(BaseTicketsSerializer.Meta): ...
ticket_images = serializers.SerializerMethodField()
ticket_amenities = TicketsAmenitiesSerializer(many=True, read_only=True)
badge = ListBadgeSerializer(many=True, read_only=True)
class Meta:
model = TicketsModel
fields = [
"id",
"title",
"price",
"departure_date",
"departure",
"passenger_count",
"rating",
"duration_days",
"destination",
"ticket_images",
"ticket_amenities",
"passenger_count",
"badge",
"visa_required"
]
def get_ticket_images(self, obj):
image = obj.ticket_images.first()
if image:
return TicketsImageSerializer(image).data
return None
class RetrieveTicketsSerializer(BaseTicketsSerializer):