Commit graph

65 commits

Author SHA1 Message Date
51e6680763 fix(interventions,contracts): enforce can_view_intervention on detail views and allow contract posts access for global viewers 2026-10-07 14:15:53 +02:00
499ffe824e refactor: redesign calendar notes and documents view with chronological sequencing blocks 2026-10-07 10:45:37 +02:00
2ef730508f feat(calendar): intégrer les notes et documents dans la modale d'intervention 2026-10-07 10:26:08 +02:00
3920648000 fix(interventions): assign controller only when intervention status changes to finished 2026-10-01 09:53:06 +02:00
8df84704dc fix(interventions): resolve UnboundLocalError contracts_qs for external managers 2026-10-01 09:29:54 +02:00
927c049d02 git add loko/contracts/ loko/interventions/
git commit -m "feat(interventions): configure team maintain types for control auto-assignment and remove structures limitation"
2026-09-30 19:20:59 +02:00
3d9e7c3202 feat(interventions): add combined filter for manager, controller and inspector with shortnames and teams 2026-09-30 18:49:19 +02:00
dc6638c4a5 feat: add daily intervention visibility restrictions and mobile filters for technicians with tests 2026-09-30 09:47:45 +02:00
8b13236a26 fix(interventions,mobile): allow multi-thematic visibility for contractor teams and prevent persistent search query 2026-09-28 21:01:59 +02:00
de73de7328 feat(interventions,stock): sync preparation orders and material status on intervention cancellation
- Fix preparation status calculation by ignoring cancelled orders, preventing false green 'stock ready' icon
- Update item prepared state when preparation order is marked as processed
- Automatically cancel unprepared preparation orders when intervention is canceled
- Send alert notification to stock managers when canceled intervention has already prepared orders
- Add alert banner with direct restock/cancellation action on preparation order detail views
- Prevent editing material switches or creating orders for canceled interventions
- Add and compile translations for FR, EN and NL
- Add comprehensive automated unit tests
2026-09-28 20:01:39 +02:00
37c1016b57 feat(interventions): distinguer les interventions 'à traiter' déjà assignées en rose (#d81b60)
- Ajout de la couleur 'to_be_processed_assigned' (#d81b60) dans STATUS_COLORS (Python & JS).
- Ajout de la propriété is_assigned sur le modèle Intervention.
- Prise en compte de la couleur dans les vues calendrier (membres, timeline, backlog, équipes) et sur la carte MapLibre du modal calendrier.
- Enrichissement des popups carte et des badges du backlog avec l'équipe/membre assigné.
- Ajout de tests unitaires validant la couleur et la sérialisation is_assigned.
2026-09-28 14:45:17 +02:00
205a05cb5b feat(interventions): aligner les permissions des notes par statut et historiser le mobile
- Autoriser les modifications/suppressions de notes jusqu'au statut 'traité' pour les externes
- Autoriser les modifications/suppressions de notes jusqu'au statut 'validé' pour les internes
- Supprimer la contrainte horaire de 1h sur la modification des notes
- Brancher l'historisation de la chronologie sur la création et modification de notes mobile
- Tracer l'upload des photos de formulaires mobiles dans la chronologie
- Ajouter les tests unitaires et d'intégration correspondants
2026-09-25 23:20:09 +02:00
7911369740 feat: restrict intervention timeline history and filter controls to internal users 2026-09-25 22:53:32 +02:00
2df4621e5b feat(interventions): afficher les statuts de la chronologie sous forme de cercles numérotés
- Reprend le code visuel du stepper supérieur pour les transitions de statut dans l'historique
- Affiche une boule colorée avec le numéro canonique (1 à 15) et le libellé sous chaque statut
- Aligne la flèche de transition au centre des cercles
- Ajuste les contrastes de texte (noir/blanc) selon la luminosité du statut
2026-09-25 22:35:29 +02:00
fd794737a8 style(interventions): standardize timeline status badge widths and use distinct purple for status event
- Assign fixed 115px width to all status badges for vertical alignment of transitions
- Unify left event badge width to 85px for a clean tabular layout
- Use purple (#6f42c1) for the 'Statut' badge and node icon to avoid visual collision with status colors
- Update timeline unit tests accordingly
2026-09-25 22:24:05 +02:00
f510a086bd feat(interventions): trace notes, documents and element links in full timeline
- Add 'note', 'document', and 'link' event types to InterventionTimeLine
- Record timeline events for note additions/edits/deletions (standalone and batch)
- Record document uploads and deletions (desktop and mobile APIs)
- Record asset linking/unlinking with friendly names and linked interventions
- Display detailed items exclusively in the toggleable "Historique complet" view
- Maintain shortname display for all event authors
- Update and compile FR, EN and NL translation catalogs
- Add comprehensive test coverage for all new timeline event records
2026-09-25 22:05:22 +02:00
79af86fb7f feat(interventions): amélioration de la chronologie et traçabilité complète de l'historique
- Ajout des types d'événements 'assignment' et 'modification' sur InterventionTimeLine
- Enregistrement des attributs modifiés (field_changes JSON) et des descriptions d'événements
- Création du service InterventionChangeTracker pour historiser les changements de champs et d'assignations
- Refonte visuelle de card_chronologie avec vue par défaut (statuts + assignations) et bascule vers l'historique complet
- Préservation des shortnames pour tous les auteurs des modifications
- Ajout des traductions i18n et de tests unitaires dédiés
2026-09-25 21:29:42 +02:00
ce924d7af4 fix(interventions): import Contract and ContractPost in admin to fix OperationTemplate change view 2026-09-25 14:40:38 +02:00
74c1bf2447 feat: add intervention control team assignment, contract auto-assignment, and controller shortcuts dashboard widget 2026-09-19 14:25:52 +02:00
368a167b9c feat: add support for dynamic intervention subtype filtering and validation 2026-09-17 16:27:33 +02:00
396d26414c refactor: support multiple intervention types in subtypes and update non-compliance notifications for company members 2026-09-17 16:05:36 +02:00
8fc2798c52 feat: add approval exception for urgent contract interventions and update status transition permissions 2026-09-17 14:35:53 +02:00
Karl Determe
836b5c8edb feat: add custom notification recipient fields and helpers to Symptom model 2026-09-15 16:10:31 +02:00
660c40f0f7 feat: improve intervention visibility rules to correctly handle active and replanned interventions 2026-09-14 11:33:24 +02:00
d45feb9f6e feat: implement team daily members AJAX endpoint and add support for managing team composition and member history in calendar views 2026-09-11 13:31:34 +02:00
261ce2dd14 chore: update localization files and templates for stock and intervention modules 2026-09-11 11:37:51 +02:00
26c07a769f feat: add usage tracking for material items in preparation orders and include status in reporting 2026-09-11 10:48:36 +02:00
5856acf5ed fix: restrict future team member display to explicitly scheduled join dates in calendar view 2026-09-09 14:14:35 +02:00
d5f4d8a765 fix: include past planned interventions in calendar view by updating schedule visibility logic 2026-09-09 11:16:35 +02:00
23936a5767 refactor: restrict is_blocked_due_to_contract flag to specific intervention statuses and sync via model save method 2026-09-04 11:15:15 +02:00
3a241e3d03 refactor: restrict contract blocked warning to specific intervention statuses and add test coverage 2026-09-04 11:06:31 +02:00
Karl Determe
74679289a4 feat: add calendar view for interventions with user preference persistence 2026-09-03 17:05:20 +02:00
9429402292 fix: reset is_blocked_due_to_contract flag when intervention is assigned to an unblocked contract 2026-09-02 09:56:07 +02:00
4824415290 feat: introduce contract blocking mechanism to suspend interventions and notifications for external users 2026-09-02 09:44:34 +02:00
2a6066381e feat: integrate global document viewer modal and update note UI for interventions 2026-08-31 14:29:45 +02:00
fd2c696780 refactor: consolidate notes and documents into a shared mobile interface component 2026-08-31 13:56:55 +02:00
022217218f feat: introduce 15-minute tolerance for intervention document sequencing and photo validation logic 2026-08-31 13:39:52 +02:00
14ab4d15df refactor: update document sequencing logic and refresh internationalization message catalogs 2026-08-31 13:32:10 +02:00
5f8a771277 feat: introduce document sequencing service to categorize intervention files into temporal blocks and add unit tests 2026-08-31 13:12:42 +02:00
5c042531e5 fix: use latest finished status timeline date as effective end date for intervention filtering and summary views 2026-08-31 11:17:42 +02:00
Karl Determe
6fe9908a11 feat: introduce modular intervention workflow view components and logic for status management 2026-08-25 15:03:20 +02:00
7d3362d770 fix: synchronize intervention status history by including all status events and ensuring the final state matches current intervention status. 2026-08-24 18:46:27 +02:00
04a118d04d feat: add status history and milestone visualization with interactive tooltips to the intervention timeline 2026-08-24 18:32:40 +02:00
cfdcc41929 feat: enhance pending analysis report with thematic cross-tabulation and TCD-ready data structures 2026-08-24 16:17:11 +02:00
f72fe1bfd7 feat: add management command and service for analyzing and exporting pending interventions and observations 2026-08-24 15:15:17 +02:00
22da9400f3 feat: prevent redundant notification emails when providers update intervention status 2026-08-24 10:58:04 +02:00
Karl Determe
76158a3be0 feat: implement calendar functionality and add localization support for intervention models 2026-08-20 13:36:42 +02:00
Karl Determe
56281b4821 Merge remote-tracking branch 'origin/main' into main with visibility permissions fix 2026-08-20 12:08:29 +02:00
Karl Determe
a42c46f336 feat: implement time-restricted intervention visibility and occupation management permissions for teams 2026-08-20 12:05:51 +02:00
0d35e71cfc feat: implement dynamic filtering for contracts and contract posts in the intervention admin interface 2026-08-19 16:12:54 +02:00