hamma modellarda get serizlizers uchun fiedl qoshilfi
This commit is contained in:
@@ -15,6 +15,7 @@ class CustomUserAdmin(admin.UserAdmin, ModelAdmin):
|
||||
"phone",
|
||||
"role",
|
||||
)
|
||||
search_fields = ("phone", "first_name", "last_name", "username")
|
||||
autocomplete_fields = ["groups", "user_permissions"]
|
||||
fieldsets = ((None, {"fields": ("phone",)}),) + (
|
||||
(None, {"fields": ("username", "password")}),
|
||||
@@ -37,7 +38,7 @@ class CustomUserAdmin(admin.UserAdmin, ModelAdmin):
|
||||
|
||||
|
||||
class PermissionAdmin(ModelAdmin):
|
||||
list_display = ("name",)
|
||||
list_display = ("name",)
|
||||
search_fields = ("name",)
|
||||
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ class AutoEvaluationAdmin(ModelAdmin):
|
||||
"vehicle__license_plate",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("valuation", "vehicle")
|
||||
autocomplete_fields = ("valuation", "vehicle")
|
||||
fieldsets = (
|
||||
("Bog'lanishlar", {
|
||||
"fields": ("valuation", "vehicle"),
|
||||
|
||||
@@ -21,7 +21,7 @@ class ValuationDocumentAdmin(ModelAdmin):
|
||||
"valuation__conclusion_number",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("valuation", "uploaded_by")
|
||||
autocomplete_fields = ("valuation", "uploaded_by")
|
||||
fieldsets = (
|
||||
("Hujjat", {
|
||||
"fields": (
|
||||
|
||||
@@ -26,7 +26,7 @@ class MovablePropertyEvaluationAdmin(ModelAdmin):
|
||||
"valuation__conclusion_number",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("valuation",)
|
||||
autocomplete_fields = ("valuation",)
|
||||
fieldsets = (
|
||||
("Ariza", {
|
||||
"fields": ("valuation",),
|
||||
|
||||
@@ -31,7 +31,7 @@ class QuickEvaluationAdmin(ModelAdmin):
|
||||
"tech_passport_number",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("created_by",)
|
||||
autocomplete_fields = ("created_by",)
|
||||
fieldsets = (
|
||||
("Foydalanuvchi", {
|
||||
"fields": ("created_by",),
|
||||
|
||||
@@ -27,7 +27,7 @@ class RealEstateEvaluationAdmin(ModelAdmin):
|
||||
"valuation__conclusion_number",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("valuation",)
|
||||
autocomplete_fields = ("valuation",)
|
||||
fieldsets = (
|
||||
("Ariza", {
|
||||
"fields": ("valuation",),
|
||||
|
||||
@@ -24,7 +24,7 @@ class EvaluationReportAdmin(ModelAdmin):
|
||||
"conclusion_text",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("valuation", "evaluator")
|
||||
autocomplete_fields = ("valuation", "evaluator")
|
||||
fieldsets = (
|
||||
("Hisobot", {
|
||||
"fields": (
|
||||
|
||||
@@ -33,7 +33,7 @@ class ValuationAdmin(ModelAdmin):
|
||||
"customer__inn",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("customer", "property_owner", "created_by", "assigned_to")
|
||||
autocomplete_fields = ("customer", "property_owner", "created_by", "assigned_to")
|
||||
fieldsets = (
|
||||
("Asosiy ma'lumotlar", {
|
||||
"fields": (
|
||||
|
||||
@@ -9,14 +9,14 @@ from core.apps.evaluation.choices.real_estate import PropertyType, RealEstateCon
|
||||
|
||||
|
||||
|
||||
|
||||
class RealEstateEvaluationModel(AbstractBaseModel):
|
||||
valuation = models.OneToOneField(
|
||||
ValuationModel,
|
||||
"evaluation.ValuationModel",
|
||||
on_delete=models.CASCADE,
|
||||
related_name="real_estate_detail",
|
||||
verbose_name=_("valuation"),
|
||||
)
|
||||
|
||||
property_type = models.CharField(
|
||||
verbose_name=_("property type"),
|
||||
max_length=50,
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
|
||||
@@ -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",
|
||||
]
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ class PaymentAdmin(ModelAdmin):
|
||||
"note",
|
||||
)
|
||||
readonly_fields = ("created_at", "updated_at")
|
||||
raw_id_fields = ("valuation", "payer")
|
||||
autocomplete_fields = ("valuation", "payer")
|
||||
fieldsets = (
|
||||
("To'lov ma'lumotlari", {
|
||||
"fields": (
|
||||
|
||||
@@ -1,28 +1,58 @@
|
||||
from rest_framework import serializers
|
||||
|
||||
from core.apps.payment.models import PaymentModel
|
||||
|
||||
|
||||
class BasePaymentSerializer(serializers.ModelSerializer):
|
||||
payment_method_display = serializers.CharField(source="get_payment_method_display", read_only=True)
|
||||
status_display = serializers.CharField(source="get_status_display", read_only=True)
|
||||
payer_name = serializers.CharField(source="payer.get_full_name", read_only=True)
|
||||
valuation_number = serializers.CharField(source="valuation.conclusion_number", read_only=True)
|
||||
|
||||
class Meta:
|
||||
model = PaymentModel
|
||||
fields = [
|
||||
"id",
|
||||
"valuation",
|
||||
"valuation_number",
|
||||
"payer",
|
||||
"payer_name",
|
||||
"amount",
|
||||
"payment_method",
|
||||
"payment_method_display",
|
||||
"status",
|
||||
"status_display",
|
||||
"transaction_id",
|
||||
"paid_at",
|
||||
"created_at",
|
||||
]
|
||||
|
||||
|
||||
class ListPaymentSerializer(BasePaymentSerializer):
|
||||
class Meta(BasePaymentSerializer.Meta): ...
|
||||
|
||||
class Meta(BasePaymentSerializer.Meta):
|
||||
fields = [
|
||||
"id",
|
||||
"valuation_number",
|
||||
"payer_name",
|
||||
"amount",
|
||||
"payment_method_display",
|
||||
"status_display",
|
||||
"paid_at",
|
||||
]
|
||||
|
||||
class RetrievePaymentSerializer(BasePaymentSerializer):
|
||||
class Meta(BasePaymentSerializer.Meta): ...
|
||||
|
||||
class Meta(BasePaymentSerializer.Meta):
|
||||
fields = BasePaymentSerializer.Meta.fields + [
|
||||
"note",
|
||||
"updated_at",
|
||||
]
|
||||
|
||||
class CreatePaymentSerializer(BasePaymentSerializer):
|
||||
class Meta(BasePaymentSerializer.Meta):
|
||||
fields = [
|
||||
"id",
|
||||
"valuation",
|
||||
"payer",
|
||||
"amount",
|
||||
"payment_method",
|
||||
"status",
|
||||
"transaction_id",
|
||||
"paid_at",
|
||||
"note",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user