diff --git a/jalhyd_branch b/jalhyd_branch index 094bda298f4c32b69e4a6b56399918bfde4dfca0..ba5ab733debaf6478f0d6b583eb80b41848804b7 100644 --- a/jalhyd_branch +++ b/jalhyd_branch @@ -1 +1 @@ -316-courbe-de-remous-et-bief-remonter-une-erreur-quand-le-pas-de-discretisation-est-superieur-la +324-pab-ajouter-la-charge-et-l-ennoiement-dans-le-tableau-de-resultat-et-l-export diff --git a/src/app/calculators/cloisons/en.json b/src/app/calculators/cloisons/en.json index af443e0f84fa4abc8864354ad601a33c380e2747..16d63c6461820ca6ff4ec716ce47d7ab84219ee8 100644 --- a/src/app/calculators/cloisons/en.json +++ b/src/app/calculators/cloisons/en.json @@ -6,5 +6,7 @@ "UNIT_Q": "m³/s", "UNIT_YMOY": "m", "UNIT_ZDV": "m", - "UNIT_P": "m" + "UNIT_P": "m", + "UNIT_H2": "m", + "UNIT_SUBMERGENCE": "%" } \ No newline at end of file diff --git a/src/app/calculators/cloisons/fr.json b/src/app/calculators/cloisons/fr.json index 54fed4e39815913c00d0f8200c4262d758e74e2c..8bbc3d0d02f49f90b4cb17fa56bf2ac53ebb14c4 100644 --- a/src/app/calculators/cloisons/fr.json +++ b/src/app/calculators/cloisons/fr.json @@ -6,5 +6,7 @@ "UNIT_Q": "m³/s", "UNIT_YMOY": "m", "UNIT_ZDV": "m", - "UNIT_P": "m" + "UNIT_P": "m", + "UNIT_H2": "m", + "UNIT_SUBMERGENCE": "%" } \ No newline at end of file diff --git a/src/app/calculators/pab/en.json b/src/app/calculators/pab/en.json index db6cefb8a0ed5388fe26a1b04ff7a0dae1d3bfc5..d3fda007d382bbceb0f7694ff26ae4a6ac06cd08 100644 --- a/src/app/calculators/pab/en.json +++ b/src/app/calculators/pab/en.json @@ -25,5 +25,8 @@ "UNIT_Z": "m", "UNIT_ZRAM": "m", "UNIT_ZRB": "m", - "UNIT_ZRMB": "m" + "UNIT_ZRMB": "m", + "UNIT_H1": "m", + "UNIT_H2": "m", + "UNIT_SUBMERGENCE": "%" } \ No newline at end of file diff --git a/src/app/calculators/pab/fr.json b/src/app/calculators/pab/fr.json index c08b87e1ff0f912c5456bc1c9f82967631793fe6..d951248b73d41ab075deb3083c89cff81040e1ee 100644 --- a/src/app/calculators/pab/fr.json +++ b/src/app/calculators/pab/fr.json @@ -25,5 +25,8 @@ "UNIT_Z": "m", "UNIT_ZRAM": "m", "UNIT_ZRB": "m", - "UNIT_ZRMB": "m" + "UNIT_ZRMB": "m", + "UNIT_H1": "m", + "UNIT_H2": "m", + "UNIT_SUBMERGENCE": "%" } \ No newline at end of file diff --git a/src/app/components/pab-results/pab-results-table.component.ts b/src/app/components/pab-results/pab-results-table.component.ts index 3591658a7cbf742531918f8509acfa69245600cb..b541cdc52e332f6cde19abc74c9c9730db870fd8 100644 --- a/src/app/components/pab-results/pab-results-table.component.ts +++ b/src/app/components/pab-results/pab-results-table.component.ts @@ -46,7 +46,7 @@ export class PabResultsTableComponent extends ResultsComponentDirective implemen this.results && this.results.cloisonsResults && this.results.cloisonsResults.length > 0 - && ! this.results.hasOnlyErrors() + && !this.results.hasOnlyErrors() ) { const pr = this.results; // when a parameter is variating, index of the variating parameter @@ -88,7 +88,10 @@ export class PabResultsTableComponent extends ResultsComponentDirective implemen fv(r2n.YMOY), fv(r2n.ZRMB), fv(r2n.QA), - this.getJetTypes(pr.cloisonsResults[i], vi) + this.getJetTypes(pr.cloisonsResults[i], vi), + this.getStructuresParam(pr.cloisonsResults[i], vi,"H1"), + this.getStructuresParam(pr.cloisonsResults[i], vi,"H2"), + this.getStructuresParam(pr.cloisonsResults[i], vi,"SUBMERGENCE"), ]); } } @@ -104,7 +107,10 @@ export class PabResultsTableComponent extends ResultsComponentDirective implemen fv(rln.DH), fv(rln.Q), "", "", "", "", - this.getJetTypes(pr.cloisonAvalResults, vi) + this.getJetTypes(pr.cloisonAvalResults, vi), + this.getStructuresParam(pr.cloisonAvalResults, vi, "H1"), + this.getStructuresParam(pr.cloisonAvalResults, vi, "H2"), + this.getStructuresParam(pr.cloisonAvalResults, vi, "SUBMERGENCE"), ]); // extra lift gate ? if (cloisonAval && cloisonAval.hasVanneLevante()) { @@ -122,19 +128,29 @@ export class PabResultsTableComponent extends ResultsComponentDirective implemen } private getJetTypes(re: Result, vi: number): string { - // jet type for each device + return this.getStructuresParam(re, vi, "ENUM_StructureJetType", "INFO_ENUM_STRUCTUREJETTYPE_"); + } + + private getStructuresParam(re: Result, vi: number, propName: string, localisationCode?: string): string { const devices = re.sourceNub.getChildren(); - const jetTypes: string[] = devices.map((device) => { - const jt = device.result.resultElements[vi].getValue("ENUM_StructureJetType"); - let jetType = this.intlService.localizeText("INFO_ENUM_STRUCTUREJETTYPE_" + jt); + // parameter for each device + const params: string[] = devices.map((device) => { + const val = device.result.resultElements[vi].getValue(propName); + let sVal; + if (localisationCode !== undefined) { + sVal = this.intlService.localizeText(localisationCode + val); + } + else { + sVal = fv(val); + } if (devices.length > 1) { // evil HTML injection in table cell (simpler) - jetType = this.intlService.localizeText("INFO_LIB_FS_OUVRAGE") + " n°" - + (device.findPositionInParent() + 1) + ": " + jetType; + sVal = this.intlService.localizeText("INFO_LIB_FS_OUVRAGE") + " n°" + + (device.findPositionInParent() + 1) + ": " + sVal; } - return jetType; + return sVal; }); - return `<div class="inner-cell-line">` + jetTypes.join(`, </div><div class="inner-cell-line">`) + `</div>`; + return `<div class="inner-cell-line">` + params.join(`, </div><div class="inner-cell-line">`) + `</div>`; } public get headers() { diff --git a/src/app/results/pab-results.ts b/src/app/results/pab-results.ts index 2f96053696acb3b0087421f084e992cfe0c0baa8..155d7bbfd27f10c91fbd6041d27e929d093e427f 100644 --- a/src/app/results/pab-results.ts +++ b/src/app/results/pab-results.ts @@ -40,7 +40,10 @@ export class PabResults extends MultiDimensionResults implements PlottableData { "YMOY", "ZRMB", "QA", - "ENUM_StructureJetType" + "ENUM_StructureJetType", + "H1", + "H2", + "SUBMERGENCE" ]; // axes par défaut this.chartX = this.chartX || "CLOISON"; @@ -61,7 +64,7 @@ export class PabResults extends MultiDimensionResults implements PlottableData { if (sn.parent) { ct = sn.parent.calcType; } - let label = ServiceFactory.formulaireService.expandVariableNameAndUnit(ct , h); + let label = ServiceFactory.formulaireService.expandVariableNameAndUnit(ct, h); label += this.getHelpLink(h); return label; }); @@ -94,7 +97,7 @@ export class PabResults extends MultiDimensionResults implements PlottableData { // do not test result.ok else log messages will prevent partial results from being displayed public get hasResults(): boolean { - return this.result !== undefined && ! this.result.hasOnlyErrors; + return this.result !== undefined && !this.result.hasOnlyErrors; } /** retourne true si au moins un calcul a échoué (le log a un code négatif) */ @@ -231,6 +234,15 @@ export class PabResults extends MultiDimensionResults implements PlottableData { data.push(this.Z2[vi]); break; + case "H1": + case "H2": + case "SUBMERGENCE": + for (let i = 0; i < l; i++) { + data.push(this.cloisonsResults[i].resultElements[vi].vCalc); + } + data.push(this.cloisonAvalResults.resultElements[vi].vCalc); + break; + case "PV": case "YMOY": case "ZRMB": diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json index a1a25b70017432cc06086e18029a82697e9a54db..56a2f105b8fe381cc8260baac031adecf8349a29 100755 --- a/src/locale/messages.en.json +++ b/src/locale/messages.en.json @@ -306,7 +306,8 @@ "INFO_LIB_FS_OUVRAGE": "Device", "INFO_LIB_FS_PARAM_CALC": "Calculation parameters", "INFO_LIB_FS_PARAM_HYDRO": "Hydraulic parameters", - "INFO_LIB_H1": "Head", + "INFO_LIB_H1": "Upstream head", + "INFO_LIB_H2": "Downstream head", "INFO_LIB_HS": "Specific head", "INFO_LIB_HSC": "Critical head", "INFO_LIB_I-J": "Linear variation of specific head", @@ -406,6 +407,7 @@ "INFO_LIB_PVMAXPREC": "Recommanded maximal dissipated power", "INFO_LIB_PVMAXLIM": "Limit maximal dissipated power", "INFO_LIB_PAB_CHART_SEUILS": "Weirs (%s)", + "INFO_LIB_SUBMERGENCE": "Submergence", "INFO_LINKED_VALUE_CHILD": "%s (%s, %s %s)", "INFO_LINKED_VALUE_EXTRA_RESULT_OF": "%s (%s)", "INFO_LINKED_VALUE_EXTRA_RESULT": "%s (%s)", diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json index 928503bff8935980624ffe1932ce2f66cd8eca70..225b0751e30d7981d2294f75d501e110605f0bed 100755 --- a/src/locale/messages.fr.json +++ b/src/locale/messages.fr.json @@ -307,7 +307,8 @@ "INFO_LIB_FS_OUVRAGE": "Ouvrage", "INFO_LIB_FS_PARAM_CALC": "Paramètres de calcul", "INFO_LIB_FS_PARAM_HYDRO": "Paramètres hydrauliques", - "INFO_LIB_H1": "Charge", + "INFO_LIB_H1": "Charge amont", + "INFO_LIB_H2": "Charge aval", "INFO_LIB_HS": "Charge spécifique", "INFO_LIB_HSC": "Charge critique", "INFO_LIB_I-J": "Variation linéaire de l'énergie spécifique", @@ -407,6 +408,7 @@ "INFO_LIB_PVMAXPREC": "Puissance volumique dissipée maximale recommandée", "INFO_LIB_PVMAXLIM": "Puissance volumique dissipée maximale limite", "INFO_LIB_PAB_CHART_SEUILS": "Seuils (%s)", + "INFO_LIB_SUBMERGENCE": "Ennoiement", "INFO_LINKED_VALUE_CHILD": "%s (%s, %s %s)", "INFO_LINKED_VALUE_EXTRA_RESULT_OF": "%s (%s)", "INFO_LINKED_VALUE_EXTRA_RESULT": "%s (%s)",