diff --git a/models/acc_operation.py b/models/acc_operation.py index 6496a27aeaaeebd5da9364a014057bf89058d785..abe04d0a176c70bbcd83d189b31f0689d268641c 100644 --- a/models/acc_operation.py +++ b/models/acc_operation.py @@ -120,7 +120,6 @@ class AccOperation(models.Model): raise ValidationError( _("Pas de données brute pour le mois précedent présente") ) - # todo : ajouter la verification de coherence des données for slot in data: affect = data.get(slot).get("affect") diff --git a/models/acc_priority_group.py b/models/acc_priority_group.py index c793b963e184afb5bed93c5e500e3e79c0e206d9..6b1b99669fcf985c5713b2491b34bb1b578c0ffb 100644 --- a/models/acc_priority_group.py +++ b/models/acc_priority_group.py @@ -169,13 +169,17 @@ class AccPriorityGroup(models.Model): data[slot]["affect"] = {} for counter in self.acc_priority_group_counter_ids.acc_counter_id: - if prod == 0 or priority_counters_conso_sum == 0: + conso_k = data.get(slot).get("conso").get(counter.name) + # si le compteur rentre en cours de periode il figure dans le + # groupe de repartition mais pas dans les données brutes conso_k = None + # dans ce cas on affecte 0 + if prod == 0 or priority_counters_conso_sum == 0 or conso_k is None: part_a_affecter = 0.0 else: - conso_k = data.get(slot).get("conso").get(counter.name) part_a_affecter = min( conso_k, prod * (conso_k / priority_counters_conso_sum) ) + data[slot]["affect"][counter] = part_a_affecter total_affecte += part_a_affecter