OpenFisca-France 172.0.5__py3-none-any.whl → 172.0.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- openfisca_france/model/caracteristiques_socio_demographiques/demographie.py +8 -0
- openfisca_france/model/prestations/prestations_familiales/paje.py +151 -28
- {openfisca_france-172.0.5.dist-info → openfisca_france-172.0.6.dist-info}/METADATA +1 -1
- {openfisca_france-172.0.5.dist-info → openfisca_france-172.0.6.dist-info}/RECORD +7 -7
- {openfisca_france-172.0.5.dist-info → openfisca_france-172.0.6.dist-info}/WHEEL +0 -0
- {openfisca_france-172.0.5.dist-info → openfisca_france-172.0.6.dist-info}/licenses/LICENSE.AGPL.txt +0 -0
- {openfisca_france-172.0.5.dist-info → openfisca_france-172.0.6.dist-info}/top_level.txt +0 -0
|
@@ -52,6 +52,14 @@ class adoption(Variable):
|
|
|
52
52
|
set_input = set_input_dispatch_by_period
|
|
53
53
|
|
|
54
54
|
|
|
55
|
+
class date_adoption(Variable):
|
|
56
|
+
value_type = date
|
|
57
|
+
default_value = date(1970, 1, 1)
|
|
58
|
+
entity = Individu
|
|
59
|
+
label = "Date de l'arrivée au foyer de l'enfant adopté"
|
|
60
|
+
definition_period = ETERNITY
|
|
61
|
+
|
|
62
|
+
|
|
55
63
|
class garde_alternee(Variable):
|
|
56
64
|
value_type = bool
|
|
57
65
|
entity = Individu
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from numpy import round, floor, datetime64, maximum
|
|
1
|
+
from numpy import round, floor, datetime64, timedelta64, maximum
|
|
2
2
|
|
|
3
3
|
from openfisca_france.model.base import *
|
|
4
4
|
from openfisca_france.model.prestations.prestations_familiales.base_ressource import nb_enf
|
|
@@ -76,10 +76,11 @@ class paje(Variable):
|
|
|
76
76
|
'''
|
|
77
77
|
paje_base = famille('paje_base', period)
|
|
78
78
|
paje_naissance = famille('paje_naissance', period)
|
|
79
|
+
paje_adoption = famille('paje_adoption', period)
|
|
79
80
|
paje_prepare = famille('paje_prepare', period)
|
|
80
81
|
paje_cmg = famille('paje_cmg', period)
|
|
81
82
|
|
|
82
|
-
return paje_base + (paje_naissance + paje_prepare + paje_cmg)
|
|
83
|
+
return paje_base + (paje_naissance + paje_adoption + paje_prepare + paje_cmg)
|
|
83
84
|
|
|
84
85
|
def formula_2004_01_01(famille, period):
|
|
85
86
|
'''
|
|
@@ -308,39 +309,18 @@ class paje_naissance(Variable):
|
|
|
308
309
|
Références législatives :git
|
|
309
310
|
https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006073189&idArticle=LEGIARTI000006737121&dateTexte=&categorieLien=cid
|
|
310
311
|
'''
|
|
311
|
-
af_nbenf = famille('af_nbenf', period)
|
|
312
|
-
base_ressources = famille('prestations_familiales_base_ressources', period)
|
|
313
|
-
isole = not_(famille('en_couple', period))
|
|
314
|
-
biactivite = famille('biactivite', period)
|
|
315
|
-
paje = parameters(period).prestations_sociales.prestations_familiales.petite_enfance.paje
|
|
316
|
-
bmaf = parameters(period).prestations_sociales.prestations_familiales.bmaf.bmaf
|
|
317
|
-
prime_naissance = round(100 * paje.paje_cm2.montant.prime_naissance * bmaf) / 100
|
|
318
|
-
|
|
319
312
|
# Versée au 7ème mois de grossesse
|
|
320
313
|
diff_mois_naissance_periode_i = (famille.members('date_naissance', period).astype('datetime64[M]') - datetime64(period.start, 'M'))
|
|
321
314
|
nb_enfants_eligibles = famille.sum(diff_mois_naissance_periode_i.astype('int') == 2, role = Famille.ENFANT)
|
|
322
315
|
|
|
316
|
+
af_nbenf = famille('af_nbenf', period)
|
|
323
317
|
nbenf = af_nbenf + nb_enfants_eligibles # Ajouter les enfants à naître
|
|
324
318
|
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
+ paje.paje_plaf.ne_adopte_apres_04_2018.majorations_enfants.troisieme_plus_enfant * max_(nbenf - 2, 0)
|
|
329
|
-
)
|
|
330
|
-
|
|
331
|
-
majoration_isole_biactif = isole | biactivite
|
|
332
|
-
|
|
333
|
-
plafond_de_ressources = (
|
|
334
|
-
paje.paje_plaf.ne_adopte_apres_04_2018.taux_partiel.plafond_ressources_0_enfant
|
|
335
|
-
* taux_plafond
|
|
336
|
-
+ (taux_plafond > 0)
|
|
337
|
-
* paje.paje_plaf.ne_adopte_apres_04_2018.taux_partiel.biactifs_parents_isoles
|
|
338
|
-
* majoration_isole_biactif
|
|
339
|
-
)
|
|
340
|
-
|
|
341
|
-
eligible_prime_naissance = (base_ressources <= plafond_de_ressources)
|
|
319
|
+
paje = parameters(period).prestations_sociales.prestations_familiales.petite_enfance.paje
|
|
320
|
+
bmaf = parameters(period).prestations_sociales.prestations_familiales.bmaf.bmaf
|
|
321
|
+
prime_naissance = round(100 * paje.paje_cm2.montant.prime_naissance * bmaf) / 100
|
|
342
322
|
|
|
343
|
-
return
|
|
323
|
+
return paje_naissance_adoption(famille, parameters, period, nbenf, nb_enfants_eligibles, prime_naissance)
|
|
344
324
|
|
|
345
325
|
def formula_2014_04_01(famille, period, parameters):
|
|
346
326
|
'''
|
|
@@ -421,6 +401,149 @@ class paje_naissance(Variable):
|
|
|
421
401
|
return nais_prime * elig * nb_enfants_eligibles
|
|
422
402
|
|
|
423
403
|
|
|
404
|
+
class paje_adoption(Variable):
|
|
405
|
+
calculate_output = calculate_output_add
|
|
406
|
+
value_type = float
|
|
407
|
+
entity = Famille
|
|
408
|
+
label = "Allocation d'adoption de la PAJE"
|
|
409
|
+
reference = 'https://www.service-public.fr/particuliers/vosdroits/F13220'
|
|
410
|
+
definition_period = MONTH
|
|
411
|
+
set_input = set_input_divide_by_period
|
|
412
|
+
|
|
413
|
+
def formula_2018_04_01(famille, period, parameters):
|
|
414
|
+
'''
|
|
415
|
+
Prestation d'accueil du jeune enfant - Allocation d'adoption
|
|
416
|
+
Références législatives
|
|
417
|
+
https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006073189&idArticle=LEGIARTI000006737121&dateTexte=&categorieLien=cid
|
|
418
|
+
'''
|
|
419
|
+
pfam = parameters(period).prestations_sociales.prestations_familiales
|
|
420
|
+
paje = pfam.petite_enfance.paje
|
|
421
|
+
bmaf = pfam.bmaf.bmaf
|
|
422
|
+
|
|
423
|
+
nbenf = famille('af_nbenf', period)
|
|
424
|
+
|
|
425
|
+
dates_limite_versement = famille.members('date_adoption', period).astype('datetime64[M]') + timedelta64(3, 'M')
|
|
426
|
+
nb_enfants_eligibles = famille.sum(famille.members('est_enfant_dans_famille', period)
|
|
427
|
+
* famille.members('adoption', period)
|
|
428
|
+
* (datetime64(period.start) >= famille.members('date_adoption', period))
|
|
429
|
+
* (datetime64(period.start) < dates_limite_versement)
|
|
430
|
+
* (famille.members('age', period) < pfam.def_pac.enfants.age_limite))
|
|
431
|
+
prime_adoption = round(100 * paje.paje_cm2.montant.prime_adoption * bmaf) / 100
|
|
432
|
+
|
|
433
|
+
return paje_naissance_adoption(famille, parameters, period, nbenf, nb_enfants_eligibles, prime_adoption)
|
|
434
|
+
|
|
435
|
+
def formula_2014_04_01(famille, period, parameters):
|
|
436
|
+
'''
|
|
437
|
+
Prestation d'accueil du jeune enfant - Allocation d'adoption
|
|
438
|
+
Références législatives
|
|
439
|
+
https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006073189&idArticle=LEGIARTI000006737121&dateTexte=&categorieLien=cid
|
|
440
|
+
'''
|
|
441
|
+
nbenf = famille('af_nbenf', period)
|
|
442
|
+
base_ressources = famille('prestations_familiales_base_ressources', period)
|
|
443
|
+
isole = not_(famille('en_couple', period))
|
|
444
|
+
biactivite = famille('biactivite', period)
|
|
445
|
+
pfam = parameters(period).prestations_sociales.prestations_familiales
|
|
446
|
+
paje = pfam.petite_enfance.paje
|
|
447
|
+
fam_bmaf = pfam.bmaf
|
|
448
|
+
|
|
449
|
+
# Le montant de la PAJE est gelé depuis avril 2013.
|
|
450
|
+
date_gel_paje = Instant((2013, 4, 1))
|
|
451
|
+
bmaf = fam_bmaf.bmaf if period.start < date_gel_paje else parameters(date_gel_paje).prestations_sociales.prestations_familiales.bmaf.bmaf
|
|
452
|
+
prime_adoption = round(100 * paje.paje_cm2.montant.prime_adoption * bmaf) / 100
|
|
453
|
+
|
|
454
|
+
majoration_isole_biactif = isole | biactivite
|
|
455
|
+
|
|
456
|
+
plafond_de_ressources = (
|
|
457
|
+
paje.paje_plaf.ne_adopte_04_2014_et_03_2018.taux_partiel.plafond_ressources_0_enfant
|
|
458
|
+
+ paje.paje_plaf.ne_adopte_04_2014_et_03_2018.taux_partiel.plafond_ressources_0_enfant * nbenf * paje.paje_plaf.ne_adopte_04_2014_et_03_2018.majorations_enfants.majoration_enfant_supp
|
|
459
|
+
+ paje.paje_plaf.ne_adopte_04_2014_et_03_2018.taux_partiel.biactifs_parents_isoles * majoration_isole_biactif
|
|
460
|
+
)
|
|
461
|
+
|
|
462
|
+
eligible_prime_adoption = (base_ressources <= plafond_de_ressources)
|
|
463
|
+
|
|
464
|
+
dates_limite_versement = famille.members('date_adoption', period).astype('datetime64[M]') + timedelta64(3, 'M')
|
|
465
|
+
|
|
466
|
+
nb_enfants_eligibles = famille.sum(famille.members('est_enfant_dans_famille', period)
|
|
467
|
+
* famille.members('adoption', period)
|
|
468
|
+
* (datetime64(period.start) >= famille.members('date_adoption', period))
|
|
469
|
+
* (datetime64(period.start) < dates_limite_versement)
|
|
470
|
+
* (famille.members('age', period) < pfam.def_pac.enfants.age_limite))
|
|
471
|
+
|
|
472
|
+
return prime_adoption * eligible_prime_adoption * nb_enfants_eligibles
|
|
473
|
+
|
|
474
|
+
def formula_2004_01_01(famille, period, parameters):
|
|
475
|
+
'''
|
|
476
|
+
Prestation d'accueil du jeune enfant - Allocation d'adoption
|
|
477
|
+
'''
|
|
478
|
+
nbenf = famille('af_nbenf', period)
|
|
479
|
+
base_ressources = famille('prestations_familiales_base_ressources', period)
|
|
480
|
+
isole = not_(famille('en_couple', period))
|
|
481
|
+
biactivite = famille('biactivite', period)
|
|
482
|
+
pfam = parameters(period).prestations_sociales.prestations_familiales
|
|
483
|
+
paje = pfam.petite_enfance.paje
|
|
484
|
+
fam_bmaf = pfam.bmaf
|
|
485
|
+
|
|
486
|
+
# Le montant de la PAJE est gelé depuis avril 2013.
|
|
487
|
+
date_gel_paje = Instant((2013, 4, 1))
|
|
488
|
+
bmaf = fam_bmaf.bmaf if period.start < date_gel_paje else parameters(date_gel_paje).prestations_sociales.prestations_familiales.bmaf.bmaf
|
|
489
|
+
prime_adoption = round(100 * paje.paje_cm2.montant.prime_adoption * bmaf) / 100
|
|
490
|
+
|
|
491
|
+
plaf_tx = (
|
|
492
|
+
(nbenf > 0)
|
|
493
|
+
+ paje.paje_plaf.ne_adopte_avant_04_2014.majorations_enfants.premier_2eme_enfant * min_(nbenf, 2)
|
|
494
|
+
+ paje.paje_plaf.ne_adopte_avant_04_2014.majorations_enfants.troisieme_plus_enfant * max_(nbenf - 2, 0)
|
|
495
|
+
)
|
|
496
|
+
|
|
497
|
+
majo = isole | biactivite
|
|
498
|
+
|
|
499
|
+
plaf = (
|
|
500
|
+
paje.paje_plaf.ne_adopte_avant_04_2014.plafond_ressources_0_enfant
|
|
501
|
+
* plaf_tx
|
|
502
|
+
+ (plaf_tx > 0)
|
|
503
|
+
* paje.paje_plaf.ne_adopte_avant_04_2014.biactifs_parents_isoles
|
|
504
|
+
* majo
|
|
505
|
+
)
|
|
506
|
+
|
|
507
|
+
elig = (base_ressources <= plaf)
|
|
508
|
+
|
|
509
|
+
dates_limite_versement = famille.members('date_adoption', period).astype('datetime64[M]') + timedelta64(3, 'M')
|
|
510
|
+
nb_enfants_eligibles = famille.sum(famille.members('est_enfant_dans_famille', period)
|
|
511
|
+
* famille.members('adoption', period)
|
|
512
|
+
* (datetime64(period.start) >= famille.members('date_adoption', period))
|
|
513
|
+
* (datetime64(period.start) < dates_limite_versement)
|
|
514
|
+
* (famille.members('age', period) < pfam.def_pac.enfants.age_limite))
|
|
515
|
+
|
|
516
|
+
return prime_adoption * elig * nb_enfants_eligibles
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
def paje_naissance_adoption(famille, parameters, period, nb_enfants, nb_enfants_eligibles, montant_prime):
|
|
520
|
+
base_ressources = famille('prestations_familiales_base_ressources', period)
|
|
521
|
+
isole = not_(famille('en_couple', period))
|
|
522
|
+
biactivite = famille('biactivite', period)
|
|
523
|
+
pfam = parameters(period).prestations_sociales.prestations_familiales
|
|
524
|
+
paje = pfam.petite_enfance.paje
|
|
525
|
+
|
|
526
|
+
taux_plafond = (
|
|
527
|
+
(nb_enfants > 0)
|
|
528
|
+
+ paje.paje_plaf.ne_adopte_apres_04_2018.majorations_enfants.premier_2eme_enfant * min_(nb_enfants, 2)
|
|
529
|
+
+ paje.paje_plaf.ne_adopte_apres_04_2018.majorations_enfants.troisieme_plus_enfant * max_(nb_enfants - 2, 0)
|
|
530
|
+
)
|
|
531
|
+
|
|
532
|
+
majoration_isole_biactif = isole | biactivite
|
|
533
|
+
|
|
534
|
+
plafond_de_ressources = (
|
|
535
|
+
paje.paje_plaf.ne_adopte_apres_04_2018.taux_partiel.plafond_ressources_0_enfant
|
|
536
|
+
* taux_plafond
|
|
537
|
+
+ (taux_plafond > 0)
|
|
538
|
+
* paje.paje_plaf.ne_adopte_apres_04_2018.taux_partiel.biactifs_parents_isoles
|
|
539
|
+
* majoration_isole_biactif
|
|
540
|
+
)
|
|
541
|
+
|
|
542
|
+
eligible_prime_adoption = (base_ressources <= plafond_de_ressources)
|
|
543
|
+
|
|
544
|
+
return montant_prime * eligible_prime_adoption * nb_enfants_eligibles
|
|
545
|
+
|
|
546
|
+
|
|
424
547
|
class paje_prepare(Variable):
|
|
425
548
|
value_type = float
|
|
426
549
|
entity = Famille
|
|
@@ -24,7 +24,7 @@ openfisca_france/model/base.py,sha256=X0cFE7R-6r5JYlAlqaIsD7m61rjHBcUfrYIW61PCFr
|
|
|
24
24
|
openfisca_france/model/mesures.py,sha256=pBIFu7GEkk-n3GMktAE6HIs493uA6XwVxbscPYQbd-k,33252
|
|
25
25
|
openfisca_france/model/caracteristiques_socio_demographiques/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
26
|
openfisca_france/model/caracteristiques_socio_demographiques/capacite_travail.py,sha256=GrCpzWisgPV7fh1RZVj1PIJJM073xPZftS_USiqbFo0,976
|
|
27
|
-
openfisca_france/model/caracteristiques_socio_demographiques/demographie.py,sha256=
|
|
27
|
+
openfisca_france/model/caracteristiques_socio_demographiques/demographie.py,sha256=wZ60QaM4yOiRwa2kGMwTWhkjEZ47K2KVq7j3cxrnR_g,24416
|
|
28
28
|
openfisca_france/model/caracteristiques_socio_demographiques/logement.py,sha256=Fad8C2X1wnFujKrqYyfXaCrTSVL1rdhj32R4uMXMy-Y,9460
|
|
29
29
|
openfisca_france/model/consommation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
30
30
|
openfisca_france/model/covid19/activite.py,sha256=cR8jkVupWjwcLLeJ4qrLQGyhb-Pm9VPojW3JgDaxmM0,4256
|
|
@@ -135,7 +135,7 @@ openfisca_france/model/prestations/prestations_familiales/ars.py,sha256=FjpAk7i0
|
|
|
135
135
|
openfisca_france/model/prestations/prestations_familiales/asf.py,sha256=Ohc_LytcZuR6bxk7Z6v76n0taIvvhrD8rphgncQN0yc,3625
|
|
136
136
|
openfisca_france/model/prestations/prestations_familiales/base_ressource.py,sha256=sPSeWnLp4mgTV1sH17v833bRGmH0BEZAsj4g5GtrWDk,13397
|
|
137
137
|
openfisca_france/model/prestations/prestations_familiales/cf.py,sha256=uTC-7ElvTvVR9jhLzWqfCuitD6RSTqCM0KnO-fHpSa8,13912
|
|
138
|
-
openfisca_france/model/prestations/prestations_familiales/paje.py,sha256=
|
|
138
|
+
openfisca_france/model/prestations/prestations_familiales/paje.py,sha256=MXDtN5082SC0Mol85-obdeJk3vWV7ciCW4xE2jEpJ5o,58099
|
|
139
139
|
openfisca_france/model/prestations/sante_psy/etudiant.py,sha256=DITgwXu7_g0H8wujgUbZV2D7jmgSXPb3FWTxrgtsPxc,938
|
|
140
140
|
openfisca_france/model/revenus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
141
141
|
openfisca_france/model/revenus/autres.py,sha256=LttEzxate9Crynjp3SOlHr-CUGDXEUTjzszzp2U7z_U,5109
|
|
@@ -4129,8 +4129,8 @@ openfisca_france/scripts/performance/measure_spiral_performances.py,sha256=cQIxE
|
|
|
4129
4129
|
openfisca_france/scripts/performance/measure_tests_performance.py,sha256=HYgSJy-OMZay2AZt6ztntgdUbW_RL2xMr-iHcK-zoVY,1869
|
|
4130
4130
|
openfisca_france/situation_examples/__init__.py,sha256=BTRmrqk9lsjfhtPXsYcsWqXFEYyFpgLcxNs6oJsy8zk,262
|
|
4131
4131
|
openfisca_france/situation_examples/couple.json,sha256=Ot1x4wl3IS-2-10X3V7ZUokkOMXi96s-xK7A0gNvRF4,862
|
|
4132
|
-
openfisca_france-172.0.
|
|
4133
|
-
openfisca_france-172.0.
|
|
4134
|
-
openfisca_france-172.0.
|
|
4135
|
-
openfisca_france-172.0.
|
|
4136
|
-
openfisca_france-172.0.
|
|
4132
|
+
openfisca_france-172.0.6.dist-info/licenses/LICENSE.AGPL.txt,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
|
|
4133
|
+
openfisca_france-172.0.6.dist-info/METADATA,sha256=c3G_uRJ3R7ilZVIVY1de2ROqqcDYEysvudoJUsuXPqc,20878
|
|
4134
|
+
openfisca_france-172.0.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
4135
|
+
openfisca_france-172.0.6.dist-info/top_level.txt,sha256=1LbD6QJWehKGIcjtaJ45tbQOSDiFEXOlIdgWRI_jaHU,17
|
|
4136
|
+
openfisca_france-172.0.6.dist-info/RECORD,,
|
|
File without changes
|
{openfisca_france-172.0.5.dist-info → openfisca_france-172.0.6.dist-info}/licenses/LICENSE.AGPL.txt
RENAMED
|
File without changes
|
|
File without changes
|