From 8be7698b02f952a58cda8d03c29eea17d84908b9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Grand?= <francois.grand@inrae.fr>
Date: Tue, 28 Mar 2023 08:49:31 +0200
Subject: [PATCH] fix: results for MacroRugoRemous form

refs #609
---
 src/app/calculators/macrorugoremous/en.json    |  4 +++-
 src/app/calculators/macrorugoremous/fr.json    |  2 ++
 .../calculator-results.component.html          |  4 ++--
 .../calculator-results.component.ts            |  4 ++++
 .../generic-calculator/calculator.component.ts |  5 +++++
 .../remous-results/remous-results.component.ts |  8 +-------
 src/app/results/remous-results.ts              | 18 +++++++++++-------
 7 files changed, 28 insertions(+), 17 deletions(-)

diff --git a/src/app/calculators/macrorugoremous/en.json b/src/app/calculators/macrorugoremous/en.json
index 2a4de3bbb..231a37c21 100644
--- a/src/app/calculators/macrorugoremous/en.json
+++ b/src/app/calculators/macrorugoremous/en.json
@@ -3,7 +3,9 @@
     
     "fs_condlim": "Boundary conditions",
     "Dx": "Discretisation step",
-    
+    "Y": "Water depth",
+    "ZW": "Water line",
+
     "select_resolution": "Resolution method",
     "RESOLUTION_0": "Integration by trapezoid",
     "RESOLUTION_1": "Runge Kutta fourth order",
diff --git a/src/app/calculators/macrorugoremous/fr.json b/src/app/calculators/macrorugoremous/fr.json
index 108fb740b..081a929d4 100644
--- a/src/app/calculators/macrorugoremous/fr.json
+++ b/src/app/calculators/macrorugoremous/fr.json
@@ -3,6 +3,8 @@
 
     "fs_condlim": "Conditions aux limites",
     "Dx": "Pas de discrétisation",
+    "Y": "Tirant d'eau",
+    "ZW": "Ligne d'eau",
 
     "select_resolution": "Méthode de résolution",
     "RESOLUTION_0": "Intégration par trapèzes",
diff --git a/src/app/components/calculator-results/calculator-results.component.html b/src/app/components/calculator-results/calculator-results.component.html
index 61ddf062b..c2bf438d0 100644
--- a/src/app/components/calculator-results/calculator-results.component.html
+++ b/src/app/components/calculator-results/calculator-results.component.html
@@ -1,10 +1,10 @@
 <div>
     <section-results *ngIf="isSP" [results]=formResultsArray></section-results>
-    <remous-results *ngIf="isRemous" [results]=formResultsArray></remous-results>
+    <remous-results *ngIf="isRemous || isMRR" [results]=formResultsArray></remous-results>
     <pab-results *ngIf="isPAB" [results]=formResultsArray></pab-results>
     <pb-results *ngIf="isPB" [results]=formResultsArray></pb-results>
     <verificateur-results *ngIf="isVerificateur" [results]=formResultsArray></verificateur-results>
     <macrorugo-compound-results *ngIf="isMRC" [results]=formResultsArray></macrorugo-compound-results>
     <jet-results *ngIf="isJet" [results]=formResultsArray></jet-results>
-    <fixedvar-results *ngIf="! isJet" [results]=formResultsArray></fixedvar-results>
+    <fixedvar-results *ngIf="!isJet && !isMRR" [results]=formResultsArray></fixedvar-results>
 </div>
diff --git a/src/app/components/calculator-results/calculator-results.component.ts b/src/app/components/calculator-results/calculator-results.component.ts
index 796d0e481..acc655e44 100644
--- a/src/app/components/calculator-results/calculator-results.component.ts
+++ b/src/app/components/calculator-results/calculator-results.component.ts
@@ -57,6 +57,10 @@ export class CalculatorResultsComponent implements AfterViewChecked {
         return this.calculatorComponent.isMRC;
     }
 
+    public get isMRR() {
+        return this.calculatorComponent.isMRR;
+    }
+
     public get isJet() {
         return this.calculatorComponent.isJet;
     }
diff --git a/src/app/components/generic-calculator/calculator.component.ts b/src/app/components/generic-calculator/calculator.component.ts
index 499b77cc1..18955e18d 100644
--- a/src/app/components/generic-calculator/calculator.component.ts
+++ b/src/app/components/generic-calculator/calculator.component.ts
@@ -705,6 +705,11 @@ export class GenericCalculatorComponent implements OnInit, DoCheck, AfterViewChe
         return this.is(CalculatorType.MacroRugoCompound);
     }
 
+    // true if current Nub is MacroRugoRemous
+    public get isMRR() {
+        return this.is(CalculatorType.MacroRugoRemous);
+    }
+
     // true if current Nub is MacroRugoCompound
     public get isPAM() {
         return this.is(CalculatorType.MacroRugo);
diff --git a/src/app/components/remous-results/remous-results.component.ts b/src/app/components/remous-results/remous-results.component.ts
index 2fd73ae1e..454a4a7cc 100644
--- a/src/app/components/remous-results/remous-results.component.ts
+++ b/src/app/components/remous-results/remous-results.component.ts
@@ -187,13 +187,7 @@ export class RemousResultsComponent extends ResultsComponentDirective implements
      * Retourne un peudo-paramètre variable représentant toutes les abscisses possibles
      */
     private get abscissaePseudoParameter(): ParamDefinition {
-        const param = new ParamDefinition(undefined, "", ParamDomainValue.POS_NULL);
-        param.setValues(
-            0,
-            this._remousResults.Long,
-            this._remousResults.Dx
-        );
-        return param;
+        return this._remousResults.xValues;
     }
 
     /**
diff --git a/src/app/results/remous-results.ts b/src/app/results/remous-results.ts
index 647418012..57cec46c4 100644
--- a/src/app/results/remous-results.ts
+++ b/src/app/results/remous-results.ts
@@ -83,6 +83,13 @@ export class RemousResults extends CalculatorResults {
         this._hasTor = false;
         this._hasExtra = false;
         this._extraChart = false;
+
+        // série de valeurs de X
+        this._xValues = new ParamDefinition(
+            undefined,
+            "ABSCISSE",
+            ParamDomainValue.POS_NULL
+        );
     }
 
     public set parameters(p: CourbeRemousParams) {
@@ -100,13 +107,6 @@ export class RemousResults extends CalculatorResults {
         // pas d'espace
         this._Dx = nub.getParameter("Dx").singleValue;
 
-        // série de valeurs de X
-        this._xValues = new ParamDefinition(
-            p,
-            "ABSCISSE",
-            ParamDomainValue.POS_NULL
-        );
-
         // cote de fond amont
         this._ZF1 = nub.getParameter("ZF1").singleValue;
 
@@ -122,6 +122,10 @@ export class RemousResults extends CalculatorResults {
         return this._varResults;
     }
 
+    public get xValues(): ParamDefinition {
+        return this._xValues;
+    }
+
     public get result(): Result {
         return this._result;
     }
-- 
GitLab