From 442904209cac464a1ff2cd69f7b3924f54ddc33a Mon Sep 17 00:00:00 2001 From: Mael Date: Thu, 30 Aug 2018 17:06:14 +0200 Subject: [PATCH] =?UTF-8?q?Ajout=20de=20l'imp=C3=B4t=20sur=20la=20fiche=20?= =?UTF-8?q?de=20paie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/components/PaySlip.js | 8 +++++++- source/règles/base.yaml | 2 ++ source/selectors/ficheDePaieSelectors.js | 4 ++++ source/selectors/regleSelectors.js | 1 + 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/source/components/PaySlip.js b/source/components/PaySlip.js index 92643906c..4d5d61388 100644 --- a/source/components/PaySlip.js +++ b/source/components/PaySlip.js @@ -32,7 +32,9 @@ const PaySlip = ({ salaireNet, réductionsDeCotisations, cotisations, - totalCotisations + totalCotisations, + salaireNetAprèsImpôt, + impôt } = ficheDePaie return (
@@ -134,6 +136,10 @@ const PaySlip = ({ {/* Salaire net imposable */} {salaireNetImposable.montant} + + {impôt.montant} + + {salaireNetAprèsImpôt.montant}

diff --git a/source/règles/base.yaml b/source/règles/base.yaml index a2e1f8aa9..451de9fcf 100644 --- a/source/règles/base.yaml +++ b/source/règles/base.yaml @@ -950,8 +950,10 @@ - espace: contrat salarié nom: impôt neutre sur le revenu + icône: 🏛️ description: C'est le barème à appliquer sur le salaire mensuel imposable pour obtenir l'impôt à payer mensuellement pour les salariés qui ne veulent pas révéler à leur entreprise leur taux d'imposition (ce taux peut révéler par exemple des revenus du patrimoine importants). note: Attention, l'abattement de 10% est inclus implicitement dans ce barème. L'assiette est donc bien le salaire imposable, et non le salaire imposable abattu. + format: euros formule: barème linéaire: assiette: salaire . net imposable diff --git a/source/selectors/ficheDePaieSelectors.js b/source/selectors/ficheDePaieSelectors.js index 9c6fd9eb1..6135ab78d 100644 --- a/source/selectors/ficheDePaieSelectors.js +++ b/source/selectors/ficheDePaieSelectors.js @@ -190,6 +190,10 @@ function analysisToFicheDePaie( salaireNet: règleAvecMontant('contrat salarié . salaire . net'), nombreHeuresTravaillées: Math.round( règleAvecValeur('contrat salarié . heures par semaine').valeur * 4.33 + ), + impôt: règleAvecMontant('contrat salarié . impôt neutre sur le revenu'), + salaireNetAprèsImpôt: règleAvecMontant( + 'contrat salarié . salaire . net après impôt' ) } } diff --git a/source/selectors/regleSelectors.js b/source/selectors/regleSelectors.js index c7d73e49f..b604b912f 100644 --- a/source/selectors/regleSelectors.js +++ b/source/selectors/regleSelectors.js @@ -93,6 +93,7 @@ export const règleAvecMontantSelector = createSelector( règleLocaliséeSelector, (règleValeur, règleLocalisée) => (dottedName: string): RègleAvecMontant => { const valeur = règleValeur(dottedName) + console.log(valeur) if (!valeur || valeur.type !== 'euros') { throw new Error( `[règleAvecMontantSelector] Le type de valeur de "${dottedName}" n'est pas celui d'un montant`