hamma modellarda get serizlizers uchun fiedl qoshilfi

This commit is contained in:
Husanjonazamov
2026-03-02 12:31:16 +05:00
parent 8d4eea1dfa
commit 1a90803527
22 changed files with 495 additions and 104 deletions

View File

@@ -1,7 +1,7 @@
from rest_framework import serializers
from core.apps.evaluation.models import AutoEvaluationModel
from core.apps.evaluation.serializers.valuation.Valuation import ListValuationSerializer
from core.apps.evaluation.serializers.vehicle.Vehicle import ListVehicleSerializer
class BaseAutoevaluationSerializer(serializers.ModelSerializer):
class Meta:
@@ -12,19 +12,34 @@ class BaseAutoevaluationSerializer(serializers.ModelSerializer):
"vehicle",
]
class ListAutoevaluationSerializer(BaseAutoevaluationSerializer):
class Meta(BaseAutoevaluationSerializer.Meta): ...
valuation_info = ListValuationSerializer(source="valuation", read_only=True)
vehicle_info = ListVehicleSerializer(source="vehicle", read_only=True)
class Meta(BaseAutoevaluationSerializer.Meta):
fields = BaseAutoevaluationSerializer.Meta.fields + [
"valuation_info",
"vehicle_info",
]
class RetrieveAutoevaluationSerializer(BaseAutoevaluationSerializer):
class Meta(BaseAutoevaluationSerializer.Meta): ...
from core.apps.evaluation.serializers.valuation.Valuation import RetrieveValuationSerializer
from core.apps.evaluation.serializers.vehicle.Vehicle import RetrieveVehicleSerializer
valuation_detail = RetrieveValuationSerializer(source="valuation", read_only=True)
vehicle_detail = RetrieveVehicleSerializer(source="vehicle", read_only=True)
class Meta(BaseAutoevaluationSerializer.Meta):
fields = BaseAutoevaluationSerializer.Meta.fields + [
"valuation_detail",
"vehicle_detail",
"created_at",
"updated_at",
]
class CreateAutoevaluationSerializer(BaseAutoevaluationSerializer):
class Meta(BaseAutoevaluationSerializer.Meta):
fields = [
"id",
"valuation",
"vehicle",
]

View File

@@ -1,27 +1,70 @@
from rest_framework import serializers
from core.apps.evaluation.models import CustomerModel
class BaseCustomerSerializer(serializers.ModelSerializer):
customer_type_display = serializers.CharField(source="get_customer_type_display", read_only=True)
class Meta:
model = CustomerModel
fields = [
"id",
"customer_type",
"customer_type_display",
"jshshir",
"passport_series",
"passport_number",
"first_name",
"last_name",
"middle_name",
"inn",
"org_name",
"created_at",
]
class ListCustomerSerializer(BaseCustomerSerializer):
class Meta(BaseCustomerSerializer.Meta): ...
class Meta(BaseCustomerSerializer.Meta):
fields = [
"id",
"customer_type_display",
"first_name",
"last_name",
"org_name",
"inn",
"jshshir",
]
class RetrieveCustomerSerializer(BaseCustomerSerializer):
class Meta(BaseCustomerSerializer.Meta): ...
class Meta(BaseCustomerSerializer.Meta):
fields = BaseCustomerSerializer.Meta.fields + [
"address",
"passport_issued_date",
"passport_issued_by",
"org_address",
"director_name",
"mfo",
"bank_account",
"certificate_file",
"updated_at",
]
class CreateCustomerSerializer(BaseCustomerSerializer):
class Meta(BaseCustomerSerializer.Meta):
fields = [
"id",
"customer_type",
"jshshir",
"passport_series",
"passport_number",
"first_name",
"last_name",
"middle_name",
"address",
"passport_issued_date",
"passport_issued_by",
"inn",
"org_name",
"org_address",
"director_name",
"mfo",
"bank_account",
"certificate_file",
]

View File

