Commit f4ba506d authored by David Foucher's avatar David Foucher

Merge branch 'BFC-improve-remu-module' into 'master'

Add in BFC remu rule  "aide au transport" and "aide au logement"

See merge request !8
parents 9b729b99 5e9c5705
Pipeline #2051 passed with stage
in 1 minute and 14 seconds
......@@ -287,6 +287,9 @@ Scénario: Cas parent isolé
Quand je demande un calcul de financement
Quand je sélectionne le financement «Action collective financée par la Région»
Alors la rémunération applicable vaut 863.0
Et le montant de l'aide au transport vaut «98,79€ par mois (sous condition)»
Et le montant de l'aide au logement vaut «101,84€ par mois (sous condition)»
Scénario: Cas non salarié ayant travaillé
Soit un bénéficiaire et une formation
......
......@@ -19,8 +19,16 @@ Si les codes financeur de la formation contiennent «Conseil régional»
Si c'est un parent isolé
Ou c'est une mère de famille ayant au moins trois enfants
Ou c'est une femme divorcée, veuve ou séparée judiciairement depuis moins de trois ans
Et la rémunération applicable est inférieure à 863.00
Alors la rémunération applicable vaut 863.00
Ou c'est une femme seule et enceinte
#Ou c'est un demandeur d'emploi # A confirmer
Alors l'aide au transport est éligible
Et le montant de l'aide au transport vaut «98,79€ par mois (sous condition)»
Et le texte de l'aide au transport vaut «Si la distance vers le lieu de votre formation est supérieure à 16km. Alors vous pouvez bénéficier d'une aide au transport.»
Et l'aide au logement est éligible
Et le montant de l'aide au logement vaut «101,84€ par mois (sous condition)»
Et le texte de l'aide au logement vaut «Si la distance vers le lieu de votre formation est supérieure à 250km. Alors vous pouvez bénéficier d'une aide à l'hébergement. Cette aide est non cumulable avec l'aide au transport.»
Si la rémunération applicable est inférieure à 863.00
Alors la rémunération applicable vaut 863.00
Si c'est un travailleur handicapé
Et la rémunération applicable est inférieure à 910.02
......
......@@ -285,6 +285,11 @@ beneficiaire:
type: boolean
public: true
label: femme divorcée, veuve ou séparée judiciairement depuis moins de trois ans
seule_et_enceinte:
description: vous êtes une femme isolée et enceinte
type: boolean
public: true
label: femme seule et enceinte
creation_entreprise:
description: le bénéficiaire est en situation de création d'entreprise
alias:
......@@ -1043,6 +1048,53 @@ formation:
individuels:
type: boolean
label: formation ouverte aux bénéficiaires individuels
aide: &aide
droit_aide_complementaire:
description: le bénéficiaire a droit a une aide complémentaire
type: boolean
public: true
label: aide complémentaire
montant_aide_complementaire:
description: le montant de l'aide complémentaire
type: number
format: float
public: true
label: montant de l'aide complémentaire
description_aide_complementaire:
description: texte de description de l'aide complémentaire
type: string
public: true
label: texte de l'aide complémentaire
droit_aide_transport:
description: le bénéficiaire a droit a une aide au transport
type: boolean
public: true
label: aide au transport
montant_aide_transport:
description: le montant de l'aide au transport
type: string
public: true
label: montant de l'aide au transport
description_aide_transport:
description: texte de description de l'aide au transport
type: string
public: true
label: texte de l'aide au transport
droit_aide_logement:
description: le bénéficiaire a droit a une aide au logement
type: boolean
public: true
label: aide au logement
montant_aide_logement:
description: le montant de l'aide au logement
type: string
public: true
label: montant de l'aide au logement
description_aide_logement:
description: texte de description de l'aide au transport
type: string
public: true
label: texte de l'aide au logement
remuneration: &remuneration
intitule_remuneration: # add _remuneration to not overlap financement.intitule
description: le nom de la règle de rémuneration
......@@ -1118,6 +1170,7 @@ remuneration: &remuneration
nullable: true
public: true
label: date de fin de la rémunération applicable
<<: *aide
financement:
intitule:
description: le nom du financement
......
......@@ -54,3 +54,4 @@ add_schema("beneficiaire")
add_schema("formation")
add_schema("financement")
add_schema("remuneration")
add_schema("aide")
......@@ -254,6 +254,12 @@ def compute_remuneration(context, facility, facility_name="financement"):
"remuneration_annee_2",
"remuneration_annee_3",
"en_savoir_plus",
"droit_aide_transport",
"montant_aide_transport",
"description_aide_transport",
"droit_aide_logement",
"montant_aide_logement",
"description_aide_logement",
]
for key in keys:
name = facility_name + f".{key}"
......@@ -328,6 +334,9 @@ def check_remuneration(context, remuneration):
if key.startswith("remuneration"):
if(context.get("financement." + key[13:])):
context[key] = context.get("financement." + key[13:])
if key.startswith("aide"):
if(context.get("financement." + key[5:])):
context[key] = context.get("financement." + key[5:])
compute_remuneration(context, remuneration, facility_name="remuneration")
# load_organisme_contact_details(context, remuneration)
......
......@@ -15,17 +15,18 @@ def set_percent(context, key: Label, rate: float, value: Pointer):
context[key] = round(value.get(context) * rate / 100, 2)
@action(r"c'est une? (?P<key>.+)")
@action(r"(l'|les? |la )(?P<key>.+?) est éligible$")
def set_true(context, key: Label):
context[key] = True
@action(r"(l'|les? |la )(?P<key>.+?) (vaut|est) (l'|les? |la )?(?P<value>.+)$")
@action(r"(l'|les? |la )(?P<key>.+?) est égale? (à la |à l'|à |aux? )?(?P<value>.+)$")
def set_value(context, key: Label, value: Pointer):
context[key] = value.get(context)
@action(r"c'est une? (?P<key>.+)")
def set_true(context, key: Label):
context[key] = True
@action(r"appliquer les règles (de )?(l'|le |la )?(?P<rule>.+)")
def include(context, rule: Pointer):
name = rule.get(context)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment