# Generated by Django 5.2.8 on 2026-06-22 08:31 import django.contrib.gis.db.models.fields import django.db.models.deletion from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ ('assets', '0009_signpaneltype_default_diameter_and_more'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='TrafficLightRadarModel', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('code', models.CharField(max_length=50)), ('name_fr', models.CharField(blank=True, max_length=200, null=True)), ('name_nl', models.CharField(blank=True, max_length=200, null=True)), ('description', models.TextField(blank=True, null=True)), ('brand', models.CharField(blank=True, max_length=500, null=True)), ('category', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='assets.assetcategory')), ], options={ 'verbose_name': 'Traffic Light Radar Model', 'verbose_name_plural': 'Traffic Light Radar Models', }, ), migrations.CreateModel( name='TrafficLightRadar', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('code', models.CharField(max_length=50)), ('name_fr', models.CharField(blank=True, max_length=200, null=True)), ('name_nl', models.CharField(blank=True, max_length=200, null=True)), ('status', models.CharField(choices=[('to_be_approved', 'À approuver'), ('planned', 'Planifié'), ('active', 'Actif'), ('damaged', 'Endommagé'), ('to_replace', 'A remplacer'), ('voluntarily_out_of_service', 'Mis hors service volontairement'), ('removed', 'Enlevé'), ('archived', 'Archivé')], default='active', max_length=50)), ('obsolescence', models.CharField(blank=True, choices=[('good', 'Bon état'), ('medium', 'Moyen'), ('bad', 'Dégradé'), ('critical', 'Critique'), ('unknown', 'Inconnu')], default='unknown', null=True)), ('installation_date', models.DateTimeField(blank=True, null=True)), ('uninstallation_date', models.DateTimeField(blank=True, null=True)), ('serial_number', models.CharField(blank=True, max_length=200, null=True)), ('warranty_duration', models.IntegerField(blank=True, null=True, verbose_name='Duration of the warranty (months)')), ('last_inspection_date', models.DateTimeField(blank=True, null=True)), ('last_preventive_date', models.DateTimeField(blank=True, null=True)), ('last_corrective_date', models.DateTimeField(blank=True, null=True)), ('last_survey_date', models.DateTimeField(blank=True, null=True)), ('brand', models.CharField(blank=True, max_length=500, null=True)), ('marked_as_removed_date', models.DateTimeField(blank=True, null=True, verbose_name='Date de marquage comme retiré')), ('note', models.TextField(blank=True, null=True, verbose_name='Note')), ('validation_status', models.CharField(blank=True, choices=[('to_be_validated', 'À valider'), ('validated', 'Validé'), ('to_be_completed', 'À compléter'), ('rejected', 'Rejeté')], max_length=50, null=True, verbose_name='Statut de validation')), ('updated_at', models.DateTimeField(auto_now=True)), ('lon', models.FloatField(blank=True, null=True)), ('lat', models.FloatField(blank=True, null=True)), ('geom', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=3812)), ('geojson', models.TextField(blank=True, null=True)), ('category', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='assets.assetcategory')), ('intersection', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='radars', to='assets.trafficlightintersection')), ('marked_as_removed_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='%(app_label)s_%(class)s_marked_as_removed', to=settings.AUTH_USER_MODEL, verbose_name='Marqué comme retiré par')), ('replaced_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='replaces', to='assets.trafficlightradar', verbose_name='Remplacé par')), ('updated_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='%(app_label)s_%(class)s_updated_by', to=settings.AUTH_USER_MODEL, verbose_name='Mis à jour par')), ('model', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='assets.trafficlightradarmodel')), ], options={ 'verbose_name': 'Radar', 'verbose_name_plural': 'Radars', }, ), ]