mirror of
https://gitlab.com/pamhyr/pamhyr2.git
synced 2026-10-30 03:20:41 +01:00
merge master
This commit is contained in:
commit
a52e6b86f4
148 files changed
+5069
-2198
No files matched your search
@@ -50,8 +50,8 @@ class HydraulicStructure(SQLSubModel):
|
||||
self.id = id
|
||||
|
||||
self._name = name
|
||||
self._input_kp = None
|
||||
self._output_kp = None
|
||||
self._input_rk = None
|
||||
self._output_rk = None
|
||||
self._input_reach = None
|
||||
self._output_reach = None
|
||||
self._enabled = True
|
||||
@@ -70,8 +70,8 @@ class HydraulicStructure(SQLSubModel):
|
||||
id INTEGER NOT NULL PRIMARY KEY,
|
||||
name TEXT NOT NULL,
|
||||
enabled BOOLEAN NOT NULL,
|
||||
input_kp REAL NOT NULL,
|
||||
output_kp REAL NOT NULL,
|
||||
input_rk REAL NOT NULL,
|
||||
output_rk REAL NOT NULL,
|
||||
input_reach INTEGER,
|
||||
output_reach INTEGER,
|
||||
FOREIGN KEY(input_reach) REFERENCES river_reach(id),
|
||||
@@ -85,9 +85,25 @@ class HydraulicStructure(SQLSubModel):
|
||||
def _db_update(cls, execute, version):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == minor == "0":
|
||||
if int(release) < 6:
|
||||
rl = int(release)
|
||||
|
||||
if rl < 6:
|
||||
cls._db_create(execute)
|
||||
|
||||
if rl < 11:
|
||||
execute(
|
||||
"""
|
||||
ALTER TABLE hydraulic_structures
|
||||
RENAME COLUMN input_kp TO input_rk
|
||||
"""
|
||||
)
|
||||
execute(
|
||||
"""
|
||||
ALTER TABLE hydraulic_structures
|
||||
RENAME COLUMN output_kp TO output_rk
|
||||
"""
|
||||
)
|
||||
|
||||
return True
|
||||
|
||||
@classmethod
|
||||
@@ -96,7 +112,7 @@ class HydraulicStructure(SQLSubModel):
|
||||
|
||||
table = execute(
|
||||
"SELECT id, name, enabled, " +
|
||||
"input_kp, output_kp, " +
|
||||
"input_rk, output_rk, " +
|
||||
"input_reach, output_reach " +
|
||||
"FROM hydraulic_structures "
|
||||
)
|
||||
@@ -107,8 +123,8 @@ class HydraulicStructure(SQLSubModel):
|
||||
hs_id = next(it)
|
||||
name = next(it)
|
||||
enabled = (next(it) == 1)
|
||||
input_kp = next(it)
|
||||
output_kp = next(it)
|
||||
input_rk = next(it)
|
||||
output_rk = next(it)
|
||||
input_reach_id = next(it)
|
||||
output_reach_id = next(it)
|
||||
|
||||
@@ -119,8 +135,8 @@ class HydraulicStructure(SQLSubModel):
|
||||
)
|
||||
|
||||
hs.enabled = enabled
|
||||
hs.input_kp = input_kp if input_kp != -1 else None
|
||||
hs.output_kp = output_kp if output_kp != -1 else None
|
||||
hs.input_rk = input_rk if input_rk != -1 else None
|
||||
hs.output_rk = output_rk if output_rk != -1 else None
|
||||
|
||||
hs.input_reach, hs.output_reach = reduce(
|
||||
lambda acc, n: (
|
||||
@@ -150,24 +166,24 @@ class HydraulicStructure(SQLSubModel):
|
||||
if self._output_reach is not None:
|
||||
output_reach_id = self._output_reach.id
|
||||
|
||||
input_kp = -1
|
||||
if self.input_kp is not None:
|
||||
input_kp = self.input_kp
|
||||
input_rk = -1
|
||||
if self.input_rk is not None:
|
||||
input_rk = self.input_rk
|
||||
|
||||
output_kp = -1
|
||||
if self.output_kp is not None:
|
||||
output_kp = self.output_kp
|
||||
output_rk = -1
|
||||
if self.output_rk is not None:
|
||||
output_rk = self.output_rk
|
||||
|
||||
sql = (
|
||||
"INSERT INTO " +
|
||||
"hydraulic_structures(" +
|
||||
" id, name, enabled, input_kp, output_kp, " +
|
||||
" id, name, enabled, input_rk, output_rk, " +
|
||||
" input_reach, output_reach" +
|
||||
") " +
|
||||
"VALUES (" +
|
||||
f"{self.id}, '{self._db_format(self._name)}', " +
|
||||
f"{self._db_format(self.enabled)}, " +
|
||||
f"{input_kp}, {output_kp}, " +
|
||||
f"{input_rk}, {output_rk}, " +
|
||||
f"{input_reach_id}, {output_reach_id}" +
|
||||
")"
|
||||
)
|
||||
@@ -200,24 +216,24 @@ class HydraulicStructure(SQLSubModel):
|
||||
self._status.modified()
|
||||
|
||||
@property
|
||||
def input_kp(self):
|
||||
return self._input_kp
|
||||
def input_rk(self):
|
||||
return self._input_rk
|
||||
|
||||
@input_kp.setter
|
||||
def input_kp(self, input_kp):
|
||||
if input_kp is not None:
|
||||
input_kp = float(input_kp)
|
||||
@input_rk.setter
|
||||
def input_rk(self, input_rk):
|
||||
if input_rk is not None:
|
||||
input_rk = float(input_rk)
|
||||
|
||||
self._input_kp = input_kp
|
||||
self._input_rk = input_rk
|
||||
self._status.modified()
|
||||
|
||||
@property
|
||||
def output_kp(self):
|
||||
return self._output_kp
|
||||
def output_rk(self):
|
||||
return self._output_rk
|
||||
|
||||
@output_kp.setter
|
||||
def output_kp(self, output_kp):
|
||||
self._output_kp = output_kp
|
||||
@output_rk.setter
|
||||
def output_rk(self, output_rk):
|
||||
self._output_rk = output_rk
|
||||
self._status.modified()
|
||||
|
||||
@property
|
||||
|
||||
Reference in new issue
Block a user