Commit Graph

195 Commits (ef641ac874184215afd57f3e932e40a178c9ffa2)

Author SHA1 Message Date
Johan Girod 0f1ca13b7f 🖋️ Améliore la page de documentation de publicode
- Ajoute le tuto
- Rend tous les exemples executables
2020-03-25 09:36:03 +01:00
Johan Girod 83a45f8523 🐛 corrige la conversion d'unité auto-entrepreneur
fix #938
2020-03-24 14:48:01 +01:00
Johan Girod 97c984afef barème et grille fonctionnent avec les variables temporelle 2020-03-18 15:46:38 +01:00
Johan Girod 665943288a ⚙️ Ajoute le mécanisme régularisation
- améliore la gestion des unités pour les variables temporelles
2020-03-18 15:46:38 +01:00
Johan Girod 0a5aba9078 ⚙️ ajoute la gestion des variables temporelles sur les multiplications 2020-03-18 15:44:37 +01:00
Johan Girod 2526499ab7 ⚙️ Ajoute le mécanisme somme pour les variables temporelles 2020-03-18 15:44:37 +01:00
Maxime Quandalle d997d1a336 ⚙️ Renomme le mécanisme "multiplication" en "produit"
Fixes #681
2020-03-17 15:05:37 +01:00
Maxime Quandalle 5333ae4563 🔥 Supprime traverse-common-functions 2020-03-17 09:53:09 +01:00
Johan Girod 2e7bac14df 🐛 correction de la ZFU 2020-03-10 10:51:54 +01:00
Johan Girod 0c84aaedf1 🐛 fix #897
Le moteur et les règles permettent désormais une valeure négative pour le revenu total des indépendants
2020-03-10 10:51:54 +01:00
Maxime Quandalle a18bf9df85 ⚙️ Renomme la prop "child" en "children" dans le composant Node 2020-02-27 10:53:26 +01:00
Maxime Quandalle bfcf165c02
⚙️ Mécanisme recalcul
Utilisé pour le plafond des exonérations JEI et ZFU.

MAJ d'un test de non-regression car le plafonnement JEI n'était plus à
jour.
2020-02-25 19:03:26 +01:00
Johan Girod e4131eee28 ⚙️ 🔥 grosse modification des barèmes
- Il n'y a plus qu'un mécanisme barème dorénavant : c'est le barème marginal de l'impôt
- On peut utiliser des variables publicode pour chaque argument des tranches
- Le mécanisme barème linéaire est remplacé par le mécanisme "grille"
- Le mécanisme barème continu est remplacé par le mécanisme "taux progressif"
- Les vues sont unifiées et simplifiées
- Seule les tranches nécessaires sont évaluée
- Les unités fonctionnent dans les barèmes
- On précise les tranches d'un barème par leur plafond et non plus par leur plafond et seuil

fix #827
2020-02-25 11:16:36 +01:00
Johan Girod c802e3e852 🐛 corrige l'erreur critique lors de la selection de la CCN sport
Corrige également le plafond SS (non proratisé en cas d'assiette forfaitaire)
2020-01-15 17:52:40 +01:00
Johan Girod 0c94d01543 🐛 corrige les problèmes d'inversion lorsque l'on saisi 0€
fix #835
2020-01-14 15:52:38 +01:00
Johan Girod 34085d3b31 🐛 répare le warning lors des inversions 2019-12-16 15:30:31 +01:00
Johan Girod 00b122fa97 ⚙️ ajoute la conversion d'unité
Gros changements en perspective :
- Supprime la notion de période, au bénéfice de celle d'unité
  (`période : mensuelle` devient `unité: €/mois`)
- Améliore les rapports d'erreur avec des messages plus clair
- Ajoute un avertissement lorsque des types ne sont pas compatible
- Ajoute la conversion automatique d'unité dans le moteur
- Ajoute une notion d'unité par défaut de la simulation,
  c'est l'unité vers laquelle les règles qui ne spécifient pas
  d'unité seront converties
- Ajoute une notion d'unité par défaut des règles, qui spécifie
  l'unité de la règle qui prévaut lorsque qu'il n'y a pas
  d'unité par défaut de la simulation (utile pour les question ou
  pour s'assurer du bon type d'une règle)
