🐛 corrige l'affichage de la fiche de paie
parent
d1f9ef383b
commit
d95a5b7a34
|
@ -14,7 +14,7 @@ objectifs:
|
|||
- entreprise . chiffre d'affaires minimum
|
||||
|
||||
objectifs secondaires:
|
||||
- contrat salarié . temps de travail
|
||||
- contrat salarié . cotisations
|
||||
|
||||
questions:
|
||||
à l'affiche:
|
||||
|
|
|
@ -8,6 +8,7 @@ objectifs:
|
|||
|
||||
objectifs secondaires:
|
||||
- contrat salarié . temps de travail
|
||||
- contrat salarié . cotisations
|
||||
|
||||
questions:
|
||||
à l'affiche:
|
||||
|
|
|
@ -132,7 +132,7 @@
|
|||
}
|
||||
|
||||
/* Nested Mecanism */
|
||||
.nested .mecanism-somme__row {
|
||||
.mecanism-somme__row + .nested {
|
||||
padding-left: 2em;
|
||||
border-top: 1px dashed rgba(51, 51, 80, 0.15);
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ function Row({ v, i, unit }) {
|
|||
return [
|
||||
<div
|
||||
className="mecanism-somme__row"
|
||||
key={v.name}
|
||||
key={v.name || i}
|
||||
// className={isSomme ? '' : 'noNest'}
|
||||
onClick={() => setFolded(!folded)}>
|
||||
<div className="element">
|
||||
|
|
|
@ -739,7 +739,6 @@
|
|||
- temps de travail . temps partiel
|
||||
- temps de travail . heures supplémentaires
|
||||
- statut JEI
|
||||
- régime des impatriés
|
||||
- entreprise . association non lucrative
|
||||
références:
|
||||
Le régime des dirigeants: https://www.urssaf.fr/portail/home/employeur/creer/choisir-une-forme-juridique/le-statut-du-dirigeant/les-dirigeants-rattaches-au-regi.html
|
||||
|
@ -1322,14 +1321,15 @@
|
|||
C'est la base utilisée pour calculer l'impôt sur le revenu.
|
||||
période: flexible
|
||||
formule:
|
||||
allègement:
|
||||
assiette: base
|
||||
abattement:
|
||||
somme:
|
||||
- indemnité kilométrique vélo
|
||||
- prime d'impatriation
|
||||
- exonération d'impôt des stagiaires et apprentis
|
||||
- heures supplémentaires défiscalisées
|
||||
somme:
|
||||
- rémunération . net de cotisations
|
||||
- avantages sociaux
|
||||
- CSG [non déductible]
|
||||
- CRDS
|
||||
- (- indemnité kilométrique vélo)
|
||||
- (- prime d'impatriation)
|
||||
- (- exonération d'impôt des stagiaires et apprentis)
|
||||
- (- heures supplémentaires défiscalisées)
|
||||
références:
|
||||
DSN: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
|
||||
|
||||
|
@ -1352,16 +1352,6 @@
|
|||
références:
|
||||
DSN: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
|
||||
|
||||
- espace: contrat salarié . rémunération . net imposable
|
||||
nom: base
|
||||
période: flexible
|
||||
formule:
|
||||
somme:
|
||||
- rémunération . net de cotisations
|
||||
- avantages sociaux
|
||||
- CSG [non déductible]
|
||||
- CRDS
|
||||
|
||||
- espace: contrat salarié
|
||||
nom: prime d'impatriation
|
||||
description: La prime d'impatriation est une partie de la rémunération exonérée d'impôt sur le revenu.
|
||||
|
@ -1370,7 +1360,7 @@
|
|||
unité: €
|
||||
formule:
|
||||
multiplication:
|
||||
assiette: rémunération . net imposable . base
|
||||
assiette: rémunération . net
|
||||
taux: 30%
|
||||
références:
|
||||
Article 155B du Code général des impôts: https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006069577&idArticle=LEGIARTI000006307476&dateTexte=&categorieLien=cid
|
||||
|
|
|
@ -17,17 +17,6 @@ import {
|
|||
import { createSelector } from 'reselect'
|
||||
import { analysisWithDefaultsSelector } from 'Selectors/analyseSelectors'
|
||||
|
||||
import type { Analysis } from 'Types/Analysis'
|
||||
import type {
|
||||
VariableWithCotisation,
|
||||
Cotisation,
|
||||
Cotisations,
|
||||
Branche,
|
||||
FicheDePaie
|
||||
} from 'Types/ResultViewTypes'
|
||||
|
||||
import type { Règle } from 'Types/RegleTypes'
|
||||
|
||||
// These functions help build the payslip. They take the cotisations from the cache, braving all the particularities of the current engine's implementation, handles the part patronale and part salariale, and gives a map by branch.
|
||||
|
||||
export const COTISATION_BRANCHE_ORDER: Array<Branche> = [
|
||||
|
@ -85,31 +74,17 @@ export const mergeCotisations: (
|
|||
)
|
||||
|
||||
const variableToCotisation = (variable: VariableWithCotisation): Cotisation => {
|
||||
let displayedVariable = variable
|
||||
if (
|
||||
// Following : weird logic to automatically handle negative negated value in sum
|
||||
// $FlowFixMe
|
||||
variable.operationType === 'calculation' &&
|
||||
// $FlowFixMe
|
||||
variable.operator === '−' &&
|
||||
variable.explanation[0].nodeValue === 0
|
||||
) {
|
||||
displayedVariable = variable.explanation[1]
|
||||
console.log(displayedVariable, brancheSelector(displayedVariable))
|
||||
}
|
||||
return mergeCotisations(BLANK_COTISATION, {
|
||||
...displayedVariable.explanation,
|
||||
branche: brancheSelector(displayedVariable),
|
||||
...variable.explanation,
|
||||
branche: brancheSelector(variable),
|
||||
montant: {
|
||||
[duParSelector(displayedVariable) === 'salarié'
|
||||
[duParSelector(variable) === 'salarié'
|
||||
? 'partSalariale'
|
||||
: 'partPatronale']: variable.nodeValue
|
||||
}
|
||||
})
|
||||
}
|
||||
const groupByBranche = flatRules => (
|
||||
cotisations: Array<Cotisation>
|
||||
): Cotisations => {
|
||||
const groupByBranche = (cotisations: Array<Cotisation>): Cotisations => {
|
||||
const cotisationsMap = cotisations.reduce(
|
||||
(acc, cotisation) => ({
|
||||
...acc,
|
||||
|
@ -133,6 +108,15 @@ export let analysisToCotisations = analysis => {
|
|||
.reduce(concat, [])
|
||||
|
||||
const cotisations = pipe(
|
||||
map(rule =>
|
||||
// Following : weird logic to automatically handle negative negated value in sum
|
||||
|
||||
rule.operationType === 'calculation' &&
|
||||
rule.operator === '−' &&
|
||||
rule.explanation[0].nodeValue === 0
|
||||
? { ...rule.explanation[1], nodeValue: rule.nodeValue }
|
||||
: rule
|
||||
),
|
||||
groupBy(prop('dottedName')),
|
||||
values,
|
||||
map(
|
||||
|
@ -146,7 +130,7 @@ export let analysisToCotisations = analysis => {
|
|||
cotisation.montant.partPatronale !== 0 ||
|
||||
cotisation.montant.partSalariale !== 0
|
||||
),
|
||||
groupByBranche(analysis),
|
||||
groupByBranche,
|
||||
filter(([, brancheCotisation]) => !!brancheCotisation)
|
||||
)(variables)
|
||||
return cotisations
|
||||
|
|
Loading…
Reference in New Issue