diff --git a/src/View/Results/TableAdisTS.py b/src/View/Results/TableAdisTS.py index 41b84caa..49a939a5 100644 --- a/src/View/Results/TableAdisTS.py +++ b/src/View/Results/TableAdisTS.py @@ -96,18 +96,21 @@ class TableModel(PamhyrTableModel): if p.name == "": return f"{p.kp:.4f}" return f"{p.name}" - elif self._headers[column] == "water_elevation": - v = self._lst[row].get_ts_key(self._timestamp, "Z") - return f"{v:.4f}" - elif self._headers[column] == "discharge": - v = self._lst[row].get_ts_key(self._timestamp, "Q") - return f"{v:.4f}" - elif self._headers[column] == "speed": - q = self._lst[row].get_ts_key(self._timestamp, "Q") - z = self._lst[row].get_ts_key(self._timestamp, "Q") - - v = self._lst[row].geometry.speed(q, z) - return f"{v:.4f}" + tmp_list = self._data.pollutants_list.copy() + tmp_list.remove("total_sediment") + tmp_list2 = self._data.pollutants_list.copy() + for pol in tmp_list: + pol_index = tmp_list2.index(pol) + header_name = pol + "\n Concentration" + if self._headers[column] == header_name: + v = self._lst[row].get_ts_key(self._timestamp, "pols")[pol_index][0] + return f"{v:.4f}" + elif self._headers[column] == pol + "\n Mass": + m1 = self._lst[row].get_ts_key(self._timestamp, "pols")[pol_index][1] + m2 = self._lst[row].get_ts_key(self._timestamp, "pols")[pol_index][2] + m3 = self._lst[row].get_ts_key(self._timestamp, "pols")[pol_index][3] + v = m1 + m2 + m3 + return f"{v:.4f}" return QVariant() diff --git a/src/View/Results/WindowAdisTS.py b/src/View/Results/WindowAdisTS.py index 53137657..dafdfdfd 100644 --- a/src/View/Results/WindowAdisTS.py +++ b/src/View/Results/WindowAdisTS.py @@ -84,7 +84,10 @@ class ResultsWindowAdisTS(PamhyrWindow): self._solver = solver self._results = results - trad = ResultsTranslate() + pollutants_headers = self._results.pollutants_list.copy() + print("***///---+++///***---+++pollutants translate: ", pollutants_headers) + + trad = ResultsTranslate(pollutants_headers) name = ( trad[self._pamhyr_name] + " - " + study.name + " - " @@ -128,7 +131,7 @@ class ResultsWindowAdisTS(PamhyrWindow): print("results study river: ", self._results.study.river) print("*********files names resultats from Results Window: ", self._results.pollutants_list) self._table = {} - for t in ["reach", "profile", "pollutants"]:#, "raw_data"]: + for t in ["reach", "profile", "pollutants", "raw_data"]: print("t: ", t) table = self.find(QTableView, f"tableView_{t}") self._table[t] = TableModel( diff --git a/src/View/Results/translate.py b/src/View/Results/translate.py index b1e02ff1..b210dd2a 100644 --- a/src/View/Results/translate.py +++ b/src/View/Results/translate.py @@ -24,7 +24,13 @@ _translate = QCoreApplication.translate class ResultsTranslate(MainTranslate): - def __init__(self): + def __init__(self, pollutants=None): + if pollutants is not None: + self.pollutants = pollutants + self.pollutants.remove("total_sediment") + else: + self.pollutants = pollutants + super(ResultsTranslate, self).__init__() self._dict["Results"] = _translate("Results", "Results") @@ -45,7 +51,7 @@ class ResultsTranslate(MainTranslate): ) self._sub_dict["table_headers_reach"] = { - "name": _translate("Results", "Pollutant name"), + "name": _translate("Results", "Reach name"), } self._sub_dict["table_headers_phys_var"] = { @@ -58,12 +64,21 @@ class ResultsTranslate(MainTranslate): } self._sub_dict["table_headers_pollutants"] = { - "name": _translate("Results", "Reach name"), + "name": _translate("Results", "Pollutant name"), } - self._sub_dict["table_headers_raw_data"] = { - "name": _translate("Results", "Profile"), - "water_elevation": self._dict["unit_water_elevation"], - "discharge": self._dict["unit_discharge"], - "speed": self._dict["unit_speed"], - } + if self.pollutants is not None: + self._sub_dict["table_headers_raw_data"] = { + "name": _translate("Results", "Profile"), + } + for pol in self.pollutants: + self._sub_dict["table_headers_raw_data"][pol + " Concentration"] = pol + "\n Concentration" + self._sub_dict["table_headers_raw_data"][pol + " Mass"] = pol + "\n Mass" + else: + self._sub_dict["table_headers_raw_data"] = { + "name": _translate("Results", "Profile"), + "water_elevation": self._dict["unit_water_elevation"], + "discharge": self._dict["unit_discharge"], + "speed": self._dict["unit_speed"], + } +