Commit Graph

7 Commits (ae38b0e74b8da9ef39b7aae7d540019d94a96990)

Author SHA1 Message Date
Maxime Quandalle 973f12ab46 ⚙️ Évalue la situation dans l'ordre topologique
Nous utilisions jusqu'à présent le code suivant pour évaluer la situation:

> mapObjIndexed(value => evaluateExpression(value), situation)

c'est à dire une évaluation ligne par ligne. Or si certaines valeurs de
la situation contiennent des références, il faut les évaluer dans le bon
ordre.

Avec cette modification, seul le parsage est fait lorsqu'on appelle
`setSituation` et l'évaluation est faite ultérieurement lorsque c'est
nécessaire avec la même logique que pour les règles.

L'implémentation a pour effet de bord de ne plus supprimer l'utilisation
de true / false dans la situation qui doivent être remplacés par "oui"
et "non".
2020-10-11 16:51:19 +02:00
Maxime Quandalle 4789dfce04 🐛 Corrige la saisie du SMIC à temps partiel
Grâce aux récentes évolutions de Publicode, ce retour utilisateur
fréquent trouve une solution particulièrement simple et élégante en
remplaçant la valeur littérale du SMIC par une référence vers le SMIC
contractuel. Cela procure les avantages suivants :
- Le montant du SMIC est défini une seule fois dans la base de règles,
  et on y fait référence partout où on l'utilise
- Vu que c'est la référence qui est stockée dans la "situation" on peut
  répondre à la question "temps partiel" après avoir cliqué sur "SMIC"
  dans la case "salaire brut" et le montant correspondant va
  automatiquement se recalculer.

A nécessité quelques menues modifications du code qui gère les
références dans la situation pour corriger des bugs.

Fixes #649
2020-10-11 16:51:19 +02:00
Alexandre Hajjar 960fda08e6 📝 Remplace & applicable: split getApplicableReplacements & tests
* Split and document `getApplicableReplacements`
* More remplace tests
* `isDisabledBy` is mandatory in `ParsedRule`
2020-10-09 13:30:39 +02:00
Johan Girod 9f1fb9f482 🐛 Désactive le remplacement pour la documentation 2020-09-30 18:09:16 +02:00
Johan Girod 71929c9e03 Revert "⚙️ Toujours retourner une valeur pour isApplicable"
This reverts commit 29c74da20b.
2020-09-23 14:34:26 +02:00
Maxime Quandalle 29c74da20b ⚙️ Toujours retourner une valeur pour isApplicable 2020-09-22 19:21:58 +01:00
Maxime Quandalle 862b1dacb9 ⚙️ Convertit le ficher parseReference en Typescript 2020-09-15 11:58:18 +02:00