2019-12-16 11:34:04 +01:00
Maxime Quandalle a45ea0c79e Mécanisme encadrement
Permet de définir un plafond et/ou un plancher sur une valeur
2019-12-12 10:45:56 +01:00
Maxime Quandalle ac4e3cd615 ⚙️ Support des pluriels dans les unités en yaml
Support de l'écriture sous forme accordée (ie 3 semaines avec un “s”)
2019-10-29 11:40:16 +01:00
Johan Girod a60d86a6d5
remove unecessary abstraction: rewriteNode 2019-09-13 10:23:55 +02:00
Maxime Quandalle a1b99fdc64 Suppression des do-expression
Il s'agit d'une fonctionnalité non standard de JavaScript qui est peu
utilisée dans la base de code. Ajoute de la complexité pour les nouveaux
développeurs (configuration spécifique de l'environnement de dév) pour
trop peu de bénéfices.
2019-09-11 11:17:23 +02:00
Maxime Quandalle 461d789535
🐛 Unité de l'impôt sur le revenu
Était affiché en pourcentage au lieu d'euros depuis a30e0a86
Prise en compte de l'unité dans le mécanisme allègement
2019-09-06 16:23:26 +02:00
Johan Girod a247e5d57c
🔨 Ajoute la reduction de cotisations pour les heures supplémentaires
TODO: uniformiser la façon de gérer les réductions sur la fiche de paie, entre employeur et salarié
2019-09-03 18:11:41 +02:00
Mael ab0b64da12 Déplacement des Variations 2019-07-23 17:03:00 +02:00
Mael adf556c36f 🎨 Alignement des valeurs des expressions dans /doc 2019-07-23 17:03:00 +02:00
Mael 60a8558daf Affichage des unités 2019-07-23 17:03:00 +02:00
Mael 6606bb4f34 Unités des barèmes et composantes 2019-07-23 17:03:00 +02:00
Mael 342605e86b Unités : pourcentage et multiplication 2019-07-23 17:03:00 +02:00
Mael 1ca341a5b5 Implémentation plus générique des unités 2019-07-23 17:03:00 +02:00
Mael 17b5a4d128 🐛 Problème de visualisation de l'inersion 2019-07-12 10:33:02 +02:00
Mael 76b60afed7 1er affichage des unités : indemnité km vélo 2019-07-12 10:33:02 +02:00
Mael 9b4a3b9e57 ⚙️ parsedRules passe d'une liste à un object
Comme pendant l'évaluation et son objet cache, parsedRules est construit
au fur et à mesure du parsing sous la forme [dottedName]: parsedRule

Cela nous permet pendant le parsing de faire l'annotation de type et de
faire moins de boulot lors de l'évaluation

Problème :
- (presque fixé) dans l'inversion on produisait des références de variables pour le JSX
=> boucle infinie
- dans chiffre d'affaire, notre implé un peu bizarre fait une référence
de variables a priori circulaire, mais gérée par les variations. Or
pendant le parsing on parcourt évidemment toutes les branches sans les
évaluer. Sachant qu'on implémente ce cache parsedRules surtout pour les
unités, peut on garder la formule ainsi et simplement stocker 'chiffre
d'affaires': 'currently being parsed' pour éviter la boucle infinie ?
2019-07-12 10:33:02 +02:00
Mael f75f70314a 📝 Implémentation des unités via une nouvelle passe 2019-07-12 10:33:02 +02:00
Mael 6154419250 Changement de programme : tentative d'implé de l'unité dans l'eval
Car quand on parse et qu'on tombe sur une variable, on ne rentre pas
dans cette variable. Elle sera traitée par la suite dans le parseAll.
Ainsi on ne peut pas connaître son unité si elle a une formule

A = B * C
B = D / E

C unité km
D unité €
E unité km

Quand on tombe sur B dans A, B n'est pas encore parsée, et donc on ne
peut pas savoir que B est en € / km.

Il faudrait parser B, ce qui serait trop couteux. On pourrait
implémenter un cache au parsing, implémenter les unités comme des fonctions, ou encore gérer les unités lors de l'éval (ce qui est bête, car on n'a pas besoin des valeurs pour inférer les unités)
2019-07-12 10:33:02 +02:00
Johan Girod 2b49965940
Merge pull request #530 from betagouv/comparaison-régime-v2
Comparaison régime améliorée
2019-06-12 17:57:33 +02:00
Mael dc08b0fd0f 🐛 Fin de la réfacto 2019-06-04 16:38:10 +02:00
Mael 363d2795e8 Code plus prévisible 2019-06-04 16:38:09 +02:00
Johan Girod ae05597c7e
Ajout du nombre de trimestre pour la retraite validés 2019-06-03 14:27:23 +02:00
Maxime Quandalle 62d9369ada ⚙️ 🔨 Gestion du plafond frais pro
La déduction forfaitaire de 10% pour les frais professionnels est plafonnée.

https://www.service-public.fr/particuliers/vosdroits/F1989
2019-06-03 12:03:35 +02:00
Mael bbb8f0d532 🐛 ⚙️ Résolution basique du bug des valeurs différentes
En fonction de l'ordre d'appel
2019-04-12 10:48:21 +02:00
Mael c2a9af517e 🐛 🔨 Formule, pas applicable si 2019-04-10 15:10:03 +02:00
Mael 71f624c1a4 Gestion d'une inversion non convergente 2019-04-10 15:10:03 +02:00
Mael e1536b6b7a ⚙️ Gestion des erreurs de l'API versement transport 2019-04-09 11:01:07 +02:00
Mael bef7f2dbdd 🔥 Au revoir la verrue données versement transport 2019-04-09 11:01:07 +02:00
Mael 857b00dbea ⚙️ Mise en valeur du plafond actif 2019-04-09 11:01:07 +02:00
Johan Girod 40560361f1 🎨 améliore la compréhension du mécanisme de multiplication 2019-03-20 16:59:55 +01:00
Mael 9ce3fa49b7 🐛 Message "barème ne retourne que le taux"
Ce message s'affichait tout le temps, alors que c'est une option
2019-03-19 16:55:38 +01:00
Mael 851def13fc ⚙️ un début de propreté dans les mécanismes
POC de mécanisme dznsnun style nouveau et dans un nouveau fichier.

reste à abstraire la fonction v
2019-03-19 16:55:37 +01:00
Mael c4ae1f6543 🐛 Réintégration des taux dans l'explication de la multiplication 2019-02-22 12:48:11 +01:00
Johan Girod 64fc6ca789 🐛 répare l'affichage de l'ir dans les simulateurs TI et AE 2019-02-14 17:58:59 +01:00