Skip to content
Snippets Groups Projects
Commit 1f5a1742 authored by sandcha's avatar sandcha
Browse files

Add intro to README_PLF and npm run dev bug

parent 65f9865b
Branches
No related tags found
1 merge request!156Désactive le PLF de l'application IR
Pipeline #5706 passed
......@@ -53,6 +53,7 @@ npm run start
Le code source comprend les codes des applications `ir` et `dotations` ainsi que du portail en place jusqu'en 2021 et désormais remplacé en production par [leximpact-portail](https://git.leximpact.dev/leximpact/leximpact-portail).
Le point d'entrée est situé à la racine du dépôt : `server.js`
Par ailleurs, les principaux répertoires sont :
* `components/` les composants graphiques (structure, logique, style et test)
* `pages/` les pages principales
......
# Activation & Désactivation du mode PLF
Pour l'[application IR](http://leximpact.an.fr/ir) et l'[application dotations](http://leximpact.an.fr/dotations), il est possible d'activer un mode où, en plus de la loi en vigueur, un Projet de Loi de Finances (PLF) sert de base aux calculs d'amendements.
Cette documentation présente les éléments à mettre à jour pour activer et désactiver le mode `PLF`.
## Logique d'activation & désactivation du PLF
`leximpact-client` échange par API Web avec `leximpact-server`.
Les deux dépôts disposent d'éléments de configuration qui déterminent l'état initial de ces applications.
Néanmoins, pour le couple (`leximpact-client`, `leximpact-server`) la logique générale veut que ce soit le client qui sache si le PLF est activé.
Les deux dépôts `leximpact-client` et `leximpact-server` disposent d'éléments de configuration qui déterminent l'état initial de ces applications.
Néanmoins, pour le couple `leximpact-client`+`leximpact-server` la logique générale veut que ce soit le client qui sache si le PLF est activé.
> Aux débuts de ces applications (pré-PLF 2021), l'activation du PLF était décidée par `leximpact-server`.
TODO Vérifier si le client détermine l'application du PLF d'après la première requête cas type ou si ce comportement est désactivé.
## Contexte métier
`leximpact-client` connaît potentiellement 3 lois :
* la loi en vigueur, dite `base` dans l'état de l'application, `avant` dans les requêtes à l'API Web,
* la loi réformée par un usager de l'application, dite `amendement` dans l'état de l'application, `apres` dans les requêtes à l'API Web,
* et, lorque le PLF est activé, la loi réformée par un PLF, dite `plf` dans l'état de l'application et les requêtes à l'API Web.
Pour l'[application IR](http://leximpact.an.fr/ir), nous effectuons des calculs sur cas type et population.
### Calcul sur cas types
Au démarrage de l'application, une requête http://localhost:5000/metadata/description_cas_types est transmise (`onInitializeCasTypes` redux state ? => SIMULATE_CAS_TYPES_REQUEST => SIMULATE_CAS_TYPES_FAILURE)
......@@ -81,6 +97,10 @@ Intervient dans components/common/articles-inputs/values/Values.tsx
Lorsque le PLF est désactivé du côté de leximpact-server seulement alors, on passe de :
`SimpleCardImpactImpots props {index: 5, amendement: 690, base: 756, isFetching: false, plf: 690, …}`
à `SimpleCardImpactImpots props {index: 5, amendement: undefined, base: undefined, isFetching: true, plf: undefined, …}`.
Lié à la présence du PLF_PATH seulement.
Lié à la présence du `PLF_PATH` seulement.
Le client nécessiterait toujours la présence du PLF pour fonctionner (ou une modification de son code). Ceci est en partie apparu avec [cette PR](https://github.com/leximpact/leximpact-client/pull/104).
### Bug npm run dev
Si une modification du code source n'entraîne pas de changement dans l'interface en mode développement, il s'agit d'une situation déjà rencontrée. Relancer le `npm run dev`.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment