Files
backend-v1/core/apps/evaluation/serializers/vehicle/Vehicle.py
2026-03-02 12:31:16 +05:00

73 lines
2.1 KiB
Python

from rest_framework import serializers
from core.apps.evaluation.models import VehicleModel
class BaseVehicleSerializer(serializers.ModelSerializer):
fuel_type_display = serializers.CharField(source="get_fuel_type_display", read_only=True)
body_type_display = serializers.CharField(source="get_body_type_display", read_only=True)
condition_display = serializers.CharField(source="get_condition_display", read_only=True)
class Meta:
model = VehicleModel
fields = [
"id",
"brand",
"model",
"license_plate",
"manufacture_year",
"color",
"fuel_type_display",
"condition_display",
]
class ListVehicleSerializer(BaseVehicleSerializer):
class Meta(BaseVehicleSerializer.Meta):
pass
class RetrieveVehicleSerializer(BaseVehicleSerializer):
class Meta(BaseVehicleSerializer.Meta):
fields = [
"id",
"tech_passport_series",
"tech_passport_number",
"tech_passport_issued_date",
"tech_passport_issued_by",
"license_plate",
"model",
"brand",
"manufacture_year",
"vin_number",
"engine_number",
"color",
"mileage",
"fuel_type",
"fuel_type_display",
"body_type",
"body_type_display",
"condition",
"condition_display",
"position",
"created_at",
"updated_at",
]
class CreateVehicleSerializer(BaseVehicleSerializer):
class Meta(BaseVehicleSerializer.Meta):
fields = [
"tech_passport_series",
"tech_passport_number",
"tech_passport_issued_date",
"tech_passport_issued_by",
"license_plate",
"model",
"brand",
"manufacture_year",
"vin_number",
"engine_number",
"color",
"mileage",
"fuel_type",
"body_type",
"condition",
"position",
]