Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Limite expérimentation à départements associés #2360

Merged
merged 13 commits into from
Oct 2, 2024
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 168.2.0 [2360](https://github.com/openfisca/openfisca-france/pull/2360)

* Évolution du système socio-fiscal. | Correction d'un crash.
* Périodes concernées : à partir du 01/10/2024.
* Zones impactées : `model/prestations/minima_sociaux/ppa.`.
* Détails :
- Une expérimentation sur le pré-remplissage des revenus pour calculer la prime d'activité et le RSA n'était pas limitée aux départments concernés dans https://github.com/openfisca/openfisca-france/pull/2337/files.

### 168.1.5 [2358](https://github.com/openfisca/openfisca-france/pull/2358)

* Changement mineur.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -290,3 +290,12 @@ def formula(menage, period, parameters):
],
default=TypesLieuResidence.metropole
)


class departement_experimentation_rsa(Variable):
value_type = bool
entity = Famille
default_value = False
label = 'Résidence dans un département expérimentant le préremplissage du RSA'
definition_period = MONTH
set_input = set_input_dispatch_by_period
5 changes: 4 additions & 1 deletion openfisca_france/model/prestations/minima_sociaux/ppa.py
Original file line number Diff line number Diff line change
Expand Up @@ -503,7 +503,10 @@ class ppa(Variable):
reference = 'https://www.service-public.fr/particuliers/vosdroits/F2882'

def formula_2024_10(famille, period, parameters):
return ppa_base_formula(famille=famille, parameters=parameters, period=period, three_months_of_reference=last_3_months_offset_minus_1(period))
departement_experimentation_rsa = famille('departement_experimentation_rsa', period)
experimentation = ppa_base_formula(famille=famille, parameters=parameters, period=period, three_months_of_reference=last_3_months_offset_minus_1(period))
normal = ppa_base_formula(famille=famille, parameters=parameters, period=period, three_months_of_reference=period.last_3_months)
return where(departement_experimentation_rsa, experimentation, normal)

def formula_2016_01_01(famille, period, parameters):
return ppa_base_formula(famille=famille, parameters=parameters, period=period, three_months_of_reference=period.last_3_months)
Expand Down
17 changes: 12 additions & 5 deletions openfisca_france/model/prestations/minima_sociaux/rsa.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,10 @@ class rsa_base_ressources_individu(Variable):
reference = 'https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006073189&idArticle=LEGIARTI000036393176&dateTexte=&categorieLien=id'

def formula_2024_10(individu, period, parameters):
return rsa_base_ressources_individu_base_formula(individu= individu, period= period, three_months_of_reference= last_3_months_offset_minus_1(period), parameters=parameters)
departement_experimentation_rsa = individu.famille('departement_experimentation_rsa', period)
experimentation = rsa_base_ressources_individu_base_formula(individu= individu, period= period, three_months_of_reference= last_3_months_offset_minus_1(period), parameters=parameters)
normal = rsa_base_ressources_individu_base_formula(individu= individu, period= period, three_months_of_reference= period.last_3_months, parameters=parameters)
return where(departement_experimentation_rsa, experimentation, normal)

def formula_2009_06_01(individu, period, parameters):
return rsa_base_ressources_individu_base_formula(individu= individu, period= period, three_months_of_reference= period.last_3_months, parameters=parameters)
Expand Down Expand Up @@ -146,8 +149,10 @@ class rsa_base_ressources_minima_sociaux(Variable):
set_input = set_input_divide_by_period

def formula_2024_10(famille, period):
three_months_of_reference = last_3_months_offset_minus_1(period)
return calcul_minima_sociaux(famille= famille, period= period, three_months_of_reference=three_months_of_reference)
departement_experimentation_rsa = famille('departement_experimentation_rsa', period)
experimentation = calcul_minima_sociaux(famille= famille, period= period, three_months_of_reference= last_3_months_offset_minus_1(period))
normal = calcul_minima_sociaux(famille= famille, period= period, three_months_of_reference= period.last_3_months)
return where(departement_experimentation_rsa, experimentation, normal)

