diff --git a/app_new/core/services/meter_service.py b/app_new/core/services/meter_service.py index 04a4d7e..7b0872d 100644 --- a/app_new/core/services/meter_service.py +++ b/app_new/core/services/meter_service.py @@ -98,6 +98,10 @@ def record_meter_reading(*, meter, value, user_id, reading_date=None, notes=None is_reset=False, reset_reason=None, photo_filename=None, photo_path=None, commit=True): """Enregistre une vraie mesure et synchronise l'index courant.""" + if meter.status == "replaced" or not meter.is_active: + raise MeterDomainError( + "Ce compteur est inactif ou remplacé. Les nouveaux relevés doivent être saisis sur le compteur actif." + ) try: value = float(value) except (TypeError, ValueError): diff --git a/app_new/meters/templates/meters/detail.html b/app_new/meters/templates/meters/detail.html index b8c65cb..0bbd4e5 100644 --- a/app_new/meters/templates/meters/detail.html +++ b/app_new/meters/templates/meters/detail.html @@ -125,6 +125,19 @@ + {% if meter.status == 'replaced' or not meter.is_active %} +
Ce compteur n'accepte plus de nouveaux relevés. Son historique reste consultable.
+ {% if meter.replacement %} +Les nouveaux relevés doivent être saisis sur le compteur remplaçant : + {{ meter.replacement.name }}. +
+ {% else %} +Les nouveaux relevés doivent être saisis sur le compteur actif.
+ {% endif %} +