loko/streetup/interventions/migrations/0019_directcontractrouting.py
2026-07-22 14:48:40 +02:00

30 lines
1.7 KiB
Python

# Generated by Django 5.2.8 on 2026-07-22 09:11
import django.db.models.deletion
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('contracts', '0008_companyteam_restrict_to_assigned_interventions'),
('interventions', '0018_alter_contractpausereasonassignment_pause_reason_and_more'),
]
operations = [
migrations.CreateModel(
name='DirectContractRouting',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('thematic', models.CharField(choices=[('structures', 'Structures'), ('trafficlights', 'Traffic Lights'), ('clean', 'Clean'), ('its', 'ITS'), ('nature', 'Nature'), ('roads', 'Roads'), ('publiclighting', 'Public Lighting')], max_length=50, verbose_name='Thématique')),
('asset_code', models.CharField(help_text="Le code de l'ouvrage d'art ou de l'équipement concerné.", max_length=100, verbose_name="Code de l'asset (ex: OA054)")),
('contract', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contracts.contract', verbose_name='Contrat à forcer')),
('symptom', models.ForeignKey(blank=True, help_text="Si renseigné, cette règle s'applique uniquement à ce symptôme. Sinon, elle s'applique par défaut.", null=True, on_delete=django.db.models.deletion.CASCADE, to='interventions.symptom', verbose_name='Symptôme spécifique')),
],
options={
'verbose_name': 'Routage direct de contrat',
'verbose_name_plural': 'Routages directs de contrats',
'unique_together': {('thematic', 'asset_code', 'symptom')},
},
),
]