mirror of https://gitlab.com/pamhyr/pamhyr2
LC, BC: Fix save for update db 0.1.0.
parent
d2e5eecf22
commit
19d9a29459
|
|
@ -35,14 +35,15 @@ logger = logging.getLogger()
|
|||
class Data(SQLSubModel):
|
||||
_sub_classes = []
|
||||
|
||||
def __init__(self, id: int = -1,
|
||||
def __init__(self, data0, data1,
|
||||
id: int = -1,
|
||||
types=[float, float],
|
||||
status=None):
|
||||
super(Data, self).__init__(id)
|
||||
self._status = status
|
||||
|
||||
self._types = types
|
||||
self._data = []
|
||||
self._data = [data0, data1]
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute, ext=""):
|
||||
|
|
@ -133,11 +134,11 @@ class Data(SQLSubModel):
|
|||
data1 = bc._types[1](next(it))
|
||||
|
||||
nd = cls(
|
||||
data0, data1,
|
||||
id=pid,
|
||||
types=bc._types,
|
||||
status=data['status']
|
||||
)
|
||||
nd._data = [data0, data1]
|
||||
|
||||
new.append(nd)
|
||||
|
||||
|
|
@ -150,12 +151,11 @@ class Data(SQLSubModel):
|
|||
data1 = self._db_format(str(self[1]))
|
||||
bc = data["bc"]
|
||||
|
||||
sql = (
|
||||
execute = (
|
||||
"INSERT INTO " +
|
||||
"boundary_condition_data(pamhyr_id, ind, data0, data1, bc) " +
|
||||
f"VALUES ({pid}, {ind}, '{data0}', {data1}, {bc._pamhyr_id})"
|
||||
)
|
||||
execute(sql)
|
||||
|
||||
def __getitem__(self, key):
|
||||
return self._types[key](self._data[key])
|
||||
|
|
@ -309,6 +309,7 @@ class BoundaryCondition(SQLSubModel):
|
|||
|
||||
ind = 0
|
||||
for d in self._data:
|
||||
print(d)
|
||||
data["ind"] = ind
|
||||
|
||||
d._db_save(execute, data)
|
||||
|
|
@ -343,7 +344,7 @@ class BoundaryCondition(SQLSubModel):
|
|||
@property
|
||||
def name(self):
|
||||
if self._name == "":
|
||||
return f"B{self.id + 1}"
|
||||
return f"B #{self.pamhyr_id}"
|
||||
|
||||
return self._name
|
||||
|
||||
|
|
@ -408,10 +409,10 @@ class BoundaryCondition(SQLSubModel):
|
|||
new_0 = self._types[0](data[0].replace(",", "."))
|
||||
new_1 = self._types[1](data[1].replace(",", "."))
|
||||
|
||||
return (new_0, new_1)
|
||||
return Data(new_0, new_1)
|
||||
|
||||
def add(self, index: int):
|
||||
value = (self._default_0, self._default_1)
|
||||
value = Data(self._default_0, self._default_1)
|
||||
self._data.insert(index, value)
|
||||
self._status.modified()
|
||||
return value
|
||||
|
|
@ -461,9 +462,9 @@ class BoundaryCondition(SQLSubModel):
|
|||
return lst
|
||||
|
||||
def _set_i_c_v(self, index, column, value):
|
||||
v = list(self._data[index])
|
||||
v = self._data[index]
|
||||
v[column] = self._types[column](value)
|
||||
self._data[index] = tuple(v)
|
||||
self._data[index] = v
|
||||
self._status.modified()
|
||||
|
||||
def set_i_0(self, index: int, value):
|
||||
|
|
|
|||
|
|
@ -35,14 +35,16 @@ logger = logging.getLogger()
|
|||
class Data(SQLSubModel):
|
||||
_sub_classes = []
|
||||
|
||||
def __init__(self, id: int = -1,
|
||||
def __init__(self,
|
||||
data0, data1,
|
||||
id: int = -1,
|
||||
types=[float, float],
|
||||
status=None):
|
||||
super(Data, self).__init__(id)
|
||||
self._status = status
|
||||
|
||||
self._types = types
|
||||
self._data = []
|
||||
self._data = [data0, data1]
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute, ext=""):
|
||||
|
|
@ -171,7 +173,7 @@ class LateralContribution(SQLSubModel):
|
|||
|
||||
self._name = name
|
||||
self._type = ""
|
||||
self._edge = None
|
||||
self._reach = None
|
||||
self._begin_rk = None
|
||||
self._end_rk = None
|
||||
self._data = []
|
||||
|
|
@ -333,7 +335,7 @@ class LateralContribution(SQLSubModel):
|
|||
"reach, begin_section, end_section) " +
|
||||
"VALUES (" +
|
||||
f"{self.id}, '{self._db_format(self._name)}', " +
|
||||
f"'{self._db_format(self._type)}', '{tab}', {edge}, " +
|
||||
f"'{self._db_format(self._type)}', '{tab}', {reach}, " +
|
||||
f"{self._begin_rk}, {self._end_rk}" +
|
||||
")"
|
||||
)
|
||||
|
|
@ -380,7 +382,7 @@ class LateralContribution(SQLSubModel):
|
|||
@property
|
||||
def name(self):
|
||||
if self._name == "":
|
||||
return f"L{self.id + 1}"
|
||||
return f"LC #{self.id}"
|
||||
|
||||
return self._name
|
||||
|
||||
|
|
@ -394,19 +396,19 @@ class LateralContribution(SQLSubModel):
|
|||
return self._type
|
||||
|
||||
@property
|
||||
def edge(self):
|
||||
return self._edge
|
||||
def reach(self):
|
||||
return self._reach
|
||||
|
||||
@edge.setter
|
||||
def edge(self, edge):
|
||||
self._edge = edge
|
||||
if edge is not None:
|
||||
self._begin_rk = self._edge.reach.get_rk_min()
|
||||
self._end_rk = self._edge.reach.get_rk_max()
|
||||
@reach.setter
|
||||
def reach(self, reach):
|
||||
self._reach = reach
|
||||
if reach is not None:
|
||||
self._begin_rk = self._reach.reach.get_rk_min()
|
||||
self._end_rk = self._reach.reach.get_rk_max()
|
||||
self._status.modified()
|
||||
|
||||
def has_edge(self):
|
||||
return self._edge is not None
|
||||
def has_reach(self):
|
||||
return self._reach is not None
|
||||
|
||||
@property
|
||||
def begin_rk(self):
|
||||
|
|
@ -414,11 +416,11 @@ class LateralContribution(SQLSubModel):
|
|||
|
||||
@begin_rk.setter
|
||||
def begin_rk(self, begin_rk):
|
||||
if self._edge is None:
|
||||
if self._reach is None:
|
||||
self._begin_rk = begin_rk
|
||||
else:
|
||||
_min = self._edge.reach.get_rk_min()
|
||||
_max = self._edge.reach.get_rk_max()
|
||||
_min = self._reach.reach.get_rk_min()
|
||||
_max = self._reach.reach.get_rk_max()
|
||||
|
||||
if _min <= begin_rk <= _max:
|
||||
self._begin_rk = begin_rk
|
||||
|
|
@ -431,11 +433,11 @@ class LateralContribution(SQLSubModel):
|
|||
|
||||
@end_rk.setter
|
||||
def end_rk(self, end_rk):
|
||||
if self._edge is None:
|
||||
if self._reach is None:
|
||||
self._end_rk = end_rk
|
||||
else:
|
||||
_min = self._edge.reach.get_rk_min()
|
||||
_max = self._edge.reach.get_rk_max()
|
||||
_min = self._reach.reach.get_rk_min()
|
||||
_max = self._reach.reach.get_rk_max()
|
||||
|
||||
if _min <= end_rk <= _max:
|
||||
self._end_rk = end_rk
|
||||
|
|
@ -482,10 +484,10 @@ class LateralContribution(SQLSubModel):
|
|||
new_0 = self._types[0](data[0].replace(",", "."))
|
||||
new_1 = self._types[1](data[1].replace(",", "."))
|
||||
|
||||
return (new_0, new_1)
|
||||
return Data(new_0, new_1)
|
||||
|
||||
def add(self, index: int):
|
||||
value = (self._default_0, self._default_1)
|
||||
value = Data(self._default_0, self._default_1)
|
||||
self._data.insert(index, value)
|
||||
self._status.modified()
|
||||
return value
|
||||
|
|
@ -532,9 +534,9 @@ class LateralContribution(SQLSubModel):
|
|||
return lst
|
||||
|
||||
def _set_i_c_v(self, index, column, value):
|
||||
v = list(self._data[index])
|
||||
v = self._data[index]
|
||||
v[column] = self._types[column](value)
|
||||
self._data[index] = tuple(v)
|
||||
self._data[index] = v
|
||||
self._status.modified()
|
||||
|
||||
def set_i_0(self, index: int, value):
|
||||
|
|
@ -546,7 +548,7 @@ class LateralContribution(SQLSubModel):
|
|||
@timer
|
||||
def convert(self, cls):
|
||||
new = cls(name=self.name, status=self._status)
|
||||
new.edge = self.edge
|
||||
new.reach = self.reach
|
||||
new.begin_rk = self.begin_rk
|
||||
new.end_rk = self.end_rk
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ class Layer(SQLSubModel):
|
|||
@property
|
||||
def name(self):
|
||||
if self._name == "":
|
||||
return f"Layer{self.id + 1}"
|
||||
return f"Layer #{self.pamhyr_id}"
|
||||
|
||||
return self._name
|
||||
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ class Stricklers(SQLSubModel):
|
|||
@property
|
||||
def name(self):
|
||||
if self._name == "":
|
||||
return f"K{self.id + 1}"
|
||||
return f"K #{self.pamhyr_id}"
|
||||
return self._name
|
||||
|
||||
@name.setter
|
||||
|
|
|
|||
|
|
@ -148,7 +148,7 @@ class Mage(CommandLineSolver):
|
|||
# Write header
|
||||
edges = study.river.enable_edges()
|
||||
for edge in edges:
|
||||
name = f"Reach_{edge.id + 1:>3}".replace(" ", "0")
|
||||
name = f"Reach_{edge.pamhyr_id:>3}".replace(" ", "0")
|
||||
|
||||
with mage_file_open(
|
||||
os.path.join(repertory, "net", f"{name}.ST"),
|
||||
|
|
@ -826,7 +826,7 @@ class Mage8(Mage):
|
|||
edges = study.river.enable_edges()
|
||||
|
||||
for e in edges:
|
||||
name = f"Reach_{e.id + 1:>3}".replace(" ", "0")
|
||||
name = f"Reach_{e.pamhyr_id:>3}".replace(" ", "0")
|
||||
id = name
|
||||
|
||||
n1 = f"{e.node1.id:3}".replace(" ", "x")
|
||||
|
|
|
|||
Loading…
Reference in New Issue