@@ -1,27 +1,70 @@
from rest_framework import serializers
from core.apps.evaluation.models import PropertyOwnerModel
class BasePropertyOwnerSerializer(serializers.ModelSerializer):
owner_type_display = serializers.CharField(source="get_owner_type_display", read_only=True)
class Meta:
model = PropertyOwnerModel
fields = [
"id",
"owner_type",
"owner_type_display",
"jshshir",
"passport_series",
"passport_number",
"first_name",
"last_name",
"middle_name",
"inn",
"org_name",
"created_at",
]
class ListPropertyOwnerSerializer(BasePropertyOwnerSerializer):
class Meta(BasePropertyOwnerSerializer.Meta): ...
class Meta(BasePropertyOwnerSerializer.Meta):
fields = [
"id",
"owner_type_display",
"first_name",
"last_name",
"org_name",
"inn",
"jshshir",
]
class RetrievePropertyOwnerSerializer(BasePropertyOwnerSerializer):
class Meta(BasePropertyOwnerSerializer.Meta): ...
class Meta(BasePropertyOwnerSerializer.Meta):
fields = BasePropertyOwnerSerializer.Meta.fields + [
"address",
"passport_issued_date",
"passport_issued_by",
"org_address",
"director_name",
"mfo",
"bank_account",
"certificate_file",
"updated_at",
]
class CreatePropertyOwnerSerializer(BasePropertyOwnerSerializer):
class Meta(BasePropertyOwnerSerializer.Meta):
fields = [
"id",
"owner_type",
"jshshir",
"passport_series",
"passport_number",
"first_name",
"last_name",
"middle_name",
"address",
"passport_issued_date",
"passport_issued_by",
"inn",
"org_name",
"org_address",
"director_name",
"mfo",
"bank_account",
"certificate_file",
]

View File

@@ -1,28 +1,47 @@
from rest_framework import serializers
from core.apps.evaluation.models import ValuationDocumentModel
class BaseValuationdocumentSerializer(serializers.ModelSerializer):
document_type_display = serializers.CharField(source="get_document_type_display", read_only=True)
uploaded_by_name = serializers.CharField(source="uploaded_by.get_full_name", read_only=True)
class Meta:
model = ValuationDocumentModel
fields = [
"id",
"valuation",
"document_type",
"document_type_display",
"title",
"file",
"uploaded_by",
"uploaded_by_name",
"created_at",
]
class ListValuationdocumentSerializer(BaseValuationdocumentSerializer):
class Meta(BaseValuationdocumentSerializer.Meta): ...
class Meta(BaseValuationdocumentSerializer.Meta):
fields = [
"id",
"valuation",
"document_type_display",
"title",
"file",
]
class RetrieveValuationdocumentSerializer(BaseValuationdocumentSerializer):
class Meta(BaseValuationdocumentSerializer.Meta): ...
class Meta(BaseValuationdocumentSerializer.Meta):
fields = BaseValuationdocumentSerializer.Meta.fields + [
"description",
"updated_at",
]
class CreateValuationdocumentSerializer(BaseValuationdocumentSerializer):
class Meta(BaseValuationdocumentSerializer.Meta):
fields = [
"id",
"valuation",
"document_type",
"title",
"file",
"description",
]

View File

