From 46f1d0d3843a55e16246317185e06456e3cb4292 Mon Sep 17 00:00:00 2001 From: kdeterme Date: Wed, 19 Aug 2026 10:35:55 +0200 Subject: [PATCH] feat: add reprogrammation intervention type restricted to trafficlights thematic and update forms accordingly --- .../locale/en/LC_MESSAGES/django.mo | Bin 113733 -> 113779 bytes .../locale/en/LC_MESSAGES/django.po | 4 + .../locale/fr/LC_MESSAGES/django.mo | Bin 128869 -> 128917 bytes .../locale/fr/LC_MESSAGES/django.po | 4 + .../locale/nl/LC_MESSAGES/django.mo | Bin 118853 -> 118902 bytes .../locale/nl/LC_MESSAGES/django.po | 4 + .../0004_alter_intervention_type.py | 18 +++ loko/interventions/models.py | 18 +++ loko/interventions/tests/test_general.py | 109 ++++++++++++++++++ loko/interventions/views/detail.py | 4 +- loko/interventions/views/forms.py | 10 +- loko/interventions/views/helpers.py | 5 +- 12 files changed, 171 insertions(+), 5 deletions(-) create mode 100644 loko/interventions/migrations/0004_alter_intervention_type.py diff --git a/loko/interventions/locale/en/LC_MESSAGES/django.mo b/loko/interventions/locale/en/LC_MESSAGES/django.mo index b864e08ff5ef29bd06feed4e99a0e93d129bec71..0ca6d191c7aa68089e30b24828825e9a77034bb9 100644 GIT binary patch delta 27358 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 diff --git a/loko/interventions/locale/en/LC_MESSAGES/django.po b/loko/interventions/locale/en/LC_MESSAGES/django.po index c21064d..6c11a24 100644 --- a/loko/interventions/locale/en/LC_MESSAGES/django.po +++ b/loko/interventions/locale/en/LC_MESSAGES/django.po @@ -149,6 +149,10 @@ msgstr "Construction" msgid "Ramassage" msgstr "Collection" +#: interventions/models.py:105 +msgid "Reprogrammation" +msgstr "Reprogramming" + #: interventions/models.py:108 msgid "Avarie" msgstr "Damage" diff --git a/loko/interventions/locale/fr/LC_MESSAGES/django.mo b/loko/interventions/locale/fr/LC_MESSAGES/django.mo index 2edbbd154e0a382f81efcaad4ed69b722f887732..beb2ff2a89ca7b905e2d92823bba7517c10773b8 100644 GIT binary patch delta 28160 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 delta 28124 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 s>Bw`#dHn4VNKYHkYk!}mp38~<4@U%|qW}N^ delta 27317 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 AKL7v# diff --git a/loko/interventions/locale/nl/LC_MESSAGES/django.po b/loko/interventions/locale/nl/LC_MESSAGES/django.po index 9888f8c..c341457 100644 --- a/loko/interventions/locale/nl/LC_MESSAGES/django.po +++ b/loko/interventions/locale/nl/LC_MESSAGES/django.po @@ -149,6 +149,10 @@ msgstr "Bouw" msgid "Ramassage" msgstr "Ophaling" +#: interventions/models.py:105 +msgid "Reprogrammation" +msgstr "Herprogrammering" + #: interventions/models.py:108 msgid "Avarie" msgstr "Schade" diff --git a/loko/interventions/migrations/0004_alter_intervention_type.py b/loko/interventions/migrations/0004_alter_intervention_type.py new file mode 100644 index 0000000..aaa6220 --- /dev/null +++ b/loko/interventions/migrations/0004_alter_intervention_type.py @@ -0,0 +1,18 @@ +# Generated by Django 6.0.7 on 2026-08-19 08:31 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('interventions', '0003_operationtemplate_team'), + ] + + operations = [ + migrations.AlterField( + model_name='intervention', + name='type', + field=models.CharField(blank=True, choices=[('fixing', 'Dépannage'), ('repair', 'Réparation'), ('repair_post_preventive', 'Réparation post préventif'), ('replace', 'Remplacement'), ('care', 'Entretien'), ('control', 'Contrôle'), ('inspection', 'Inspection'), ('build', 'Construction'), ('collection', 'Ramassage'), ('reprogramming', 'Reprogrammation')], null=True), + ), + ] diff --git a/loko/interventions/models.py b/loko/interventions/models.py index 13d6113..7f1ffa1 100644 --- a/loko/interventions/models.py +++ b/loko/interventions/models.py @@ -102,8 +102,26 @@ TYPE_CHOICES = [ ('inspection', _('Inspection')), ('build', _('Construction')), ('collection', _('Ramassage')), + ('reprogramming', _('Reprogrammation')), ] + +def get_type_choices(thematic=None): + """ + Renvoie la liste des choix de type d'intervention selon la thématique. + Le type 'reprogramming' (Reprogrammation) n'est disponible que pour la thématique 'trafficlights'. + """ + thematic_code = None + if thematic: + if isinstance(thematic, str): + thematic_code = thematic + elif hasattr(thematic, 'code'): + thematic_code = thematic.code + + if thematic_code == 'trafficlights': + return list(TYPE_CHOICES) + return [c for c in TYPE_CHOICES if c[0] != 'reprogramming'] + ORIGIN_TYPE_CHOICES = [ ('damage', _('Avarie')), ('defect', _('Défaut/Panne')), diff --git a/loko/interventions/tests/test_general.py b/loko/interventions/tests/test_general.py index f4acc52..ee32de2 100644 --- a/loko/interventions/tests/test_general.py +++ b/loko/interventions/tests/test_general.py @@ -28,6 +28,7 @@ from interventions.models import ( OperationStatus, STATUS_ORDERS, InterventionDocument, + get_type_choices, ) from django.db.models import Q from django.contrib.contenttypes.models import ContentType @@ -1665,6 +1666,114 @@ class InterventionGeojsonExternalFilterTests(TestCase): self.assertIn(self.itv_external.id, ids_ext) +class TrafficlightsReprogrammingTypeTests(TestCase): + def setUp(self): + User = get_user_model() + self.user = User.objects.create_user(username='admin_tl', password='pwd') + self.role_admin = Role.objects.create(name='admin') + self.user_config = UserConfig.objects.create(user=self.user, is_intern=True) + self.user_config.roles.add(self.role_admin) + + self.tl_thematic = Thematic.objects.create(code='trafficlights', name_fr='Feux tricolores', name_nl='Verkeerslichten') + self.struct_thematic = Thematic.objects.create(code='structures', name_fr='Ouvrages d\'art', name_nl='Kunstwerken') + + UserThematics.objects.create(user_config=self.user_config, thematic=self.tl_thematic, can_edit_interventions=True) + UserThematics.objects.create(user_config=self.user_config, thematic=self.struct_thematic, can_edit_interventions=True) + + self.itv_tl = Intervention.objects.create( + code='ITV-TL-001', + title='Intervention Feux', + status='in_preparation', + thematic=self.tl_thematic, + type='fixing', + created_by=self.user + ) + self.itv_struct = Intervention.objects.create( + code='ITV-ST-001', + title='Intervention Ouvrage', + status='in_preparation', + thematic=self.struct_thematic, + type='fixing', + created_by=self.user + ) + + def test_get_type_choices(self): + tl_choices = [c[0] for c in get_type_choices(self.tl_thematic)] + self.assertIn('reprogramming', tl_choices) + self.assertIn('fixing', tl_choices) + + tl_str_choices = [c[0] for c in get_type_choices('trafficlights')] + self.assertIn('reprogramming', tl_str_choices) + + struct_choices = [c[0] for c in get_type_choices(self.struct_thematic)] + self.assertNotIn('reprogramming', struct_choices) + self.assertIn('fixing', struct_choices) + + struct_str_choices = [c[0] for c in get_type_choices('structures')] + self.assertNotIn('reprogramming', struct_str_choices) + + none_choices = [c[0] for c in get_type_choices(None)] + self.assertNotIn('reprogramming', none_choices) + + def test_intervention_form_choices(self): + from interventions.views.forms import InterventionForm + form_tl = InterventionForm(thematic=self.tl_thematic, user=self.user) + tl_choices = [c[0] for c in form_tl.fields['type'].choices] + self.assertIn('reprogramming', tl_choices) + + form_struct = InterventionForm(thematic=self.struct_thematic, user=self.user) + struct_choices = [c[0] for c in form_struct.fields['type'].choices] + self.assertNotIn('reprogramming', struct_choices) + + def test_preventive_intervention_form_choices(self): + from interventions.views.forms import PreventiveInterventionForm + form_tl = PreventiveInterventionForm(thematic=self.tl_thematic, user=self.user) + tl_choices = [c[0] for c in form_tl.fields['type'].choices] + self.assertIn('reprogramming', tl_choices) + + form_struct = PreventiveInterventionForm(thematic=self.struct_thematic, user=self.user) + struct_choices = [c[0] for c in form_struct.fields['type'].choices] + self.assertNotIn('reprogramming', struct_choices) + + def test_intervention_detail_context(self): + self.client.force_login(self.user) + + resp_tl = self.client.get(reverse('interventions:intervention_detail', kwargs={'intervention_id': self.itv_tl.id})) + self.assertEqual(resp_tl.status_code, 200) + tl_type_choices = [c[0] for c in resp_tl.context['type_choices']] + self.assertIn('reprogramming', tl_type_choices) + + resp_struct = self.client.get(reverse('interventions:intervention_detail', kwargs={'intervention_id': self.itv_struct.id})) + self.assertEqual(resp_struct.status_code, 200) + struct_type_choices = [c[0] for c in resp_struct.context['type_choices']] + self.assertNotIn('reprogramming', struct_type_choices) + + def test_update_intervention_type_reprogramming(self): + self.client.force_login(self.user) + + # Updating trafficlights intervention to reprogramming -> SUCCESS + update_url_tl = reverse('interventions:update_intervention', kwargs={'intervention_id': self.itv_tl.id}) + resp = self.client.post( + update_url_tl, + data=json.dumps({'type': 'reprogramming'}), + content_type='application/json' + ) + self.assertEqual(resp.status_code, 200) + self.itv_tl.refresh_from_db() + self.assertEqual(self.itv_tl.type, 'reprogramming') + + # Updating structures intervention to reprogramming -> REJECTED + update_url_struct = reverse('interventions:update_intervention', kwargs={'intervention_id': self.itv_struct.id}) + resp = self.client.post( + update_url_struct, + data=json.dumps({'type': 'reprogramming'}), + content_type='application/json' + ) + self.itv_struct.refresh_from_db() + self.assertEqual(self.itv_struct.type, 'fixing') + + + diff --git a/loko/interventions/views/detail.py b/loko/interventions/views/detail.py index 60cf679..83ee647 100644 --- a/loko/interventions/views/detail.py +++ b/loko/interventions/views/detail.py @@ -61,7 +61,7 @@ from interventions.models import (InterventionSubscription, Intervention, Interv Operation, OperationTemplate, OperationTemplateItem, OperationStatus, OperationStatusSet, MeasurementDefinition, GuidedOperationTemplate, GuidedOperationData, GuidedOperationMedia, InterventionPostPeriodQuantity, InterventionEmailLog, InterventionAssignment) -from interventions.models import STATUS_CHOICES, STATUS_ORDERS, MAINTAIN_CHOICES, TYPE_CHOICES, ORIGIN_TYPE_CHOICES, PAUSE_REASON_CHOICES +from interventions.models import STATUS_CHOICES, STATUS_ORDERS, MAINTAIN_CHOICES, TYPE_CHOICES, ORIGIN_TYPE_CHOICES, PAUSE_REASON_CHOICES, get_type_choices from interventions.views.forms import (InterventionForm, InterventionNoteForm, InterventionDocumentForm, InterventionOccupationForm, PreventiveInterventionForm, AssetsLinkForm, LinkExistingInterventionsForm) @@ -637,7 +637,7 @@ def intervention_detail(request, intervention_id): 'providers': providers, 'contracts': contracts, 'maintain_choices': MAINTAIN_CHOICES, - 'type_choices': TYPE_CHOICES, + 'type_choices': get_type_choices(intervention.thematic), 'origin_type_choices': ORIGIN_TYPE_CHOICES, 'priority_choices': Intervention._meta.get_field('priority').choices, 'symptoms': Symptom.objects.filter(is_active=True, thematic=intervention.thematic).order_by('name_fr'), diff --git a/loko/interventions/views/forms.py b/loko/interventions/views/forms.py index 0a08852..8692c39 100644 --- a/loko/interventions/views/forms.py +++ b/loko/interventions/views/forms.py @@ -8,7 +8,7 @@ import bleach import json import re -from interventions.models import Intervention, InterventionNote, InterventionDocument, Symptom, OperationTemplate, InterventionOccupation, SourceCategory, OperationStatusSet, MeasurementDefinition, TYPE_CHOICES +from interventions.models import Intervention, InterventionNote, InterventionDocument, Symptom, OperationTemplate, InterventionOccupation, SourceCategory, OperationStatusSet, MeasurementDefinition, TYPE_CHOICES, get_type_choices from assets.models import AssetCategory from common.models import UserConfig, UserThematics from contracts.models import Contract, ContractOrder, CompanyMember @@ -93,6 +93,11 @@ class InterventionForm(forms.ModelForm): (val, lbl) for val, lbl in self.fields['status'].choices if val in allowed_statuses ] + # Filtrer les types selon la thématique (ex: reprogrammation uniquement pour trafficlights) + thematic_obj = thematic or (self.instance.thematic if self.instance and getattr(self.instance, 'pk', None) else None) + if 'type' in self.fields: + self.fields['type'].choices = get_type_choices(thematic_obj) + type_value = self.initial.get('type') or self.data.get('type') maintain_type_value = self.initial.get('maintain_type') or self.data.get('maintain_type') if type_value == 'inspection': @@ -515,6 +520,9 @@ class PreventiveInterventionForm(forms.Form): def __init__(self, *args, user=None, thematic=None, **kwargs): super().__init__(*args, **kwargs) + if 'type' in self.fields: + self.fields['type'].choices = get_type_choices(thematic) + type_value = self.initial.get('type') or (self.data.get('type') if self.data else None) or 'care' if type_value == 'inspection': self.fields['status'].choices = [ diff --git a/loko/interventions/views/helpers.py b/loko/interventions/views/helpers.py index 596ea7d..0ac8ed2 100644 --- a/loko/interventions/views/helpers.py +++ b/loko/interventions/views/helpers.py @@ -62,7 +62,7 @@ from interventions.models import (InterventionSubscription, Intervention, Interv GuidedOperationTemplate, GuidedOperationData, GuidedOperationMedia, InterventionPostPeriodQuantity, InterventionEmailLog, InterventionAssignment, DirectContractRouting) -from interventions.models import STATUS_CHOICES, STATUS_ORDERS, MAINTAIN_CHOICES, TYPE_CHOICES, ORIGIN_TYPE_CHOICES, PAUSE_REASON_CHOICES +from interventions.models import STATUS_CHOICES, STATUS_ORDERS, MAINTAIN_CHOICES, TYPE_CHOICES, ORIGIN_TYPE_CHOICES, PAUSE_REASON_CHOICES, get_type_choices from interventions.views.forms import (InterventionForm, InterventionNoteForm, InterventionDocumentForm, InterventionOccupationForm, PreventiveInterventionForm, AssetsLinkForm, LinkExistingInterventionsForm) @@ -2505,7 +2505,8 @@ def _update_intervention_field(intervention, field, new_value, user_config=None) return False, _('Maintain Type not found') elif field == "type": - if new_value in dict(TYPE_CHOICES).keys(): + allowed_types = dict(get_type_choices(intervention.thematic)).keys() + if new_value in allowed_types: intervention.type = new_value return True, None return False, _('Type not found')