def formula(famille, period):
three_previous_months = period.last_3_months
Expand Down Expand Up @@ -478,8 +483,10 @@ class rsa_revenu_activite_individu(Variable):
set_input = set_input_divide_by_period

def formula_2024_10(individu, period):
period_m2_m4 = last_3_months_offset_minus_1(period)
return rsa_revenu_activite_individu_base_formula(individu= individu, period=period, three_months_of_reference=period_m2_m4)
departement_experimentation_rsa = individu.famille('departement_experimentation_rsa', period)
experimentation = rsa_revenu_activite_individu_base_formula(individu= individu, period= period, three_months_of_reference= last_3_months_offset_minus_1(period))
normal = rsa_revenu_activite_individu_base_formula(individu= individu, period= period, three_months_of_reference= period.last_3_months)
return where(departement_experimentation_rsa, experimentation, normal)

def formula_2009_06(individu, period):
last_3_months = period.last_3_months
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

setup(
name = 'OpenFisca-France',
version = '168.1.5',
version = '168.2.0',
author = 'OpenFisca Team',
author_email = '[email protected]',
classifiers = [
Expand Down
43 changes: 43 additions & 0 deletions tests/formulas/ppa/ppa.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1038,6 +1038,7 @@
famille:
parents: [parent1, parent2]
ppa_eligibilite: true
departement_experimentation_rsa: true
benjello marked this conversation as resolved.
Show resolved Hide resolved
aide_logement:
2025-01: 200
2024-12: 200
Expand Down Expand Up @@ -1073,6 +1074,48 @@
output:
ppa: 366

- name: Cas PPA period > Oct 2024 et département hors expérimentation
period: 2025-01
absolute_error_margin: 0.005
input:
famille:
parents: [parent1, parent2]
ppa_eligibilite: true
departement_experimentation_rsa: false
aide_logement:
2025-01: 200
2024-12: 200
2024-11: 200
2024-10: 200
individus:
parent1:
age: 40
salaire_net:
2024-11: 300
2024-10: 300
2024-09: 300
parent2:
age: 40
salaire_net:
2024-11: 300
2024-10: 300
2024-09: 300
foyers_fiscaux:
foyer_fiscal_0:
declarants:
- parent1
foyer_fiscal_1:
declarants:
- parent2
menages:
menage_0:
personne_de_reference:
- parent1
menage_1:
personne_de_reference:
- parent2
output:
ppa: 244

- name: Cas PPA period < Oct 2024 et ressources sur M-1 M-3 ( à jumeler avec un test avant Octobre 2024 en M-2 M-4)
period: 2024-09
Expand Down
38 changes: 38 additions & 0 deletions tests/formulas/rsa.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -672,6 +672,7 @@
input:
famille:
parents: [personne1, personne2]
departement_experimentation_rsa: true
aide_logement:
2025-01: 200
2024-12: 200
Expand Down Expand Up @@ -702,6 +703,43 @@
rsa:
2025-01: 633.9946

- name: RSA Cas period > Oct 2024 hors département d'expérimentation
period: 2025-01
absolute_error_margin: 0.05
input:
famille:
parents: [personne1, personne2]
departement_experimentation_rsa: false
aide_logement:
2025-01: 200
2024-12: 200
2024-11: 200
2024-10: 200
foyer_fiscal:
declarants: [personne1, personne2]
menage:
personne_de_reference: personne1
conjoint: personne2
statut_occupation_logement: locataire_vide
individus:
personne1:
date_naissance: 1980-01-01
salaire_net:
2025-01: 100
2024-11: 100
2024-10: 100
2024-09: 100
personne2:
date_naissance: 1982-02-02
salaire_net:
2025-01: 67
2024-11: 67
2024-10: 67
2024-09: 67
output:
rsa:
2025-01: 689.613


- name: RSA Cas period < Oct 2024 et ressource sur M-1 M-3 ( à jumeler avec un test après Octobre 2024 en M-2 M-4)
period: 2024-09
Expand Down
Loading