# Generated by Django 4.2.5 on 2023-11-20 04:44

import base.documents_path
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
import model_utils.fields


class Migration(migrations.Migration):
    initial = True

    dependencies = [
        ("master", "0001_initial"),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
        ("account", "0001_initial"),
    ]

    operations = [
        migrations.CreateModel(
            name="VehicleMakeMaster",
            fields=[
                (
                    "id",
                    models.BigAutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name="ID",
                    ),
                ),
                (
                    "created",
                    model_utils.fields.AutoCreatedField(
                        default=django.utils.timezone.now,
                        editable=False,
                        verbose_name="created",
                    ),
                ),
                (
                    "modified",
                    model_utils.fields.AutoLastModifiedField(
                        default=django.utils.timezone.now,
                        editable=False,
                        verbose_name="modified",
                    ),
                ),
                ("is_removed", models.BooleanField(default=False)),
                ("name", models.CharField()),
                (
                    "logo",
                    models.FileField(
                        null=True,
                        upload_to=base.documents_path.DocumentsPath.get_vehicle_make_path,
                    ),
                ),
            ],
            options={
                "db_table": "vehicle_make_master",
            },
        ),
        migrations.CreateModel(
            name="VehicleModelMaster",
            fields=[
                (
                    "id",
                    models.BigAutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name="ID",
                    ),
                ),
                (
                    "created",
                    model_utils.fields.AutoCreatedField(
                        default=django.utils.timezone.now,
                        editable=False,
                        verbose_name="created",
                    ),
                ),
                (
                    "modified",
                    model_utils.fields.AutoLastModifiedField(
                        default=django.utils.timezone.now,
                        editable=False,
                        verbose_name="modified",
                    ),
                ),
                ("is_removed", models.BooleanField(default=False)),
                ("name", models.CharField()),
                (
                    "connector",
                    models.ForeignKey(
                        null=True,
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="vehicle_model_connectors",
                        to="master.connectormaster",
                    ),
                ),
                (
                    "vehicle_make",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="vehicle_model_makes",
                        to="vehicle.vehiclemakemaster",
                    ),
                ),
            ],
            options={
                "db_table": "vehicle_model_master",
            },
        ),
        migrations.CreateModel(
            name="VehicleInsurance",
            fields=[
                (
                    "id",
                    models.BigAutoField(
                        auto_created=True,
                        primary_key=True,
                        serialize=False,
                        verbose_name="ID",
                    ),
                ),
                (
                    "created",
                    model_utils.fields.AutoCreatedField(
                        default=django.utils.timezone.now,
                        editable=False,
                        verbose_name="created",
                    ),
                ),
                (
                    "modified",
                    model_utils.fields.AutoLastModifiedField(
                        default=django.utils.timezone.now,
                        editable=False,
                        verbose_name="modified",
                    ),
                ),
                ("is_removed", models.BooleanField(default=False)),
                ("start_date", models.DateField()),
                ("end_date", models.DateField()),
                (
                    "policy",
                    models.FileField(
                        upload_to=base.documents_path.DocumentsPath.get_vehicle_insurance_path
                    ),
                ),
                (
                    "insurance_company",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="insurance_company_insurances",
                        to="master.insurancecompanymaster",
                    ),
                ),
                (
                    "insurance_type",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="insurance_type_insurances",
                        to="master.insurancetypemaster",
                    ),
                ),
                (
                    "user",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="user_insurances",
                        to=settings.AUTH_USER_MODEL,
                    ),
                ),
                (
                    "user_vehicle",
                    models.ForeignKey(
                        on_delete=django.db.models.deletion.CASCADE,
                        related_name="user_vehicle_insurances",
                        to="account.uservehicle",
                    ),
                ),
            ],
            options={
                "db_table": "vehicle_insurance",
            },
        ),
    ]