@@ -1,28 +1,50 @@
from rest_framework import serializers
from core.apps.evaluation.models import MovablePropertyEvaluationModel
class BaseMovablepropertyevaluationSerializer(serializers.ModelSerializer):
property_category_display = serializers.CharField(source="get_property_category_display", read_only=True)
condition_display = serializers.CharField(source="get_condition_display", read_only=True)
class Meta:
model = MovablePropertyEvaluationModel
fields = [
"id",
# "name",
"valuation",
"property_name",
"property_category",
"property_category_display",
"serial_number",
"manufacture_year",
"condition",
"condition_display",
"quantity",
]
class ListMovablepropertyevaluationSerializer(BaseMovablepropertyevaluationSerializer):
class Meta(BaseMovablepropertyevaluationSerializer.Meta): ...
class Meta(BaseMovablepropertyevaluationSerializer.Meta):
fields = [
"id",
"valuation",
"property_name",
"property_category_display",
"quantity",
]
class RetrieveMovablepropertyevaluationSerializer(BaseMovablepropertyevaluationSerializer):
class Meta(BaseMovablepropertyevaluationSerializer.Meta): ...
class Meta(BaseMovablepropertyevaluationSerializer.Meta):
fields = BaseMovablepropertyevaluationSerializer.Meta.fields + [
"created_at",
"updated_at",
]
class CreateMovablepropertyevaluationSerializer(BaseMovablepropertyevaluationSerializer):
class Meta(BaseMovablepropertyevaluationSerializer.Meta):
fields = [
"id",
# "name",
"valuation",
"property_name",
"property_category",
"serial_number",
"manufacture_year",
"condition",
"quantity",
]

View File

@@ -1,26 +1,60 @@
from rest_framework import serializers
from core.apps.evaluation.models import QuickEvaluationModel
class BaseQuickevaluationSerializer(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)
created_by_name = serializers.CharField(source="created_by.get_full_name", read_only=True)
class Meta:
model = QuickEvaluationModel
fields = [
"id",
"created_by",
"created_by_name",
"brand",
"model",
"license_plate",
"manufacture_year",
"estimated_price",
"created_at",
]
class ListQuickevaluationSerializer(BaseQuickevaluationSerializer):
class Meta(BaseQuickevaluationSerializer.Meta): ...
class Meta(BaseQuickevaluationSerializer.Meta):
pass
class RetrieveQuickevaluationSerializer(BaseQuickevaluationSerializer):
class Meta(BaseQuickevaluationSerializer.Meta): ...
class Meta(BaseQuickevaluationSerializer.Meta):
fields = BaseQuickevaluationSerializer.Meta.fields + [
"tech_passport_number",
"mileage",
"vin_number",
"engine_number",
"color",
"fuel_type",
"fuel_type_display",
"body_type",
"body_type_display",
"condition",
"condition_display",
"updated_at",
]
class CreateQuickevaluationSerializer(BaseQuickevaluationSerializer):
class Meta(BaseQuickevaluationSerializer.Meta):
fields = [
"id",
"tech_passport_number",
"license_plate",
"model",
"brand",
"manufacture_year",
"mileage",
"vin_number",
"engine_number",
"color",
"fuel_type",
"body_type",
"condition",
]

View File

