Skip to content
Snippets Groups Projects
Commit 76f6075c authored by cgl's avatar cgl
Browse files

ajoute revalorisation retraites

parent 3df11327
Branches
No related tags found
No related merge requests found
Pipeline #21625 passed
Pipeline: leximpact-socio-fiscal-api

#21628

    Pipeline: OpenFisca-JSON-Model

    #21627

      ......@@ -6,7 +6,7 @@ from openfisca_core.reforms import Reform
      from ..inflaters import inflate_parameters
      from openfisca_france_reforms.contrefactuel_plf.allegement import allegement_general
      from openfisca_france_reforms.contrefactuel_plf.revalorisation_retraite_brute import retraite_brute, retraite_complementaire, retraite_de_base, retraite_de_base_n_1
      year_contrefactuel = 2026
      ......@@ -244,7 +244,10 @@ class ContrefactuelPlf(Reform):
      def apply(self):
      self.modify_parameters(modifier_function=modify_parameters)
      self.update_variable(allegement_general)
      for variable in [allegement_general, retraite_brute]:
      self.update_variable(variable)
      for variable in [retraite_complementaire, retraite_de_base, retraite_de_base_n_1]:
      self.add_variable(variable)
      def add_metadata(parameters, metadata: dict):
      ......
      description: Moyenne annuelle des prix à la consommation, hors tabac, calculée sur les douze derniers indices mensuels de ces prix publiés par l'INSEE l'avant-dernier mois qui précède la date de revalorisation des prestations concernées.
      description: Taux de revalorisation des retraites au premier janver
      values:
      2024-01-01:
      value: 0.05
      ......@@ -7,11 +7,6 @@ values:
      2026-01-01:
      value: 0.07
      metadata:
      short_label: inflation_n_1_avril
      short_label: revalorisation_retraites
      unit: /1
      reference:
      2024-01-01:
      title: Projet de loi de financement de la sécurité sociale pour 2024, pXXXXX
      2025-01-01:
      title: Projet de loi de financement de la sécurité sociale pour 2025, pXXXXX
      from openfisca_france.model.base import set_input_divide_by_period,calculate_output_add , FoyerFiscal, max_, Variable, MONTH, Individu, ADD
      import logging
      class retraite_brute_revalorisee(Variable):
      from numpy import busday_count, datetime64, logical_or as or_, logical_and as and_, timedelta64
      from openfisca_core.periods import Period
      from openfisca_france.model.base import *
      class retraite_de_base_n_1(Variable):
      value_type = float
      entity = Individu
      label = 'Retraite brute revalorisee'
      label = "Retraite brute de l'année passée"
      definition_period = MONTH
      set_input = set_input_divide_by_period
      calculate_output = calculate_output_add
      unit = 'currency'
      class retraite_de_base(Variable):
      value_type = float
      entity = Individu
      label = 'Retraite brute'
      definition_period = MONTH
      set_input = set_input_divide_by_period
      calculate_output = calculate_output_add
      unit = 'currency'
      def formula(individu, period, parameters):
      retraite_brute = individu('retraite_brute', period)
      inflateur = parameters(period).inflateur.inflateur_retraites
      taux_revalorisation = parameters(period).inflateurs.inflateur_retraites
      return individu('retraite_de_base_n_1',period) * taux_revalorisation
      class retraite_complementaire(Variable):
      value_type = float
      entity = Individu
      label = 'Retraite brute'
      definition_period = MONTH
      set_input = set_input_divide_by_period
      calculate_output = calculate_output_add
      unit = 'currency'
      return retraite_brute * (1+inflateur)
      class retraite_imposable(Variable):
      class retraite_brute(Variable):
      unit = 'currency'
      value_type = float
      cerfa_field = {
      0: '1AS',
      1: '1BS',
      2: '1CS',
      3: '1DS',
      4: '1ES',
      }
      entity = Individu
      label = 'Retraites au sens strict imposables (rentes à titre onéreux exclues)'
      set_input = set_input_divide_by_period
      ......@@ -32,7 +50,7 @@ class retraite_imposable(Variable):
      definition_period = MONTH
      def formula(individu, period):
      retraite_brute = individu('retraite_brute_revalorisee', period)
      csg_deductible_retraite = individu('csg_deductible_retraite', period)
      retraite_de_base = individu('retraite_de_base',period)
      retraite_complementaire = individu('retraite_complementaire', period)
      return retraite_brute + csg_deductible_retraite
      \ No newline at end of file
      return retraite_de_base + retraite_complementaire
      \ No newline at end of file
      ......@@ -37,6 +37,7 @@ def modify_parameters(parameters):
      parameters.children['inflateurs'].children['inflateur_prestations_avril'] = inflateurs.inflateur_prestations_avril
      parameters.children['inflateurs'].children['inflateur_prestations_janvier'] = inflateurs.inflateur_prestations_janvier
      parameters.children['inflateurs'].children['inflateur_pss'] = inflateurs.inflateur_pss
      parameters.children['inflateurs'].children['inflateur_retraites'] = inflateurs.inflateur_retraites
      #parameters.children['inflateurs'].children['inflateur_bmaf'] = inflateurs.inflateur_bmaf
      param_ir = parameters.impot_revenu
      ......
      description: Taux de revalorisation des retraites au premier janver
      values:
      2024-01-01:
      value: 0.05
      2025-01-01:
      value: 0.06
      2026-01-01:
      value: 0
      metadata:
      short_label: revalorisation_retraites
      unit: /1
      0% Loading or .
      You are about to add 0 people to the discussion. Proceed with caution.
      Please register or to comment