Skip to content
Snippets Groups Projects

Resolve "Simplification du code (jalhyd#58)"

Merged David Dorchies requested to merge 104-simplification-du-code-compatibilite-jalhyd into master
2 files
+ 13
18
Compare changes
  • Side-by-side
  • Inline
Files
2
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);
Loading