Skip to content

Commit

Permalink
Merge pull request #76 from openfisca/eure-et-loir-repas-foyer
Browse files Browse the repository at this point in the history
[Eure-et-Loir] Ajoute 2 aides repas foyer
  • Loading branch information
sandcha authored Feb 24, 2021
2 parents 99709fc + de0a553 commit a801379
Show file tree
Hide file tree
Showing 8 changed files with 761 additions and 15 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@ build
*.egg-info
*.pyc

# Développement sur PyCharm IDEA
# Edition de code en local
.idea
/.vscode
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,14 @@
from openfisca_france.model.prestations.autonomie import TypesGir


class aide_menagere_fournie_caisse_retraite(Variable):
value_type = bool
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 eure_et_loir_eligibilite_aide_menagere_personne_agee(Variable):
value_type = bool
entity = Individu
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from openfisca_france.model.base import Variable, Individu, MONTH, Famille
from openfisca_france.model.base import Variable, Individu, Famille, MONTH


class titre_sejour(Variable):
Expand All @@ -25,14 +25,6 @@ class apatride(Variable):
default_value = False


class aide_menagere_fournie_caisse_retraite(Variable):
value_type = bool
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 beneficiaire_actp(Variable):
value_type = bool
label = "Bénéficiaire de l'Allocation compensatrice pour tierce personne"
Expand All @@ -43,7 +35,7 @@ class beneficiaire_actp(Variable):

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
Expand All @@ -64,21 +56,22 @@ class beneficiaire_complement_aeeh(Variable):
definition_period = MONTH
default_value = False


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


class station_debout_penible(Variable):
value_type = bool
label = "La station debout est pénible pour cet individu"
entity = Individu
definition_period = MONTH
default_value = False


class refugie(Variable):
value_type = bool
label = "La personne est réfugié"
Expand Down
107 changes: 107 additions & 0 deletions openfisca_france_local/departements/eure_et_loir/repas_foyer.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# -*- coding: utf-8 -*-
from openfisca_france.model.base import Variable, Individu, MONTH, not_, DIVIDE


class eure_et_loir_eligibilite_repas_foyer_personne_agee(Variable):
value_type = bool
entity = Individu
definition_period = MONTH
label = "En Eure-et-Loir, éligibilité à l'aide Repas Foyer pour les personnes âgées"
reference = ["Titre 2 Chapitre 1-2 du règlement départementl d'Aide Sociale PA PH de l'Eure-et-Loir",
"https://github.com/openfisca/openfisca-france-local/wiki/files/departements/eure-et-loir/RDAS_valide__decembre_2019.pdf"
]
documentation = """
Les personnes âgées peuvent bénéficier d’une prise en charge des frais de repas servis par des foyers restaurant créés par les communes, les CCAS ou les CIAS habilités à l’aide sociale. La participation financière du bénéficiaire est déterminée en fonction de ses ressources et du prix du repas.
Cette aide fait l’objet d’une récupération sur succession et n’est pas cumulable avec l’Allocation compensatrice pour tierce personne (ACTP), la Majoration Tierce Personne (MTP versée par la CPAM), l’Allocation personnalisée d’autonomie (APA), les prestations d’aide-ménagère servie par les caisses de retraite.
"""

def formula_2020_01(individu, period, parameters):
age = individu('age', period)
inapte_travail = individu('inapte_travail', period)
ressortissant_eee = individu('ressortissant_eee', period)
repas_foyer_parameters = parameters(
period).departements.eure_et_loir.repas_foyer

condition_residence = individu.menage('eure_et_loir_eligibilite_residence', period)
condition_age = ((age >= repas_foyer_parameters.age_minimal_personne_agee_apte_travail) + (
(age >= repas_foyer_parameters.age_minimal_personne_agee_inapte_travail) * inapte_travail))
condition_nationalite = ressortissant_eee + individu('titre_sejour', period) + individu('refugie',period) + individu('apatride', period)
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 = not_(individu('beneficiaire_actp', period))
condition_aides_mtp = not_(individu('mtp', period))
condition_aide_menagere_caisse_retraite = not_(individu('aide_menagere_fournie_caisse_retraite', period))
conditions_non_cumul = condition_apa * condition_aide_menagere_caisse_retraite * condition_aides_actp * condition_aides_mtp

return (
condition_residence
* condition_age
* condition_nationalite
* condition_ressources
* conditions_non_cumul
)