@@ -1,15 +1,17 @@
from rest_framework import serializers
from core.apps.evaluation.models import RealEstateEvaluationModel
class BaseRealestateevaluationSerializer(serializers.ModelSerializer):
property_type_display = serializers.CharField(source="get_property_type_display", read_only=True)
condition_display = serializers.CharField(source="get_condition_display", read_only=True)
class Meta:
model = RealEstateEvaluationModel
fields = [
"id",
"valuation",
"property_type",
"property_type_display",
"address",
"cadastral_number",
"total_area",
@@ -19,22 +21,31 @@ class BaseRealestateevaluationSerializer(serializers.ModelSerializer):
"rooms_count",
"build_year",
"condition",
"condition_display",
"has_renovation",
]
class ListRealestateevaluationSerializer(BaseRealestateevaluationSerializer):
class Meta(BaseRealestateevaluationSerializer.Meta): ...
class Meta(BaseRealestateevaluationSerializer.Meta):
fields = [
"id",
"valuation",
"property_type_display",
"address",
"total_area",
"condition_display",
]
class RetrieveRealestateevaluationSerializer(BaseRealestateevaluationSerializer):
class Meta(BaseRealestateevaluationSerializer.Meta): ...
class Meta(BaseRealestateevaluationSerializer.Meta):
fields = BaseRealestateevaluationSerializer.Meta.fields + [
"created_at",
"updated_at",
]
class CreateRealestateevaluationSerializer(BaseRealestateevaluationSerializer):
class Meta(BaseRealestateevaluationSerializer.Meta):
fields = [
"id",
"valuation",
"property_type",
"address",

View File

@@ -1,35 +1,46 @@
from rest_framework import serializers
from core.apps.evaluation.models import EvaluationReportModel
class BaseEvaluationreportSerializer(serializers.ModelSerializer):
evaluator_name = serializers.CharField(source="evaluator.get_full_name", read_only=True)
valuation_number = serializers.CharField(source="valuation.conclusion_number", read_only=True)
class Meta:
model = EvaluationReportModel
fields = [
"id",
"valuation",
"valuation_number",
"evaluator",
"evaluator_name",
"report_number",
"final_value",
"report_file",
"conclusion_text",
"approved_at",
"created_at",
]
class ListEvaluationreportSerializer(BaseEvaluationreportSerializer):
class Meta(BaseEvaluationreportSerializer.Meta):
fields = [
"id",
"valuation_number",
"evaluator_name",
"report_number",
"final_value",
"approved_at",
]
class ListEvaluationreportSerializer(BaseEvaluationreportSerializer):
class Meta(BaseEvaluationreportSerializer.Meta): ...
class RetrieveEvaluationreportSerializer(BaseEvaluationreportSerializer):
class Meta(BaseEvaluationreportSerializer.Meta): ...
class Meta(BaseEvaluationreportSerializer.Meta):
fields = BaseEvaluationreportSerializer.Meta.fields + [
"conclusion_text",
"updated_at",
]
class CreateEvaluationreportSerializer(BaseEvaluationreportSerializer):
class Meta(BaseEvaluationreportSerializer.Meta):
fields = [
"id",
"valuation",
"evaluator",
"report_number",

View File

@@ -1,40 +1,56 @@
from rest_framework import serializers
from core.apps.evaluation.models import ValuationModel
class BaseValuationSerializer(serializers.ModelSerializer):
status_display = serializers.CharField(source="get_status_display", read_only=True)
evaluation_type_display = serializers.CharField(source="get_evaluation_type_display", read_only=True)
payment_status_display = serializers.CharField(source="get_payment_status_display", read_only=True)
customer_name = serializers.CharField(source="customer.__str__", read_only=True)
class Meta:
model = ValuationModel
fields = [
"id",
"conclusion_number",
"customer",
"customer_name",
"evaluation_purpose",
"evaluation_type",
"evaluation_type_display",
"status",
"status_display",
"created_at",
]
class ListValuationSerializer(BaseValuationSerializer):
class Meta(BaseValuationSerializer.Meta):
pass
fields = BaseValuationSerializer.Meta.fields + [
"final_price",
"payment_status_display",
]
class RetrieveValuationSerializer(BaseValuationSerializer):
created_by_name = serializers.CharField(source="created_by.get_full_name", read_only=True)
assigned_to_name = serializers.CharField(source="assigned_to.get_full_name", read_only=True)
class Meta(BaseValuationSerializer.Meta):
fields = BaseValuationSerializer.Meta.fields + [
"customer",
"property_owner",
"created_by",
"created_by_name",
"assigned_to",
"assigned_to_name",
"evaluation_subtype",
"estimated_price",
"final_price",
"payment_status",
"payment_status_display",
"is_courier_delivery",
"courier_extra_amount",
"notes",
"updated_at",
]
class CreateValuationSerializer(BaseValuationSerializer):
class Meta(BaseValuationSerializer.Meta):
fields = [
@@ -46,4 +62,3 @@ class CreateValuationSerializer(BaseValuationSerializer):
"is_courier_delivery",
"notes",
]

View File

@@ -1,9 +1,11 @@
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 = [
@@ -12,28 +14,59 @@ class BaseVehicleSerializer(serializers.ModelSerializer):
"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 = "__all__"
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",
]