Skip to content
Extraits de code Groupes Projets
Valider de001a03 rédigé par Rémi - Le Filament's avatar Rémi - Le Filament
Parcourir les fichiers

[FIX] manage errors

parent b1413ad4
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -7,7 +7,7 @@ from dateutil import tz
from dateutil.relativedelta import relativedelta
from odoo import _, fields, models
from odoo.exceptions import UserError
from odoo.exceptions import UserError, ValidationError
_logger = logging.getLogger(__name__)
......@@ -280,7 +280,7 @@ class AccOperation(models.Model):
list_injection = []
list_soutirage = []
for usage_point in usage_points:
for usage_point in sorted(usage_points, key=lambda p: date.fromisoformat(p["start"])):
usage_point_start = date.fromisoformat(usage_point["start"])
usage_point_end = (
date.fromisoformat(usage_point["end"])
......@@ -303,7 +303,6 @@ class AccOperation(models.Model):
)
counter_id = self.env["acc.counter"].search(
[
("acc_operation_id", "=", self.id),
("name", "=", usage_point["usage_point_id"]),
]
)
......@@ -328,6 +327,7 @@ class AccOperation(models.Model):
"fin différente, mise à jour date de fin<br/>"
)
else:
try:
self.env["acc.counter.period"].create(
{
"acc_counter_id": counter_id.id,
......@@ -340,6 +340,12 @@ class AccOperation(models.Model):
message += (
"période inexistante avec les mêmes dates : création<br/>"
)
except ValidationError as e:
message += (
"<strong>erreur lors de la tentative de création d'une nouvelle période, à vérifier manuellement :</strong><br/>"
+ str(e) + "<br/>"
)
elif len(counter_id) > 1:
message += "Plusieurs PRMs trouvés avec ce numéro - pas de modif<br/>"
else:
......@@ -353,6 +359,7 @@ class AccOperation(models.Model):
or self.date_start_contract > usage_point_start
):
self.date_start_contract = usage_point_start
try:
counter_id = self.env["acc.counter"].create(
{
"name": usage_point["usage_point_id"],
......@@ -368,6 +375,11 @@ class AccOperation(models.Model):
}
)
message += "Fin de la création du PRM<br/>"
except ValidationError as e:
message += (
"<strong>erreur lors de la tentative de création d'un PRM et/ou "
"d'une nouvelle période, à vérifier manuellement :<strong><br/>" + str(e) + "<br/>"
)
if usage_point_prm_type == "injection":
if usage_point["usage_point_id"] not in list_injection:
list_injection.append(usage_point["usage_point_id"])
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter