Skip to content

Commit

Permalink
Aide ménagère : Correction suite PR
Browse files Browse the repository at this point in the history
- Ajout du non cumul pour les PH
- Correction des conditions
- Ajout de commentaires pour développements futurs
  • Loading branch information
CecileIAEGI committed Jan 4, 2021
1 parent 874bdc4 commit 46c1acc
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 19 deletions.
41 changes: 27 additions & 14 deletions openfisca_france_local/departements/eure_et_loir/aide-menagere.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,18 @@ def formula_2020_01(individu, period, parameters):

condition_residence = individu.menage('eure_et_loir_eligibilite_residence', period)
condition_age = ((age >= parameters_chemin.age_minimal_personne_agee_apte_travail) + (
(age >= parameters_chemin.age_minimal_personne_agee_inapte_travail) * inapte_travail))
condition_nationalite = ressortissant_eee + individu('refugie',period) + individu('apatride', period)
(age >= parameters_chemin.age_minimal_personne_agee_inapte_travail) * inapte_travail))
condition_nationalite = ressortissant_eee + individu('refugie', period) + individu('apatride', period)

# condition non intégrée : Les personnes de nationalité étrangère doivent justifier d'une résidence
# en France métropolitaine ininterrompue depuis au moins 15 ans, et ce avant l'âge de 70 ans.
condition_gir = ((gir == TypesGir.gir_5) + (gir == TypesGir.gir_6))
condition_ressources = individu('asi_aspa_base_ressources_individu', period) <= individu.famille('aspa', period)

condition_apa = individu('apa_domicile', period.last_month) <=0
condition_aides_actp = False if possede_actp else True
condition_aides_mtp = False if possede_mtp else True
condition_aide_menagere_caisse_retraite = False if individu('aide_menagere_fournie_caisse_retraite',period.last_month) else True
condition_apa = individu('apa_domicile', period.last_month) <= 0
condition_aides_actp = not_(possede_actp)
condition_aides_mtp = not_(possede_mtp)
condition_aide_menagere_caisse_retraite = not_(individu('aide_menagere_fournie_caisse_retraite', period))
conditions_aides = condition_apa * condition_aide_menagere_caisse_retraite * condition_aides_actp * condition_aides_mtp

return condition_residence * condition_age * condition_nationalite * condition_gir * condition_ressources * conditions_aides
Expand All @@ -64,6 +67,8 @@ def formula_2020_01(individu, period, parameters):
restriction_substantielle_durable = individu('aah_restriction_substantielle_durable_acces_emploi', period)
age = individu('age', period)
ressortissant_eee = individu('ressortissant_eee', period)
possede_actp = individu('actp', period)
possede_mtp = individu('mtp', period)

individual_resource_names = {
'aah',
Expand All @@ -76,19 +81,27 @@ def formula_2020_01(individu, period, parameters):
ressources_annuelles = {'retraite_complementaire_artisan_commercant',
'retraite_complementaire_profession_liberale'
}
individu_resources_month = sum(sum([individu(resource, period.last_month) for resource in individual_resource_names]),
sum([individu.famille(resource, period.last_month) for resource in ressources_famille]))
individu_resources = sum(individu_resources_month,sum([individu(resource, period, options = [DIVIDE]) for resource in ressources_annuelles]))
individu_resources_month = sum(
sum([individu(resource, period.last_month) for resource in individual_resource_names]),
sum([individu.famille(resource, period.last_month) for resource in ressources_famille]))
individu_resources = sum(individu_resources_month, sum(
[individu(resource, period, options=[DIVIDE]) for resource in ressources_annuelles]))

condition_residence = individu.menage('eure_et_loir_eligibilite_residence', period)
parameters_chemin = parameters(
period).departements.eure_et_loir.aide_menagere

condition_taux_incapacite = ((taux_incapacite >= parameters_chemin.taux_incapacite_superieur)
+ ((taux_incapacite < parameters_chemin.taux_incapacite_maximum_restriction_acces_emploi) * ((taux_incapacite > parameters_chemin.taux_incapacite_minimum_restriction_acces_emploi) * restriction_substantielle_durable)))
+ ((taux_incapacite < parameters_chemin.taux_incapacite_maximum_restriction_acces_emploi) *
((taux_incapacite > parameters_chemin.taux_incapacite_minimum_restriction_acces_emploi) * restriction_substantielle_durable)))
condition_age = (age <= parameters_chemin.age_minimal_personne_handicap)
condition_nationalite = ressortissant_eee + individu('refugie',period) + individu('apatride', period)
condition_ressources = individu_resources < individu.famille('aspa', period)

return condition_residence * condition_taux_incapacite * condition_age * condition_nationalite * condition_ressources
condition_nationalite = ressortissant_eee + individu('refugie', period) + individu('apatride', period)
# condition non intégrée : Les personnes de nationalité étrangère doivent justifier d'une résidence
# en France métropolitaine ininterrompue depuis au moins 15 ans, et ce avant l'âge de 70 ans.
condition_ressources = individu_resources <= individu.famille('aspa', period)
condition_aides_actp = not_(possede_actp)
condition_aides_mtp = not_(possede_mtp)
condition_aide_menagere_caisse_retraite = not_(individu('aide_menagere_fournie_caisse_retraite', period))
conditions_aides = condition_aide_menagere_caisse_retraite * condition_aides_actp * condition_aides_mtp

return condition_residence * condition_taux_incapacite * condition_age * condition_nationalite * condition_ressources * conditions_aides
Original file line number Diff line number Diff line change
@@ -1,33 +1,38 @@
from openfisca_france.model.base import Variable, Individu, MONTH


class aide_menagere_fournie_caisse_retraite(Variable):
value_type = bool
label ="Prestations d’aide-ménagère servie par les caisses de retraite"
label = "Bénéficiaire de prestations d’aide-ménagère servie par les caisses de retraite"
entity = Individu
definition_period = MONTH
default_value = False


class actp(Variable):
value_type = bool
label ="Bénéficiaire de l'Allocation compensatrice pour tierce personne"
label = "Bénéficiaire de l'Allocation compensatrice pour tierce personne"
entity = Individu
definition_period = MONTH
default_value = False


class mtp(Variable):
value_type = bool
label ="Bénéficiaire de la Majoration Tierce Personne"
label = "Bénéficiaire de la Majoration Tierce Personne"
entity = Individu
definition_period = MONTH
default_value = False


class refugie(Variable):
value_type = bool
label = "La personne est réfugié"
entity = Individu
definition_period = MONTH
default_value = False


class apatride(Variable):
value_type = bool
label = "La personne est apatride"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -239,8 +239,7 @@
inapte_travail: False
nationalite: FR
gir: gir_5
aide_menagere_fournie_caisse_retraite:
2020-09: True
aide_menagere_fournie_caisse_retraite: True
familles:
_:
parents: p1
Expand Down

0 comments on commit 46c1acc

Please sign in to comment.