diff --git a/core/apps/evaluation/migrations/0049_mechanicauto_customer_fields.py b/core/apps/evaluation/migrations/0049_mechanicauto_customer_fields.py new file mode 100644 index 0000000..6d59e00 --- /dev/null +++ b/core/apps/evaluation/migrations/0049_mechanicauto_customer_fields.py @@ -0,0 +1,56 @@ +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("evaluation", "0048_autoevaluation_customer_fields"), + ] + + operations = [ + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_type", + field=models.IntegerField( + blank=True, + choices=[(1, "Jismoniy shaxs"), (2, "Yuridik shaxs")], + null=True, + verbose_name="customer type", + ), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_individual_person_f_name", + field=models.CharField(blank=True, max_length=100, null=True, verbose_name="customer first name"), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_individual_person_l_name", + field=models.CharField(blank=True, max_length=100, null=True, verbose_name="customer last name"), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_individual_person_p_name", + field=models.CharField(blank=True, max_length=100, null=True, verbose_name="customer patronymic"), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_individual_person_passport_num", + field=models.CharField(blank=True, max_length=20, null=True, verbose_name="customer passport number"), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_legal_entity", + field=models.CharField(blank=True, max_length=255, null=True, verbose_name="customer legal entity name"), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_legal_inn", + field=models.CharField(blank=True, max_length=20, null=True, verbose_name="customer legal entity INN"), + ), + migrations.AddField( + model_name="mechanicautoevaluationmodel", + name="customer_residence", + field=models.CharField(blank=True, max_length=255, null=True, verbose_name="customer residence"), + ), + ] diff --git a/core/apps/evaluation/models/mechanic_auto.py b/core/apps/evaluation/models/mechanic_auto.py index 72a3d09..89dd626 100644 --- a/core/apps/evaluation/models/mechanic_auto.py +++ b/core/apps/evaluation/models/mechanic_auto.py @@ -196,6 +196,56 @@ class MechanicAutoEvaluationModel(AbstractBaseModel): related_name='evaluation_mechanic_auto_rate_type' ) + # ── Step 3 — Buyurtmachi ma'lumotlari ──────────────────────────── + customer_type = models.IntegerField( + verbose_name=_("customer type"), + choices=ObjectOwnerType.choices, + blank=True, + null=True, + ) + customer_individual_person_f_name = models.CharField( + verbose_name=_("customer first name"), + max_length=100, + blank=True, + null=True, + ) + customer_individual_person_l_name = models.CharField( + verbose_name=_("customer last name"), + max_length=100, + blank=True, + null=True, + ) + customer_individual_person_p_name = models.CharField( + verbose_name=_("customer patronymic"), + max_length=100, + blank=True, + null=True, + ) + customer_individual_person_passport_num = models.CharField( + verbose_name=_("customer passport number"), + max_length=20, + blank=True, + null=True, + ) + customer_legal_entity = models.CharField( + verbose_name=_("customer legal entity name"), + max_length=255, + blank=True, + null=True, + ) + customer_legal_inn = models.CharField( + verbose_name=_("customer legal entity INN"), + max_length=20, + blank=True, + null=True, + ) + customer_residence = models.CharField( + verbose_name=_("customer residence"), + max_length=255, + blank=True, + null=True, + ) + # ── Step 4 — Avtomobil ma'lumotlari ───────────────────────────── tex_passport_serie_num = models.CharField( verbose_name=_("tech passport series and number"), diff --git a/core/apps/evaluation/serializers/auto/MechanicAutoEvaluation.py b/core/apps/evaluation/serializers/auto/MechanicAutoEvaluation.py index c1534fb..58df798 100644 --- a/core/apps/evaluation/serializers/auto/MechanicAutoEvaluation.py +++ b/core/apps/evaluation/serializers/auto/MechanicAutoEvaluation.py @@ -62,6 +62,14 @@ class BaseMechanicAutoevaluationSerializer(serializers.ModelSerializer): "object_owner_legal_entity", "object_owner_legal_inn", "object_owner_residence", + "customer_type", + "customer_individual_person_f_name", + "customer_individual_person_l_name", + "customer_individual_person_p_name", + "customer_individual_person_passport_num", + "customer_legal_entity", + "customer_legal_inn", + "customer_residence", "tex_passport_serie_num", "tex_passport_files", "rating_goal", @@ -201,6 +209,14 @@ class UpdateMechanicAutoevaluationSerializer(serializers.ModelSerializer): "object_owner_legal_entity", "object_owner_legal_inn", "object_owner_residence", + "customer_type", + "customer_individual_person_f_name", + "customer_individual_person_l_name", + "customer_individual_person_p_name", + "customer_individual_person_passport_num", + "customer_legal_entity", + "customer_legal_inn", + "customer_residence", "value_determined", "rate_type", "assessment_task_type", @@ -353,6 +369,14 @@ class CreateMechanicAutoevaluationSerializer(serializers.ModelSerializer): "object_owner_legal_entity", "object_owner_legal_inn", "object_owner_residence", + "customer_type", + "customer_individual_person_f_name", + "customer_individual_person_l_name", + "customer_individual_person_p_name", + "customer_individual_person_passport_num", + "customer_legal_entity", + "customer_legal_inn", + "customer_residence", "value_determined", "rate_type", "assessment_task_type", @@ -473,6 +497,14 @@ class MechanicAutoEvaluationModelSerializer(serializers.ModelSerializer): "object_owner_legal_entity", "object_owner_legal_inn", "object_owner_residence", + "customer_type", + "customer_individual_person_f_name", + "customer_individual_person_l_name", + "customer_individual_person_p_name", + "customer_individual_person_passport_num", + "customer_legal_entity", + "customer_legal_inn", + "customer_residence", "value_determined", "rate_type", "assessment_task_type",