class eure_et_loir_eligibilite_repas_foyer_personne_handicapee(Variable):
value_type = bool
entity = Individu
definition_period = MONTH
label = "En Eure-et-Loir, éligibilité à l'aide Repas Foyer pour les personnes handicapées"
reference = ["Titre 3 Chapitre 1-2 du règlement départementl d'Aide Sociale PA PH de l'Eure-et-Loir",
"https://github.com/openfisca/openfisca-france-local/wiki/files/departements/eure-et-loir/RDAS_valide__decembre_2019.pdf"
]
documentation = """
Les personnes en situation de handicap peuvent bénéficier d’une prise en charge des frais de repas servis par des foyers restaurant créés par les communes, les CCAS ou les CIAS habilités à l’aide sociale.
La participation financière du bénéficiaire est déterminée en fonction de ses ressources et du prix du repas.
Cette aide n’est pas cumulable avec l’Allocation compensatrice pour tierce personne (ACTP), la Majoration Tierce Personne (MTP versée par la CPAM) et les prestations d’aide-ménagère servies par les caisses de retraite.
"""

def formula_2020_01(individu, period, parameters):
taux_incapacite = individu('taux_incapacite', period)
restriction_substantielle_durable = individu('aah_restriction_substantielle_durable_acces_emploi', period)
age = individu('age', period)
ressortissant_eee = individu('ressortissant_eee', period)

repas_foyer_parameters = parameters(
period).departements.eure_et_loir.repas_foyer

# Base de ressources identique à celle pour l'aide ménagère PH.
individual_resource_names = {
'aah',
'salaire_imposable',
'retraite_imposable',
'pensions_invalidite',
'revenus_stage_formation_pro'
}
ressources_famille = {'aspa'}
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]))

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

condition_aides_actp = not_(individu('beneficiaire_actp', period))
condition_aides_mtp = not_(individu('mtp', period))
condition_aide_menagere_caisse_retraite = not_(individu('aide_menagere_fournie_caisse_retraite', period))
conditions_non_cumul = condition_aide_menagere_caisse_retraite * condition_aides_actp * condition_aides_mtp

return (
condition_residence
* condition_taux_incapacite
* condition_nationalite
* condition_age
* conditions_non_cumul
* condition_ressources
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
age_minimal_personne_agee_apte_travail:
reference: Titre 2 Chapitre 1-2 Article 36 du Règlement départemental d'Aide Sociale PA PH de l'Eure-et-Loir
description: Age minimal pris en compte pour une PA apte au travail demandant l'aide repas foyer
values:
2020-01-01:
value: 65
age_minimal_personne_agee_inapte_travail:
reference: Titre 2 Chapitre 1-2 Article 36 du Règlement départemental d'Aide Sociale PA PH de l'Eure-et-Loir
description: Age minimal pris en compte pour une PA inapte au travail demandant l'aide repas foyer
values:
2020-01-01:
value: 60
age_minimal_personne_handicap:
reference: Titre 3 Chapitre 1-1 Article 94-1 du Règlement départemental d'Aide Sociale PA PH de l'Eure-et-Loir
description: Age minimal pris en compte pour une PH demandant l'aide repas foyer
values:
2020-01-01:
value: 60
taux_incapacite_superieur:
reference: Titre 3 Chapitre 1-1 Article 94-4 du Règlement départemental d'Aide Sociale PA PH de l'Eure-et-Loir
description: Taux d'incapacité au-dessus duquel l'aide repas foyer est allouée pour une PH
values:
2020-01-01:
value: 0.8
taux_incapacite_minimum_restriction_acces_emploi:
reference: Titre 3 Chapitre 1-1 Article 94-4 du Règlement départemental d'Aide Sociale PA PH de l'Eure-et-Loir
description: Taux d'incapacité minimal au-dessus duquel l'aide repas foyer est allouée pour un PH ayant une restriction à l'emploi
values:
2020-01-01:
value: 0.5
taux_incapacite_maximum_restriction_acces_emploi:
reference: Titre 3 Chapitre 1-1 Article 94-4 du Règlement départemental d'Aide Sociale PA PH de l'Eure-et-Loir
description: Taux d'incapacité maximal au-dessous duquel l'aide repas foyer est allouée pour un PH ayant une restriction à l'emploi
values:
2020-01-01:
value: 0.79
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

setup(
name="OpenFisca-France-Local",
version="0.5.0",
version="0.6.0",
description="Extension OpenFisca pour nos partenariats avec les collectivités territoriales",
license="http://www.fsf.org/licensing/licenses/agpl-3.0.html",
author="",
Expand Down
Loading

0 comments on commit a801379

Please sign in to comment.