Commit eb43c7ab authored by Mathias Chouet's avatar Mathias Chouet 🍝
Browse files

ParamService ne se charge plus de déplacer les Structure dans une ParallelStructure

parent ed1cb2f0
import { CalculatorType, ComputeNodeType, Structure, ParallelStructure, SessionNub, StructureType, LoiDebit, StructureProperties, Props } from "jalhyd";
import { Structure, ParallelStructure, SessionNub, StructureType, LoiDebit, StructureProperties, Props } from "jalhyd";
import { FormulaireDefinition } from "../form-definition";
import { CalculatorResults } from "../../../results/calculator-results";
......@@ -116,20 +116,20 @@ export class FormulaireParallelStructure extends FormulaireDefinition {
public moveFieldsetUp(fs: FieldSet) {
if (fs.sessionNub.nub instanceof Structure) {
// déplacement du nub
this._paramService.moveStructureNubUp(fs.sessionNub);
fs.sessionNub.nub.parent.moveStructureUp(fs.sessionNub.nub);
// déplacement du fieldset
this.fieldsetContainer.moveFieldsetUp(fs);
this.resetResults();
} else { super.moveFieldsetUp(fs); }
} else {
super.moveFieldsetUp(fs);
}
}
public moveFieldsetDown(fs: FieldSet) {
if (fs.sessionNub.nub instanceof Structure) {
// déplacement du nub
this._paramService.moveStructureNubDown(fs.sessionNub);
fs.sessionNub.nub.parent.moveStructureDown(fs.sessionNub.nub);
// déplacement du fieldset
this.fieldsetContainer.moveFieldsetDown(fs);
......@@ -185,7 +185,7 @@ export class FormulaireParallelStructure extends FormulaireDefinition {
private get fieldsetContainer(): FieldsetContainer {
const n = this.getFormulaireNodeById("struct_container");
if (n == undefined || !(n instanceof FieldsetContainer)) {
if (n === undefined || !(n instanceof FieldsetContainer)) {
throw new Error("l'élément 'struct_container' n'est pas du type FieldsetContainer");
}
return n as FieldsetContainer;
......@@ -266,6 +266,7 @@ export class FormulaireParallelStructure extends FormulaireDefinition {
const loidebitSelect = this.findObjectWithDependency(fs.jsonConfig["fields"], structSelect.select.id, structSelect.entry.id);
if (loidebitSelect === undefined || loidebitSelect["type"] !== "select") {
// tslint:disable-next-line:max-line-length
throw new Error(`pas de select trouvé avec une dépendance au select 'type de structure' pour la valeur ${structSelect.select.id}=${structSelect.entry.id} (1)`);
}
......@@ -280,6 +281,7 @@ export class FormulaireParallelStructure extends FormulaireDefinition {
}
if (loisDebit.length === 0) {
// tslint:disable-next-line:max-line-length
throw new Error(`pas de select trouvé avec une dépendance au select 'type de structure' pour la valeur ${structSelect.select.id}=${structSelect.entry.id} (2)`);
}
......@@ -299,8 +301,10 @@ export class FormulaireParallelStructure extends FormulaireDefinition {
* @param val nouvelle valeur de la propriété
*/
private adjustProperties(fs: FieldSet, name: string, val: any): Props {
// si prop=type d'ouvrage, on prend la 1ère loi de débit compatible avec (spécifique aux ouvrages //), en tenant compte des dépendances.
// (par ex, s'il existe un select de lois de débit dépendant du select de types d'ouvrage, on prend la 1ère entrée du select de lois de débit compatible)
// si prop=type d'ouvrage, on prend la 1ère loi de débit compatible avec
// (spécifique aux ouvrages //), en tenant compte des dépendances.
// (par ex, s'il existe un select de lois de débit dépendant du select de types
// d'ouvrage, on prend la 1ère entrée du select de lois de débit compatible)
if (name === "structureType") {
if (!StructureProperties.isCompatibleValues(val, fs.properties.getPropValue("loiDebit"))) {
return this.adjustLoiDebit(fs, val);
......
import { ParamDomain, ParamDefinition, ParamDomainValue, ParamCalculability, NubFactory, SessionNub, Props } from "jalhyd";
import { NgParameter } from "../../formulaire/ngparam";
import { FormulaireDefinition } from "../../formulaire/definition/form-definition";
import { Injectable } from "@angular/core";
import { ServiceFactory } from "../service-factory";
import { InternationalisationService } from "../internationalisation/internationalisation.service";
......@@ -104,14 +103,6 @@ export class ParamService {
return NubFactory.getInstance().replaceSessionNub(sn, params);
}
public moveStructureNubUp(sn: SessionNub) {
NubFactory.getInstance().moveStructureNubUp(sn);
}
public moveStructureNubDown(sn: SessionNub) {
NubFactory.getInstance().moveStructureNubDown(sn);
}
public deleteSessionNub(sn: SessionNub) {
NubFactory.getInstance().deleteSessionNub(sn);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment