From 1b9115ef876e1c4f1e83d973d84c3f154c857167 Mon Sep 17 00:00:00 2001
From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr>
Date: Mon, 3 Jul 2023 11:16:13 +0200
Subject: [PATCH] Model, SQL: Some minor change for bug fix in SQL export/load.

---
 src/Model/BoundaryCondition/BoundaryCondition.py     | 4 ++--
 src/Model/Geometry/ProfileXYZ.py                     | 2 ++
 src/Model/LateralContribution/LateralContribution.py | 4 ++--
 3 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/Model/BoundaryCondition/BoundaryCondition.py b/src/Model/BoundaryCondition/BoundaryCondition.py
index e88a4f8f..79bcb775 100644
--- a/src/Model/BoundaryCondition/BoundaryCondition.py
+++ b/src/Model/BoundaryCondition/BoundaryCondition.py
@@ -16,7 +16,7 @@ class BoundaryCondition(SQLSubModel):
         self._status = status
 
         if id == -1:
-            self.id = type(self)._id_cnt
+            self.id = BoundaryCondition._id_cnt
         else:
             self.id = id
 
@@ -27,7 +27,7 @@ class BoundaryCondition(SQLSubModel):
         self._header = []
         self._types = [float, float]
 
-        type(self)._id_cnt = max(type(self)._id_cnt + 1, self.id)
+        BoundaryCondition._id_cnt = max(BoundaryCondition._id_cnt + 1, self.id)
 
     @classmethod
     def _sql_create(cls, execute):
diff --git a/src/Model/Geometry/ProfileXYZ.py b/src/Model/Geometry/ProfileXYZ.py
index b583fa8f..9894cfef 100644
--- a/src/Model/Geometry/ProfileXYZ.py
+++ b/src/Model/Geometry/ProfileXYZ.py
@@ -122,6 +122,8 @@ class ProfileXYZ(Profile, SQLSubModel):
             data = {}
         data["profile"] = self.id
 
+        execute(f"DELETE FROM geometry_pointXYZ WHERE profile = {self.id}")
+
         ind = 0
         for point in self._points:
             data["ind"] = ind
diff --git a/src/Model/LateralContribution/LateralContribution.py b/src/Model/LateralContribution/LateralContribution.py
index 22d4ca2f..e5427d05 100644
--- a/src/Model/LateralContribution/LateralContribution.py
+++ b/src/Model/LateralContribution/LateralContribution.py
@@ -15,7 +15,7 @@ class LateralContribution(SQLSubModel):
         self._status = status
 
         if id == -1:
-            self.id = type(self)._id_cnt
+            self.id = LateralContribution._id_cnt
         else:
             self.id = id
 
@@ -29,7 +29,7 @@ class LateralContribution(SQLSubModel):
         self._header = []
         self._types = [float, float]
 
-        type(self)._id_cnt = max(type(self)._id_cnt + 1, self.id)
+        LateralContribution._id_cnt = max(LateralContribution._id_cnt + 1, self.id)
 
     @classmethod
     def _sql_create(cls, execute):
-- 
GitLab