mirror of
https://github.com/CatalaLang/catala.git
synced 2024-11-09 01:35:56 +03:00
137 lines
5.5 KiB
Plaintext
137 lines
5.5 KiB
Plaintext
# Épilogue
|
|
|
|
## Règles diverses
|
|
|
|
Les textes législatifs et règlementaires contiennent toutes les informations
|
|
kécessaires au calcul. Cependant, certaines règles de calcul sont implicites
|
|
dans ces textes et doivent être explicitées pour le calcul informatique. C'est
|
|
la fonction du bloc de code ci-dessous.
|
|
|
|
```catala-metadata
|
|
champ d'application EnfantLePlusÂgé:
|
|
définition le_plus_âgé égal à
|
|
contenu maximum entier initial Enfant {
|
|
-- identifiant: -1
|
|
-- obligation_scolaire: Pendant
|
|
-- rémuneration_mensuelle: 0€
|
|
-- date_de_naissance: |1900-01-01|
|
|
-- âge: 0
|
|
-- prise_en_charge: EffectiveEtPermanente
|
|
-- a_déjà_ouvert_droit_aux_allocations_familiales: faux
|
|
-- bénéficie_titre_personnel_aide_personnelle_logement: faux
|
|
}
|
|
pour potentiel_plus_âgé dans enfants de potentiel_plus_âgé.âge
|
|
|
|
|
|
champ d'application AllocationsFamiliales:
|
|
définition montant_initial_métropole_majoration de enfant sous condition
|
|
non (droit_ouvert_majoration de enfant)
|
|
conséquence égal à 0 €
|
|
|
|
règle droit_ouvert_complément rempli
|
|
|
|
définition enfant_le_plus_âgé.enfants égal à enfants_à_charge
|
|
définition est_enfant_le_plus_âgé de enfant égal à
|
|
enfant_le_plus_âgé.le_plus_âgé = enfant
|
|
|
|
définition montant_versé_base égal à
|
|
si droit_ouvert_base alors montant_avec_garde_alternée_base sinon 0€
|
|
définition montant_versé_majoration égal à
|
|
si droit_ouvert_base alors
|
|
somme argent pour enfant dans enfants_à_charge de
|
|
montant_avec_garde_alternée_majoration de enfant
|
|
sinon 0€
|
|
|
|
définition montant_versé égal à
|
|
si droit_ouvert_base alors
|
|
montant_versé_base +€
|
|
montant_versé_majoration +€
|
|
montant_versé_forfaitaire +€
|
|
montant_versé_complément_pour_base_et_majoration +€
|
|
montant_versé_complément_pour_forfaitaire
|
|
sinon 0€
|
|
```
|
|
|
|
## Interface du programme
|
|
|
|
Le calcul des allocations familiales nécessite un certain nombre d'informations
|
|
sur les enfants à charge. Certaines de ces informations sont dépendantes les
|
|
unes des autres : par exemple, l'âge de l'enfant se déduit de sa date de
|
|
naissance. Le but du block ci-dessous est d'encoder ces dépendances, de telle
|
|
sorte que l'utilisateur puisse ne doive saisir que le nombre minimal
|
|
d'informations sur les enfants à charge.
|
|
|
|
```catala-metadata
|
|
déclaration structure EnfantEntrée:
|
|
donnée d_identifiant contenu entier
|
|
donnée d_rémuneration_mensuelle contenu argent
|
|
donnée d_date_de_naissance contenu date
|
|
donnée d_prise_en_charge contenu PriseEnCharge
|
|
donnée d_a_déjà_ouvert_droit_aux_allocations_familiales contenu booléen
|
|
donnée d_bénéficie_titre_personnel_aide_personnelle_logement contenu booléen
|
|
|
|
déclaration champ d'application InterfaceAllocationsFamiliales:
|
|
entrée i_date_courante contenu date
|
|
entrée i_enfants contenu collection EnfantEntrée
|
|
interne enfants_à_charge contenu collection Enfant
|
|
allocations_familiales champ d'application AllocationsFamiliales
|
|
entrée i_ressources_ménage contenu argent
|
|
entrée i_résidence contenu Collectivité
|
|
sortie i_montant_versé contenu argent
|
|
entrée i_personne_charge_effective_permanente_est_parent condition
|
|
entrée i_personne_charge_effective_permanente_remplit_titre_I condition
|
|
entrée i_avait_enfant_à_charge_avant_1er_janvier_2012 condition
|
|
|
|
champ d'application InterfaceAllocationsFamiliales:
|
|
définition allocations_familiales.date_courante égal à i_date_courante
|
|
définition allocations_familiales.enfants_à_charge égal à enfants_à_charge
|
|
définition allocations_familiales.ressources_ménage égal à i_ressources_ménage
|
|
définition allocations_familiales.résidence égal à i_résidence
|
|
définition i_montant_versé égal à allocations_familiales.montant_versé
|
|
règle
|
|
allocations_familiales.personne_charge_effective_permanente_est_parent
|
|
sous condition i_personne_charge_effective_permanente_est_parent
|
|
conséquence rempli
|
|
règle
|
|
allocations_familiales.personne_charge_effective_permanente_remplit_titre_I
|
|
sous condition i_personne_charge_effective_permanente_remplit_titre_I
|
|
conséquence rempli
|
|
règle
|
|
allocations_familiales.avait_enfant_à_charge_avant_1er_janvier_2012
|
|
sous condition i_avait_enfant_à_charge_avant_1er_janvier_2012
|
|
conséquence rempli
|
|
```
|
|
|
|
### Code de l'éducation
|
|
|
|
### Article L131-1|LEGIARTI000038901859
|
|
|
|
L'instruction est obligatoire pour chaque enfant dès l'âge de trois ans et
|
|
jusqu'à l'âge de seize ans.
|
|
|
|
La présente disposition ne fait pas obstacle à l'application des prescriptions
|
|
particulières imposant une scolarité plus longue.
|
|
|
|
```catala
|
|
champ d'application InterfaceAllocationsFamiliales:
|
|
définition enfants_à_charge égal à application pour enfant dans i_enfants de
|
|
Enfant {
|
|
-- identifiant : enfant.d_identifiant
|
|
-- rémuneration_mensuelle : enfant.d_rémuneration_mensuelle
|
|
-- date_de_naissance : enfant.d_date_de_naissance
|
|
-- prise_en_charge : enfant.d_prise_en_charge
|
|
-- âge: accès_année de
|
|
(|0000-01-01| +@ (i_date_courante -@ enfant.d_date_de_naissance))
|
|
-- obligation_scolaire :
|
|
(si enfant.d_date_de_naissance +@ 3 an >=@ i_date_courante alors
|
|
Avant
|
|
sinon (si enfant.d_date_de_naissance +@ 16 an >=@ i_date_courante alors
|
|
Pendant
|
|
sinon Après))
|
|
-- a_déjà_ouvert_droit_aux_allocations_familiales:
|
|
enfant.d_a_déjà_ouvert_droit_aux_allocations_familiales
|
|
-- bénéficie_titre_personnel_aide_personnelle_logement:
|
|
enfant.d_bénéficie_titre_personnel_aide_personnelle_logement
|
|
}
|
|
```
|