From 1131846e5f295e2243c6c8b25790074ed259c4c6 Mon Sep 17 00:00:00 2001
From: Juliana <juliana@le-filament.com>
Date: Thu, 21 Apr 2022 17:21:18 +0200
Subject: [PATCH] [FIX]Bug on perimeter date year 9999

---
 models/api_enedis.py | 23 ++++++++++++++++++-----
 1 file changed, 18 insertions(+), 5 deletions(-)

diff --git a/models/api_enedis.py b/models/api_enedis.py
index 93bbde7..ab42aaf 100644
--- a/models/api_enedis.py
+++ b/models/api_enedis.py
@@ -270,10 +270,16 @@ class ApiEnedis(models.AbstractModel):
             if usage_id:
                 usage_id.write(
                     {
-                        "date_start_contract": date.fromisoformat(usage_point["start"]),
-                        "date_end_contract": date.fromisoformat(usage_point["end"]),
+                        "date_start_contract": date.fromisoformat(
+                            usage_point["start"]),
                     }
                 )
+                if usage_point["end"] != "9999-12-31":
+                    usage_id.write(
+                        {
+                            "date_end_contract": date.fromisoformat(usage_point["end"]),
+                        }
+                    )
             else:
                 is_delivery = False
                 is_injection = False
@@ -282,8 +288,15 @@ class ApiEnedis(models.AbstractModel):
                 if usage_point["type"] == "PROD":
                     is_injection = True
                     self.date_start_contract = date.fromisoformat(usage_point["start"])
-                    self.date_end_contract = date.fromisoformat(usage_point["end"])
-
+                    if usage_point["end"] != "9999-12-31":
+                        self.date_end_contract = date.fromisoformat(usage_point["end"])
+                    else:
+                        self.date_end_contract = None
+
+                if usage_point["end"] != "9999-12-31":
+                    date_end = date.fromisoformat(usage_point["end"])
+                else:
+                    date_end = None
                 self.env["acc.counter"].create(
                     {
                         "name": usage_point["usage_point_id"],
@@ -291,7 +304,7 @@ class ApiEnedis(models.AbstractModel):
                         "is_injection": is_injection,
                         "acc_operation_id": self.id,
                         "date_start_contract": date.fromisoformat(usage_point["start"]),
-                        "date_end_contract": date.fromisoformat(usage_point["end"]),
+                        "date_end_contract": date_end,
                     }
                 )
 
-- 
GitLab