133 lines
5.3 KiB
YAML
133 lines
5.3 KiB
YAML
# Liste et description des différents mécanismes compris par le moteur.
|
|
# La description peut être rédigée en markdown :-)
|
|
|
|
sélection:
|
|
type: numeric
|
|
description: |
|
|
C'est tout simplement une valeur numérique exprimée en pourcentage.
|
|
|
|
une possibilité:
|
|
type: enum
|
|
|
|
une de ces conditions:
|
|
type: boolean
|
|
description: |
|
|
C'est un `ou` logique.
|
|
|
|
Contient une liste de conditions.
|
|
|
|
Renvoie vrai si l'une des conditions est vraie.
|
|
toutes ces conditions:
|
|
type: boolean
|
|
description: |
|
|
C'est un `et` logique.
|
|
|
|
Contient une liste de conditions.
|
|
|
|
Renvoie vrai si toutes les conditions vraies.
|
|
|
|
aiguillage numérique:
|
|
type: numeric
|
|
description: |
|
|
Contient une liste de couples condition-conséquence.
|
|
|
|
Couple par couple, si la condition est vraie, alors on choisit la conséquence.
|
|
|
|
Cette conséquence peut elle-même être un mécanisme `aiguillage numérique` ou plus simplement un `taux`.
|
|
|
|
Si aucune condition n'est vraie, alors ce mécanisme renvoie implicitement `non applicable` (ce qui peut se traduire par la valeur `0` si nous sommes dans un contexte numérique).
|
|
|
|
taux:
|
|
type: numeric
|
|
description: |
|
|
C'est tout simplement une valeur numérique exprimée en pourcentage.
|
|
|
|
multiplication:
|
|
type: numeric
|
|
description: |
|
|
C'est une multiplication un peu améliorée, très utile pour exprimer les cotisations.
|
|
|
|
Sa propriété `assiette` est multipliée par un pourcentage, `taux`, ou par un `facteur` quand ce nom est plus approprié.
|
|
|
|
La multiplication peut être plafonnée : ce plafond sépare l'assiette en deux, et la partie au-dessus du plafond est tout simplement ignorée. Dans ce cas, elle se comporte comme une barème en taux marginaux à deux tranches, la deuxième au taux nul et allant de `plafond` à l'infini.
|
|
|
|
le maximum de:
|
|
type: numeric
|
|
description: |
|
|
Renvoie l'élément de la liste de propositions fournie qui a la plus grande valeur.
|
|
|
|
Ces propositions doivent avoir un mécanisme de calcul ou être une valeur numérique.
|
|
|
|
Il est conseillé de renseigner une description de chaque proposition par exemple quand elles représentent des méthodes de calcul alternatives parmi lesquelles il faut en choisir une.
|
|
|
|
le minimum de:
|
|
type: numeric
|
|
description: |
|
|
Renvoie l'élément de la liste de propositions fournie qui a la plus petite valeur.
|
|
|
|
Ces propositions doivent avoir un mécanisme de calcul ou être une valeur numérique.
|
|
|
|
Il est conseillé de renseigner une description de chaque proposition par exemple quand elles représentent des méthodes de calcul alternatives parmi lesquelles il faut en choisir une.
|
|
|
|
somme:
|
|
type: numeric
|
|
description: |
|
|
C'est tout simplement la somme de chaque terme de la liste.
|
|
|
|
|
|
##########################################
|
|
# Ce qu'on appelle aujourd'hui des RuleProp
|
|
# Et qui deviendront des mécanismes classiques normalement par la suite #TODO
|
|
|
|
formule:
|
|
description: |
|
|
C'est la formule de calcul d'une variable. Elle renvoie une valeur numérique ou un 'non', exprimant le fait que la variable n'est pas applicable, ce qui vaut implicitement 0.
|
|
|
|
Cette doit faire appel à fera appel à des mécanismes de calcul : par exemple `multiplication`, le plus commun pour les variables de type `Cotisation`.
|
|
|
|
|
|
applicable si:
|
|
description: |
|
|
Décide si la règle est applicable pour la situation saisie.
|
|
|
|
> Une cotisation sociale peut ne concerner que les salariés au statut cadre. Elle ne sera pas à verser pour un non cadre
|
|
|
|
La formule de calcul peut donc être ignorée, quel que soit son montant.
|
|
|
|
Peut être accompagnée du mécanisme 'non appicable si'.
|
|
|
|
non applicable si:
|
|
description: |
|
|
Décide si la règle n'est applicable pour la situation saisie.
|
|
|
|
> Un contrat CDD peut entraîner une majoration spécifique. Cette majoration est 'non applicable si' le contrat est un CDI.
|
|
|
|
La formule de calcul peut donc être ignorée, quel que soit son montant.
|
|
|
|
Peut être accompagnée du mécanisme 'appicable si'.
|
|
|
|
barème:
|
|
type: numeric
|
|
description: |
|
|
C'est un barème en taux marginaux, mécanisme de calcul connu son utilisation dans le calcul de l'impôt sur le revenu.
|
|
L'assiette est décomposée en plusieurs tranches, qui sont multipliées par un taux spécifique.
|
|
Les tranches sont très souvent exprimées sous forme de facteurs (par exemple [1, 2, 4]) d'une variable que l'on appelle multiplicateur, par exemple le plafond de la sécurité sociale.
|
|
|
|
complément:
|
|
type: numeric
|
|
description: |
|
|
Complète une base pour atteindre un seuil minimal
|
|
|
|
composantes:
|
|
type: numeric
|
|
description: |
|
|
Beaucoup de cotisations sont composées de deux parties qui partage la méthode de calcul mais diffèrent par des paramètres différents.
|
|
|
|
Pour ne pas définir deux variables presque redondantes, on utilise le mécanisme de composante. Il se comportera comme une somme dans les calculs, mais son affichage sur les pages /règle sera adapté.
|
|
|
|
Il est même possible, pour les mécanismes `barème` et `multiplication` de garder en commun un paramètre comme l'assiette, puis de déclarer des composantes pour le taux.
|
|
|
|
> L'example le plus courant de composantes, c'est la distinction part employeur, part salarié (ex. retraite AGIRC).
|
|
|
|
> On peut aussi citer la composante de base de la cotisation pénibilité, et la composante additionnelle.
|