⚙️ Support des unités dans un barème linéaire
parent
815f7579ef
commit
9327847360
|
@ -21,6 +21,9 @@
|
|||
.barème table th {
|
||||
font-weight: 500;
|
||||
}
|
||||
.barème table th:first-letter {
|
||||
text-transform: uppercase;
|
||||
}
|
||||
.barème .tranche:nth-child(2n) {
|
||||
background: #f1f1f1;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import classNames from 'classnames'
|
||||
import { ShowValuesConsumer } from 'Components/rule/ShowValuesContext'
|
||||
import withLanguage from 'Components/utils/withLanguage'
|
||||
import { numberFormatter } from 'Components/Value'
|
||||
import { trancheValue } from 'Engine/mecanisms/barème'
|
||||
import { identity } from 'ramda'
|
||||
import React from 'react'
|
||||
|
@ -8,7 +9,6 @@ import { Trans } from 'react-i18next'
|
|||
import { makeJsx } from '../evaluation'
|
||||
import './Barème.css'
|
||||
import { Node, NodeValuePointer } from './common'
|
||||
import { numberFormatter } from 'Components/Value'
|
||||
|
||||
export let BarèmeAttributes = ({ explanation, lazyEval = identity }) => (
|
||||
<>
|
||||
|
@ -58,11 +58,13 @@ let Component = withLanguage(function Barème({
|
|||
<Trans>Tranche de l'assiette</Trans>
|
||||
</th>
|
||||
<th>
|
||||
<Trans>
|
||||
{explanation.tranches[0].taux != null
|
||||
? 'Taux'
|
||||
: 'Montant'}
|
||||
</Trans>
|
||||
{unit || (
|
||||
<Trans>
|
||||
{explanation.tranches[0].taux != null
|
||||
? 'Taux'
|
||||
: 'Montant'}
|
||||
</Trans>
|
||||
)}
|
||||
</th>
|
||||
{showValues && explanation.tranches[0].taux != null && (
|
||||
<th>
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
import { defaultNode, evaluateObject } from 'Engine/evaluation'
|
||||
import Barème from 'Engine/mecanismViews/Barème'
|
||||
import variations from 'Engine/mecanisms/variations'
|
||||
import { defaultNode, evaluateObject, parseObject } from 'Engine/evaluation'
|
||||
import { decompose } from 'Engine/mecanisms/utils'
|
||||
import variations from 'Engine/mecanisms/variations'
|
||||
import Barème from 'Engine/mecanismViews/Barème'
|
||||
import { val } from 'Engine/traverse-common-functions'
|
||||
import { inferUnit, parseUnit } from 'Engine/units'
|
||||
import { parseObject } from 'Engine/evaluation'
|
||||
import { desugarScale } from './barème'
|
||||
/* on réécrit en une syntaxe plus bas niveau mais plus régulière les tranches :
|
||||
`en-dessous de: 1`
|
||||
|
@ -61,6 +59,6 @@ export default (recurse, k, v) => {
|
|||
barème: 'en taux',
|
||||
type: 'numeric',
|
||||
|
||||
unit: explanation.assiette.unit
|
||||
unit: v['unité'] || explanation.assiette.unit
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4045,28 +4045,28 @@
|
|||
- nom: barème trimestres générique
|
||||
espace: protection sociale . retraite . trimestres validés par an
|
||||
période: aucune
|
||||
unité: trimestres
|
||||
formule:
|
||||
variations:
|
||||
- si: oui
|
||||
alors:
|
||||
barème linéaire:
|
||||
unité: trimestres
|
||||
assiette: revenu moyen [annuel]
|
||||
multiplicateur: SMIC horaire
|
||||
tranches:
|
||||
- en-dessous de: 150
|
||||
montant: 0 trimestres
|
||||
montant: 0
|
||||
- de: 150
|
||||
à: 300
|
||||
montant: 1 trimestres
|
||||
montant: 1
|
||||
- de: 300
|
||||
à: 450
|
||||
montant: 2 trimestres
|
||||
montant: 2
|
||||
- de: 450
|
||||
à: 600
|
||||
montant: 3 trimestres
|
||||
montant: 3
|
||||
- au-dessus de: 600
|
||||
montant: 4 trimestres
|
||||
montant: 4
|
||||
références:
|
||||
cnav.fr: https://www.legislation.cnav.fr/Pages/bareme.aspx?Nom=salaire_validant_un_trimestre_montant_bar
|
||||
|
||||
|
@ -4080,59 +4080,62 @@
|
|||
- si: entreprise . catégorie d'activité = 'libérale'
|
||||
alors:
|
||||
barème linéaire:
|
||||
unité: trimestres
|
||||
assiette: entreprise . chiffre d'affaires [annuel]
|
||||
tranches:
|
||||
- en-dessous de: 2880
|
||||
montant: 0 trimestres
|
||||
montant: 0
|
||||
- de: 2880
|
||||
à: 5062
|
||||
montant: 1 trimestres
|
||||
montant: 1
|
||||
- de: 5062
|
||||
à: 7266
|
||||
montant: 2 trimestres
|
||||
montant: 2
|
||||
- de: 7266
|
||||
à: 9675
|
||||
montant: 3 trimestres
|
||||
montant: 3
|
||||
- au-dessus de: 9675
|
||||
montant: 4 trimestres
|
||||
montant: 4
|
||||
- si:
|
||||
une de ces conditions:
|
||||
- entreprise . catégorie d'activité . service ou vente = 'vente de biens'
|
||||
- entreprise . catégorie d'activité . restauration ou hébergement
|
||||
alors:
|
||||
barème linéaire:
|
||||
unité: trimestres
|
||||
assiette: entreprise . chiffre d'affaires [annuel]
|
||||
tranches:
|
||||
- en-dessous de: 4137
|
||||
montant: 0 trimestres
|
||||
montant: 0
|
||||
- de: 4137
|
||||
à: 7286
|
||||
montant: 1 trimestres
|
||||
montant: 1
|
||||
- de: 7286
|
||||
à: 10426
|
||||
montant: 2 trimestres
|
||||
montant: 2
|
||||
- de: 10426
|
||||
à: 20740
|
||||
montant: 3 trimestres
|
||||
montant: 3
|
||||
- au-dessus de: 20740
|
||||
montant: 4 trimestres
|
||||
montant: 4
|
||||
- sinon:
|
||||
barème linéaire:
|
||||
unité: trimestres
|
||||
assiette: entreprise . chiffre d'affaires [annuel]
|
||||
tranches:
|
||||
- en-dessous de: 2412
|
||||
montant: 0 trimestres
|
||||
montant: 0
|
||||
- de: 2412
|
||||
à: 4239
|
||||
montant: 1 trimestres
|
||||
montant: 1
|
||||
- de: 4239
|
||||
à: 6071
|
||||
montant: 2 trimestres
|
||||
montant: 2
|
||||
- de: 6071
|
||||
à: 12030
|
||||
montant: 3 trimestres
|
||||
montant: 3
|
||||
- au-dessus de: 12030
|
||||
montant: 4 trimestres
|
||||
montant: 4
|
||||
références:
|
||||
service-public.fr: https://www.service-public.fr/professionnels-entreprises/vosdroits/F23369
|
||||
|
||||
|
|
Loading…
Reference in New Issue