Commit Graph

22 Commits (94847f29321474ed962193f528d0e6038efcaf3b)

Author SHA1 Message Date
Maxime Quandalle 3c77fa8261 🔨 Implémente la Déduction Forfaitaire Spécifique
- DFS pour journalistes, ouvriers du bâtiment, artistes, pilotes
- Plafonnement réduction générale dans le cas d'un cumul avec DFS
  (nouveauté 2020)
- Taux réduit de cotisations pour les journalistes
- Abattement fiscal journalistes

🐛 Corrige la désactivation des plafond si la règle référencée dans le
"plafond" est non applicable.
2020-03-04 15:22:29 +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
Maxime Quandalle aa19e6ee8b ⚙️ Ajout d'un mécanisme arrondi
L'affichage du mécanisme peut être amélioré
2020-02-07 11:35:04 +01:00
Johan Girod 4749727938 🔨 ⚙️ ajoute un mécanisme durée pour la proratisation de l'ACRE :wip: 2020-01-07 15:53:33 +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
Johan Girod e798dd6d02 ⚙️ support les mois au lieu de date complète 2019-12-16 11:33:38 +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 e0e1e97de9
Ne pas arrondir les constantes dans la documentation
C'était perturbant d'afficher un taux à 0,03% alors que la valeur utilisée
est 0,024%
2019-10-10 11:58:31 +02:00
Maxime Quandalle 579a385b41
Regroupe les fonctions de formatage
Par ailleurs ce commit formate les taux les tableaux des barèmes linéaires
2019-09-25 17:09:59 +02:00
Maxime Quandalle c418a63d06
🎨 Change le symbole de la multiplication 2019-09-25 15:00:03 +02:00
Johan Girod b2d0d4624a
🐎 améliore la performance du parsing
A peu près ~50% de gagné lors du parsing
Problème : long temps de blocage de l'UI lors du premier parsing des règles

Il reste encore quelques bugs
2019-09-13 10:23:55 +02:00
Mael 0233c793a0 Déplacement du mécanisme operation 2019-07-23 17:03:00 +02:00
Mael ab0b64da12 Déplacement des Variations 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 1adce3e514 ⚙️ On abandonne NegatedVariable
C'est illisible dans l'explication, je n'arrive pas à faire mieux que '≠
oui'
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 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 00e920d00f ⚙️ Renommage de treat en parse; reorg
Ce commit n'est pas complet, mais l'idée est lisible
2019-07-12 10:33:02 +02:00